Skip to content

SUSHI 2.7.0

Compare
Choose a tag to compare
@jafeltra jafeltra released this 15 Sep 21:05
· 200 commits to master since this release
8f45b70

SUSHI 2.7.0 includes the following enhancements and bug fixes:

  • Update to support the current R5 ballot version of the Implementation Guide resource (details below)
  • Properly validate elements on Instances that are children of slices (#1089)
  • No longer include Instances of custom resources in the ImplementationGuide JSON to support IG Publisher requirement (#1090)
  • Correct the grammar in an error message (#1142) thank you to @vadi2 for contributing this fix!

NOTE: At the time of this release, the HL7 IG Publisher crashes when attempting to process R5 IGs. This is a known issue and is expected to be fixed soon. As a result, you will not be able to do a full build of an R5 IG until the HL7 IG Publisher is fixed.

FHIR R5 Ballot ImplementationGuide Support

In a recent update, the IG Publisher now requires that any Implementation Guide published with a FHIR R5 version include an ImplementationGuide resource that is compliant to the current resource definition. If an Implementation Guide still uses FHIR R4, the R4 version of the ImplementationGuide can and should be used, as documented on chat.fhir.org here.

Because SUSHI generates this resource and there are breaking changes in the new version, this release updates the ImplementationGuide resource SUSHI generates. The following changes were made:

  • Support for the new ImplementationGuide.definition.page.name element, which replaces the R4 ImplementationGuide.definition.page.nameUrl.
  • Support for setting the new ImplementationGuide.definition.page.source[x] directly in the sushi-config.yaml file using sourceString, sourceUrl, or sourceMarkdown on an entry in pages.
  • Support for representing ImplementationGuide.definition.parameter.code as a Coding.
    • If a parameter key in sushi-config.yaml's parameters entry is in FSH code format (i.e., {system}#{code}), SUSHI will use the provided system and code as the ImplementationGuide.definition.parameter.code. For example, the following parameter could be specified:
      parameters:
          http://example.org/parameters#new-parameter: true
    • Otherwise, if the parameter key is in the GuideParameterCode system, SUSHI will set that system automatically.
    • Otherwise, SUSHI will set the system to http://hl7.org/fhir/tools/CodeSystem/ig-parameters, as documented on chat.fhir.org here.
  • Support for the new ImplementationGuide.definition.resource.isExample and ImplementationGuide.definition.resource.profile elements, which replace the R4 exampleBoolean and exampleCanonical elements.
  • Support for setting the new ImplementationGuide.definition.resource.isExample directly in the sushi-config.yaml file.
  • Support for setting the new ImplementationGuide.definition.resource.profile directly in the sushi-config.yaml file.
  • Support for setting the new ImplementationGuide.copyrightLabel directly in the sushi-config.yaml file.
  • Support for setting the new ImplementationGuide.versionAlgorithm[x] directly in the sushi-config.yaml file using versionAlgorithmString or versionAlgorithmCoding.
  • Support for setting the new ImplementationGuide.dependsOn.reason directly in the sushi-config.yaml file in an entry in dependencies.

Full Documentation

For additional documentation, refer to FSH School's SUSHI documentation and/or the FSH Specification.

Install or Update

To install or update to this release, run the following command:

$ npm install -g fsh-sushi

To revert to a previous release, run a command like the following:

$ npm install -g [email protected]

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

$ sushi -v