Releases: FirelyTeam/firely-net-sdk
5.6.1
Intro:
Highlights of this new release:
- Moved CodeableReference to Hl7.Fhir.Base
- Thanks @GinoCanessa for your PR on the type mapping fix in the JSON Deserializer.
Changes:
- #2702: JSON POCO Deserializer type mapping fix.
- #2697: CodeableReference was moved to base
- #2696: Hack ModelInspector so it knows about CodeableReference
- #2694: Undo change in visibility
- #2688: Bump MSTest.TestFramework from 3.1.1 to 3.2.0
- #2692: Support parsing CodeableReference
- #2687: The
_count
parameter should allow '0' as a value - #2683: Allow all 2xx http response codes for FHIR operations
This list of changes was auto generated.
5.6.0
5.5.1
Intro:
Hotfix release.
This release solves a race condition that occurred when expanding ValueSets using the LocalTerminologyService.
Changes:
- #2666: Fix race condition around expanding a valueset + unit test.
- #2665: Add Async support for SnapshotSource STU3
This list of changes was auto generated.
5.5.0
Intro:
Highlights of this new release:
- Added $process-message operation support in the FHIR client. Thanks @LodewijkSioen
- Changes to the JsonSerializerOptions.
- Updates dependencies to newest versions
- Some minor fixes to the terminology services and the source node comparator
Note: From now on due to changes on the JsonSerializerOptions, inputted parameters are changed instead of returning a new instance to support service initialization better.
This change results in the fact that you cannot alter JsonSerializer options anymore after serializer or deserialization has occured.
This applies to the ForFhir(), Pretty(), and Compact() functionality.
Changes:
- #2651: Modify JsonSerializationOptions instead of creating a new instance
- #2654: Bump BenchmarkDotNet from 0.13.11 to 0.13.12
- #2656: Bump System.Text.Json from 8.0.0 to 8.0.1
- #2652: Bump xunit from 2.6.4 to 2.6.5
- #2645: Bump xunit.runner.visualstudio from 2.5.5 to 2.5.6
- #2650: LocalTerminologyService returns original FhirOperationException from getExpandedValueSet
- #2649: Missed another return in SourceNodeComparator
- #2646: Bump xunit from 2.6.3 to 2.6.4
- #2648: Add missing returns to SourceNodeComparator
- #2641: Added missing R5 extension types, removed one that isn't in the spec
See More
- #2639: Move IScopedNode to firely-validation-api
- #2638: Bump xunit.runner.visualstudio from 2.5.4 to 2.5.5
- #2637: Bump xunit from 2.6.2 to 2.6.3
- #2582: VONK-5093: introducing IScopedNode
- #2636: Bump BenchmarkDotNet from 0.13.10 to 0.13.11
- #2635: Add IAsyncResourceResolver support to SnapshotSource
- #2634: Add Process message operation
- #2629: Bump xunit from 2.6.1 to 2.6.2
- #2628: Bump xunit.runner.visualstudio from 2.5.3 to 2.5.4
- #2624: Bump System.Threading.Tasks.Dataflow from 7.0.0 to 8.0.0
- #2623: Bump System.Text.Json from 7.0.3 to 8.0.0
- #2626: Bump Microsoft.SourceLink.GitHub from 1.1.1 to 8.0.0
- #2619: Bump Microsoft.NET.Test.Sdk from 17.7.2 to 17.8.0
- #2616: Bump xunit from 2.5.3 to 2.6.1
- #2614: Bump BenchmarkDotNet from 0.13.9 to 0.13.10
This list of changes was auto generated.
5.4.0
Intro:
Highlights of this new release:
Notable changes include modifying error messages, adding support for multiple valuesets and system filters, moving termservice code to shared projects, quantity arithmetic and introducing various improvements and updates to dependencies. Additionally, new contributors have made their first contributions to the project, including @almostchristian.
Changes:
New Functionality:
- #1442: [FhirPath] Add support for Quantity arithmetic
Others:
- #2613: Make DateTime.ToString() locale-insensitive
- #2608: Bump xunit from 2.5.2 to 2.5.3
- #2607: Bump xunit.runner.visualstudio from 2.5.1 to 2.5.3
- #2606: Bump xunit from 2.5.1 to 2.5.2
- #2602: Bump BenchmarkDotNet from 0.13.8 to 0.13.9
- #2600: Add subtract operator for Date and DateTime.
- #2596: Improve performance of EnumUtility generic methods
See More
- #2598: VONK-5414: Use a variable to control the restore via the GitHub package feed or not
- #2595: #1442: Added Quantity arithmetic
- #2591: Use
string
also as a valid type for the input value ofmemberOf()
- #2593: Bump xunit.runner.visualstudio from 2.5.0 to 2.5.1
- #2592: Bump xunit from 2.5.0 to 2.5.1
- #2585: Bump BenchmarkDotNet from 0.13.7 to 0.13.8
- #2578: Bump Microsoft.NET.Test.Sdk from 17.7.1 to 17.7.2
- #2574: Bump FluentAssertions from 6.11.0 to 6.12.0
- #2573: Bump Microsoft.NET.Test.Sdk from 17.7.0 to 17.7.1
- #2571: Dependabot: ignore updating Moq because of source code analyzer misuse
- #2565: Bump BenchmarkDotNet from 0.13.6 to 0.13.7
- #2564: Bump Microsoft.NET.Test.Sdk from 17.6.3 to 17.7.0
- #2563: Merge the total effect of yesterdays PRs
- #2560: 2326 Add Expand operation to LocalTerminologyService
- #2559: Move some termservice code to shared projects
- #2558: 2555 Add support for multiple valuesets and system filters to ValueSetExpander
- #2554: Change error message when the ValueSetExpander can't find a specific CodeSystem
This list of changes was auto generated.
5.3.0
Intro:
Highlights of this new release:
- The
MultiTerminologyService
has been extended with a routing mechanism, so you can customize which ValueSets should be handled by which service. - The FhirDateTime, Date and Time types now avoid re-parsing their values for every operation, increasing their performance dramatically.
- Resources now implement
IIdentifiable
andICoded
for easy polymorphic access to the identifiers and codes in a resource. See https://docs.fire.ly/projects/Firely-NET-SDK/model/other-features.html. - Work has been done to use the SDK's POCO's in the upcoming .NET CQL engine.
Changes:
Bugfixes:
- #2395: fhirpath
resolve()
should work on a collection input - #2482: STU3 ConformanceSummaryProperties.IsConformanceSummary throws an exception if the properties bag does not contain a value for TypeName
Others:
- #2552: Update release-notes.md
- #2549: Add wildcard support to MultiTerminologyService routing
- #2551: Release notes: added MultiTerminologyService routing to the notes
- #2548: feature: create factory methods for "core" terminology service
- #2546: 2533 Improve performance of Time POCO
- #2535: Add routing mechanism to the MultiTerminologyService
See More
- #2541: 2534 Improve performance of Date handling
- #2545: Changed a spelling mistake
- #2539: 2205 Add IIdentifiable and ICoded to POCOs
- #2529: 2490 Improve performance of FhirDateTime
- #2536: Refactored TransactionBuilder to include fullUrl in Bundle.Entry for every operation
- #2530: #2395: FhirPath function
resolve()
works now on a collection. - #2537: Bump MSTest.TestFramework from 3.0.4 to 3.1.1
- #2538: Bump MSTest.TestAdapter from 3.0.4 to 3.1.1
- #2486: Bump MSTest.TestFramework from 2.2.10 to 3.0.4
- #2523: Bump xunit.runner.visualstudio from 2.4.5 to 2.5.0
- #2524: Bump xunit from 2.4.2 to 2.5.0
- #2528: Bump BenchmarkDotNet from 0.13.5 to 0.13.6
- #2492: Re-generate model with default codesystems
- #2522: Support new R5 elements in snapshot generator
- #2521: fix: MimeType terminology service incorrectly returned false when an unknown system was supplied.
- #2514: Adding instructions to Readme on how to use pre-release packages
- #2512: Bump Microsoft.NET.Test.Sdk from 17.6.2 to 17.6.3
- #2507: Improve FhirPath expression cache unit test to not use timers anymore
- #2506: Support STU3 mime type vs url in MimeTypeTerminologyService
- #2483: Fix for #2482
- #2501: Bump System.Text.Json from 7.0.2 to 7.0.3
- #2500: Remove Cql-specific attributes (phase 1)
- #2499: 2488 Load all dependent FHIR assemblies
- #2489: Updates to the POCOs and ModelInspector to make the CQL binding work.
- #2494: Bump Microsoft.NET.Test.Sdk from 17.6.1 to 17.6.2
- #2484: Bump Microsoft.NET.Test.Sdk from 17.6.0 to 17.6.1
- #2481: Start develop phase with version 5.2.1
- #2479: Release 5.2.0
This list of changes was auto generated.
5.2.0
Intro:
In this release we have a couple of new additions:
- The
ModelInfo
class now includes the definitions of all the composite SearchParameters. - A
MultiTerminologyService
to provide a better mechanism for supporting multiple terminology services. - A
MimeTypeTerminologyService
to validate mime-types defined in coded elements. - Functionality to compare quantities with different units from the UCUM specification using
FhirPath.Comparable()
.
Changes:
Bugfixes:
- #2466: Snapshot generator clears slicing element for extension header base element definitions that are referenced in annotations
- #2411: ArtifactSummaryGenerator.Default always uses model info for STU3
New Functionality:
- #525: Composite search parameters
- #2439: FhirPath function comparable() should use UCUM library
- #2457: Devops: Add generic release notes file
- #2404: FhirPath function memberOf implementation
- #2414: Update ExceptionNotification to support location as a complete property
Others:
See More
- #2470: Added MimeType Terminology Service
- #2455: #2454 Handle the parsing of json arrays to handle duplicate array values
- #2454: JSON Parser handle duplicate arrays on primitives
- #2471: 2434 (continued) - Some last things coming from the PR review of Brian's PR.
- #2478: Added MultiTerminologyService
- #2472: Vonk-4618: LocalTS ValidateCode reports an error for value set reference instead of a code system in coding.system
- #2467: #2466 ElementMatcher no longer clears the slicing element of an extension element when the match action is slice
- #2469: VONK-4846: Include the title (or name) of the value set in the error message
- #2462: #2461: Improve organization of STU3 test projects (no functional change)
- #2461: STU3 testprojects to Shared projects
- #2459: #525: Generated composite SearchParameterDefinition
- #2434: XML/Json parsing enhancements
- #2460: Bump Microsoft.NET.Test.Sdk from 17.5.0 to 17.6.0
- #2453: #2439: FhirPath comparable() uses UCUMnow
- #2458: #2457: Enhancing automatic generation of release notes
- #2449: #2446 Join seperator parameter is optional in the spec
- #2446: FhirPath Join function seperator parameter isn't mandatory
- #2447: #2445 Correct split function to not remove empty strings
- #2445: Fhirpath Split bug - removes empty strings
- #2451: #2411: Made the ArtifactSummaryGenerator.Default obsolete
- #2450: #2404: Implementation of FhirPath function memberOf()
- #2448: 2413 Add support for
resourceType
elements present in R4 and R5 - #2444: FhirXmlPocoDeserializer handles invalid booleans
- #2443: Update README.md
- #2435: FhirXmlPocoDeserializer should throw an error when encountering multiple non-repeatable elements.
This list of changes was auto generated.
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.