Skip to content

v0.9.0

Latest

Choose a tag to compare

@github-actions github-actions released this 30 Oct 19:33
089ba05

0.9.0 (2026-10-30)

⚠ BREAKING CHANGES

  • always rename flow ids that name their source and target, drop the keep-flow-ids mode (#127)
  • files without a .bpmnlintrc get element-id-naming's default ids even where their existing ids look different; idConventionsFromLint needs the naming namespace of @miragon/bpmnlint-plugin-rules 0.19 or later; MutationResult.conventions and the conventionsLines export are removed.
  • the bpmn-auto-layout engine is removed, together with the engine option and the --engine flag. Full redraws always use the built-in clean engine.
  • mutationWarnings, opWarnings, renderAround, renderContext, renderMetrics, decisionLinkOf, scopeView, assertLossless, kindsSectionJson, runFormatOps, viewDoc and renderShown are no longer exported from @miragon/bpmn-cli, and layoutDocToFile no longer from @miragon/bpmn-cli/node. None of them was documented in docs/library.md.
  • use c7, c8 and none as the only platform value and drop the unused in-memory store (#110)
  • the exported TypeScript names change without aliases (Op, AddOp, ... FormatOp, isFormatOp, FormatOps -> EditCommand, AddElement, ... DiagramCommand). A diagram command can no longer name an element a later command of the same batch adds (E_NOT_FOUND), and mixed batches such as add, place, add draw in their order, so their coordinates differ.

Features

  • kinds: support complex gateways in plain BPMN (#74) (#91) (d535609)
  • kinds: support groups with members tied by category value (#73) (#92) (de47b90)

Bug Fixes

  • flows: keep conditions off flows out of parallel and event-based gateways (#94) (5b7e7a6)
  • flows: refuse sequence flows out of link throw and into link catch events (#95) (8bc7e52)
  • keep a single incoming flow on targets of an event-based gateway (#132) (59a5fff), closes #78
  • keep an empty process when the last pool is removed so the file stays editable (#134) (fb6f0d9)
  • keep lane membership in step with the drawn lanes when adding and removing lanes (#133) (208146e)
  • make room only for what follows an inserted node and keep the rest of a hand-made drawing in place (#119) (a6b8447)
  • plugin: serve the plugin from the release branch, moved only after npm publish (#125) (1668579)
  • stop counting crossings with a text annotation's line as a layout problem (#139) (5c80757)
  • stop re-scanning waiting edges per routing line in incremental routing (#122) (aecf52b)
  • validate: refuse boundary events on event sub-processes (#84) (9e68e25)

Code Refactoring

  • always rename flow ids that name their source and target, drop the keep-flow-ids mode (#127) (8739607)
  • arrange src as a hexagon of domain, application and adapters (#103) (c9b4b39)
  • drop the learned id style, new ids follow element-id-naming (#118) (b998c7d)
  • make the codebase smaller and gate on duplication and test-only code (#112) (247e1e1)
  • move linting out of the domain and merge duplicated domain concepts (#116) (ef1945f)
  • use c7, c8 and none as the only platform value and drop the unused in-memory store (#110) (6ebce59)