3.0.1
Release notes for version 3.0.1 of the Rhize application.
This release includes bug fixes, improvements for developer experience, and new relationships between entities in the ISA-95 schema. It also clears the way for the new, improved Work Calendar service (still in release candidacy).
Release date: 23 Jul 2024
Changes by service
The following sections document the changes this release brings to each service.
Audit
Fixes
- Fix Postgres user tag query to use column name
user_idinstead of theuserreserved keyword
BPMN
Features
- Error boundary events now support call-activity tasks. If a task in the called process aborts, the error boundary captures that event.
- Support Custom Certificate authorities so that the BPMN service can run in networks with internal certificates authorities.
- Message events now support topics that use the
+wildcard. - Add configuration option to set __traceDebug flag on all BPMN executions. For details, read Debug workflows.
- Allow
__traceDebugto be set from variable context. - Add support for querying a range of work calendar entries for a Work Calendar Definition.
- When configured, calendar data persists to a timeseries DB.
- ⚠️Breaking
. Work calendars now query for
WorkCalendarDefinitionsnotworkCalendars. This makes it possible to configure calendars in the UI. - Work calendar execution is now based on Hierarchy Scope.
Change
- Reduce number of retries in BPMN recovery, speeding up response times when node does not exist. From the user’s perspective, the delay was particularly notable on API BPMN triggers when the specified workflow did not exist.
Fixes
- Capture panics in JSONata go for better recovery and discovery.
- ⚠️Breaking . Limit BPMN users to only tokens with specific audience and scope.
- Workflow specifications not found in NATS now fall back to database lookups before failing. Fixes issue when spinning up new development containers.
- Include metadata fields for
jobResponse. Fixes panic if node tried to access these fields. - Respect
debugflag for BPMNs triggered withcreateAndRunBpmn. - Reuse expected Audience for clients to match documented client name.
- Do not create calendar entry for end events.
- Fix nil pointer error when aborting tasks without parents.
Schema
Features
- ⚠️Breaking
. Add
idandlabeltostateTransitionInstance. - Add menu URL for portal in UI (preparation for future work in UI).
- Add filter to query material actual by a material requirement and vice-versa.
- Link
workCalendarEntriesto equipment versions. - Include Kafka in the enum values for data sources.
- Added optional
InformationObjectTypeEnumtoOperationsEventRecordEntry.
Fixes
- Add 0:N relationship from
materialRequirementstomaterialActual. - The
segmentResponseentity can now have multiplejobResponsesattached. - Change
segmentResponserelationship toJobResponseto be a 1:N relationship - ⚠️Breaking
. Change
stateModelTransitionfromstateto a relationship. - Fix inverse relationship between
operationseventDefinitionPropertyandoperationsEventProperty.
Compatibility
- Apollo router 1.15.1
- Grafana: 9.4.7
- Keycloak: 21.1.1
- Keycloak Postgres: 15.3.0
- Loki: 2.9.3
- NATS: 2.10.17
- Tempo: 2.3.1
Checksums
When you install, check the container images against these checksums:
BPMN engine:
registry.gitlab.com/libremfg/bpmn-engine:v3.0.1
sha256:d5395f8a5a342c904367385c7996c1a8936a0eac498822191e0bd3e064dc72d3
Libre Core:
registry.gitlab.com/libremfg/libre-core:v3.0.1
sha256:9c312df6c8c08e41221f6bb68e1d3609db51cf87cc5d6d85f644d452c4617509
Libre Agent:
registry.gitlab.com/libremfg/libre-agent:v3.0.1
sha256:696a9e028ffbca5ca3820fde7223b018e88899719c7b4e784c2e86b921f61615
Libre Audit:
registry.gitlab.com/libremfg/libre-audit:v3.0.1
sha256:718d57c7e7206450bca3337f682c4782cb5222b20ae24b47ed838b5f7f963db3
Libre Audit Postgres
registry.gitlab.com/libremfg/libre-audit/postgres:v3.0.1
sha256:7629dde995db6b22020ab85c68c25be478cf54c7d6d64e5a30aab72d336432f8
Libre BaaS:
registry.gitlab.com/libremfg/baas:v3.0.1
sha256:605513936d88fb09babc7d1b38410c32674d14b6a38db1363fd0e6fbf27aaec3
Libre router init:
registry.gitlab.com/libremfg/libre-router-init:v3.0.1
sha256:32084bd47013974317aa39288c28686084500a8c51a5bfa0b2b135d5a77bb8e6
Libre Keycloak theme:
registry.gitlab.com/libremfg/frontend/libre-keycloak-theme:v3.0.1
sha256:ed9e6cd57d02c5f7177d328f40fd440021432ed874ffb64c765f1a378fd7c08a
Libre Admin UI:
registry.gitlab.com/libremfg/frontend/libre-admin-ui:v3.0.1
sha256:f796ac698ebde6bb5f7dd08bb11246e4658abf2b8d61bf3299cd01f3ae48c19eUpgrade
To upgrade to v3.0.1, first ensure that you have made corrections for the aforementioned breaking changes.
Rhize now limits BPMN users to the libreBpmn audience and bpmn:mutation role.
If users do not have this audience and role, they will unable to log in.
To fix this:
- Log in to the Keycloak service in your Rhize environment.
- Select the
librerealm. - Configure the audience and role for the Users or groups that should be able to run BPMN workflows. For details, read Install Keycloak.
Work calendars now query for workCalendarDefinitions, not workCalendars.
There is a chance this may break some calendars that already exist.
To mitigate this, ensure you set active definitions for the calendars you want to query.
Read About calendars and overrides for details about how the service and its relationships work.
After you’ve made the necessary mitigations, follow the upgrade the Upgrade instructions.
Post upgrade
Two schema changes to the state model also might cause breaking changes after upgrade. You can correct these issues by re-uploading the data.
For the specific breaks:
The StateTransitionInstance entity now has an id and label property.
Any such entities that were created without an ID and label are now invalid.
To mitigate this:
- Query for your
StateTransitionInstance:query QueryStateTransitionInstance { queryStateTransitionInstance { iid } } - Use a mutation to update these to have an ID and label.
Any existing StateModelTransitions using a from or to property will break. Change these to a relationship.