Skip to content

Releases: b2ihealthcare/snow-owl

Snow Owl v9.2.0

16 May 14:47
Compare
Choose a tag to compare

API

  • New ETag, If-None-Match and Cache-Control HTTP header support (#1270)
    • Content HTTP responses now have an ETag header value generated based the queried branch reference
    • Cache-Control header value is also being returned using the api.cache_control configuration setting
      • Default value is s-maxage=0,max-age=0,must-revalidate which ensures that caching can happen but the cached response has to be revalidated before using
    • If-None-Match header is now also supported to allow clients to send the ETag value and receive a HTTP 304 Not Modified when revalidating an earlier response. This allows the cached response to be used until it is not overridden by the server with a new response.

Bugs/Improvements

  • [index] support wildcard index queries (b904b47)
  • [index] allow ObjectNode type in index documentation mapping classes (#1274)
  • [index] ensure that fast-forward merges do no produce unnecessary zero change revisions (#1281)
  • [core] api.rate_limit.capacity replaces the now deprecated api.rate_limit.overdraft configuration setting (#1270)
  • [core] fixed some serialization issues affecting certain collection types in 3rd party plugins (#)
  • [core] add -Dso.component.scan JVM argument to allow 3rd party plugins to use their own namespaces for their classpaths (#1294)
  • [snomed] RF2 import release archive validation improvements (70b6a06, 6c615e8, b297247)
  • [snomed] fix incorrect temporary directory name when building internal representation of an RF2 release during an RF2 import (a0831c7)
  • [snomed] ensure that SubAnnotationPropertyOf axioms are properly handled in the SNOMED CT tooling (#1288, #1290, #1292)
  • [snomed] fixed an issue where an incorrect identifier was returned in the RF2 import resource than the one used to request it (#1296)
  • [ecl] ensure that any term matches do not produce unnecessary low-level wildcard/regex query clauses (8391852)
  • [ecl] wild lexical searches now use the wildcard index query for better user experience (030304a)
  • [api] properly response with an HTTP 400 Bad Request response when a required query parameter is missing (#1273)
  • [api] fixed an issue where moduleId was not propagated to nested member create requests causing an HTTP 400 Bad Request response (#1276)
  • [api] fixed an issue where namespaceConceptId was not propagated to nested description and relationship create requests causing incorrect namespace value to be used for the components (#1295)
  • [fhir] fixed an issue where includeDesignations=true did not append the member designations in certain FHIR ValueSet$expand requests (#1275, dfba2b2)
  • [fhir] fixed an issue where the POST /ValueSet/$expand operation fails with an internal server error when displayLanguage is not present (e9d1866)
  • [fhir] report ECL syntax details in FHIR OperationOutcome responses (3b62aaf)
  • [fhir] make sure the ECL part in an implicit SNOMED CT Value Set url is always get decoded before evaluation (1667d1e)

Dependencies

  • Upgrade bucket4j to 8.10.1
  • Replace embedded jsr305 v3.0.2 with dedicated dependency (#1279)

Huge thanks to @abelardy for testing and providing feedback to improve ECL evaluation and FHIR ValueSet$expand operation implementations!

Snow Owl v9.1.2

20 Mar 16:29
Compare
Choose a tag to compare

Bugs/Improvements

  • [index] fixed an issue where incorrect search results were returned due to incorrect search_analyzer configuration (#1268)
  • [index] disable optional regular expression flags when performiny any kind of regexp query (#1266)
  • [fhir] fixed an issue where using both the system and version parameters could result in a resource not found error (#1266)
  • [fhir] fixed an issue where ValueSet#expand operation responded with a randomized compose definition on each request (#1266)
  • [fhir] move resource-level operations to their right place in CapabilitiesStatement (#1266)

Snow Owl v9.1.1

13 Mar 13:02
Compare
Choose a tag to compare

Bugs/Improvements

  • [core] align timestamps during versioned so that resource metadata changes are visible when requesting content with the versions createdAt timestamp (versioned state requests) (#1265)

Dependencies

Snow Owl v9.1.0

01 Mar 11:57
Compare
Choose a tag to compare

Local Code Systems

  • XLS/CSV import improvements (available in paid tiers)
    • Support auto-detecting and importing locale values for preferred terms and synonyms
    • Support auto-detecting and importing hierarchical relationships in the form of a parentId column
    • Support importing terminologies with multi-line concept definitions

Bugs/Improvements

  • [lcs] ignore BOM characters when importing a CSV file describing code system concepts
  • [lcs] detect auto-recognized column headers case insensitively
  • [loinc] remove duplicate import path segment from import API route
  • [loinc] fixed an issue that caused the LOINC import API to report a failure even if the request was valid

Dependencies

  • Bump Elasticsearch 7 to 7.17.18
  • Bump Elasticsearch 8 client to 8.12.2
  • Bump Eclipse Platform to e4.30
  • Bump Xtext to 2.33.0
  • Bump EMF to 2.35.0
  • Bump MWE2 to 2.16.0
  • Bump ECL to 2.1.5
  • Bump SLF4J to 2.0.11
  • Bump Logback to 1.4.14
  • Bump Jackson to 2.16.1
  • Bump Jetty to 12.0.3 (with Jakarta EE10)
  • Bump Spring to 6.1.3
  • Bump springdoc to 2.3.0
  • Bump Swagger libraries to 2.2.20
  • Bump Guava to 32.1.3-jre
  • Bump OWLAPI to custom 4.5.26
  • Bump Protege to custom 5.0.7
  • Bump snomed-owl-toolkit to a custom 5.1.1
  • Bump fastutil to 8.5.12
  • Bump rest-assured to 4.5.1
  • Bump mockito to 5.9.0
  • Bump bytebuddy to 1.14.11
  • Bump uuid-creator to 5.3.7
  • Bump failsafe to 3.3.2
  • Bump rxjava to 2.2.21
  • Bump netty to 4.1.106.Final
  • Bump kotlin-osgi-bundle to 1.9.22
  • Bump mapdb to 3.1.0
  • Bump failsafe to 3.2.2
  • Bump micrometer to 1.12.2
  • Bump zjsonpatch to 0.4.16
  • Bump bucket4j to 8.7.0
  • Bump hibernate validator to 8.0.1.Final
  • Bump java-jwt to 4.4.0
  • Bump jwks-rsa to 0.22.1
  • Bump testcontainers to 1.19.4
  • Add required Apache Commons libraries
  • Bump Tycho to 4.0.6

Snow Owl v8.13.0

01 Mar 11:44
Compare
Choose a tag to compare

Local Code Systems

  • XLS/CSV import improvements (available in paid tiers)
    • Support auto-detecting and importing locale values for preferred terms and synonyms
    • Support auto-detecting and importing hierarchical relationships in the form of a parentId column
    • Support importing terminologies with multi-line concept definitions

Bugs/Improvements

  • [lcs] ignore BOM characters when importing a CSV file describing code system concepts
  • [lcs] detect auto-recognized column headers case insensitively
  • [loinc] remove duplicate import path segment from import API route
  • [loinc] fixed an issue that caused the LOINC import API to report a failure even if the request was valid

Dependencies

  • Bump Elasticsearch 7 to 7.17.18
  • Bump Elasticsearch 8 client to 8.12.2
  • Bump Eclipse Platform to e4.30
  • Bump Xtext to 2.33.0
  • Bump EMF to 2.35.0
  • Bump MWE2 to 2.16.0
  • Bump ECL to 2.1.5
  • Bump SLF4J to 2.0.11
  • Bump Logback to 1.4.14
  • Bump Jackson to 2.16.1
  • Bump Jetty to 12.0.3 (with Jakarta EE10)
  • Bump Spring to 6.1.3
  • Bump springdoc to 2.3.0
  • Bump Swagger libraries to 2.2.20
  • Bump Guava to 32.1.3-jre
  • Bump OWLAPI to custom 4.5.26
  • Bump Protege to custom 5.0.7
  • Bump snomed-owl-toolkit to a custom 5.1.1
  • Bump fastutil to 8.5.12
  • Bump rest-assured to 4.5.1
  • Bump mockito to 5.9.0
  • Bump bytebuddy to 1.14.11
  • Bump uuid-creator to 5.3.7
  • Bump failsafe to 3.3.2
  • Bump rxjava to 2.2.21
  • Bump netty to 4.1.106.Final
  • Bump kotlin-osgi-bundle to 1.9.22
  • Bump mapdb to 3.1.0
  • Bump failsafe to 3.2.2
  • Bump micrometer to 1.12.2
  • Bump zjsonpatch to 0.4.16
  • Bump bucket4j to 8.7.0
  • Bump hibernate validator to 8.0.1.Final
  • Bump java-jwt to 4.4.0
  • Bump jwks-rsa to 0.22.1
  • Bump testcontainers to 1.19.4
  • Add required Apache Commons libraries
  • Bump Tycho to 4.0.6

Snow Owl v9.0.0

14 Dec 15:54
Compare
Choose a tag to compare

Breaking changes

Supported Elasticsearch versions

  • Starting from Snow Owl version 9, Elasticsearch 7.x series support has been marked as deprecated. Maintenance and security fixes will continue to be added to the system, but support will be dropped in the next major release.

API changes

  • Removed deprecated POST /login endpoint in favor of POST /token endpoint (6693bf6)
  • Removed deprecated timestamp query parameter from Bundle, CodeSystem, ValueSet, ConceptMap get by id endpoints (336eba6)
  • Removed deprecated Suggest API parameters (d1f0e33)
  • Removed deprecated codeSystemUri property from generic concept representations (27d45a5)
  • Removed charset=UTF-8 part from JSON and XML media types (#1238)
  • FHIR ConceptMap R4 and R4B representations are currently not supported. It is recommended to migrate the resource to R5 locally and then send it to Snow Owl. (see #1227)

Core

  • New, overhauled Terminology Upgrade and Analysis API (available in paid tiers) (#1193, #1197, #1211, #1237)
    • Replaces the now deprecated and removed CodeSystem Upgrade API
    • Supports upgrade of any kind of terminology resource type to a newer version dependency via content specific analysis, reporting and isolated branch management
  • Terminology Resource Collections (#1196)
    • New resource type and infrastructure that allows bundling and managing multiple resources together
    • The first supported Terminology Resource Collection instance type is SNOMED CT Reference Set Collections (available in paid tiers)
  • Add support for special resource ID suffixes and the tilde (~) path expression (#1228)
    • ~ character is an URL safe character that from now on can be used to denote direct subpaths of a resource (eg. version) or can be used by third party libraries to denote an altered/derived version of a resource that is stored and managed by another index
  • New, index schema migration infrastructure has been added to automatically migrate existing datasets when a mapping change occurs in the system (#1249, #1250, #1251)

FHIR

  • Support FHIR R5 specification (#1227)
  • Add missing properties to CapabilityStatement (#1219, #1247)
  • Add status filter support to FHIR resource search (#1217)
  • Add after and next properties to ValueSet expansions (#1216)

Bugs/Improvements

  • [index] support dynamic field expressions (e91acb4)
  • [index] support branch name and path aliases (#1209)
  • [index] revise merged revisions to avoid content duplication and/or disappearance (#1170)
  • [core] support ResourceURI values when locking content branches (#1198)
  • [core] improved lock context propagation (#1212)
  • [core] move draft resources to active status after successful versioning (7857d9f)
  • [core] fluent job wait-retry API to simplify client usage (#1233)
  • [core] prevent unnecessary post-processing after versioning a resource (#1225)
  • [core] make validation jobs cancellable (#1246)
  • [api] support timestamp filtering when expanding commits() on resource responses (#1201)
  • [api] support nested expansion of transitive resource dependencies (1560ced, 2f84339)
  • [api] support expanding resources for commit objects (e74a176, 0920bec)
  • [api] support relativeBranch parameter for resource content commits expansion (37239d9)
  • [api] add versionResourceURI property to Version representation (ace55e5)
  • [api] fix a potential NPE when trying to partially load a version object (5d27504)
  • [api] support branch metadata filtering using dynamic filters (0263b1f)
  • [snomed] keep pre-configured SNOMED CT code system locales after a successful RF2 import (#1215)
  • [snomed] minor functional and performance improvements to ECL query optimizations (#1229)
  • [snomed] report added vs. added conflicts only if there are changes in non-effectiveTime RF2 fields (6141e3e)
  • [snomed] improve performance of SNOMED CT descendant expansion (#1186)
  • [snomed] make sure concept inactivation always sets the definition status to primitive regardless of input parameters (#1241)
  • [snomed] phase out MOVED_FROM association reference set support (#1243)
  • [packaging] properly distinguish update sites and packages (#1245)

Dependencies

  • Bump supported Elasticsearch libraries to (7.17.16 #1252, 8.10.3 #1230)

Snow Owl v8.12.1

11 Sep 20:20
Compare
Choose a tag to compare

Bugs/Improvements

  • [ecl] disable synonym token filter when performing lexical matches during ECL evaluation (#1207)
  • [ecl] wild lexical matching is now case insensitive (#1208)
  • [package] fix missing JRE from Windows package (#1204)

Snow Owl v8.12.0

10 Aug 15:12
Compare
Choose a tag to compare

Core

  • Introduce new terminology resource dependency model (#1188)
    • Dependency fields extensionOf and upgradeOf became deprecated, they still function, but will be removed in the next major version
    • New dependencies array is available for all terminology resource types. Each dependency entry encapsulates a resource uri field (with optional query part) and an optional scope field to allow a more dynamic dependency graph to be built between resources

SNOMED CT

  • Expression Constraint Language query optimization improvements are now GA (#1185)

Bugs/Improvements

  • [snomed] fixed an issue where RF2 export would use the latest available SNOMED version only even if the client has specified an explicit version to export (1140b4a)
  • [validation] fixed an issue with rule664 where unpublished terms were not reported in some cases (#1190)
  • [deps] removed unused H2 database jars to eliminate security vulnerability warnings (#1191)

Snow Owl v8.11.1

26 Jul 12:03
Compare
Choose a tag to compare

Bugs/Improvements

  • [index] adjust page size dynamically for streaming queries based on the result_window configuration (#1187)
  • [index] make update_by_query and delete_by_query index write operation concurrency level configurable via the new indexByQueryConcurrencyLevel configuration setting (#1189)

Snow Owl v8.11.0

03 Jul 09:33
Compare
Choose a tag to compare

Core

  • Support ECL expressions inside expand parameters (#1183)

FHIR

  • Add new X-Owner and X-OwnerProfileAttribute headers to specify ownership properly and allow a different user to commit the change via the X-Author header (#1181)

Bugs/Improvements

  • [mrcm] include unapproved attributes when validating concepts via MRCM (#1179)
  • [snomed] fix invalid Elasticsearch query when exporting query type reference sets (#1184)
  • [api] list SNOMED CT CodeSystems first when listing resources (e0ff6b0)
  • [api] prevent returning empty path segments in resource API when field is not selected (5d2502d)
  • [api] apply boost when filtering resources by title (5880ea5)
  • [api] fix incorrect fields parameter when expanding partial version objects (fb6f2c0)
  • [api] ensure we fall back to the server default en locale in FHIR API calls (54827a1)
  • [api] fix serialization issue when selecting fields for version objects (0728b78)
  • [fhir] ensure create and update operations are not allowed for ready-only API keys (#1174)
  • [authz] ensure nested requests are being checked when committing a bulk request (#1182)
  • [performance] load only the mandatory resource fields when translating concepts between codesystems (a3abfd4)
  • [docs] upgrade API docs site to new rapidoc version (#1171)