Summary
- Issue #944: Include detailMessage in `equals` and `hashCode` method of `DittoRuntimeException`. Fixed unit tests which failed because of that. (details)
- Extracted `ShardNumberCalculator` from `ShardRegionExtractor` to make the functionality re-usable and better testable. (details)
- [#964] add "notification" signal type. (details)
- [#964] add SubjectExpiryNotification and annotation-based serialization. (details)
- [#964] improve lookup time of MappingStrategies. (details)
- [#964] add notifications to Ditto protocol; fix ShardRegionExtractorTest. (details)
- [#964] add connection target topic for policy notifications. (details)
- [#964] add websocket protocol messages for policy notifications. (details)
- [#964] add "notifyBefore" to SubjectExpiry. (details)
- [#964] fix SignalFilterTest. (details)
- [#964] Fix unit tests. (details)
- Make DevOpsCommandsActor abstract to allow custom extensions (details)
- [#964] Add subject expiry notification duration to ActivateTokenIntegration. (details)
- [#964] subscribe for policy notifications in gateway and connectivity. (details)
- [#964] fix PoliciesServiceGlobalCommandRegistryTest and PoliciesRootActorTest. (details)
- Fix exception response for token integration de-/activation commands with invalid subject placeholder (details)
- #605: Add devops command to retrieve ids of all connections (details)
- #605: Add documentation for devops command to retrieve ids of all connections (details)
- #605: Add config value for number of entries recieved with one bd query from connection-snap collection (details)
- #605: Fix test (details)
- #605: fix formatting for manage connection documentation (details)
- #605 extract connection ids retrieval into separate actor, add necessary config, add actor test, add unit for new retrieve command/response (details)
- Revert "[#964] add "notifyBefore" to SubjectExpiry." Keep DittoDuration public. (details)
- Add field /announce to policy subjects. (details)
- [#964] Add "announce" field to ActivateTokenIntegration. (details)
- add documentation for arbitrary oidc claims (details)
- fixed escaping for used `{{` syntax (details)
- [#964] Rename Notification to Announcement. Rename SubjectExpiryNotification to SubjectDeletionAnnouncement. (details)
- [#964] Fix DittoProtocolAdapterTest. (details)
- Provide possibility to send generic JSON streams as chunked HTTP entities (WIP). (details)
- [#964] review: (details)
- [#964] round up SubjectAnnouncement in ActivateTokenIntegrationStrategy; add policyAnnouncementPub to PolicyPersistenceActor; fix DittoProtocolAdapterTest. (details)
- [#964] Fix ActivateTokenIntegrationStrategy. (details)
- #605: Fix documentation (details)
- Adjusted dependency to akka-serialization-jackson in bom and adjusted some tests. (details)
- Added unit test to ensure that serialization of `JsonValueSourceRef` works as expected (WIP). (details)
- Add jackson serialization annotations for JsonValueSourceRef (details)
- [#964] publish policy announcement before expiry. (details)
- Added @JsonCreator to static factory method of `JsonValueSourceRef`. This way deserialization calls the static factory which is the preferred way of object creation. Furthermore the name of the sourceRef instance field does not have to be hard-coded as String. (details)
- Added unit test for checking that serialization with jackson-cbor works for `JsonValueSourceRef`. (details)
- [#964] announce subjects when deleted. (details)
- add documentation for MongoDB requirements when using a MongoDB service; (details)
- Change CboRJsonValueSerializer config default to constants (details)
- Review: Fix anchor link. (details)
- Update README.md (details)
- [#964] first step of always keeping policy persistence actors using annoucements alive: (details)
- [#964] generalized "reconnecting behavior" of former "ReconnectActor" for connectivity to "PersistencePingActor" (details)
- [#964] fixed MappingStrategiesBuilderTest (details)
- [#964] Configure subject-announcement via the body of HTTP requests for the policy action activateTokenIntegration; improve openapi and javadoc. (details)
- Formatting health command (details)
- [#964] persist EmptyEvent handled in AbstractShardedPersistenceActor in order to get a journal entry with the "always-alive" journal tag for all connections which should be "open" (details)
- [#964] moved EmptyEvent class to upper level because of global event registry tests (details)
- [#964] do not drop policy notifications in websocket and connectivity. (details)
- adjusted/fixed some license declaration stuff in created jars (details)
- [#964] review: changed HTTP request payload of `activateTokenIntegration` POST endpoint to be wrapped in an "annoucement" JsonObject (details)
- [#964] review: pass through DittoHeaders for SubjectDeletion notification when available, build a new correlation-id if not (details)
- [#964] adjusted that an "internal server error" 500 was returned when top-level policy actions could not be applied (details)
- Do not add header mappings for MQTT connections (details)
- Create an empty header mapping for new connections (details)
- Use content-type in ditto protocol message to describe the content type of (details)
- [#964] persistence actors: always schedule activity check; decide "always-alive" flag and journal tag at the same time; remove "always-alive" tag setting from command strategies; test policy journal tags. (details)
- [#964] fix PolicyPersistenceActorTest. (details)
- Adapt documentation and set content type only if event contains payload (details)
- [#964] enhanced ExpressionResolver#resolvePartially in a way to specify an optional list of placeholder prefixes which are not allowed to be left unresolved (details)
- make headerMapping of source non-nullable (details)
- Apply mqtt mappings additionally to the configure header mappings (details)
- [#964] Add an index on journal collections for PersistencePingActor. (details)
- [#964] add comment; rename test methods; always persist empty event for open connections on ping with empty journal tag. (details)
- Add nightly build for docker images (details)
- [#964] added documentation about announcements in general and the specifically added "subjectDeletion" announcement (details)
- post merge: add missing dependency to pom.xml (details)
- [#964] send past-due announcements for new subjects post modification. (details)
- [#964] added "subjectDeletion" announcement protocol example to sitemap (details)
- Adapt dockerfile-release to download artifact from another URL (details)
- [#964] review: renamed "deletedAt" to "deleteAt" of subject deletion announcements (details)
- [#964] Move 'onEntityModified' after all other event persistence callbacks; fix persistence actor test config. (details)
- #985: Add model for ssh tunnel (details)
- put Maven repo url in double quotes (details)
- #985: Fix test error (details)
- #985: Formatting (details)
- update to latest Akka dependencies (details)
- #985: Add test for new credential types (details)
- review: fixed dead links in Ditto documentation (details)
- Move decoding of username and password to connection model (details)
- Fix error description for Message sending errors (details)
- remove no longer valid comment (details)
- Add test for policy revision update in search index; fix timer duplication. (details)
- Add blog post for Azure IoT Hub integration (details)
- removed explicit akka-serialization-jackson dependency (details)
- ThingUpdater: Force cache reload when requested to update thing. (details)
- Add SonarQube stage in multibranch for feature branch scans (details)
- update 3rd-party documents preparing Ditto 2.0 release (details)
- add swagger documentation for new Patch methods; (details)
- add new section in README.md; (details)
- review: added "PatchValue" to api-2-index.yml in order to fix broken references in generated ditto-api-2.yml (details)
- [WIP] do not report status warning after successful sync. (details)
- review: adjust just minor formatting (details)
- review: fixed test by fixing BackgroundSyncActor.getMostSevereLevelFromEvents - the most severe level was not preserved when it was caused by a "StreamTerminated" event (details)
- fixed javadoc error (details)
- Parse the criteria before validating it. This ensures that (details)
- added command for resetting the events of AbstractBackgroundStreamingActorWithConfigWithStatusReport (details)
- fixed javadoc error (details)
- Fix review findings for Azure IoT Hub integration blog post (details)
- add ThingErrorResponseAdapterTest; (details)
- #985 Add support to establish a connection via an ssh tunnel. Ssh tunnel management is done in new SshTunnelActor. The tunnel is controlled (open/close) with the existing state machine in BaseClientActor. Add connecting via tunnel for existing protocols (except Kafka, which requires multiple connections to bottstrap server and zookeeper). (details)
- #985: Fix extraction of known hosts (details)
- Introduce ConnectionUnauthorizedException which is issued for invalid (details)
- add new SearchAction error; (details)
- add license header to new test; (details)
- add since annotation; (details)
- add parameter to skip sonarqube scan during pipeline run; (details)
- if when expression to skip sonarqube scan; (details)
- #985 fix handling of error on initial mqtt connection, establish ssh tunnel when testing a connection (details)
- Validate extra field selection for connection targets (details)
- Validate selected fields of a thing for websocket sessions as well (details)
- More fixes to the azure-iot-hub-integration blog-post (details)
- renamed MergeToggle to generic FeatureToggle in order to be able to place additional (details)
- Add link to azure-iot-hub-device-simulator example to blogpost (details)
- Replaced `DittoThingSnapshotTaken` with `ThingSnapshotTaken`. (details)
- fix some typos for ThingSnapshotTaken (details)
- Made method for creating group topic public. (details)
- review: fixed @Nullable warnings and handling of null values in AmqpClientActor and surroundings (details)
- #985 review addition of ssh tunnel to connection model, add username to ssh public key credentials (details)
- #985 apply public key credentials for ssh tunnel (details)
- review: added missing javadocs (details)
- #985 simplify fingerprint verification (details)
- Change publishing date for Azure IoT Hub blogpost (details)
- Support for building arm64 ditto snapshot images (details)
- fixed bug that iterator in EventSnapshotCleanupCoordinator was not cleaned up (details)
- Fix placeholder encoding for blogpost (details)
- #985 fix loading of public key and move context information for parsing errors to ExceptionMapper (details)
- fixing a potential NPE in ThingPredicatePredicateVisitor (details)
- fixed "in" predicate comparing numbers, use comparator instead of equality (details)
- #985 fix KafkaClientActorTest (details)
- add test case for visitIn method; (details)
- #985 add validation of ssh tunnel configuration (details)
- #985 add javadoc, more logging (details)
- #985 set supported client side user auth method (details)
- #985 set exclusive public key/password identity on ssh session (no default fallbacks) (details)
- #985 rename SshPublicKeyCredentials (details)
- #985 use default mqtt connect and socket timeout (details)
- #985 limit supported ssh client authentication methods globally (details)
- #985 provide exception class name if exception message is null in connectivity error responses (details)
- #985 add some javadoc, remove TODO (details)
- #985 document ssh tunneling feature (details)
- #985 move tunneling doc to separate section and refer to it from basic section (details)
- extend ConnectivityConfigProvider to get connectivity config via dittoHeaders; (details)
- #985 reject ssh tunneling for kafka connections (details)
- #985 add reference to SSH RFC and hint about possible performance impact of using ssh tunneling (details)
- #985 fix message format of connection logs (details)
- fix failing ConnectionValidatorTest; (details)
- #985 add comment (details)
- applied sharding on the "key" of Ditto "ddata" / pub/sub extension (details)
- fixed that connection-id MDC entry was lost in InboundDispatchingActor (details)
- fixed immutability test of DefaultDistributedDataConfig (details)
- improved exception logging in InboundDispatchingActor (details)
- handle ThingMergeEvents in NormalizedMessageMapper; (details)
- Update javadoc (details)
- Update javadoc (details)
- #985 add missing javadoc, remove debug log statements (details)
- #985 add missing javadoc (details)
- always use 'application/json' as content-type for NormalizedMessageMapper; (details)
- Prioritize very active connections over inactive connections for reconnecting (details)
- Enable throttling of persistence ping actor also for tag sorted stream (details)
- Fix formatting of blogpost (details)
- Set content type in message headers instead of _context headers (details)
- fix unit tests of normalized message mapper test (details)
- #985 minor documentation fixes (details)
- #985 improve exception message if tunnel actor is started without required configuration, restart tunnel actor in case of an unexpected failure (details)
- #985 also validate ssh host, extract HostValidator interface to improve testability (details)
- #985 add note about security considerations when using ssh tunneling (details)
- Make sure to use numeric ordering for tag order (details)
- #985 Fix copyright header (details)
- #985 Add blog post for SSH tunnel for managed connections (details)
- Remove aggregation of connection priority providers from ConnectionPriorityProvider (details)
- #985 Add @since tag (details)
- Make priority of priority provider non optional (details)
- #985 Add blog findings (details)
- Fix unittests (details)
- Make priority update interval fuzzy to avoid that all connections (details)
- expand authors.yml (details)
- Log the correct key for update and get response handling errors (details)
- review: (details)
- Fix typo (details)
- Improves the priority ordering in MongoReadJournal (details)
- review: (details)
- updated readme to include trademark symbol (details)
- added trademark signs in website/docs (details)