Published: 2021-11-18T13:00:00
Welcome to the winter-ish release of HAPI-FHIR 5.6.0!
HAPI FHIR 5.6.0 (Codename: Raccoon) brings a whole bunch of great new features, bugfixes, and more.
Highlights of this release are shown below. See the Changelog for a complete list. There will be a live Webinar (recording available on-demand afterward) on August 18 2021. Details available here: https://www.smilecdr.com/quarterly-product-release-webinar-reminder
Security Changes
- Add new RuleBuilder options which allow you to specify additional resources and search parameters which match a given compartment. More explanations of the enhancements can be found in the documentation.
- Previously, when a search query explicitly includes a search parameter that is for the same resource type but a different resource instance from the one(s) specified on the authorized list, the search narrowing interceptor would include both search parameters in the final query, resulting in an empty bundle being returned to the caller. Now, such a call will result in a 403 Forbidden error, making it more clear why no resources were returned.
- Inline match URL searches (e.g. search URLs for conditional creates, conditional updates, etc.) are now subject to the same security and access control checks as other searches.
General Client/Server/Parser Changes
- HAPI-FHIR will now index canonical references if the base url is set via property.
- Added displayLanguage support for CodeSystem $lookup operation.
- Loosened BCP47 validation to permit languages that are without region, e.g.
nl
instead of nl-DE
or nl-NL
.
- Previously,
%
symbol was causing searches to fail to return results. This has been corrected.
- Added an NDJSON parser.
- Previously, the package registry would not work correctly when externalized binary storage was enabled. This has been corrected.
CLI Tool changes:
- This PR eliminates the search coordinator threadpool, and executes searches synchronously on the HTTP client thread.
JPA Server General Changes
- Improved ordinal date searches to handle lower granularity MONTH and YEAR searches.
- Support for the
_language
search parameter has been dropped.
- FHIR Batch transaction GET operations are now executed in parallel where applicable.
- Fixed a regression which causes transactions with multiple identical ifNoneExist clauses to create duplicate data.
- Added the ability for Hibernate Search to prefix all elasticsearch tables it creates, allowing you to have multiple HAPI-FHIR's using the same elasticsearch instance.
- Support has been added for chained searches traversing contained resources much more effectively.
- Experimental additions have been made to search parameter indexing in lucene. These can be enabled via advanced property.
- Fixed a critical bug with Postgresql database which caused the VACUUMLO tool to delete data.
- A new
_id
parameter has been added to the Patient/$everything type-level operation so you can narrow down a specific list of patient IDs to export.
JPA Server Partitioning Changes
- Swagger UI is now supported in partitioned servers
Terminology Server and Validation Changes
- Provided a Remote Terminology Service implementation for the $lookup Operation.
- Support added for uploading non-current versions of LOINC ValueSets
JPA Server MDM Enhancements
_mdm
parameter support has been added to the $everything operation.
- Modified the MDM_AFTER_PERSISTED_RESOURCE_CHECKED pointcut to include additional information.
- The
$mdm-clear
operation has been refactor to use spring batch.
- Added
$mdm-create-link
operation.