Skip to content

Releases: evolvedbinary/elemental

Elemental 7.5.0

30 Dec 23:59
26f501d

Choose a tag to compare

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

Change Log

A big thank you to @KitWallace, @ndw, @daliboris, @mMoliere, @PieterLamers, and @nverwer for reporting issues and/or sending code.

Features

  1. 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)

  2. Implemented the missing XQuery prolog setters declare default decimal-format and declare decimal-format; these can now be used by fn:format-number - #152

  3. An additional xmldb:xupdate#3 XQuery 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

  4. Database configuration can now be loaded from an java.io.InputStream which can be helpful when embedding the database in your own applications - #129

Bug Fixes

  1. Substantial improvements to XPath Axes navigation for the expressions: //following::node(), //function(following::node()), //preceding::node(), //function(preceding::node()), and //(@my-attribute) - #163

  2. Reduction in memory use and increase in performance for the intersect and except XPath expressions - #163

  3. Reduced the memory use of Sequences and increased their performance - #163

  4. Fixed a bug in removing duplicate nodes from Sequences - #163

  5. The XPath fn:format-number function now passes all applicable W3C XPath and XQuery 3.0 Tests - #152 (Closes issue: eXist-db/exist/issues/5943)

  6. Memory use by XUpdate operations has been reduced - #127

  7. If the EXPath Package autodeploy folder does not exist it will be logged as a warning and not raise a critical error - #128

  8. Restored compatibility with the EXPath Crypto Module - #136

  9. Executing a XUpdate without conditional expressions no longer causes an error - #138

  10. 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

31 Dec 00:04
7779fab

Choose a tag to compare

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

Change Log

A big thank you to @KitWallace, @ndw, @daliboris, @mMoliere, @PieterLamers, and @nverwer for reporting issues and/or sending code.

Features

  1. 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)

  2. Implemented the missing XQuery prolog setters declare default decimal-format and declare decimal-format; these can now be used by fn:format-number - #155

  3. An additional xmldb:xupdate#3 XQuery 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

  4. Database configuration can now be loaded from an java.io.InputStream which can be helpful when embedding the database in your own applications - #134

Bug Fixes

  1. Substantial improvements to XPath Axes navigation for the expressions: //following::node(), //function(following::node()), //preceding::node(), //function(preceding::node()), and //(@my-attribute) - #164

  2. Reduction in memory use and increase in performance for the intersect and except XPath expressions - #164

  3. Reduced the memory use of Sequences and increased their performance - #164

  4. Fixed a bug in removing duplicate nodes from Sequences - #164

  5. The XPath fn:format-number function now passes all applicable W3C XPath and XQuery 3.0 Tests - #155 (Closes issue: eXist-db/exist/issues/5943)

  6. Memory use by XUpdate operations has been reduced - #132

  7. If the EXPath Package autodeploy folder does not exist it will be logged as a warning and not raise a critical error - #133

  8. Restored compatibility with the EXPath Crypto Module - #137

  9. Executing a XUpdate without conditional expressions no longer causes an error - #139

  10. 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

31 Oct 07:33
17d1536

Choose a tag to compare

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

Change Log

Thank you to @mMoliere for reporting the issue issue.

Bug Fixes

  1. Fixed a StackOverFlowError introduced to in-memory nodes in 816a2c6 - #123

Full Changelog: elemental-7.4.0...elemental-7.4.1

Elemental 7.4.0

30 Oct 14:46
a5f62fe

Choose a tag to compare

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

Change Log

A big thank you to @ndw, @raducoravu, @nverwer, @steviebarrett, and @mMoliere for reporting issues.

Features

  1. 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)
  2. External variables of all XDM types can now be bound and sent to the REST and XML:DB APIs - #108
  3. 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)
  4. Optimised the execution of fn:reverse which has improved its performance - #90
  5. Added the Java Annotation @XSuite.XSuiteConfig that allows XSuite XQuery Test Suites to be configured by annotation - #97
  6. Improved JavaDoc around REST Server query parameters - #66 (Closes issue: eXist-db/exist#5844)

Bug Fixes

  1. Security Account Metadata is now correctly preserved - #106 (Closes issue: eXist-db/exist/issues/5904)
  2. 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)
  3. Processing Instruction persistent DOM nodes now correctly return their target as their node name - #110 (Closes issue: eXist-db/exist/issues/5923)
  4. The prefix of XPath Standard Library functions is now shown in the output from Profiling - #84
  5. RESTXQ Resource Functions now show the correct line number from the source code when they raise an error - #86
  6. The Collection Cache used by node sets can now be released automatically if there is high memory pressure - #112
  7. Database statistics are now solely logged to the statistics.log file - #115
  8. The Services Manager now correctly identifies its log messages as coming from itself - #82
  9. Improvements to some XPath/XQuery error codes - #c645867

Full Changelog: elemental-7.3.0...elemental-7.4.0

Elemental 6.8.1

30 Oct 21:57
b0edeae

Choose a tag to compare

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

Change Log

Thank you to @mMoliere for reporting the issue issue.

Bug Fixes

  1. Fixed a StackOverFlowError introduced to in-memory nodes in 7044baa - #124

Full Changelog: elemental-6.8.0...elemental-6.8.1

Elemental 6.8.0

30 Oct 14:05
9635bed

Choose a tag to compare

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

Change Log

A big thank you to @ndw, @raducoravu, @nverwer, @steviebarrett, and @mMoliere for reporting issues.

Features

  1. 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)
  2. External variables of all XDM types can now be bound and sent to the REST and XML:DB APIs - #109
  3. 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)
  4. Optimised the execution of fn:reverse which has improved its performance - #91
  5. Added the Java Annotation @XSuite.XSuiteConfig that allows XSuite XQuery Test Suites to be configured by annotation - #98
  6. Improved JavaDoc around REST Server query parameters - #104 (Closes issue: eXist-db/exist#5844)

Bug Fixes

  1. Security Account Metadata is now correctly preserved - #107 (Closes issue: eXist-db/exist/issues/5904)
  2. 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)
  3. Processing Instruction persistent DOM nodes now correctly return their target as their node name - #111 (Closes issue: eXist-db/exist/issues/5923)
  4. The prefix of XPath Standard Library functions is now shown in the output from Profiling - #85
  5. RESTXQ Resource Functions now show the correct line number from the source code when they raise an error - #87
  6. The Collection Cache used by node sets can now be released automatically if there is high memory pressure - #113
  7. Database statistics are now solely logged to the statistics.log file - #116
  8. The Services Manager now correctly identifies its log messages as coming from itself - #83
  9. Improvements to some XPath/XQuery error codes - #5874056

Full Changelog: elemental-6.7.0...elemental-6.8.0

Elemental 7.3.0

01 Sep 00:59
26b788f

Choose a tag to compare

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

Change Log

A big thank you to @mMoliere and @lguariento for reporting issues.

Features

  1. Elemental Docker Images now have the latest TimeZone data, SSL Certificates, and Elemental now runs under the edb01 system account. A debug user has also been added to the debug Docker Image - #69
  2. Improved the Elemental branding of the packaged Apps - #64
  3. Replaced Eclipse AspectJ with a custom Java Compiler Annotation Processor - #75

Bug Fixes

  1. Small fixes and improvements to namespace coalescence - #62 (Closes issue: #61)
  2. 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

31 Aug 23:59
8cbfebd

Choose a tag to compare

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

Change Log

A big thank you to @mMoliere and @lguariento for reporting issues.

Features

  1. Elemental Docker Images now have the latest TimeZone data, SSL Certificates, and Elemental now runs under the edb01 system account. A debug user has also been added to the debug Docker Image - #70
  2. Improved the Elemental branding of the packaged Apps - #65
  3. Replaced Eclipse AspectJ with a custom Java Compiler Annotation Processor - #76

Bug Fixes

  1. Small fixes and improvements to namespace coalescence - #63 (Closes issue: #61)
  2. 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

22 Jul 00:34
8e3f401

Choose a tag to compare

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

Change Log

A big thank you to @lguariento for quickly testing and alerting us to the two issues.

Bug Fixes

  1. Allow the filter functions used by the extract functions of the Compression Module to accept an xs:anyURI for their $path argument instead of an xs: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

  2. 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

21 Jul 02:15
02311c5

Choose a tag to compare

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

Change Log

A big thank you to @aljopainter, @lguariento, and @ahenket, for testing and submitting issues.

Features

  1. Allow the redirect type to be specified in the URL Rewrite Controller - #13 (Closes issue: eXist-db/exist#5038)
  2. 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)
  3. A new simple build script to help developers build Elemental from source code, just run ./build.sh --help (Unix/Linux/macOS) or build.bat --help (Windows) for instructions - #15

Bug Fixes

  1. 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)
  2. 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)
  3. Fixed issues with Monitoring and Profiling statistics and export via JMX (as used by tools like Monex) - #10 (Closes issue: #6)
  4. Exposed underlying type check errors that occur in deferred function calls - #14 (Closes issue: eXist-db/exist#5139)
  5. XDM Array and Map types can now be serialized over the XML:DB API - #16 (Closes issue: eXist-db/exist#4919)
  6. Attribute QNames are now correctly handled within conditions of the Range Index config - #17 (Closes issue: eXist-db/exist#5189)
  7. Improved spec. compliance of fn:parse-xml-fragment so 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)
  8. Improved spec. compliance so that all elements passed to fn:xmj-to-json that are missing fn namespace, cause a FOJS0007 warning to be logged - #29 (Closes issue: eXist-db/exist#5543)
  9. Jetty access requests are now correctly logged to a rotating request.log file and not elemental.log - #11

Security

  1. Enforce that the jmxservlet.token file is not world readable on Unix/Linux/macOS systems - 77d0089

Optimisations

  1. Use existing address when reindexing nodes - 8b12754
  2. Reuse the CRC32 checksum object when compressing many files in the Compression Module - dd4a117
  3. Reduce opportunities for over eager retrieval of persistent Nodes - 696112c
  4. Optimise wrapping of persistent DOM Nodes in a Node Proxy - bf262bd
  5. Optimise updating Node Proxies - c2205cf
  6. Optimise retrieval of the Document Element for persistent documents - 5d795de
  7. Make combining two NodeListImpl more efficient - bf86185
  8. Replace StringWriter with StringBuilderWriter - b467f03
  9. Reuse StringBuilderWriter when serializing multiple items - 32b9dd2

Full Changelog: elemental-7.1.0...elemental-7.2.0