Determining supporting library versions
-
How do I determine the which branch/version/level of Scintilla and/or Boost are supported by current and, more importantly, future versions of Notepad++? Before the “one button to build them all” approach was implemented, I could check the version info of the SciLexer.dll to point me in the proper direction when writing scripts in NppExec that relied on SCI_SENDMSG calls. Likewise for PythonScript and LuaScript usage.
I am not having a problem at the moment, but I am worried about the inevitable version gaps that show up over time between a major application and the libraries/projects it depends on. There has to be ‘a bit of slack between them’ else the developers will wear themselves out chasing minor upgrades in supporting packages, but at the same time the application developers can’t takeover all the documentation aspects of the support libraries and incorporate them in the applications own documentation.
I wasn’t sure if I should ask this here or as an issue on github (which seems a bit extreme for an information request).
-
First, I think you asked this in the correct place.
Second, I don’t think there is currently an easy way to discover this information.
Thus, I think you have a good point with this. It would be nice to see a line items in the release notes for every version, something like:
Notepad++ 9.2.2
uses Scintilla 5.1
uses Boost Regex 12.2
New features and bug fixes: …or something like that.
As far as “future”, no one has a crystal ball to be able to answer that.
-
I’ve always been disappointed that Scintilla didn’t provide a “SCI_VERSIONNUM” or equivalent message in their messaging system. Or, barring that, that NPP didn’t provide a NPPM_SCIVERSION message. Or, barring that, that NPP doesn’t provide the Scintilla version in the Debug Info or About dialogs. And barring that, as Alan suggested, having those library versions listed in every release-notes would be good, too.
But if you go to the historical Changes page, you can search that page for “Scintilla”, and you can see which versions of Notepad++ contained upgrades in Scintilla version – so whatever the most recent version listed there is the version that’s still in the current NPP release. Alternately, going to the github releases, you can then click on the 7-digit hexadecimal commit number to the left of the release number, then Browse Files then go into the
scintilla
folder; the visible commit messages on those will show the most recent scintilla version – for example, the v7.9.4 release (which was the most recent Scintilla version change) shows:
(And just browsing that folder in the master repo will show what version was in the most recent release of Notepad++.) (Note: the commit-message method only works because most of the Scintilla files don’t get edited until Scintilla is upgraded; if they ever start editing the Scintilla source without upgrading the version, that will be harder to find.) -
@PeterJones
Thank you for the pointer to the historical Changes page, that was a nice place to go spelunking. For the present and near future I will resort to manifest constants to flag the current versions, so I can refer to the proper historical documentation pages (packages actually) and avoid the temptation to use a new Scintilla feature not yet supported in Npp.