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_id
instead of theuser
reserved 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
__traceDebug
to 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
WorkCalendarDefinitions
notworkCalendars
. 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
debug
flag 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
id
andlabel
tostateTransitionInstance
. - 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
workCalendarEntries
to equipment versions. - Include Kafka in the enum values for data sources.
- Added optional
InformationObjectTypeEnum
toOperationsEventRecordEntry
.
Fixes
- Add 0:N relationship from
materialRequirements
tomaterialActual
. - The
segmentResponse
entity can now have multiplejobResponses
attached. - Change
segmentResponse
relationship toJobResponse
to be a 1:N relationship - ⚠️Breaking
. Change
stateModelTransition
fromstate
to a relationship. - Fix inverse relationship between
operationseventDefinitionProperty
andoperationsEventProperty
.
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:f796ac698ebde6bb5f7dd08bb11246e4658abf2b8d61bf3299cd01f3ae48c19e
Download v3.0.1-checksums.txt
Upgrade
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
libre
realm. - 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.