# Release Notes
## v4.2.0 - June 6, 2018
eXist-db v4.2.0 has just been released. This is a minor release, which contains an important security fix, as well as several new features and bug fixes.
$entry-data
functions for compression:unzip
or compression:untar
if they are writing the file entries to persistent storage using the name of the entry from the archive; Consideration should be given to employing further exit attack protections of their own.
compression:unzip
and compression:untar
functions have received some lower-arity signatures which should simplify use. Also some helper functions have been added: compression:no-filter
, `compression:db-store-, and
compression:fs-store-`.
The XQuery util:eval-with-context
function now allows a timeout to be set.
XQSuite gains the annotation %test:assumeInternetAccess
for ensuring Internet Access is
XML-RPC Server character set is now configurable, defaults to UTF-8.
XQueryURLRewrite challenge is now configurable, defaults to always challenging for basic authentication.
Building YAJSW no longer requires `JAVAHOME if
java is available on the system
PATH`.
ClassLoaderSource
now tracks source file for easy referencing.
Display the specific JVM version details when building eXist-db.
Updated third-party dependencies:
Apache Commons Configuration 1.17
Java 8 Functional Utilities 1.16
FasterXML Jackson 2.9.5
Jargo 0.4.14
XMLUnit 2.6.0
Eclipse Jetty 9.4.10.v20180503
* Eclipse AspectJ 1.9.1
fn:format-date
previously calculated the name of the day of the week incorrectly (off by one e.g. Monday -> Tuesday).
file:mkdirs
no longer incorrectly raises an error if the directory already exists.
Fixed a NullPointerException
when uploading large documents via the XML-RPC and XML:DB Remote APIs.
Handling of Zip entry filenames are now compatible with Java 10.
Fixed the behaviour of the XMLUnit functions.
XQSuite now correctly displays results when an error is expected.
XQSuite now shows the correct messages for %test:assertTrue
and %test:assertFalse
.
XSuite test resources are now correctly loaded from the classpath.
### Backwards Compatibility
- eXist-db v4.2.0 is backwards binary-compatible as far as v3.0, but not with earlier versions. 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.2.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.2.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.2.0 and use Dashboard. - If you install eXist-db 4.2.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.2.0, open