## v4.5.0 - November 21, 2018
eXist-db v4.5.0 has been released.
This is a minor release, which contains a few new features and several bug fixes.
We recommend that all users of eXist-db 4.x.x should upgrade to eXist-db 4.5.0.
### Features
- Added a facility for configuring the XML parser from
conf.xml
. This allows the user to specify various options. It is suggested to use the commented options inconf.xml
to secure the parser from XML external entity attacks. - #2147 - Updated to AspectJ 1.9.2 for improved Java 11 support - #2236
- Added a checksum to the Journal for each entry to detect corruption - #2255
- Added a checksum to the Journal for the content of binary documents - #2260
- Improved the provenance of the XML:DB API dependency #2263
- Improved the provenance of the EXPath Pkg Repo fork dependency - #2284
### Bug fixes
- Fixed a startup failure affecting macOS under Java 11 - #2187
- Fixed an issue affecting mixed types in a subsequence - #2198
- Fixed preemptive authentication in the EXPath HTTP Client - #2208
- Fixed a concurrency issue in
ContextUpdateListener
#2211 - Fixed map constructor to prevent duplicate keys - #2214
- Fixed thread naming - #2216
- Fixed an NPE in the range index involving the
order by
clause - #2221 - Fixed several journaling and recovery issues for XML and binary documents - #2241
- Fixed an issue with lock lifetime when changing permissions - #2251
- Fixed a regression with loading the XML:DB API jar via
bin/startup
- #2268 - Fixed a verbose logging regression in
ExistSAXParserFactory
- #2273 - Fixed a regression in the ExportGUI - #2275
- Fixed an issue with RESTXQ not releasing binary file handles - #2289
- Removed the 2GB log file limit for the Journal #2292
- Fixed a signing issue affecting the Bouncy Castle library - #2298
### Backwards Compatibility
- eXist-db v4.5.0 is not binary compatible with previous versions of eXist-db because of improvements to the on-disk journal format. Before upgrading to this version of eXist-db, you MUST perform a full backup and restore. Users who are upgrading should always consult the Upgrading Guide in the documentation.
- NOTE: The version of Dashboard that was installed with eXist-db 3.6.1 (or earlier) is incompatible with eXist-db 4.0.0 and newer. If you plan to migrate your entire database to eXist-db 4.4.0, you MUST take one of the following steps to allow Dashboard to work after the upgrade:
- If you have not yet installed eXist-db 4.5.0, open
Dashboard > Package Manager
, and upgrade Dashboard to0.4.10
, or run this script in eXide or the Java Admin Client:repo:install-and-deploy("http://exist-db.org/apps dashboard", "http://demo.exist-db.org/exist/apps/public-repo/modules/find.xql")
. Then you may safely install eXist-db 4.5.0 and use Dashboard. - If you install eXist-db 4.5.0 before upgrading Dashboard, run this script in eXide or the Java Admin Client:
repo:install-and-deploy("http://exist-db.org/apps/dashboard", "http://demo.exist-db.org/exist/apps/public-repo/modules/find.xql")
. Then you may use Dashboard.
- If you have not yet installed eXist-db 4.5.0, open