Releases: sboesebeck/morphium
V5.1.0
some new features:
- adding some new features in messaging
- test utils methods helper
- auto unlocking of messages
- Messages can be kept or deleted after processing (even with a timeout)
- new Messaging locking mechanism, that is about 10x faster than the old one (when dealing with lots of messages)
- V5.0 introduced JDK11 compatibility
- V5.0 was a complete rewrite of the driver architecture including an optimized binary driver to access mongodb directly.
- write calls now all return a result map containing the answer from mongodb
- fix: removed unused connection in messaging
- fix: bad locking algorithm
- fix: connection handling
- drastically improved InMemoryDriver
V4.2.13
- Feature: EarlyProcessed - this allows incoming messages to be marked as "processed" before the listener is called. Standard behavior is only to be marked after a successful call. Useful for longer running processes
- Feature: messageListener
StatusInfo
. If you send a message calledmorphium.status_info
, all connected messaging systems respond with status information. Useful for debugging and monitoring. The feature can be deactivated and the name can be customized. - Fix: handling of entities with maps without generic definition
- Fix: maps without generics, which could contain a list lead to a null pointer
- Improvement:
store()
slowly becomessave()
in order to better match the MongoDB commands - improvement: messaging shouldn't handle messages that don't have a listener either.
- Adjustment of some tests
- minor improvements
Installation
Morphium V4.2.13 is available via Maven Central and on https://github.com/sboesebeck/morphium
Maven Include this snipplet in the pom.xml:
<properties>
<mongodbDriver.version>[4.1.0,)</mongodbDriver.version>
</properties>
<dependency>
<groupId>de.caluga</groupId>
<artifactId>morphium</artifactId>
<version>4.2.13</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>bson</artifactId>
<version>${mongodbDriver.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-sync</artifactId>
<version>${mongodbDriver.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-core</artifactId>
<version>${mongodbDriver.version}</version>
</dependency>
Messaging update
Added some Fixes especially for the messaging part of morphium:
- were investigating some of the edge cases of messaging and waiting for answers, fixed that
- were minimizing and correcting output
- were fixing a NPI in messaging, which might happen during exclusive message processing
Bugfix Release
Some minor fixes in Messaging:
- make base 64 handling backward compatible with Oracle JDK
- fix deadlock in Messaging
Bugfix release
This contains a minor fix for using morphium with openjdk. Releases before 4.0.3 might have problems serializing some objects.
Bugfix release
4.0 contained a rather nasty bug, that is fixed with this version. Bug was affecting Messaging.
Morphium V4.0.0
What was that again? Morphium is a sophisticated Object Mapper and Messaging System for MongoDB. It adds a lot of features to MongoDB, for example a dedicated InMemoryDriver, so that you can run all your Tests just in RAM without the need to install a MongoDB.
and good things need some time... so we are happy to announce, we just released Morphium 4.0.0. This release contains a ton of changes and improvements.
- Simplifying the API at a lot of places in code
- a lot new features and improvements for the Messaging System (Rejecting of Messages, Pausing/Unpausing of message processing, message replay upon startup, ...)
- Code quality improvements
- adding a new jackson based ObjectMapper (has to be enabled in Settings)
- Transaction Support
- Improvement of Enum handling
- lots of improvements with aggregation
- the InMemDriver does now support ChangeStreams
- and countless other changes
this is a big update which took 8 Release Candidates to test.
Morphium is available at maven central:
<dependency>
<groupId>de.caluga</groupId>
<artifactId>morphium</artifactId>
<version>4.0.0</version>
</dependency>
or here at releases.
Release Candidate #7
this fixes some things, moved back to a more reliable object mapper, improved in-memory driver
Release Candidate 5 for V4.0
This is a release candidate for V4.0.0. It does not contain more features, just a ton of enhancements, bug fixes and improvements. Especially in the messaging part of morphium.
Pre-Release
lots of new features, improvements
most importantly: new auto versioning feature, new type id feature and a transaction support (Mongodb4.0 only).
A lot of improvements for messaging!