Skip to content

@jamesagnew jamesagnew released this Aug 12, 2020 · 77 commits to master since this release

It's August, so it's time for our next quarterly release: HAPI FHIR 5.1.0 (Codename: Manticore).

Notable changes in this release include:

  • An XSS vulnerability has been fixed in the testpage overlay project. This issue affects only the testpage overlay module, but users of this module should upgrade immediately. A CVE number for this issue has been requested and will be updated here when it is assigned.

  • Support for the new FHIR NPM Package spec has been added. Currently this support is limited to JPA servers, and support should be added to plain servers in the next release. Packages can be imported on startup, either by supplying NPM files locally or by downloading them automatically from an NPM server such as packages.fhir.org. Package contents (the StructureDefinition, CodeSystem, ValueSet, etc. resources in the package) can be installed into the repository, or can be stored in a dedicated set of tables and made available to the validator without actually being installed in the repository.

  • Support for the Observation/$lastn operation has been implemented thanks to a partnership with LHNCBC/NIH. This operation uses ElasticSearch to support querying for recent Observations over a set of test codes for one or more patients in a very efficient way.

  • The FHIR PATCH operation now supports FHIRPatch in addition to the already supported XML and JSON Patch specs. FHIRPatch is a very expressive mechanism for creating patches and can be used to supply very precise patches.

  • A new operatiion called $diff has been added. Diff can be used too generate a FHIRPatch diff between two resrouces, or between two versions of the same resource. For example: http://hapi.fhir.org/baseR4/Patient/example/$diff

  • Several performance problems and occasional failures in the resource expunge operation have been corrected

  • The memory use for Subscription delivery queues has been reduced

  • Snapshot generaton now uses a single snapshot generator codebase for generating snapshots across all versions of FHIR. This makes ongoing maintenance much easier and fixes a number of version specific bugs.

  • The maximum cascade depth for cascading deletes is now configurable.

  • AuthorizationInterceptor can now fully authorize GraphQL calls, including allowing/blocking individual resources returned by the graph.

  • GraphQL now supports POST form (thanks to Kholilul Islam!)

  • The LOINC uploader now supports LOINC 2.68

  • A new batch job framework has been introduced, leveraging the Spring Batch library. Initial jobs to use this new framework are the Bulk Export and EMPI modules, but eventually all long processes will be adapted to use this new framework.

  • TThe HAPI FHIR built-in Terminology Server now includes support for validating UCUM (units of measure), BCP-13 (mimetypes), ISO 4217 (currencies), ISO 3166 (countries), and USPS State Codes.

  • It is now possible to disable referential integrity for delete operations for speciific reference paths.

  • A regression has been fixed that significantly degraded validation performance in the JPA server for validation of large numbers of resources.

  • Unit tests have been migrated to JUnit 5. This change has no user visible impacts, but will help us continue to improve ongoing maintenance of our test suites.

As always, see the changelog for a full list of changes.

Thanks to everyone who contributed to this release!

Assets 8

@jamesagnew jamesagnew released this Jun 2, 2020 · 10 commits to rel_5_0 since this release

  • This release corrects a snapshot dependency on org.hl7.fhir.core that was accidentally left in HAPI FHIR 5.0.1.
  • The default setting for the partition mode's Include Hashes in Search Indexes setting was incorrectly set to true in HAPI FHIR 5.0.0 and has now been changed to false, as this is a more sensible default. Note that this wil affect existing systems that are trying this feature out. A manual reindex of data may be required.
Assets 2

@jamesagnew jamesagnew released this May 15, 2020 · 534 commits to master since this release

This point release corrects two issues:

  • An inefficient SQL query was created when repository searches were performed containing multiple chained search parameters. See HAPI FHIR Issue 1842 for information on this issue.
  • Two new columns were added to the RDBMS repository index table supporting date based searches. A database index was missed, resulting in slow performance for some date based searches.

Users of the JPA server are advised to upgrade to this point release instead of 5.0.0. Other users are not affected.

Assets 2

@jamesagnew jamesagnew released this May 12, 2020 · 541 commits to master since this release

It's time for another release of HAPI FHIR!

This release brings some good stuff, including:

  • A new feature called Partitioning has been added to the JPA server. This can be used to implement multitenancy, as well as other partitioned/segregated/sharded use cases.

  • The IValidationSupport interface has been completely redesigned for better flexibility, extensibility and to enable future use cases. Any existing implementations of this interface will need to be adjusted.

  • Many improvements to performance have been implemented

  • FHIR R5 draft definitions have been updated to the latest FHIR 4.2.0 (Preview 2) definitions

  • The Gson JSON parser has been replaced with Jackson for better flexibility and performance

As always, see the changelog for a full list of changes.

Thanks to everyone who contributed to this release!

Assets 8

@jamesagnew jamesagnew released this Feb 17, 2020 · 873 commits to master since this release

It's time for another release of HAPI FHIR!

This release brings some good stuff, including:

  • A new database migrator for the JPA server has been introduced, based on FlywayDB.

  • A major performance enhancement has been added to the parser, which decreases the parse time when parsing large Bundle resources by up to 50%.

  • Support for positional (near) search using geo-coordinates and positional distance has been added. This support currently uses a "bounding box" algorithm, and may be further enhanced to use a radius circle in the future.

  • Support for LOINC 2.67 has been added

As always, see the changelog for a full list of changes.

Thanks to everyone who contributed to this release!

Assets 8

@jamesagnew jamesagnew released this Nov 13, 2019 · 1306 commits to master since this release

November 13, 2019 - HAPI FHIR 4.1.0 (Jitterbug) - It's time for another release of HAPI FHIR!

This release brings some good stuff, including:

  • Structures JARs have been updated to incorporate the latest technical corrections. DSTU3 structures are upgraded to FHIR 3.0.2, R4 structures are upgraded to FHIR 4.0.1, and R5 draft structures are upgraded to the October 2019 draft revision.
  • ValueSets are now automatically pre-expanded by the JPA server into a dedicated set of database tables. This "precalculated expansion" is used to provide much better performance for validation and expanion operations, and introduced the ability to successfully expand very large ValueSets such as the LOINC implicit (all codes) valueset.
  • Support for the FHIR Bulk Export specification has been added. We are now working on adding support for Bulk Import!
  • First-order support for ElasticSearch as a full-text and terminology service backend implementation. At this time, both raw Lucene and ElasticSearch are supported (this may change in the future but we do not have any current plans to deprecate Lucene).
  • Live Terminology Service operations for terminology file maintenance based on delta files has been added.
  • Binary resources and Media/DocumentReference instances with binary attachments stored in the FHIR repository can now take advantage of externalized binary storage for the binary content when that feature is enabled. This allows much better scalability of repositories containing large amounts of binary content (e.g. document repositories).

As always, see the changelog for a full list of changes.

Thanks to everyone who contributed to this release!

Also, as a reminder, if you have not already filled out our annual user survey, please take a moment to do so. Access the survey here: http://bit.ly/33HO4cs (note that this URL was originally posted incorrectly. It is now fixed)

- James Agnew

Assets 8

@jamesagnew jamesagnew released this Aug 14, 2019 · 1848 commits to master since this release

August 14, 2019 - HAPI FHIR 4.0.0 (Igloo) Released - The next release of HAPI has now been uploaded to the Maven repos and GitHub's releases section.

This release features a number of significant performance improvements, and has some notable changes:

  • A new consent framework called ConsentInterceptor that can be used to apply local consent directives and policies, and potentially filter or mask data has been added.
  • Initial support for draft FHIR R5 resources has been added.
  • Support for GraphQL and the _filter search parameter has been added.
  • The ability to perform cascading deletes has been added.

As always, see the changelog for a full list of changes. You can also watch the release webinar!

Thanks to everyone who contributed to this release!

- James Agnew

Assets 6

@jamesagnew jamesagnew released this May 30, 2019 · 2130 commits to master since this release

May 30, 2019 - HAPI FHIR 3.8.0 (Hippo) Released - The next release of HAPI has now been uploaded to the Maven repos and GitHub's releases section.

This release features a number of significant performance improvements, and has some notable changes:

  • A new interceptor framework has been added. Existing interceptors will continue to work, and no code changes are needed in order to use this new version, but existing interceptors can be modified to use the new framework and can then take advantage of even more functionality. Updated migration documentation will be produced in the coming weeks.
  • A security issue in the hapi-fhir-testpage-overlay (the web-based testing UI that powers hapi.fhir.org and can be embedded into other applications) has been corrected. Users of this module are recommended to upgrade right away.
  • The hapi-fhir-jpaserver-starter project now uses a properties file for much easier configuration. Please use this project as the basis for any new JPA Server projects, as we are deprecating the existing duplicate hapi-fhir-jpaserver-example project.
  • A number of improvements have been made to the validator.

As always, see the changelog for a full list of changes.

Thanks to everyone who contributed to this release!

- James Agnew

Assets 10

@jamesagnew jamesagnew released this Feb 7, 2019 · 2488 commits to master since this release

Feb 6, 2019 - HAPI FHIR 3.7.0 (Gale) Released - The next release of HAPI has now been uploaded to the Maven repos and GitHub's releases section.

This release includes support for the now-completed FHIR R4 release (FHIR 4.0.0). It also brings support for Java 11, along with a big number of bugfixes and new features.

As always, see the changelog for a full list of changes.

Thanks to everyone who contributed to this release!

- James Agnew

Assets 10

@jamesagnew jamesagnew released this Nov 12, 2018 · 2791 commits to master since this release

Nov 12, 2018 - HAPI FHIR 3.6.0 (Food) Released - The next release of HAPI has now been uploaded to the Maven repos and GitHub's releases section.

This release brings us back to our regular 3 month release cycle (although we're only two months after the last release, which was delayed more than we were hoping). This also marks the beginning of codenamed major releases. Our first codename is Food, and we will be following the popular (and admittedly unoriginal) strategy of using the next letter in the alphabet for each release.

As always, see the changelog for a full list of changes. Notable changes include:

  • The FHIR R4 structures have been upgraded to the latest (3.6.0) version of the structures. This marks an exciting (but pointless) milestone that HAPI FHIR and FHIR itself have the same version number!
  • The JPA Server migrator tool has been enhanced so that it is now possible to run a rolling migration from 3.4.0 to 3.6.0 instead of needing to incur a long downtime while the indexes are rebuilt. See this link for details. In addition, the migrator can now migrate HAPI FHIR 3.3.0 as well. This tool now also operates in a multithreaded way, meaning that it can run migrations much faster in systems with a lot of data.
  • A new custom FHIR operation has been added, allowing subscriptions to be manually triggered/retriggered. This means that it is possible to cause a subscription to process a resource in the database as though that resource had been updated, without actually updating it.
  • The JPA SearchCoordinator now pre-fetches only the first few pages of a search by default instead of pre-fetching all possible results. This makes searches dramatically more efficient in servers where users commonly perform searches that could potentially return many pages but only actually load the first few.
  • A new JPA sample project has been added. This sample has existed for a while, but this is now the offical "reference" project for anyone looking to get started with HAPI FHIR JPA.

Thanks to everyone who contributed to this release!

- James Agnew

Assets 10
You can’t perform that action at this time.