Releases: evolvedbinary/elemental
Elemental 7.5.0
This release includes a small number of important bug fixes, and a few new features including a completely new Internet Media Type sub-system (that replaces the previous Mime Table that was inherited from eXist-db). It is 100% backwards compatible with Elemental 7.4.1, and it should be a simple drop-in replacement for any user. Like Elemental 7.4.1 it requires Java 21.
Downloads
- Download files are below!
- Homebrew Cask: elemental
- Docker Image: evolvedbinary/elemental:7.5.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @KitWallace, @ndw, @daliboris, @mMoliere, @PieterLamers, and @nverwer for reporting issues and/or sending code.
Features
-
A completely new Internet Media Type sub-system that replaces the previous Mime Table that was inherited from eXist-db. The new approach is shipped with a database of almost 2,000 Media Types, and is highly configurable - #148 (Closes issues: eXist-db/exist/issues/3608, and eXist-db/exist/issues/5834)
-
Implemented the missing XQuery prolog setters
declare default decimal-formatanddeclare decimal-format; these can now be used byfn:format-number- #152 -
An additional
xmldb:xupdate#3XQuery function that allows you to apply an XUpdate to a single document, previously you could only apply it to an entire collection of documents - #131 -
Database configuration can now be loaded from an
java.io.InputStreamwhich can be helpful when embedding the database in your own applications - #129
Bug Fixes
-
Substantial improvements to XPath Axes navigation for the expressions:
//following::node(),//function(following::node()),//preceding::node(),//function(preceding::node()), and//(@my-attribute)- #163 -
Reduction in memory use and increase in performance for the
intersectandexceptXPath expressions - #163 -
Reduced the memory use of Sequences and increased their performance - #163
-
Fixed a bug in removing duplicate nodes from Sequences - #163
-
The XPath
fn:format-numberfunction now passes all applicable W3C XPath and XQuery 3.0 Tests - #152 (Closes issue: eXist-db/exist/issues/5943) -
Memory use by XUpdate operations has been reduced - #127
-
If the EXPath Package
autodeployfolder does not exist it will be logged as a warning and not raise a critical error - #128 -
Restored compatibility with the EXPath Crypto Module - #136
-
Executing a XUpdate without conditional expressions no longer causes an error - #138
-
Query identity in the JMX process output is now correctly grouped - #160 (Closes issue: eXist-db/monex/issues/299)
Full Changelog: elemental-7.4.1...elemental-7.5.0
Elemental 6.9.0
This release includes a small number of important bug fixes, and a few new features including a completely new Internet Media Type sub-system (that replaces the previous Mime Table that was inherited from eXist-db). It is 100% backwards compatible with Elemental 6.8.1 (and eXist-db 6.3.0), and it should be a simple drop-in replacement for any user. Like Elemental 6.8.1 it requires Java 8.
Downloads
- Download files are below!
- Homebrew Cask: elemental@6
- Docker Image: evolvedbinary/elemental:6.9.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @KitWallace, @ndw, @daliboris, @mMoliere, @PieterLamers, and @nverwer for reporting issues and/or sending code.
Features
-
A completely new Internet Media Type sub-system that replaces the previous Mime Table that was inherited from eXist-db. The new approach is shipped with a database of almost 2,000 Media Types, and is highly configurable - #149 (Closes issues: eXist-db/exist/issues/3608, and eXist-db/exist/issues/5834)
-
Implemented the missing XQuery prolog setters
declare default decimal-formatanddeclare decimal-format; these can now be used byfn:format-number- #155 -
An additional
xmldb:xupdate#3XQuery function that allows you to apply an XUpdate to a single document, previously you could only apply it to an entire collection of documents - #135 -
Database configuration can now be loaded from an
java.io.InputStreamwhich can be helpful when embedding the database in your own applications - #134
Bug Fixes
-
Substantial improvements to XPath Axes navigation for the expressions:
//following::node(),//function(following::node()),//preceding::node(),//function(preceding::node()), and//(@my-attribute)- #164 -
Reduction in memory use and increase in performance for the
intersectandexceptXPath expressions - #164 -
Reduced the memory use of Sequences and increased their performance - #164
-
Fixed a bug in removing duplicate nodes from Sequences - #164
-
The XPath
fn:format-numberfunction now passes all applicable W3C XPath and XQuery 3.0 Tests - #155 (Closes issue: eXist-db/exist/issues/5943) -
Memory use by XUpdate operations has been reduced - #132
-
If the EXPath Package
autodeployfolder does not exist it will be logged as a warning and not raise a critical error - #133 -
Restored compatibility with the EXPath Crypto Module - #137
-
Executing a XUpdate without conditional expressions no longer causes an error - #139
-
Query identity in the JMX process output is now correctly grouped - #161 (Closes issue: eXist-db/monex/issues/299)
Full Changelog: elemental-6.8.1...elemental-6.9.0
Elemental 7.4.1
This release contains only one small bug fix that was discovered after the release of version 7.4.0. It is 100% backwards compatible with Elemental 7.4.0, and it should be a simple drop-in replacement for any user. Like Elemental 7.4.0 it requires Java 21.
Downloads
- Download files are below!
- Homebrew Cask: elemental
- Docker Image: evolvedbinary/elemental:7.4.1
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
Thank you to @mMoliere for reporting the issue issue.
Bug Fixes
Full Changelog: elemental-7.4.0...elemental-7.4.1
Elemental 7.4.0
This release includes a small number of important bug fixes, and a few new features. It is 100% backwards compatible with Elemental 7.3.0, and it should be a simple drop-in replacement for any user. Like Elemental 7.3.0 it requires Java 21.
Downloads
- Download files are below!
- Homebrew Cask: elemental
- Docker Image: evolvedbinary/elemental:7.4.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @ndw, @raducoravu, @nverwer, @steviebarrett, and @mMoliere for reporting issues.
Features
- All XDM Item types can now be serialised over the REST and XML:DB APIs - #108 (Closes issues: #68, eXist-db/exist#4919, and eXist-db/exist#5910)
- External variables of all XDM types can now be bound and sent to the REST and XML:DB APIs - #108
- Elemental's eXist-db REST API is now documented in OpenAPI format - elemental-exist-rest-api/1.0.0 (Closes issue: eXist-db/exist#5843)
- Optimised the execution of
fn:reversewhich has improved its performance - #90 - Added the Java Annotation
@XSuite.XSuiteConfigthat allows XSuite XQuery Test Suites to be configured by annotation - #97 - Improved JavaDoc around REST Server query parameters - #66 (Closes issue: eXist-db/exist#5844)
Bug Fixes
- Security Account Metadata is now correctly preserved - #106 (Closes issue: eXist-db/exist/issues/5904)
- Binding an external variable to a query that does not declare it via the REST or XML:DB APIs now raises an error - e2e0512, and cfcae5e (Closes issue: #67)
- Processing Instruction persistent DOM nodes now correctly return their target as their node name - #110 (Closes issue: eXist-db/exist/issues/5923)
- The prefix of XPath Standard Library functions is now shown in the output from Profiling - #84
- RESTXQ Resource Functions now show the correct line number from the source code when they raise an error - #86
- The Collection Cache used by node sets can now be released automatically if there is high memory pressure - #112
- Database statistics are now solely logged to the
statistics.logfile - #115 - The Services Manager now correctly identifies its log messages as coming from itself - #82
- Improvements to some XPath/XQuery error codes - #c645867
Full Changelog: elemental-7.3.0...elemental-7.4.0
Elemental 6.8.1
This release contains only one small bug fix that was discovered after the release of version 6.8.0. It is 100% backwards compatible with Elemental 6.8.0 (and eXist-db 6.3.0), and it should be a simple drop-in replacement for any user. Like Elemental 6.8.0 it requires Java 8.
Downloads
- Download files are below!
- Homebrew Cask: elemental@6
- Docker Image: evolvedbinary/elemental:6.8.1
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
Thank you to @mMoliere for reporting the issue issue.
Bug Fixes
Full Changelog: elemental-6.8.0...elemental-6.8.1
Elemental 6.8.0
This release includes a small number of important bug fixes, and a few new features. It is 100% backwards compatible with Elemental 6.7.0 (and eXist-db 6.3.0), and it should be a simple drop-in replacement for any user. Like Elemental 6.7.0 it requires Java 8.
Downloads
- Download files are below!
- Homebrew Cask: elemental@6
- Docker Image: evolvedbinary/elemental:6.8.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @ndw, @raducoravu, @nverwer, @steviebarrett, and @mMoliere for reporting issues.
Features
- All XDM Item types can now be serialised over the REST and XML:DB APIs - #109 (Closes issues: #68, eXist-db/exist#4919, and eXist-db/exist#5910)
- External variables of all XDM types can now be bound and sent to the REST and XML:DB APIs - #109
- Elemental's eXist-db REST API is now documented in OpenAPI format - elemental-exist-rest-api/1.0.0 (Closes issue: eXist-db/exist#5843)
- Optimised the execution of
fn:reversewhich has improved its performance - #91 - Added the Java Annotation
@XSuite.XSuiteConfigthat allows XSuite XQuery Test Suites to be configured by annotation - #98 - Improved JavaDoc around REST Server query parameters - #104 (Closes issue: eXist-db/exist#5844)
Bug Fixes
- Security Account Metadata is now correctly preserved - #107 (Closes issue: eXist-db/exist/issues/5904)
- Binding an external variable to a query that does not declare it via the REST or XML:DB APIs now raises an error - 109011, and b79467 (Closes issue: #67)
- Processing Instruction persistent DOM nodes now correctly return their target as their node name - #111 (Closes issue: eXist-db/exist/issues/5923)
- The prefix of XPath Standard Library functions is now shown in the output from Profiling - #85
- RESTXQ Resource Functions now show the correct line number from the source code when they raise an error - #87
- The Collection Cache used by node sets can now be released automatically if there is high memory pressure - #113
- Database statistics are now solely logged to the
statistics.logfile - #116 - The Services Manager now correctly identifies its log messages as coming from itself - #83
- Improvements to some XPath/XQuery error codes - #5874056
Full Changelog: elemental-6.7.0...elemental-6.8.0
Elemental 7.3.0
This release includes a small number of important bug fixes, and a few new features. It is 100% backwards compatible with Elemental 7.2.1, and it should be a simple drop-in replacement for any user. Like Elemental 7.2.1 it requires Java 21.
Downloads
- Download files are below!
- Homebrew Cask: elemental
- Docker Image: evolvedbinary/elemental:7.3.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @mMoliere and @lguariento for reporting issues.
Features
- Elemental Docker Images now have the latest TimeZone data, SSL Certificates, and Elemental now runs under the
edb01system account. Adebuguser has also been added to the debug Docker Image - #69 - Improved the Elemental branding of the packaged Apps - #64
- Replaced Eclipse AspectJ with a custom Java Compiler Annotation Processor - #75
Bug Fixes
- Small fixes and improvements to namespace coalescence - #62 (Closes issue: #61)
- Reduced the amount of superfluous messages that are output at database startup - #73
Full Changelog: elemental-7.2.1...elemental-7.3.0
Elemental 6.7.0
This release includes a small number of important bug fixes, and a few new features. It is 100% backwards compatible with Elemental 6.6.1 (and eXist-db 6.3.0), and it should be a simple drop-in replacement for any user. Like Elemental 6.6.1 it requires Java 8.
Downloads
- Download are below!
- Homebrew Cask: elemental@6
- Docker Image: evolvedbinary/elemental:6.7.0
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @mMoliere and @lguariento for reporting issues.
Features
- Elemental Docker Images now have the latest TimeZone data, SSL Certificates, and Elemental now runs under the
edb01system account. Adebuguser has also been added to the debug Docker Image - #70 - Improved the Elemental branding of the packaged Apps - #65
- Replaced Eclipse AspectJ with a custom Java Compiler Annotation Processor - #76
Bug Fixes
- Small fixes and improvements to namespace coalescence - #63 (Closes issue: #61)
- Reduced the amount of superfluous messages that are output at database startup - #74
Full Changelog: elemental-6.6.1...elemental-6.7.0
Elemental 7.2.1
This release contains only two small bug fixes that were discovered after the release of version 7.2.0. It is 100% backwards compatible with Elemental 7.2.0, and it should be a simple drop-in replacement for any user. Like Elemental 7.2.0 it requires Java 21.
Downloads
- Download files are below!
- Homebrew Cask: elemental
- Docker Image: evolvedbinary/elemental:7.2.1
- Maven Central: https://search.maven.org/search?q=g:xyz.elemental
- Website: https://www.elemental.xyz
Change Log
A big thank you to @lguariento for quickly testing and alerting us to the two issues.
Bug Fixes
-
Allow the filter functions used by the extract functions of the Compression Module to accept an
xs:anyURIfor their$pathargument instead of anxs:string. This behaviour was undocumented in eXist-db, but it is used by the eXist-db Package Service App (see: eXist-db/existdb-packageservice#27). Restores compatibility with eXist-db 6.3.0 - #58 -
Allow Strings that contain entities to be correctly stored in fields within the Lucene Full Text Index - #59
Full Changelog: elemental-7.2.0...elemental-7.2.1
Elemental 7.2.0
This release includes a number of important bug fixes, and a few small features and optimisations. It is 100% backwards compatible with Elemental 7.1.0, and it should be a simple drop-in replacement for any user. Like Elemental 7.1.0 it requires Java 21.
Downloads
- Download files are below!
- Homebrew Cask: elemental
- Docker Image: evolvedbinary/elemental:7.2.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 - #13 (Closes issue: eXist-db/exist#5038)
- Coalesce the same namespaces that have different prefixes when serializing XML to provide a more natural XML output - #30 (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 - #15
Bug Fixes
- 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 - #23 (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 - #9 (Closes issues: #4, #7, and #8)
- Fixed issues with Monitoring and Profiling statistics and export via JMX (as used by tools like Monex) - #10 (Closes issue: #6)
- Exposed underlying type check errors that occur in deferred function calls - #14 (Closes issue: eXist-db/exist#5139)
- XDM Array and Map types can now be serialized over the XML:DB API - #16 (Closes issue: eXist-db/exist#4919)
- Attribute QNames are now correctly handled within conditions of the Range Index config - #17 (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 - #12 (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 - #29 (Closes issue: eXist-db/exist#5543) - Jetty access requests are now correctly logged to a rotating
request.logfile and notelemental.log- #11
Security
- Enforce that the
jmxservlet.tokenfile is not world readable on Unix/Linux/macOS systems - 77d0089
Optimisations
- Use existing address when reindexing nodes - 8b12754
- Reuse the CRC32 checksum object when compressing many files in the Compression Module - dd4a117
- Reduce opportunities for over eager retrieval of persistent Nodes - 696112c
- Optimise wrapping of persistent DOM Nodes in a Node Proxy - bf262bd
- Optimise updating Node Proxies - c2205cf
- Optimise retrieval of the Document Element for persistent documents - 5d795de
- Make combining two
NodeListImplmore efficient - bf86185 - Replace
StringWriterwithStringBuilderWriter- b467f03 - Reuse
StringBuilderWriterwhen serializing multiple items - 32b9dd2
Full Changelog: elemental-7.1.0...elemental-7.2.0