Skip to content

Releases: SoftInstigate/restheart

8.0.14

30 Sep 17:01
0b11f4a
Compare
Choose a tag to compare

Release Notes for Version 8.0.14

New Features and Enhancements:

  • Performance Optimization:
    • Optimized GraalVM polyglot context allocation using virtual threads. Introduced a context reuse queue to enhance performance. (commit: be858bbea)
    • Enabled virtual threads in CleanerUtils, contributing to improved system performance. (commit: 85223e1e4)
    • The graphAppInitializer now initializes apps on separate threads, resulting in a faster startup. (commit: 5ee61d128)

Bug Fixes:

  • Fixed missing metrics module in the native image build. (commit: 4779b8ada)
  • Fixed the plugin directory path issue in PolyglotDeployer.getPluginsDirectory(). (commit: 7861575fd)

Dependency Upgrades:

  • Upgraded Truffle to version 24.1.0. (commit: 55eb1a274)
  • Bumped mongodb-driver-sync to version 5.1.4, logback-classic to 1.5.8, and classgraph to 4.8.176. (commit: 527a17749)

Refactoring:

  • Refactored several polyglot classes for cleaner code and better maintainability. (commit: 8b32a2eed)
  • Removed per-thread caching of context objects as it no longer provided benefits with the introduction of virtual threads. (commit: a737d7e27)
  • General code refactoring to improve readability and structure. (commit: 0bf1d0e67)

Documentation:

  • Updated GRAALVM.md documentation. (commit: 5e0ca4042)

8.0.13

17 Sep 07:31
37df0e0
Compare
Choose a tag to compare

Release 8.0.13

Main fixes in this patch release:

  • Fix error in RequestLogger when URL contains illegal hex percent encoded characters
  • Disable graphAppsInitializer in standalone mode configuration

Main new commits

9ba1783 ♻️ Refactor URLUtils.decodeQueryString(exchange)
6c6e25f 🔧 Disable graphAppsInitializer in standalone mode configuration
282b573 ♻️ Remove redundant decoding of exchange.getQueryParameter() as Undertow v2.3.16.Final returns query parameters already decoded.
4c29007 ♻️ Use URLUtils.decodeQueryString(exchange) in RequestLogger
09b1e7f 🐛 Fix error in RequestLogger when URL contains illegal hex percent encoded characters

Full Changelog: https://github.com/SoftInstigate/restheart/compare/8.0.12..8.0.13

8.0.12

03 Sep 18:06
33756dc
Compare
Choose a tag to compare

Release 8.0.12

Main fixes in this patch release:

⬆️ Update undertow-core dependency to version 2.3.17.Final
✅ Adds additional docker platforms:

  • standard image
    • linux/amd64
    • linux/arm64
    • linux/ppc64le
    • linux/s390x
  • distroless image
    • linux/amd64
    • linux/arm64
    • linux/ppc64le
  • graalvm image
    • linux/amd64,
    • linux/arm64

This release also fixes a bug in the creation of tags for docker images, as some were missing.

Full Changelog: 8.0.11...8.0.12

8.0.11

02 Sep 10:18
0c7f50d
Compare
Choose a tag to compare

Release 8.0.11

🔥 Added a new configuration option graphql/app-cache-enabled (default: true). This option allows disabling the GraphQL App cache.

Disabling GraphQL App chacing can be beneficial for development and testing in multi-node environments. In such setups, updating a GraphQL App Definition immediately refreshes the cache on the handling node, but other nodes may take up to graphql/app-cache-ttr to sync, potentially causing testing delays.

Main new commits

a534c51 ✨ GQL app cache can be disabled setting configuration option /graphql/app-cache-enabled->false. This helps during testing or development

Full Changelog: 8.0.10...8.0.11

8.0.10

28 Aug 16:53
737ad48
Compare
Choose a tag to compare

Release 8.0.10

🔥 This release drastically improves GraphQL API performances under heavy workloads.

📖 Please read this blog post for detailed information on the implemented enhancements.

Note: release 8.0.9 was skipped and superseded by this one.

Main new commits

  • 92ea8be - chore: Update Dockerfile to improve package installation efficiency [skip ci] (2024-08-28 18:01:13 +0200)
  • 3795e01 - Update Maven dependencies to latest patch versions (2024-08-28 17:54:34 +0200)
  • 4a1677f - ⚡ GraphAppsUpdater updates gql app cache entries only if app def document is actually updated. Cache entries are not all invalidated on delete /gql-apps requests since GraphAppsUpdater will remove deleted apps (2024-08-27 19:13:01 +0200)
  • b6a40c2 - ⚡ Improve performance of CaffeineLoadingCache.put() method (2024-08-26 21:38:57 +0200)
  • cb5e417 - ⚗️ Experimenting performance improvements for field-ql gql typeResolver predicate (2024-08-26 16:50:28 +0200)
  • 8ed8a42 - ⚗️ Performance improvements for graphAppsUpdater (2024-08-26 13:30:50 +0200)
  • 54b15f0 - ⚗️ Experimenting performance improvements for field-ql gql typeResolver predicate (2024-08-26 12:19:55 +0200)
  • 210d00d - Fix regular expression injection: Unsanitized input from an HTTP parameter flows into replaceAll (2024-08-26 11:28:34 +0200)
  • f768d3d - ✨ Add GraphAppsUpdater to periodically revalidate entries in GQL Apps cache (2024-08-23 18:17:32 +0200)
  • 46aae12 - ⚡ Use virtual threads executor in caffeine cache async methods (2024-08-23 18:15:55 +0200)

Full Changelog: 8.0.8...8.0.10

8.0.8

23 Aug 10:37
d1b9702
Compare
Choose a tag to compare

Release 8.0.8

Bug Fixes

  • [67efd80]: Fixed a thread leak issue in ChangeStreamWorker caused by inactive change streams. This ensures better resource management and stability in the application by preventing unnecessary threads from lingering.
  • [c602cd4]: Corrected the JavaScript plugins path in the PolyglotDeployer to accommodate the new packaging structure with restheart-common.jar placed in /plugins/lib. This fix resolves issues related to plugin loading and execution.

Performance Improvements

  • [a3aa3fd]: Enhanced performance for GraphQL app definition caching. This optimization reduces the overhead and latency involved in retrieving and storing GraphQL app definitions, leading to faster response times.

Dependency Upgrades

  • [96593bd]: Upgraded Undertow to version 2.3.16.Final. This update includes important fixes and improvements to the Undertow web server, contributing to better application security and performance.
  • [a052d35]: Updated slf4j to version 2.0.16. This upgrade brings in the latest bug fixes and performance enhancements for the Simple Logging Facade for Java, ensuring more reliable logging across the application.

Full Changelog: 8.0.7...8.0.8

8.0.7

07 Aug 08:54
da410ea
Compare
Choose a tag to compare

Release 8.0.7

This is a patch release to fix CVE-2024-40094

Main new commits

  • 3203bd1 - chore: Update slf4j-api and graphql-java dependencies (2024-08-07 10:07:55 +0200)
  • 2e93ac8 - ✨ Add Class-Path to MANIFEST.MF (2024-07-17 12:00:45 +0200)
  • c574d4e - ♻️ Set all plugins' dependecies to restheart-commons as provided (2024-07-16 11:21:54 +0200)
  • 120733d - chore: Update mongodb versions in workflows to 5.0, 6.0, and 7.0 (2024-07-17 11:35:40 +0200)

Full Changelog: 8.0.6...8.0.7

8.0.6

17 Jul 10:49
d000521
Compare
Choose a tag to compare

Release 8.0.6

This is a patch releases:

  • Update undertow-core to 2.3.15.Final
  • Finalize issue #517

Full Changelog: 8.0.5...8.0.6

8.0.5

13 Jul 09:40
b2558d3
Compare
Choose a tag to compare

Release 8.0.5

This release updates dependencies to their latest patch version.

Additional notes

The build process now adds a new asset restheart-with-deps.zip (and its tar.gz version) that contains the thin restheart-core.jar plus a lib/ folder with all Maven dependencies.
This allows to use the restheart-core.jar as a proper Maven compile-time dependency instead of the fat JAR built with the shade plugin (which was not very useful as a compile-time dependency, as it brings all of its transitive dependencies with it).
See issue #517 for a complete description.

Full Changelog: 8.0.4...8.0.5

8.0.4

08 Jul 15:34
5d78dd5
Compare
Choose a tag to compare

Release Notes 8.0.4

Enhancements and Updates

  • Security Upgrade:

    • Updated Docker.native base image from debian:12.5-slim to debian:bookworm-20240701-slim for improved security and stability. [Commit: 0c68c31]
  • Dependency Upgrades:

    • Upgraded undertow to v2.3.14.Final.
    • Upgraded Truffle to v24.0.1.
    • Replaced dependency on org.graalvm.polyglot:js-community:pom with org.graalvm.js:js-language to address issue #510. [Commit: 3564c3c]

Documentation Improvements

  • Improved JavaDoc for InterceptPoint, providing clearer descriptions and usage instructions. [Commit: 3c31cc3]

Configuration Enhancements

  • Added comments to default configuration files to specify units for time options, making configuration more intuitive and user-friendly. [Commit: 0fdc8ea]

CI/CD Updates

  • Updated GitHub Actions to use version 4 for better performance and new features. [Commit: a2e3a97]