Releases: IHTSDO/snowstorm
Release 8.2.2
8.2.2 Release (June 2023)
This release adds the ability to load, persist and search the RF2 Identifier file (e.g. sct2_Identifier_Snapshot_INT_20230509.txt).
As well as this, several critical security vulnerabilities have been fixed with a mechanism implemented to fix any future
critical security vulnerabilities more easily. Other general bug fixes and improvements have also been made.
Features
- MAINT-2144 Support loading, persisting and searching of the RF2 Identifier file (sct2_Identifier_Snapshot_INT_20230509.txt).
Improvements
- CRS-713 Improve the code system versioning and upgrade process by sending message to JMS topic when versioning.
- PIP-248 Fix several critical security vulnerabilities.
- PIP-268 Upgrade spring-boot to 2.7.12.
- PIP-270 Upgrade tomcat-embed library from 9.0.73 to 9.0.74.
- PIP-215 Change logging of ECL statement from
info
todebug
when finding Concept identifiers. - MAINT-1984 Rename content promotion endpoint from
concepts/donate
toconcepts/copy
. - MAINT-2106 Improve IntegrityIssueReport returned from API when error occurs during merging.
- MAINT-2145 Return Concept's alternative Identifier, if available, from API response.
- MAINT-2166 Allow users with
PROJECT_LEAD
permission to upgrade a CodeSystem. - MAINT-2165 Add endpoint for retrieving Branch metadata (
/branches/{branch}/metadata
).
Fixes
- FRI-637 Stop rebasing from crashing when too many Branches are in scope of query.
- MAINT-2120 Stop duplicate Elasticsearch documents being created when rebasing the same Description inactivation.
- MAINT-2222 Fix Daily Build Imports no longer working with spring-boot 2.7.12
Release 8.1.0
8.1.0 Release (March 2023)
This release has an overhaul of the FHIR API 🔥 and adds support for multiple code systems within the FHIR API!
Previously Snowstorm only supported SNOMED CT but this release adds support for LOINC, ICD-10 (International), ICD-10-CM (US) and
any other code system using a FHIR package or the Custom code system format.
The custom code system format allows any local or national code system to be supported. These need to be transformed into the custom code system format before being loaded.
See Snowstorm FHIR Terminology Server documentation for details of how to load each package format and a link to the updated Postman collection for v8.
Breaking
- Elasticsearch version minimum 7.10.0, maximum 7.17.x, MUST be used (since Snowstorm 8.0.0).
- FHIR API no longer defaults to the SNOMED CT code system, now a system must always be specified. This is in alignment with the FHIR specification.
- Renamed FHIR Elasticsearch indices with
fhir_
prefix
Features
- Add FHIR support generic CodeSystems
- HL7 terminologies and many other code systems supported
- Import can use 'FHIR package' from simplifier.net
- Alternatively import can use HAPI custom code system format
- Add FHIR Support for LOINC
- Import uses LOINC package format
- Add FHIR Support for ICD-10
- Import uses ICD-10 ClaML format
- Add FHIR Support for ICD-10-CM
- Import uses ICD-10-CM native format
- Add support for FHIR ValueSets with nesting, for non-SNOMED CT value sets
Improvements
- Improve FHIR code system version resolution
- Include resolved code system version in FHIR responses
- Improved FHIR error catching and reporting
- ISTO-41 Include optional non-SNOMED CT term in ReferenceSetMembers API response
- FRI-491 Improve
autoMergedConcept
inMergeReviewConceptVersions
to be based onsourceConcept
with changes fromtargetConcept
re-applied - FRI-600 Add property to
MergeReviewConceptVersions
to indicate whethertargetConcept
is based on an older version of the CodeSystem in relation tosourceConcept
Fixes
- Various fixes for FHIR specification conformance
- MAINT-2072 Fix reversion of Historical Association ReferenceSetMembers
- FRI-492 Stop setting
targetConcept
inMergeReviewConceptVersions
to have the same state as the latest versioned content - ISTO-57 Fix pagination of CSV download
- ISTO-67 Fix bug which prevented ECL statements being converted to JSON when containing
minus
Release 8.0.0
8.0.0 Release (February 2023)
Major release with Elasticsearch 7.10.0 upgrade.
Note: Mark this as pre-prelease for now because there are more breaking changes coming for V8 in the FHIR interface.
Breaking
- Elasticsearch from 7.10.0 to 7.17.9 MUST be used with this release.
Improvements
- General
- MAINT-2018 Update Snowstorm to use Elasticsearch client 7.10.0.
- FRI-567 Add check to CodeSystem upgrade to prevent multiple sequential upgrades.
- ISTO-54 Add active flag to the Relationship target within the Concept JSON representation.
- FRI-398 Force branch paths to be in upper case.
- FRI-592 Update
generateAdditionalLanguageRefsetDelta
endpoint to work with both monthly and 6-monthly upgrades.
- Authoring
- FRI-550 Add functionality to support CodeSystem upgrades.
Fixes
- MAINT-2095 Fix browser performance search test case for ECL.
- MAINT-2081 Prevent classification statuses from becoming stuck by listening to JMS Topic instead of Queue.
Release 7.12.0
Maintenance release with bug fixes and improvements.
Improvements
- General
- MAINT-1974 Add optional configuration to allow new ReferenceSet types to be configured on branch other than MAIN.
Fixes
- MAINT-2071 Remove communication with Authoring Acceptance Gateway when completing classifications.
- MAINT-1940 Stop inactive historical associations switching module when rebasing.
- FRI-565 Correct Extension's traceability log when performing rebase after upgrading dependency.
Release 7.11.0
Maintenance release with bug fixes and improvements.
Improvements
- General
- MAINT-2037 Add
descriptionIds
as optional request parameter to/{branch}/descriptions
endpoint - MAINT-1439 Add
/user-group/{userGroup}
endpoint for retrieving permissions associated with User Group - FRI-443 Send large Traceability JMS messages in batches
- MAINT-2044 Remove unused and commented-out code in WebConfig
- MAINT-2052 Revert re-used ReferenceSetMember if no longer required
- MAINT-2037 Add
- Authoring
- FRI-480 Add new rule for ensuring defined Concepts must have at least one defining Relationship
Fixes
- MAINT-1961 Fix
/browser/{branch}/concepts/bulk
endpoint from hanging if Branch doesn't exist - MAINT-2036 Fix adding multiple, new historical associations to an inactive Concept from failing
- BROWSE-461 Fix parsing of ECL statements with nested
Parent of
andOr
operations - MAINT-1969 Fix published components from losing their released flags during rebase
- MAINT-1862 Fix
searchAfter
request parameter to work with ECL dot notation - MAINT-2051 Fix the changing of a Concept's inactivation reason from resulting in duplicate ReferenceSetMembers
Beta Release 8.1.1 - FHIR Multiple Code Systems
(This beta release replaces the previously published 8.0.0 beta and mirrors the 8.1.1 beta published in the Snowstorm-X repository)
The v8 beta has an overhaul of the FHIR API 🔥 and adds support for multiple code systems!
Previously Snowstorm only supported SNOMED CT but this beta adds FHIR support for LOINC, ICD-10 (International), ICD-10-CM (US) by loading their native release packages. In addition to this code systems can be loaded from FHIR packages.
Other national and local code systems can also to be supported using a defined "custom" code system package. These need to be transformed into this format to be loaded.
Please refer to the updated v8 FHIR API documentation for details of how to load non-SNOMED code systems. You will also find a link to the updated Postman collection for v8 there.
Breaking
- FHIR API no longer defaults to the SNOMED CT code system
- Renamed FHIR Elasticsearch indices with
fhir_
prefix
Features
- Add FHIR Support for LOINC
- Add FHIR Support for ICD-10
- Add FHIR Support for ICD-10-CM
- Add FHIR Support for Custom code systems
- Add support for loading CodeSystem resources from FHIR packages
Improvements
- Improve FHIR code system version resolution
- Resolved code system version included in FHIR responses
- Improved FHIR error catching and reporting
Fixes
- Minor fixes for FHIR specification conformance
Release 7.10.0
Maintenance release with integration support for Consul and Vault
Features
- PIP-181 Add integration support for Consul and Vault. See spring-cloud-consul and spring-vault for more information about setups and configuration.
- BROWSE-427 Add support for resolution of version specific URIs.
Improvements
- General
- MAINT-1921 Upgrade Spring Boot to 2.7.0 and migrate swagger-ui to springdoc-openapi from SpringFox.
- PIP-182 Improve Snowstorm communication with
Authoring Acceptance Gateway
(AAG) service during start-up. - FRI-475 Update security config to check roles required when
ims-security.roles.enabled
is true.
- Authoring
- MAINT-1993 Update drools rules to check active GCIs only.
- MAINT-2032 Remove old redundant ECL parser generation files.
- BROWSE-506 Use correct branch in browser for version-relative URIs.
- FRI-474 Refactor traceability log service to handle superseded changes during rebase.
- FRI-471 Allow
ADMIN
andMANAGER
roles to update code system versions. - FRI-490 Extend import APIs to allow user to specify module ids.
Fixes
- ISTO-42 Fix ECL caching bug.
- MAINT-1743 Fix loss of effective time in components saved during rebase.
- MAINT-1999 Avoid persisting refset members unnecessarily when saving concepts.
- MAINT-2003 Correct default language refset configuration for
es
Release 7.9.3
Breaking
Snowstorm now requires all ECL queries to be valid according to ECL 2.0 specification. See SNOMED CT Expression Constraint Language for more details about syntax and examples.
Features
- ISTO-16 Add support for ECL 2.0.
- MAINT-1644 Concepts donation via ECL.
Improvements
- MAINT-1960 Prevent SCTID cache setup for new partition/namespace if original request for identifiers fails.
- MAINT-1945 Updated logic of DescriptionDroolsValidationService when finding the parents that not containing a specific semantic tag.
- ISTO-32 Separate test indices for FHIR. This avoids branch already exists error when the FHIR test context does not tear down fast enough.
- FRI-460 Only returns versions of a code system when the date of release is after the current date.
- FRI-123 Add CommitServiceHookClient to ClassificationService
Fixes
- MAINT-1968 Fix code quality warnings and remove unused variables reported by LGTM.
- MAINT-1991 Delete temp file after RF2 import is done to avoid concurrency issue.
- FRI-444 Log components from the parent branch in traceability activities when changes on task are discarded during rebase.
Release 7.8.0
Maintenance release with bug fixes and improvements.
Fixes
- Fix 379 Set default Language Reference Set for a given language
- Fix 388 Update security-configuration.md documentation
Improvements
- FRI-424 Simplify
new-authoring-cycle
endpoint by removing redundant request parameters - FRI-410 Add support for circular dependencies and empty modules in MDRS generation
- MAINT-1918 Fix export of ICD-10 to appear in ExtendedMap instead of ComplexMap
- FRI-210 Improve concept merge screen to preserve International changes after Extension upgrade
- MAINT-1911 Add Description inactivation reason "GRAMMATICAL_DESCRIPTION_ERROR"
- MAINT-1828 Update version of snomed-owl-toolkit to 3.0.7
- MAINT-1841 Set transient stated Relationships to have same moduleId as parent axiom
- FRI-404 Only return versions of a CodeSystem when the date of release is after the current date
- FRI-414 Return metadata related to the Descriptor Reference Set when saving/updating a Concept
- MAINT-1902 Retain Admin user groups after restarting service
- MAINT-1807 Make Relationships move module when inactivated in an Extension
- FRI-370 Add endpoint for retrieving all semantic tags
- MAINT-1003 Reuse existing inactivation/association ReferenceSetMembers when updating metadata
Release 7.7.0
Breaking
- General
- When using
returnIdOnly
parameter; the ids returned now use 'string' rather than 'number' JSON data type, to avoid rounding. Fixes #367.
- When using
Improvements
- General
- Add
searchAfter
request parameter to/browser/{branch}/members
endpoint for querying 10K+ records. latestDailyBuild
property added toCodeSystem
- Add
- Authoring
- FRI-234 Prevent versioned content being deleted when performing rebase.
- FRI-365 When Concepts are re-activated in an extension module, various historical associations and inactivation indicators are inactivated in the same extension module.
- MAINT-1871 Fix bug in IntegrityService to handle branch paths with more than 4 levels.
- FRI-393 Simple additional module now correctly assumes it is dependent on Core Module.
- FRI-388 Use existing responseMessageStatusQueue for classification status.
- MAINT-1882 Exclude MRCM reference sets when importing IPS terminology.
- MAINT-1883 Exclude Module Dependency reference set in exported archive when
unpromotedChangesOnly
flag istrue
.