eXist-db v3.6.1

v3.6.1 - January 03, 2018

eXist-db v3.6.1 has just been released. This is a hotfix release, which contains bug fixes for several important issues discovered since eXist-db v3.6.0.

We recommend that all users of eXist 3.6.0 should upgrade to eXist 3.6.1.

Bug fixes

  • Fixed issue where the package manager wrote non-well-formed XML that caused problems during backup/restore. #1620
  • Fixed namespace prefix for attributes and namespace nodes.
  • Made sure the localName of a in memory element is correctly obtained under various namespace declaration conditions
  • Fix for NPE in org.exist.xquery.functions.fn.FunId #1642
  • Several atomic comparisons raise wrong error code #1638
  • General comparison to empty sequence sometimes raises an error #1639
  • Warn if no <target> is found in an EXPath packages's repo.xml

Backwards Compatibility

  • eXist-db v3.6.1 is backwards binary-compatible as far as v3.0, but not with earlier versions. Users upgrading from previous versions should perform a full backup and restore to migrate their data.

Downloading This Version

eXist-db v3.6.1 is available for download from GitHub. Maven artifacts for eXist-db v3.6.1 are available from our mvn-repo. Mac users of the Homebrew package repository may acquire eXist 3.6.1 directly from there.

eXist-db v3.6.0

# Release Notes

## v3.6.0 - November 27, 2017

eXist-db v3.6.0 has just been released. This is a minor release, which contains several new features and bug fixes.

### Features * Switched Collation support to use ICU4j. * Implemented XQuery 3.1 UCA (Unicode Collation Algorithm). Implemented map type parameters for XQuery F&O 3.1 fn:serialize. Implemented declare context item for XQuery 3.0. Implemented XQuery 3.0 Regular Expression's support for non-capturing groups. Implemented a type-safe DSL for describing and testing transactional operations upon the database. Implemented missing node kind tests in the XQuery parser when using @ on an AbbrevForwardStep. Added AspectJ support to the IntelliJ project files (IntelliJ Ultimate only). Repaired the dependencies in the NetBeans project files. Added support for Travis macOS CI. Added support for AppVeyor Windows CI. Updated third-party dependencies: Apache Commons Codec 1.11 Apache Commons Compress 1.15 Apache Commons Lang 3.7 Eclipse AspectJ 1.9.0.RC1 Eclipse Jetty 9.4.7.v20170914 EXPath HTTP Client 20171116 Java 8 Functional Utilities 1.11 JCTools 2.1.1 * XML Unit 2.4.0
### Performance Improvements Compiled XQuery cache is now multi-threaded; concurrency is now per-source. RESTXQ compiled XQuery cache is now multi-threaded; concurrency is now per-query URI. STX Templates Cache is now multithreaded. XML-RPC Server will now use Streaming and GZip compression if supported by the client; enabled in eXist's Java Admin Client. * Reduced object creation overhead in the XML-RPC Server.
### Apps The bundled applications of the Documentation, eXide, and Monex have all been updated to the latest versions.
### Bug fixes Fixed compilation for Java 9. eXist-db can now be compiled and run on Java 9. Fixed a regression with the XQuery 3.0 Arrow Operator, when it was used in a function, to call a function which is declared later in the XQuery. Fixed a regression in the Lucene Range Index where nested content should always be included for an index key, unless configured otherwise. Fixed a regression in the EXPath HTTP Client. Previously required you to specify http-version, now again defaults to 1.1. Fixed a NullPointerException in the EXPath HTTP Client when using Basic Authentication. XInclude support now correctly implements fallback if a HTTP resource cannot be accessed. Fixes a number of issues where InputStreams were not closed, which leaked file handles; particularly an issue on Windows platforms. Fixed a database shutdown issue with SymbolTable on Windows platforms. Ensured that URIs are correctly resolved in the SourceFactory on Windows platforms. No longer use a custom temp folder, instead use Java's; fixes a bug with Jetty on Windows platforms. Fixed an issue where the `EXISTHOME` path was not constructed correctly under some circumstances on Windows platforms. Fixed the return type of fn:doc to match the XQuery F&O specification. Fixed a concurrency issue in the HTTP SessionManager. Fixed a concurrency issue in caching Query results in the REST Server. Fixed a concurrency issue in caching Query results in the XML-RPC Server. Fixed the function description of util:eval-with-context. Improved error reporting when loading extension modules and EXPath packages. fn:format-number now returns correct error code: FODF1310. Fixed decimal formatting in fn:format-number. Fixed QName equality comparison error code, to correctly return XPTY0004. fn:analyze-string now adheres to XQuery Regular Expression syntax and not the wider Java Regular Expression syntax. fn:doc-available now only raises FODC0005 if the supplied URI is invalid. Fixed Font Resolution when using Apache FOP via XSL-FO extension module. Fixed a StackOverflowException in the History Trigger. Fix to ensure that only signed dependencies end-up in the WAR build.

### Backwards Compatibility

  • eXist-db v3.6.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.

### Downloading This Version

  • eXist-db v3.6.0 is available for download from GitHub.
  • Docker images for are available from EvolvedBinary's DockerHub.
  • Maven artifacts are available from our mvn-repo.
  • Mac users of the Homebrew package repository may acquire eXist 3.6.0 directly from there.

eXist-db v3.5.0

# Release Notes

## v3.5.0 - September 27, 2017

eXist-db v3.5.0 has just been released. This is a minor release, which contains several new features and bug fixes.

### Features

  • Improvements to Core Level 1 DOM compliance.
  • Implemented missing functions fn:tokenize#1 and fn:node-name#0.
  • Regular Expressions are now Cached (e.g. fn:analyze-string, fn:matches, fn:replace, fn:tokenize and util:get-fragment-between).
  • Updated the EXPath HTTP Client:
    • Added support for non-chunked HTTP 1.1.
    • Pools connections to improve performance.
    • Added support for SNI (Server Name Identification).
    • Fixed DOM issues with namespace URI handling.
  • Upgraded to Jetty 9.4.6.v20170531.
  • Upgraded to Apache Tika 1.16.
  • Upgraded to Apache FOP 2.2 and improve FO processor logging.
  • Upgraded various dependencies to the latest versions (Caffeine, Apache Commons, j8fu, Jackson, Jing, Log4J, Quartz Scheduler, and Slf4j).
  • The data directories and memory settings can now be templated via build.properties.
### Apps The bundled applications of the Demo Apps, Documentation, eXide, Function Docs, and Monex have all been updated to the latest versions.
### Bug fixes Mixed-Content is now correctly serialized to JSON rather than skipped. Fixed a NullPointerException when updating an attribute on an element in the non-default namespace which had a Lucene index defined. Arrow operator now works correctly again in user defined functions. Fixed selection of Processing Instructions by target. Fixed a locking issue when writing temporary documents. Fixed a Transaction Closed log warning in the XML:DB API. Extensions are now also signed as part of the installer. Fixed an issue with quoted paths and white-space in Windows batch files. Node#hasChildNodes no longer includes attributes. Fixed parameter handling bugs in the functions fn:tokenize#2, and fn:tokenize#3. Fixed the handling of q and x regex flags for fn:matches, fn:replace and fn:tokenize. Fixed the fn:local-name#0, fn:name#0 and fn:namespace-uri#0 functions to correctly work with the context item. The embedded Jetty server now uses the JVM's temporary folder for temporary files. Fixed compatibility with Eclipse IDE project files. * Corrected the description of the xmldb:clear-lock function.

### Backwards Compatibility

  • eXist-db v3.5.0 is backwards binary-compatible as far as v3.0, but not with earlier versions. Users upgrading from previous versions should perform a full backup and restore to migrate their data.

### Downloading This Version

eXist-db v3.5.0 is available for download from GitHub. Maven artifacts for eXist-db v3.5.0 are available from our mvn-repo. Mac users of the Homebrew package repository may acquire eXist 3.5.0 directly from there.

eXist-db v3.4.1

# Release Notes

## v3.4.1 - August 16, 2017

eXist-db v3.4.1 has just been released. This is a hotfix release, which contains bug fixes for several important issues discovered since eXist-db v3.4.0.

We recommend that all users of eXist 3.4.0 should upgrade to eXist 3.4.1.

### Bug fixes Fixed a regression related to XQuery Module cleanup and util:eval which was introduced in eXist-db 3.4.0. Fixed the signing of the core Jar files (start.jar, exist.jar, and exist-optional.jar). This is required for using the Java Admin Client via. Java WebStart. Corrected the argument parser in ExportMain which is used for some backup scenarios. Previously ExportMain would exit after startup with an error. Fixed removal of an existing backup directory when starting a backup from the Java Admin Client. Previously the directory would always have been deleted; even when the user chose to preserve it. xs:base64Binary and xs:hexBinary backing InputStreams which were cached to a file now #mark(int)/#reset() correctly after reading. Extraneous whitespace is now stripped from XQDoc output provided to the Inspection XQuery extension module. * Corrected the dependency references in the NetBeans project files.

### Backwards Compatibility

  • eXist-db v3.4.1 is backwards binary-compatible as far as v3.0, but not with earlier versions. Users upgrading from previous versions should perform a full backup and restore to migrate their data.

### Downloading This Version

eXist-db v3.4.1 is available for download from GitHub. Maven artifacts for eXist-db v3.4.1 are available from our mvn-repo. Mac users of the Homebrew package repository may acquire eXist 3.4.1 directly from there.

TEI Publisher v2.2.0

mobile.png

We're pleased to announce that the eXist-based TEI Publisher has been released in version 2.2.0. Besides numerous fixes, the most notable change is an improved responsive design. Browsing and navigation should now work flawlessly on mobile devices. Other changes:

  • Drop /works prefix from document paths to simplify URLs
  • Renditions defined in tei header were no longer applied
  • Fix image resolving for generated apps
  • Allow documents to be deleted via UI
  • Include direct link to uploaded document

## Important note

This version also requires an update to the library package tei-publisher-lib, which is not backwards compatible with older releases. If you generated an app, it may throw an error after the update.

To fix this, run .../your-app/modules/lib/regenerate.xql once from within the browser or eXide.

## Installation

TEI Publisher is available via eXist's package manager in the dashboard. It requires at least eXist 3.1.0.