npm fsh-sushi 3.19.0
SUSHI 3.19.0

one month ago

SUSHI 3.19.0 introduces changes to align with the evolving FHIR ecosystem as well as bug fixes and dependency updates.

What's Changed

  • Use Official Cross-Version (xver) Packages by @cmoesel in #1620
  • Replace _updatePubliser/_genonce w/ _build in sushi init by @cmoesel in #1619
  • Fix mappings in snapshot mode when parent has no mappings by @cmoesel in #1618
  • Update axios and lodash to address newly reported vulnerabilities by @snowping in #1621
  • Update Dependencies (April 2026) by @cmoesel in #1622

Use Official Cross-Version (xver) Packages

SUSHI has been using its own cross-version extension generator since 2021 (when no cross-version packages existed). At the time, SUSHI required users to indicate their intent to use cross-version extensions by specifying a cross-version dependency package in the style described by the FHIR specification here. This approach, however, has now been superseded by the new cross-version extensions packages (see FAQs). As a result, SUSHI 3.19.0 introduces the following related changes:

  • If sushi-config.yaml includes a dependency on an old style cross-version package (e.g., hl7.fhir.extensions.r5:4.0.1), it will load the corresponding new cross-version package instead (e.g., hl7.fhir.uv.xver-r5.r4). If this happens, the SUSHI logs will also instruct the user to change the dependency in the the sushi-config.yaml file.
  • If SUSHI detects a cross-version extension in FSH code that ends with [x] or %5Bx%5D (url-encoded [x]), it will automatically load the corresponding extension without the [x]/%5Bx%5D suffix, as the new cross-version extensions omit choice suffixes. If this happens, the SUSHI logs will also instruct the user to fix the extension URL in their FSH code.
  • If SUSHI detects an extension that follows the cross-version extension pattern but can't be found in the loaded cross-version package, it will log an error and direct the user to the appropriate cross-version package documentation. This may happen in cases where the old SUSHI implementation of cross-version extensions does not align with the approach of the newer implementation.
  • If SUSHI detects an extension that follows the cross-version extension pattern but the appropriate cross-version package is not loaded, it will log an error and direct the user to add the appropriate cross-version extension package as a dependency.

Replace _updatePubliser/_genonce w/ _build in sushi init

When running sushi init, SUSHI downloads IG publisher scripts. Prior to this release, SUSHI downloaded the _updatePublisher and _genonce scripts. Starting with this release, SUSHI now downloads the preferred scripts: _build.sh / _build.bat.

This update also switches the base template from fhir.base.template to fhir2.base.template.

New Contributors

Install or Update

SUSHI 3.19.0 is the latest stable release of fsh-sushi. To install or update to SUSHI 3.19.0, run the following command:

$ npm install -g fsh-sushi

To check or confirm what version of SUSHI you have installed, you can run the following command:

$ sushi -v

To revert back to the previous version of SUSHI, you can run the following command:

$ npm install -g fsh-sushi@3.18.1

Full Changelog: v3.18.1...v3.19.0

Don't miss a new fsh-sushi release

NewReleases is sending notifications on new releases.