Releases: FirelyTeam/firely-net-sdk
5.1.0
Intro:
In this release we have two major changes:
FHIR R5, version 5.0.0
We have implemented FHIR version 5.0.0 for R5. So when you use the package Hl7.Fhir.R5
you will develop with the latest major official version of FHIR (released by HL7 on 2023-03-26).
We have one known issue during serialization: resources Subsciption
and Consent
contain an attribute resourceType
, which is for the SDK a special attribute. This will be solved in the next release. Keep an eye on issue #2413 for this.
Pluggable serializers in FhirClient
There are two parser families: the legacy XML and Json parsers that have been in the SDK for years, and the improved ones, introduced in SDK 4. Each of these parsers can be configured to ignore certain kind of errors (for example, to allow unknown elements). It is possible to configure the FhirClient
to use the serializer family of your chosing.
Changes:
- #2442: 2410 - Enable roundtrip for empty attribute values.
- #2437: Make it easy to configure serialization in the FhirClient
- #2440: Enable to R5 serializations tests again
- #2430: 2410 - Make serialization pluggable - receiving side of FhirClient
- #2438: 2428 - Implemented FhirPath functions lowBoundary(), highBoundary() and comparable()
- #2441: Bump FluentAssertions from 6.10.0 to 6.11.0
- #2436: Update to C# 11
- #2422: Implemented FHIR R5, version 5.0.0
- #2402: Support pluggable serialization for FhirClient (Requests)
- #2421: Remove unnecessary checks for NET452
See More
- #2405: Bump Newtonsoft.Json from 13.0.1 to 13.0.3
- #2403: Use ignoreOrder also in the recursion for method IsExactlyEqualTo
- #2400: 2375: New Equality functions for ITypedElement
- #2398: Improved performance of MatchesPrefix
- #2399: Changes to make the SDK build in JetBrains Rider.
- #2396: 2385: new property SearchParamDefinition.Code
- #2392: Bump Microsoft.NET.Test.Sdk from 17.4.1 to 17.5.0
- #2390: Bump BenchmarkDotNet from 0.13.4 to 0.13.5
- #2389: Bump System.Text.Json from 7.0.1 to 7.0.2
- #2386: Bump FluentAssertions from 6.7.0 to 6.10.0
- #2387: Merge SDK 5 into develop
This list of changes was auto generated.
5.0.0
We have restructured the whole SDK to the following packages:
Hl7.Fhir.Base
(formally known as the common packages)Hl7.Fhir.STU3
Hl7.Fhir.R4
Hl7.Fhir.R4B
Hl7.Fhir.R5
Hl7.Fhir.Specification.Data.STU3
Hl7.Fhir.Specification.Data.R4
Hl7.Fhir.Specification.Data.R4B
Hl7.Fhir.Specification.Data.R5
Hl7.Fhir.Specification.STU3
(meta package for backward compatibility)Hl7.Fhir.Specification.R4
(meta package for backward compatibility)Hl7.Fhir.Specification.R4B
(meta package for backward compatibility)Hl7.Fhir.Specification.R5
(meta package for backward compatibility)
Please take note of the following changes if you are upgrading:
- You should only reference the main package (
Hl7.Fhir.<release>
). - If you need the
specification.zip
(for validation, if you are using theZipSource
resolver), addHl7.Fhir.Specification.Data.<release>
. - The "old"
Hl7.Fhir.Specification.<release>
package is now a metapackage that will include these two packages. - You should not reference any other packages that existed pre-5.0 (
Hl7.Fhir.ElementModel
etc.)
The profile validator has been split off into its own repository. The NuGet packages for the validator that are compatible with the SDK 5.0 release can be found on NuGet.
See also here for the breaking changes in 5.0.
Changes:
- #2384: Document public functions of TransactionBuilder
- #2383: Devops: Correction for the NuGet Metapackages version
- #2382: Devops: Add steps for creating the metapackages
- #2380: Devops: Use a Firely template to push the nuget packages
This list of changes was auto generated.
See also the changes from the beta versions here:
5.0.0-beta3 (release candidate)
Intro
This is the third beta release for version 5.0.0. This the release candidate (RC)
Changes:
- #2378: Improved comments for some Pocos
- #2379: Changed Azure Pipeline to reflect new structure
- #2377: Signature is now generated by codegen
- #2374: 2373 Added support elements that have changed from choice to non-choice.
- #2370: Create new constructors for Json and Xml Poco(de)Serializers
- #2371: Make Markdown primitive
This list of changes was auto generated.
5.0.0 beta2 (release 20230119)
Intro
This is the second beta release for version 5.0.0.
In this version the FHIR 5.0.0-snapshot3 has been implemented. This causes the following breaking changes:
Base:
- regex pattern for
Base64Binary
was updated. - regex pattern for
FhirDateTime
,Instant
,Time
was updated. - regex pattern for
Markdown
was updated. CodeSystemContentMode
has been moved out of theCodeSystem
class (re-used inTerminologyCapabilities
)
From STU3:
- Methods
ConceptMap.SourceAsString()
andConceptMap.TargetAsString()
are removed - The class
Hl7.Fhir.Model.Attachment
moved to the libraryBase
. Hl7.Fhir.Model.Attachment.UrlElement
is now of typeFhirUri
instead ofFhirUrl
.DomainResource.modifierExtension
is a summary element now.Hl7.Fhir.Model.Signature
- Cardinality of
Signature.type
is now0..*
(was1..*
) - Cardinality of
Signature.when
is now0..1
(was1..1
) - Cardinality of
Signature.who
is now0..1
(was1..1
)
- Cardinality of
From R4:
- The class
Hl7.Fhir.Model.RelatedArtifact
has been moved to Conformance library ElementDefinition.constraint.Requirements
is now of typeMarkdown
instead ofstring
.ElementDefinition.constraint.RequirementElement
has been removed.ElementDefinition.binding.Description
is now of typeMarkdown
instead ofstring
.ElementDefinition.binding.DescriptionElement
has been removed.ElementDefinition.mapping.Comment
is now of typeMarkdown
instead ofstring
.ElementDefinition.mapping.CommentElement
has been removed.
From R5:
RelatedArtifact.UrlElement
has been removed. The property is still available inRelatedArtifact
, but should not be used in R5.ElementDefinition.DiscriminatorType.Pattern
has been deprecated for R5. Do not use this enum for R5.ElementDefinition.constraint.xpath
has been removed. The property is still available inElementDefinition
, but should not be used in R5.ValueSet.scope.focus
has been removed. The property is still available inValueSet
, but should not be used in R5.- Obsolete NamingSystem Purpose/Experimental/ExperimentalElement properties have been removed.
What's Changed
- Update readme by @ewoutkramer in #2345
- Adde nuspec that can be used to create the Specification metpackage. by @ewoutkramer in #2344
- Download script with parameters by @marcovisserFurore in #2352
- Rerun of CodeGen by @marcovisserFurore in #2355
- Add roundtrip tests for new serializers for R4+ by @mmsmits in #2347
- Prepare FhirClient for refactoring by @ewoutkramer in #2359
- Align CanonicalUri classes by @mmsmits in #2358
- Add CancellationToken support by @ewoutkramer in #2360
- Implemented FHIR 5.0.0-snapshot3 by @marcovisserFurore in #2357
- Upgrading package dependencies by @marcovisserFurore in #2362
- 2338 Fix nullref exception in EnumUtility by @ewoutkramer in #2363
- 2273 Report missing mandatory elements by @ewoutkramer in #2367
- Small corrections by @marcovisserFurore in #2364
- DeclaredType attributes on ElementDefintion properties by @marcovisserFurore in #2369
Full Changelog: v5.0.0-beta1...v5.0.0-beta2
5.0.0 beta1 (release 20221220)
We have restructured the whole SDK to the following packages:
Hl7.Fhir.Base
(formally known as the common packages)Hl7.Fhir.STU3
Hl7.Fhir.R4
Hl7.Fhir.R4B
Hl7.Fhir.R5
Hl7.Fhir.Specification.Data.STU3
Hl7.Fhir.Specification.Data.R4
Hl7.Fhir.Specification.Data.R4B
Hl7.Fhir.Specification.Data.R5
Hl7.Fhir.Specification.STU3
(meta package for backward compatibility)Hl7.Fhir.Specification.R4
(meta package for backward compatibility)Hl7.Fhir.Specification.R4B
(meta package for backward compatibility)Hl7.Fhir.Specification.R5
(meta package for backward compatibility)
Please take note of the following changes if you are upgrading:
- You should only reference the main package (
Hl7.Fhir.<release>
). - If you need the
specification.zip
(for validation, if you are using theZipSource
resolver), addHl7.Fhir.Specification.Data.<release>
. - The "old"
Hl7.Fhir.Specification.<release>
package is now a metapackage that will include these two packages. - You should not reference any other packages that existed pre-5.0 (
Hl7.Fhir.ElementModel
etc.)
The profile validator has been split off into its own repository. The NuGet packages for the validator that are compatible with the SDK 5.0 release can be found on NuGet.
See also here for the breaking changes in 5.0.
4.3.0 for STU3 (release 20220921)
Changes:
New Functionality:
- #2222: Need way to provide ExceptionHandler (ExceptionNotificationHandler) to Serializers
Others:
- #2250: Binding: Add Error message to the response message
- #2249: Pass the ExceptionHandler in from the settings into the PocoBuilder
- #2245: Merge backwards of R4
- #2243: Merge backwards from R4
- #2237: Remove rule on DomainResource that contained resources cannot have narrative
- #2236: [Validator] Also validate the instance type when the definition has children
- #2210: 2192 - Make Response Headers case insensitive
See More
- #2220: Do removals in snapshot generation after all other actions. [STU3]
- #2226: LocalTerminologyService: Omit
system
in error message when it is not present. - #2227: Fix index out of bounds error when trying to parse illegal history resource identifier
- #2212: Bump BenchmarkDotNet from 0.13.1 to 0.13.2
- #2214: Fix parsing of narrative in FhirXmlPocoDeserializer [STU3]
- #2216: Bump Microsoft.NET.Test.Sdk from 17.3.0 to 17.3.1
This list of changes was auto generated.
4.3.0 for R5 (release 20220921)
Changes:
Bugfixes:
- #2106: FhirClient TerminologyServiceExtensions Expand incorrect parameter
New Functionality:
- #2222: Need way to provide ExceptionHandler (ExceptionNotificationHandler) to Serializers
Others:
- #2250: Binding: Add Error message to the response message
- #2249: Pass the ExceptionHandler in from the settings into the PocoBuilder
- #2244: 2106 - Terminologyserviceexpand
- #2225: Bugfix/2106 terminologyserviceexpand
- #2237: Remove rule on DomainResource that contained resources cannot have narrative
- #2236: [Validator] Also validate the instance type when the definition has children
See More
* #2233: 2232 Support implicit type slicing * #2210: 2192 - Make Response Headers case insensitive * #2221: [SnapshotGenerator] Do removals in snapshot generation after all other actions. [R4] * #2220: Do removals in snapshot generation after all other actions. [STU3] * #2226: LocalTerminologyService: Omit `system` in error message when it is not present. * #2227: Fix index out of bounds error when trying to parse illegal history resource identifier * #2212: Bump BenchmarkDotNet from 0.13.1 to 0.13.2 * #2214: Fix parsing of narrative in FhirXmlPocoDeserializer [STU3] * #2216: Bump Microsoft.NET.Test.Sdk from 17.3.0 to 17.3.1This list of changes was auto generated.
4.3.0 for R4B (release 20220921)
Changes:
Bugfixes:
- #2106: FhirClient TerminologyServiceExtensions Expand incorrect parameter
New Functionality:
- #2222: Need way to provide ExceptionHandler (ExceptionNotificationHandler) to Serializers
Others:
- #2250: Binding: Add Error message to the response message
- #2248: Pass the exceptionhandler in from the settings into the pocobuilder
- #2244: 2106 - Terminologyserviceexpand
- #2225: Bugfix/2106 terminologyserviceexpand
- #2237: Remove rule on DomainResource that contained resources cannot have narrative
See More
- #2236: [Validator] Also validate the instance type when the definition has children
- #2233: 2232 Support implicit type slicing
- #2210: 2192 - Make Response Headers case insensitive
- #2221: [SnapshotGenerator] Do removals in snapshot generation after all other actions. [R4]
- #2226: LocalTerminologyService: Omit
system
in error message when it is not present. - #2227: Fix index out of bounds error when trying to parse illegal history resource identifier
- #2212: Bump BenchmarkDotNet from 0.13.1 to 0.13.2
- #2214: Fix parsing of narrative in FhirXmlPocoDeserializer [STU3]
- #2216: Bump Microsoft.NET.Test.Sdk from 17.3.0 to 17.3.1
This list of changes was auto generated.
4.3.0 for R4 (release 20220921)
Changes:
New Functionality:
- #2222: Need way to provide ExceptionHandler (ExceptionNotificationHandler) to Serializers
Others:
- #2250: Binding: Add Error message to the response message
- #2248: Pass the exceptionhandler in from the settings into the pocobuilder
- #2244: 2106 - Terminologyserviceexpand
- #2225: Bugfix/2106 terminologyserviceexpand
- #2237: Remove rule on DomainResource that contained resources cannot have narrative
- #2236: [Validator] Also validate the instance type when the definition has children
- #2233: 2232 Support implicit type slicing
See More
* #2210: 2192 - Make Response Headers case insensitive * #2221: [SnapshotGenerator] Do removals in snapshot generation after all other actions. [R4] * #2226: LocalTerminologyService: Omit `system` in error message when it is not present. * #2227: Fix index out of bounds error when trying to parse illegal history resource identifier * #2212: Bump BenchmarkDotNet from 0.13.1 to 0.13.2 * #2214: Fix parsing of narrative in FhirXmlPocoDeserializer [STU3] * #2216: Bump Microsoft.NET.Test.Sdk from 17.3.0 to 17.3.1This list of changes was auto generated.
4.2.1 for STU3 (release 20220817) HOTFIX
We unintendedly introduced a breaking change. Please use this version instead of version 4.2.0.
Changes:
- #2204: Fix breaking change: MAX_FP_EXPRESSION_CACHE_SIZE is added again
This list of changes was auto generated.