Releases: microsoft/fhir-server
Releases · microsoft/fhir-server
4.0.674
What's Changed
Azure Health Data Services (SQL)
- Enabling flaky search parameters bulk delete test by @SergeyGaluzo in #5392
- Reindex attributes clean up and consistent naming by @SergeyGaluzo in #5389
- [Bundle] Revert HardDelete and Purge enablement for bundles by @fhibf in #5371: In January's release, #5291 added support for hard deletes inside transaction bundles. This change has been reverted due to regressions.
- Revert "Update module-wise code coverage telemetry in 1es" by @rbans96 in #5401
- Log stats details for long running SQL queries by @apurvabhaleMS in #5376
- Search param bulk delete test cleanup by @SergeyGaluzo in #5398
- Fix remove reference missing version by @LTA-Thinking in #5396: $bulk-delete with _remove-references fix: Previously, there was an issue when using $bulk-delete with _remove-references where the version number wasn't being displayed in the modified resources. The issue is fixed, and version number is shown now in modified resources.
- Reindex tests - Adding extra count checks by @SergeyGaluzo in #5402
- Handle multiple target types for ReferenceSearchParam by @feordin in #5285
Common to both Azure API for FHIR and Azure Health Data Services
- Update module-wise code coverage telemetry in 1es by @rbans96 in #5380
- [Tests] Fix unstable Profile Tests by @fhibf in #5383
- Refactor Search Parameter Info Management by @jestradaMS in #5400
Full Changelog: release/4.0.662...release/4.0.674
4.0.662
What's Changed
Azure Health Data Services (SQL)
- More meta history tests by @LTA-Thinking in #5382: Add more E2E tests for _meta-history
- Reindex racing and incremental cache update fixes by @SergeyGaluzo in #5350: Fixes issues in the incremental search param cache update logic
Common to both Azure API for FHIR and Azure Health Data Services
- Adding more SMART capabilities to the capability statement. by @v-isyamauchi-gh in #5328:
- Adding null checks during reindex job. by @v-isyamauchi-gh in #5379
Other Changes
- updating all AzurePowerShell tasks by @paorodma-ms in #5374
- Search param hash calculation by @SergeyGaluzo in #5378
- Removed sort attribute from search parameter hash calculation by @SergeyGaluzo in #5385
- Multi Instance Runner for local clusters of n FHIR services by @jestradaMS in #5375
Full Changelog: release/4.0.654...release/4.0.662
4.0.654
What's Changed
Azure API for FHIR (Cosmos)
- Improve SqlServer project test coverage - part 2 by @rbans96 in #5360: Improve SqlServer project test coverage.
Azure Health Data Services (SQL)
- Allow meta history in transaction bundles by @LTA-Thinking in #5351: There was a limitation where _meta-history parameter was not working in transaction bundles. This issue has been fixed, and _meta-history parameter can now be used in transaction bundles.
- DeletionService - IFhirDataStore scoped handling by @fhibf in #5363: For a transaction bundle, all interactions or operations either succeed or fail together. When a transaction bundle fails, the FHIR service returns a single OperationOutcome. Previously, there was an issue where soft delete operations were not being considered for the transaction bundle scope, which could cause a discrepancy in the all-or-nothing behavior of the transaction bundle. This issue has been fixed, and all interactions or operations, including soft deletes, will now correctly either succeed or fail together.
- Improve test coverage for SqlServer project by @rbans96 in #5335
- Push code coverage data to 1es telemetry by @rbans96 in #5368
- Support meta history in bulk update by @LTA-Thinking in #5370: Metadata-only updates and versioning configuration with $bulk-update: Introduced new query parameter "_meta-history" for bulk update when versioning policy is set to either "versioned" or "version-update." The new query is used to configure whether or not the old version is saved as a historical record. "_meta-history = true" is the default. By default, the resource version is incremented, a new version is created, and the old version is saved as a historical record. "_meta-history=false" can be configured so that the resource version is incremented, a new version is created, but the old version isn't saved as a historical record.
Other Changes
- Code coverage improvement for Shared API. by @v-isyamauchi-gh in #5343
- Use Microsoft Testing Platform & Auto-Retry Tests by @mikaelweave in #5365
Full Changelog: release/4.0.646...release/4.0.654
4.0.646
What's Changed
Azure Health Data Services (SQL)
- [Bundle] Do not merge operations with precondition failures by @fhibf in #5359: Ensures bundle processing no longer merges operations that fail precondition checks.
Common to both Azure API for FHIR and Azure Health Data Services
- Speed up local tests, log id, and document includes usage by @LTA-Thinking in #5349: Improves local test performance, enhances logging
- Add RFC-compliant error handling for TokenIntrospectionController by @mikaelweave in #5348: Implements standards‑based error responses for token introspection failures.
- Fix SearchParameter pagination bug - move TOP to outer query by @jestradaMS in #5362: There was an issue where a pagination bug in FHIR search queries caused resources to be intermittently skipped when results span multiple pages and use continuation tokens. The issue is fixed.
Other Changes
- Use Powershell 7+ by @paorodma-ms in #5346
- Added variable for test jobs timeout by @paorodma-ms in #5354
Package Updates
- Update SDK versions: .NET 9.0.310, .NET 8.0.417 by @Copilot in #5356
Full Changelog: release/4.0.639...release/4.0.646
4.0.639
What's Changed
Azure Health Data Services (SQL)
- Fix delete issue context by @LTA-Thinking in #5336: There was an issue where some $bulk-delete queries that have paged results exceeding 1000 included items with related links could return an HTTP 500 Internal Server Error. The issue has been fixed, and the results are returned correctly now.
- Fix SQL UNION column count mismatch in include/revinclude queries by @mikaelweave in #5340: There was an issue where queries combining _include and _revinclude (for example,
GET /Patient?_include=Patient:organization&_revinclude=Observation:patientcould return an HTTP 500 Internal Server Error. This issue has been fixed, and results are returned correctly now.
Common to both Azure API for FHIR and Azure Health Data Services
- Move FhirRequestContextAccessor by @LTA-Thinking in #5332
- Adding E2E tests for InstantiatesCapabilityProvider. by @v-isyamauchi-gh in #5341:
Full Changelog: release/4.0.635...release/4.0.639
4.0.635
What's Changed
Common to both Azure API for FHIR and Azure Health Data Services
- Populating 'instantiates' field of CapabilityStatement. by @v-isyamauchi-gh in #5241: The change will populate 'instantiates' field of CapabilityStatement when necessary.
- Improve test coverage for Azure project by @rbans96 in #5316:
Other Changes
Full Changelog: release/4.0.632...release/4.0.635
4.0.632
What's Changed
Azure Health Data Services (SQL)
- $import can handle merge throttling by @brendankowitz in #5320: This pull request adds improved handling for SQL throttling errors during resource import operations in the SQL Server FHIR data store. Now, when the system detects that concurrent calls are above optimal levels, it will back off for a randomized delay, reducing the chance of repeated throttling and improving system stability.
- Fix duplicate ids search by @LTA-Thinking in #5338: Bug fix for duplicate ID's used in search: There was a regression where searching for duplicate ID's with _id and no other search parameters would return a HTTP 500 Internal Server Error. This issue has been fixed, and correct search results are now returned.
Common to both Azure API for FHIR and Azure Health Data Services
- Capability statement refreshes when profiles are updated by @fhibf in #5330: Improved capability statement refresh after profile updates: Previously, changes to profile updates could take up to 4 hours to reflect in the Capability Statement. This has been improved to load new profile updates in the Capability Statement after 2 minutes.
Full Changelog: release/4.0.629...release/4.0.632
4.0.629
What's Changed
Azure Health Data Services (SQL)
- Fix reindex scalability by @jestradaMS in #5324: Introduces several improvements to the reindexing job orchestration and SQL Server search logic to enhance scalability and reliability, especially for large datasets.
- Removed not used global start id by @SergeyGaluzo in #5326: Eliminated redundant global start ID to streamline code.
- Exposing resource count in get surrogate ids ranges methods by @SergeyGaluzo in #5327: Display resource counts when retrieving surrogate ID ranges.
- Fix infinite loop with multiple includes by @LTA-Thinking in #5297: Bug fix for _sort with multiple _include/_revinclude parameters. Resolved issue where using multiple _include/_revinclude parameters in a search with _sort could lead to the includes continuation tokens to get into an infinite loop if there are more than two pages of results. This issue is fixed, and the includes continuation tokens are correct now.
Common to both Azure API for FHIR and Azure Health Data Services
- Fix for Ambiguous match exception in patch call by @Charles-Patrick-Moore (merged via @PTaladay) in #5321: Improved error handling for PATCH requests with an empty body. Previously, PATCH requests sent to the FHIR with an empty body returned HTTP 500 Internal Server Error. This has been improved to return HTTP 400 Bad Request with more informative messaging to inform user that Content-Type and body are required.
- SMART on FHIR Token Introspection Endpoint by @mikaelweave in #5257
- Reindex job reliability improvements by @jestradaMS in #5331: Improves the reliability and resilience of the FHIR reindexing jobs by introducing smarter retry logic for transient database errors and by making the resource fetching process more robust against out-of-memory (OOM) errors.
Other Changes
- Add validation for ADR labels in PRs by @rajithaalurims in #5315
Full Changelog: release/4.0.621...release/4.0.629
4.0.621
What's Changed
Azure Health Data Services (SQL)
- Adding stored procedure instead of UNION by @SergeyGaluzo in #5300: Replaces UNION-based queries with a stored procedure to improve performance and maintainability.
- Refactor SearchProxyTests structure by @jestradaMS in #5308: This pull request adds support for configuring proxy-related HTTP headers in the E2E search tests by introducing new environment variables. This allows the tests to be more flexible and adaptable to different deployment environments.
- Allow hard delete inside transaction bundle by @paorodma-ms in #5291: Hard delete now supported inside transaction bundles. Previously, hard deletes and conditional deletes were not supported inside transaction bundles. Now, hard deletes are allowed inside transaction bundles. Conditional deletes remain unsupported inside transaction bundles.
- Improve test coverage for schema manager project by @rbans96 in #5307
- Remove incorrect coding pattern for GetResourceSurrogateIdRanges stored procedure by @SergeyGaluzo in #5312
- Extend usage of get async to search on multiple ids by @SergeyGaluzo in #5311
Common to both Azure API for FHIR and Azure Health Data Services
- Adding a configuration for SMART 3rd-party IDP. by @v-isyamauchi-gh in #5309
Other Changes
- Code coverage improvement for R4 API part 2. by @v-isyamauchi-gh in #5282
- Enhance PR cleanup scripts by @jestradaMS in #5310
- Improve Microsoft Graph module installation in AAD cleanup job by @mikaelweave in #5322
Full Changelog: release/4.0.611...release/4.0.621
4.0.611
What's Changed
Azure Health Data Services (SQL)
- Add meta history to PATCH by @LTA-Thinking in #5290: Introduced new query parameter "_meta-history" for PATCH updates when versioning policy is set to either "versioned" or "version-update" to configure whether or not the old version is saved as a historical record. "_meta-history = true" is the default. By default, the resource version is incremented, a new version is created, and the old version is saved as a historical record. "_meta-history=false" can be configured so that the resource version is incremented, a new version is created, but the old version is not saved as a historical record.
Other Changes
- Add validation for PaaS compatibility labels in PRs by @jestradaMS in #5298
- Fix for OSS pipelines transient failures by @jestradaMS in #5275
- Add PackageTags to project file for schema versioning by @jestradaMS in #5301
Full Changelog: release/4.0.607...release/4.0.611