Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[3.1.3] 2023-11-03
Added
- Added Single View name to the sv-trigger message
Changed
- updated Docker image to employ NodeJS v20
Fixed
__internal_kafka_info
property can now correctly acceptsnumber
type as key value when pr-updatesv1.0.0
are read.
[3.1.2] 2023-10-10
Fixed
- review support of custom CA certificate for Kafka Producer client
[3.1.1] 2023-10-02
Added
- message header to
sv-trigger
events to specify which schema it is employed
Changed
- upgraded
fast-data-automation-lib
tov3.1.3
to fix an issue onpr-update
events withafter
property in message payload set tonull
- updated development demo to test service functioning with multiple projections
- updated definition of
__internal__kafkaInfo
inpr-update
event to avoid conflicts with types
[3.1.0] 2023-09-25
Added
- add support for
v2.0.0
of pr-update
Changed
- update NodeJS version to
v18.18.0
[3.0.4] 2023-09-22
Added
- Added check on foreign keys to know if running strategy on both before and after is necessary
Changed
- upgraded
fast-data-automation-lib
tov3.1.2
- remove unused environment variables
READ_TOPIC_FROM_BEGINNING
andCA_CERT_PATH
. Their actual configuration can be found within the event store config file - update NodeJS version to
v18.17.1
- updated library dependencies
Fixed
- additional CA files can be added to the
ssl
config of the event store - removed printing invalid event store configuration to avoid sharing sensitive information
[3.0.3] 2023-07-25
Added
- added new metrics to monitor Kafka consumer that reads from pr-update topics
- added a docker-compose file and an example of configuration, which allows to automatically configure a demo of the Single View Trigger Generator
- added a Makefile to simplify the interaction with docker-compose and starting tests using dependencies defined in the docker-compose
Changed
- updated
fast-data-automation-lib
tov3.1.1
- updated service dependencies
[3.0.2] 2023-06-30
Fixed
- Kafka log level is mapped to the kafkajs string, not number
[3.0.1] 2023-06-27
Fixed
- Kafka brokers is a comma separated string, not an array of strings
[3.0.0] 2023-06-27
Added
- Added support for the generation of MongoDB projection changes instead of
sv-trigger
kafka messages
Breaking Changes
- kafkaProjectionChanges configMap does not support
__lookup__
strategy type anymore sincepr-updates
events forPATCH
operations are supported also by the Single View Creator - consequently, the service won't emit
sv-trigger
messages of typepatch
, in fact the propertytype
has been removed fromsv-trigger
messages altogether - kafka configuration is not passed through environment variables but through its own config map
Input Output Config
TRIGGER_TOPIC
environment variable has been generalized and renamed toEVENT_STORE_TARGET
to have meaning also with mongo collections
[2.0.1] 2023-04-14
Changed
- review error codes to be aligned with the troubleshooting guidelines
[2.0.0] 2023-04-13
Breaking Changes
- environmental variables
- renamed
STRATEGIES_FOLDER
intoMANUAL_STRATEGIES_FOLDER
- renamed
CUSTOM_FUNCTIONS_FOLDER
intoTRIGGER_CUSTOM_FUNCTIONS_FOLDER
- removed
USE_AUTOMATIC
SINGLE_VIEW_NAME
,ER_SCHEMA_FOLDER
,PROJECTION_CHANGES_SCHEMA_FOLDER
are now always required
- renamed
- manual and custom strategy functions are expected to be AsyncGenerator of
IdentifierObject
instead of returning a Promise containing a list ofIdentifierObject
Added
- added support to MongoDB v6.0
Changed
- upgraded service dependencies, among which the most relevant are
@mia-platform-internal/fast-data-automation-lib@v3
mongodb@v5
- removed dependencies not needed anymore
- refactored the service to use Mia eslint standard
- simplified the process of configurations loading removing unnecessary repetition or use cases management
- expanded tests
- refactored how the core logic and service dependencies are composed, removing the need of
fastify-pluging
- swapped ts-node with swc for transpling tests source code
- upgraded Docker image to node v18.15.0
- reviewed pipeline removing unneeded packages installation
- reduced the size of the trigger message buffer from 500 to 100 to prevent issues with JS garbage collector
Removed
- removed support to MongoDB v4.0
[1.0.1] 2023-02-24
Changed
- Added env var
READ_TOPIC_FROM_BEGINNING
to readpr-update
messages topic from the beginning - Readiness route working, improve on handling of kafka consumer heartbeat, faster service start up by removing
await
onconsumer.run
[1.0.0] 2023-01-20
Breaking Change
- Changed
kafka projections
tokafka projection updates
to match the RTU env var
[0.3.2] 2022-12-20
Fixed
- Strategy resolution matched all documents when both fields in a erSchema condition were inexistent on the starting document. Now the query does not match any documents in that case. This fix comes with @mia-platform-internal/fast-data-automation-lib: 2.3.4
[0.3.1] 2022-11-29
- Projection update messages are correctly resolved after the sending the
sv-trigger
messages
[0.3.0] 2022-11-24
Added
- Added the
neededFieldsMap
system in the strategy execution
[0.2.0] 2022-11-21
Changed
- Messages sent to TRIGGER_TOPIC are grouped and sent all at once
- Included algorithm of grouping messages based on the message key
[0.1.1] 2022-11-11
Changed
- Removed lodash and ramda functions
- Updated bucket values for the "strategy execution time" prometheus metric
- Updated
@mia-platform-internal/fast-data-automation-lib
to v2.2.1
[0.1.0] 2022-11-03
Added
- Added the strategy execution time metric
- Added the health routes (health, ready, check-up)
Changed
- updated
getStrategyFunctionFromAutomatic
insidegetStrategies
to support the new automator function withUpdateEvent
as parameter
Fixed
- Moved
resolveOffset
method from thefinally
block to thetry
block and added error rethrow insidecatch
of theconsumer.run
method
[0.0.2-rc.1] 2022-09-30
[0.0.2-rc.0] 2022-09-30
Changed
- Refactor of the main test and other files
- Renaming triggerer with trigger generator