Skip to main content

Fire Arrow Server 1.6.1

· 2 min read

Fire Arrow Server 1.6.1 has been released.

  • (feature) Automatically ensure canonical URLs exist for definition resources in plans
  • (bugfix) Reverse pre-signed Azure Blob URLs back to firearrow:// on resource updates

Canonical URLs for Definition Resources

When building a PlanDefinition in the administration UI, definition resources such as ActivityDefinition or Questionnaire must be referenced by their canonical URL. Previously, if a selected resource did not have a canonical URL set, the reference was silently broken.

Starting with this release, the ResourceReferenceSelector detects when a chosen resource lacks a canonical URL and automatically generates one from the FHIR base URL, writing it back to the resource before inserting the reference. If the resource already has a canonical URL, it is used as-is. When a business version is present, it is appended with the | separator (e.g. http://example.com/ActivityDefinition/ad-1|2.0).

Bug Fixes

Pre-signed Azure Blob URLs overwriting firearrow:// URLs on round-trip

When binary storage is enabled, Fire Arrow rewrites firearrow:// attachment URLs to pre-signed Azure Blob URLs in outgoing responses so that clients can fetch media directly. If a client then saved the resource back — for example through the administration UI — the pre-signed URL replaced the canonical firearrow:// URL in the database. This caused two problems:

  1. The stored pre-signed URL eventually expired, permanently breaking media access.
  2. The blob cleanup interceptor saw the original firearrow:// URL as removed and deleted the underlying blob.

A new BinaryUrlReverseRewriteInterceptor now runs before resource storage, scanning all Attachment elements for recognised pre-signed Azure Blob URLs and converting them back to their firearrow:// form. URLs that do not match the configured blob container are left untouched.