Elemental 6.6.0
·
1640 commits
to main
since this release
This release includes a number of important bug fixes, and a few small features and optimisations. It is 100% backwards compatible with Elemental 6.5.0 (and eXist-db 6.3.0), and it should be a simple drop-in replacement for any user. Like Elemental 6.5.0 it requires Java 8.
Downloads
- Download files are below!
- Homebrew Cask: elemental@6
- Docker Image: evolvedbinary/elemental:6.6.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @aljopainter, @lguariento, and @ahenket, for testing and submitting issues.
Features
- Allow the redirect type to be specified in the URL Rewrite Controller - #34 (Closes issue: eXist-db/exist#5038)
- Coalesce the same namespaces that have different prefixes when serializing XML to provide a more natural XML output - #46 (Closes issue: eXist-db/exist#5790)
- A new simple build script to help developers build Elemental from source code, just run
./build.sh --help(Unix/Linux/macOS) orbuild.bat --help(Windows) for instructions - #36
Bug Fixes
- Fixed a number of cases whereby too many matches were returned from
ft:queryin the Lucene Full Text Index due to incorrect optimisation paths - #47 (Closes issue: eXist-db/exist#3207) - Corrected data truncation and corruption problems with Fields in the Lucene Full Text Index. Fields in the Lucene Full Text Index now correctly handle all XDM 3.1 value types - #39 (Closes issue: eXist-db/exist#5193)
- All Child Nodes of a Document Node are now accessible. This fixes an issue where EXPath Apps exported via eXide were corrupted - #31 (Closes issues: #4, #7, and #8)
- Fixed issues with Monitoring and Profiling statistics and export via JMX (as used by tools like Monex) - #32 (Closes issue: #6)
- Exposed underlying type check errors that occur in deferred function calls - #35 (Closes issue: eXist-db/exist#5139)
- XDM Array and Map types can now be serialized over the XML:DB API - #37 (Closes issue: eXist-db/exist#4919)
- Attribute QNames are now correctly handled within conditions of the Range Index config - #38 (Closes issue: eXist-db/exist#5189)
- Improved spec. compliance of
fn:parse-xml-fragmentso that it correctly hanndles Text Declarations (i.e. XML Declarations in external entities) and empty Strings as input - #33 (Closes issue: eXist-db/exist#5037) - Improved spec. compliance so that all elements passed to
fn:xmj-to-jsonthat are missingfnnamespace, cause aFOJS0007warning to be logged - #45 (Closes issue: eXist-db/exist#5543)
Security
- Enforce that the
jmxservlet.tokenfile is not world readable on Unix/Linux/macOS systems - 7473d61
Optimisations
- Allow pre-computed context sequence from Filtered expressions and Union expressions to be used - ad8012f
- Use existing address when reindexing nodes - 6afae23
- Reuse the CRC32 checksum object when compressing many files in the Compression Module - fe71ef8
- Reduce opportunities for over eager retrieval of persistent Nodes - b1b14f6
- Optimise wrapping of persistent DOM Nodes in a Node Proxy - 8b08052
- Optimise updating Node Proxies - 5ad35c8
- Optimise retrieval of the Document Element for persistent documents - 2ef616f
- Make combining two
NodeListImplmore efficient - 333c37a - Replace
StringWriterwithStringBuilderWriter- c875aa5 - Reuse
StringBuilderWriterwhen serializing multiple items - 95abee0
Full Changelog: elemental-6.5.0...elemental-6.6.0