I've been meaning to put out a feature release, but I've accumulated enough bug fixes since 2.0.1 that it's worth it to release them all without waiting for that. So here's what's changed:
Better Linux compatibility. Reduced the minimum glibc requirement from 2.14 to 2.2.5. If you've gotten a System.DllNotFoundException about libNaturalDocs.Engine.SQLite.Linux64.so, this is what was causing it.
Better Mac compatibility. Updated the zip files to allow subfolders to extract properly on Macs instead of sometimes becoming part of the file name. I actually fixed this in February and silently reuploaded all the zip files on the site so this shouldn't have been an issue since then.
Various language fixes:
C#: Fixed crash when inheriting from both IList and IList<T>.
C#: Parse and highlight async and await keywords correctly.
C#: Support expression-bodied functions and properties.
C++: Prototype formatting will not get confused by ::globals.
Pascal/Delphi: Better support for pre-name modifiers like "const x: Integer".
Pascal/Delphi: Add support for type, property, and event prototypes.
Python: Add support for ''' and """ strings. Also adds general support for opening and closing block comments being the same symbol.
SystemVerilog: Fixed crash with parameterized interfaces.
Very large projects: Fix crashing on very large projects. SQLite could get overwhelmed by too many query parameters but I managed to work around it.
Database menu: Fixed an issue with the database menu not being generated correctly.
Internet Explorer: Fixed an issue with scrolling the menu in Internet Explorer.
Class Prototypes: Allow languages that do not use the class, struct, or interface keywords to still get class prototypes.
Better crash reports. They include more information about what Natural Docs was doing when it crashed which will help me figure it out.
Minor tweaks. The project title is now a clickable link, which makes it a good ctrl/shift-click target for opening a new tab or window of the documentation.
This update fixes compatibility with macOS and some Linux distributions. If Natural Docs wouldn't run and gave you an error about libNaturalDocs.Engine.SQLite32.so, this will fix it.
Nothing's changed for Windows, but now there's an MSI installer to make installing and updating easier. It will also create a Start menu shortcut to the bundled documentation.
The source code is available on GitHub now. It wasn't uploaded when 2.0 launched but it's all there now, with its full edit history.
And finally, the web site works correctly on mobile. There was a minor change needed to make phones detect it as mobile-friendly.
|Natural Docs is reborn! Version 2.0 is released|