Skip to content

chore(deps): update dependency hl7.fhir.base to v6 - #126

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/hl7.fhir.base-6.x
Open

renovate[bot] wants to merge 1 commit into
masterfrom
renovate/hl7.fhir.base-6.x

Conversation

@renovate

@renovate renovate Bot commented Jun 21, 2026 •

Copy link
Copy Markdown
Contributor

Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
Hl7.Fhir.Base 5.13.4 → 6.8.0 age confidence

Release Notes

FirelyTeam/firely-net-sdk (Hl7.Fhir.Base)

v6.8.0: 6.8.0

Intro:

This release adds a way to get the range of time a FHIR date or dateTime covers at its
precision, and makes the FHIRPath conversion functions follow the FHIRPath specification for items
of a complex type: they no longer throw, but return empty or false. There are no breaking API
changes.

Date and time ranges

  • New Interval<T> and DateTimeRange types in Hl7.Fhir.ElementModel.Types. Interval<T> is a
    generic interval whose sides are closed, open or unbounded, with Contains, Overlaps and
    Covers. DateTimeRange is a half-open range [Start, End) that also keeps the Precision.
  • Date and DateTime get TryGetRange(out range), GetRange(TimeZoneInfo) and
    GetRange(TimeSpan). For example, 2026-03 covers all of March 2026, and 10:00:00+01:00 covers
    one second. A value without an offset is read in the given time zone, and the range is widened
    where daylight saving skips or repeats a time.
  • Period gets TryGetRange(out range) and TryGetRange(TimeZoneInfo, out range), from the start
    of start to the end of end. A missing side is unbounded.
  • DateTime now keeps the number of fraction digits from Parse(), so .000 spans 1 ms. See issue
    #​3628.

FHIRPath

  • The conversion functions toBoolean(), toInteger(), toLong(), toDecimal(), toQuantity(),
    toString(), toDate(), toDateTime() and toTime() now return empty for an item of a type
    they cannot convert, such as a complex type or a resource, and the matching convertsTo*()
    functions return false, as the FHIRPath specification
    requires. Patient.name.first().convertsToString() used to throw an InvalidOperationException
    ("There is no known Cql/FhirPath type corresponding to the .NET type PocoNode") and now returns
    false. The same goes for a Coding without a code, and a Quantity without a value or with a
    comparator. Items with a System type equivalent, like Quantity, convert as before. See issue #​3636.

    Behavioural note: if you added your own overload of one of these functions to a SymbolTable
    that already has the standard functions, with a PocoNode parameter, the standard function now
    takes precedence for complex types too. Register your overload in a child SymbolTable to keep
    it in effect.

Changes:

  • #​3637: Fix FHIRPath conversions on complex types
  • #​3629: Add date and dateTime ranges by precision
  • #​3636: FHIRPath conversion functions throw on complex types instead of returning empty/false
  • #​3635: Release 6.7.0
  • #​3630: Bump the runtime-dependencies-minor group with 4 updates

This list of changes was auto generated.

v6.7.0: 6.7.0

Intro:

This release adds an opt-in PrimitiveValueConverter hook to the POCO deserializers, makes the
JSON parser reject a primitive whose value is supplied twice, keeps repeated same-url extensions in
snapshots, makes the SnapshotGenerator report differential paths with an empty segment, and fixes
FHIRPath evaluation over invalid primitive values. LocalTerminologyService now returns the full
$validate-code result shape, and the terminology services accept repeated tx-resource
parameters. There are no breaking API changes, but several changes alter behaviour or output that
callers may depend on: the new fatal parser issue JSON135, the text of
OperationOutcome.IssueComponent.ToString(), warnings on inactive codes from $validate-code, and
$expand rejecting repeated 0..1 parameters. See the behavioural notes below.

Serialization

  • New DeserializerSettings.PrimitiveValueConverter lets callers fix a wrongly typed primitive while
    parsing, such as "valueInteger": "42" or "active": "true", in both Json and Xml and in every
    mode, Ostrich included. It is called only for values that are not of the type the primitive
    stores, plus date, dateTime, instant, time and integer64, which can be the right type in
    the wrong format. If it declines (returns the input) or throws a FormatException,
    InvalidCastException or OverflowException, the usual error is reported; any other exception
    propagates. When not set, parsing is unaffected.

  • The string overloads of the Json deserializers now encode into a pooled buffer instead of
    allocating a fresh byte[] per parse, and the reader options the SDK uses are now public as
    SerializationUtil.FhirJsonReaderOptions. See issue #​3598.

  • An exception thrown while reading an Xml attribute is no longer hidden behind
    "Can only exit from a resource part.".

  • The JSON parser now reports a fatal issue, JSON135 (PRIMITIVE_VALUE_SUPPLIED_TWICE), when a
    primitive gets its value from both name and _name, e.g. {"name":"John","_name":"Johnny"}.
    The second value used to be dropped silently, with only the non-fatal JSON134, so the
    NoOverflow, Recoverable and BackwardsCompatible modes accepted the data loss. This applies in
    either property order and to elements of primitive arrays. JSON134 stays a non-fatal error for
    a primitive under _name when no value was set yet. See issue #​3533.

    Behavioural note: JSON that parsed before, with a non-fatal JSON134, now fails to parse in
    every mode except Ostrich when both name and _name carry a value.

FHIRPath

  • An unparseable instant, integer64, integer, positiveInt or unsignedInt value no longer
    makes almost every FHIRPath expression that reaches it throw. Its value is now the unparsed
    string, as it already was for date, dateTime and time. Before, even $this is Reference
    threw an InvalidOperationException for such a node, so a sweep like
    descendants().where($this is Reference) failed on the whole resource. The Value getter of the
    POCO still throws.

Snapshot generation

  • The SnapshotGenerator now reports a specific issue (PROFILE_ELEMENTDEF_INVALID_PATH, code
    10021) for a differential element whose path has an empty segment, such as Observation...unit,
    and skips that element. Such an element used to produce a phantom element Observation. in the
    snapshot, and any constraint on it, like a fixedString, was silently lost. The rest of the
    differential is still processed. See issue #​3591.
  • When a differential has several extensions with the same url, e.g. repeated additional-binding
    extensions on a binding, and the base already has one with that url, the snapshot now keeps all of
    them. The first replaces the base extension, the rest are added next to it. They used to overwrite
    each other, so only the last one survived. See issue #​3625.

Terminology

  • LocalTerminologyService's ValueSet $validate-code now returns the full result shape the HL7
    terminology ecosystem tests expect: code, system, version and display, plus an issues
    OperationOutcome with tx-issue-type codings and expressions relative to the input, for both valid
    and invalid codes. A CodeableConcept input is echoed back, and inactive or non-active concepts
    get inactive/status parameters. ValidateCodeResult has new properties to read and write
    these (CodeableConcept, NormalizedCode, CausedByUnknownSystem, UnknownSystem, Inactive,
    Status), and new Add* extension methods put an issue in its issues. See issue #​3631.

    Behavioural note: an inactive, retired or deprecated code now returns result = true with a
    message (a code-comment warning). For an unknown system, message now also says the
    CodeSystem could not be found.

  • The terminology services no longer reject an operation with repeated tx-resource parameters,
    which the tx-ecosystem IG requires servers to accept. Only repeats of the operation's 0..1
    parameters are rejected; known 0..* and unknown parameters pass through. Each typed *Parameters
    class now lists its parameters in a public KnownParameters.

    Behavioural note: $expand now gets the same check, so a repeated url, filter, count
    etc. is rejected where it used to be accepted.

Other

  • PocoNode.Resolve("#id") no longer throws a NullReferenceException when the resource has a
    contained resource without an id before the one it refers to. A contained resource without an
    id does not match, and resolution continues. See issue #​3613.

  • OperationOutcome.IssueComponent.ToString() now writes a space before (further diagnostics:,
    as it already did before (at. See issue #​3621.

    Behavioural note: this changes the rendered text of an issue. Tests that compare against
    ToString() output need new expected strings.

Changes:
  • #​3634: VONK-10389: Allow repeated tx-resource parameters
  • #​3633: Return the full $validate-code result shape from LocalTerminologyService
  • #​3631: Extend ValidateCodeResult with the full $validate-code output and fill it from LocalTerminologyService
  • #​3627: VONK-10125: Add opt-in primitive value converter to the POCO deserializers, pool Json string parsing
  • #​3598: POCO deserialization: byte/stream entry points and pooled re-encoding of JSON strings
  • #​3626: Keep repeated same-url extensions in snapshots
  • #​3625: Snapshot generator loses repeated extensions with the same URL (e.g. additional-binding) when the base already has one
  • #​3624: Bump the runtime-dependencies-minor group with 2 updates
  • #​3623: Make FHIRPath tolerate unparseable primitive values
  • #​3616: Document the changes for release, bump version to 6.6.0
See More
  • #​3622: Add space before "(further diagnostics:" in issue ToString
  • #​3619: Add test for Base-typed inline children (#​3597)
  • #​3597: SnapshotGenerator: inline children of a new element typed Base are emitted one level up (segment dropped from path and id)
  • #​3620: Report and skip '..' in differential paths
  • #​3618: Report fatal error when name and _name both set
  • #​3533: JSON deserializer silently drops a primitive value when both 'name' and '_name' supply one (non-fatal)
  • #​3617: Fix Resolve NRE on contained resource w/o id
  • #​3591: SnapshotGenerator: '..' in differential path produces phantom element and silently drops the constraint
  • #​3576: feat: add the missing NOOVERFLOW preset to both deserializers (#​3532)
  • #​3613: PocoNode.Resolve throws NullReferenceException when a contained resource has no id

This list of changes was auto generated.

v6.6.0: 6.6.0

Intro:

This release adds net10.0 to the frameworks the SDK targets, next to net8.0 and
netstandard2.1. It also lets FhirClient send a resource directly as the body of an operation
request, extends the FHIRPath htmlChecks() function to string input, and makes the
SnapshotGenerator report differential elements that are out of order. There is one binary
breaking change: ElementNavFhirExtensions.HtmlChecks(PocoNode) now returns bool? instead of
bool. Code that calls it needs to be recompiled. See the FHIRPath notes below.

Platform support

  • The SDK now also targets net10.0, next to net8.0 and netstandard2.1. This is additive: .NET 8
    and .NET 9 applications keep resolving to the net8.0 assets. On .NET 10, class mapping lookups
    by name through ModelInspector.FindClassMapping(ReadOnlySpan<char>) no longer allocate.
  • net8.0 remains supported until the next major version (SDK 7), even after Microsoft ends support
    for .NET 8 in November 2026.
  • Upcoming: netstandard2.1 will be removed in a later minor release, once Unity 6.8 - which
    replaces Mono with CoreCLR and .NET 10 - has shipped. Its only remaining audience is Unity, and
    Unity 6.8 can consume the net10.0 assets. If you depend on the netstandard2.1 assets for
    another platform, please let us know.

FhirClient

  • Operations with exactly one resource input can now send that resource directly as the POST body,
    instead of wrapping it in a Parameters resource. WholeSystemOperationAsync,
    TypeOperationAsync, InstanceOperationAsync and OperationAsync have new overloads that take a
    Resource, and TransactionBuilder has matching overloads for its operation entries. The
    existing Parameters overloads are unchanged. See issue #​3599.

FHIRPath

  • htmlChecks() can now be invoked on a string. Its contents are validated as the content of a
    narrative div, following the current FHIRPath build (FHIR-56303).
    Invoked on anything other than xhtml or a string, it now returns empty instead of false. To
    support this, ElementNavFhirExtensions.HtmlChecks(PocoNode) returns bool? instead of bool,
    which is a binary breaking change for code that calls it directly. See issue #​3604.

Snapshot generation

  • The SnapshotGenerator now reports a specific issue (PROFILE_ELEMENTDEF_INVALID_ELEMENT_ORDER,
    code 10020) when a differential element is out of order, i.e. when it constrains a base element
    that precedes a base element already matched by an earlier differential element. The spec
    requires differential.element and snapshot.element to follow the order of the base
    definition. Such elements could previously not be matched and were silently treated as new
    elements, which surfaced downstream as a confusing error. The generator does not reorder the
    differential. See issue #​3600.

Dependencies

  • The System.Reflection.Emit.Lightweight and System.Buffers package dependencies were removed;
    both are part of every framework the SDK targets.
  • Updated Microsoft.SourceLink.GitHub to 10.0.401. MSTest (4.4.1) and Verify.MSTest (33.1.5) were
    updated too, but are test-only and not part of the shipped packages.
Changes:
  • #​3612: VONK-10067: Add net10.0 target framework and convert to slnx
  • #​3614: Bump the runtime-dependencies-minor group with 1 update
  • #​3609: Bump the runtime-dependencies-minor group with 2 updates
  • #​3601: Report a clear issue for out-of-order differential elements in SnapshotGenerator
  • #​3602: Support resource-body operation overloads
  • #​3605: Support FHIRPath htmlChecks() on string input
  • #​3608: Bump Microsoft.SourceLink.GitHub from 10.0.400 to 10.0.401
  • #​3607: Bump MSTest.TestFramework and Verify.MSTest
  • #​3603: Release 6.5.0
  • #​3600: SnapshotGenerator doesn't sort out-of-order differential/snapshot elements (unlike HAPI's Java validator)

This list of changes was auto generated.

v6.5.0: 6.5.0

Intro:

This release is mostly about the cost of parsing and serializing: allocations on the hot path of
(de)serialization are down substantially, and the serializers no longer emit empty objects or
elements. It also collects a series of SnapshotGenerator fixes and a concurrency fix in
terminology validation. There are no breaking API changes, but two SnapshotGenerator
OperationOutcome issue codes were renumbered to remove duplicates (10012 -> 10018,
10014 -> 10019), which affects code that switches on those numbers. See the behavioural
notes below.

Serialization

  • The serializers no longer write empty objects ({}) or empty elements (<x/>). A structure is
    opened only once it is known to have content, so an empty POCO - or one emptied out by a
    SerializationFilter, as happens when summarizing - no longer produces output our own
    deserializer rejects with OBJECTS_CANNOT_BE_EMPTY / ELEMENT_CANNOT_BE_EMPTY. Summarized
    resources now round-trip. See issue #​3557.
  • Both deserializers now expose a NOOVERFLOW preset, next to STRICT. DeserializationMode.NoOverflow
    was the one mode without a preset, reachable only by constructing the settings by hand. Thanks to
    @​sujeito-operator for the contribution. See issue #​3532.
  • new FhirUri((Uri)null) no longer throws a NullReferenceException; FhirUrl(Uri) and
    Canonical(Uri) had the same problem. They now null-propagate, like the other primitive
    datatype constructors. See issue #​3578.

Performance

  • Parsing allocates considerably less. Most of what a parse used to allocate was transient garbage
    produced by model validation - which runs on every element in every deserialization mode except
    SyntaxOnly and Ostrich - rather than the POCO graph it returns. Validation now allocates about
    half of what it did, and the validation outcomes are unchanged. Measured on a Patient
    StructureDefinition (88 KB): 5.1 MB allocated and 3.4 ms per parse, down to 2.5 MB and 1.8 ms.
    With the validator off, the same parse went from 1.4 MB to 1.0 MB.
  • The ClassMapping hot path no longer allocates per access. Two patterns - a LazyInitializer
    factory allocated on every call, including the warm path, and a full locked snapshot of the
    property mapping collection - sat on the per-element path of every (de)serialization and are now
    gone.
  • Serialization caches encoded JSON property names, and class mapping lookups are allocation-free
    on .NET 10 and later (ClassMappingCollection.FindByName(ReadOnlySpan<char>)), with a fallback
    on earlier frameworks.

Snapshot generation

  • Fixed a NotSupportedException ("Can only jump to local nameReferences") when a differential
    element carried a complex type profile reference of the form canonicalUrl#elementName and
    had child constraints. See issue #​3583.
  • Logical models deriving directly from Base - which is only a resolvable StructureDefinition
    from R5 onwards - are now handled gracefully. Before R5, Base is treated as an empty root and a
    warning is emitted instead of the generator failing. Element matching and child handling for
    anonymous and untyped logical model elements were improved along with it (VONK-10132).
  • Two OperationOutcome issue codes were each used for two unrelated conditions. The duplicates
    have been resolved: PROFILE_ELEMENTDEF_SLICENAME_NOMATCH moves from 10012 to 10018, and
    PROFILE_STRUCTURE_TYPE_MISSING moves from 10014 to 10019. Code that switches on these
    numeric codes needs updating. See issue #​3587.

Terminology

  • LocalTerminologyService (multi-coding CodeableConcept validation) and ValueSetExpander
    (grouping value sets) fanned out with Task.WhenAll, so a single logical operation could call
    back into the caller-supplied IAsyncResourceResolver from several threads at once. A resolver
    that is not safe for concurrent use - a scoped EF Core-backed resolver, for instance - failed
    with "A second operation was started on this context instance". Both sites now resolve
    sequentially. See issue #​3582.

Other

  • Dynamic type inference in NewPocoBuilder now uses the FHIR definition, where available, to
    decide whether an element is primitive or complex, rather than relying on type-name heuristics.
    This fixes misclassification of complex types in logical models identified by a canonical url.
  • MatchesPrefix no longer compares a ReadOnlySpan<char> against null (CA2265). This is not a
    behaviour change - the comparison was correct - but it blocked building against net10.0 under
    TreatWarningsAsErrors. See issue #​3580.

Dependencies

  • Updated Microsoft.SourceLink.GitHub to 10.0.400. NSubstitute (6.2.0) and Verify.MSTest (32.0.0)
    were updated too, but are test-only and not part of the shipped packages.
Changes:
Bugfixes:
  • #​3583: SnapshotGenerator crashes with NotSupportedException on complex type profile reference (url#element) with child constraints
Others:
  • #​3594: Bump Verify.MSTest from 31.28.0 to 32.0.0
  • #​3593: [WIP] Fix duplicate OperationOutcome issue codes 10012 and 10014 in SnapshotGenerator
  • #​3592: Fix concurrent calls into caller-supplied resolver during terminology validation/expansion
  • #​3582: Terminology stack issues concurrent calls to the caller-supplied resolver via internal Task.WhenAll
  • #​3586: Fix SnapshotGenerator crash on complex type profile reference with child constraints
  • #​3585: Bump the runtime-dependencies-minor group with 1 update
  • #​3581: Replace span-vs-null comparison in MatchesPrefix (CA2265)
See More
  • #​3580: StringExtensions.MatchesPrefix: span-vs-null comparison trips CA2265 and blocks a net10.0 target
  • #​3579: Fix NullReferenceException in FhirUri(Uri) constructor
  • #​3577: VONK-10132: Adapt SnapshotGenerator handling of CDSHooks logical models
  • #​3576: feat: add the missing NOOVERFLOW preset to both deserializers (#​3532)
  • #​3532: Missing NOOVERFLOW static preset on FhirXmlDeserializer/FhirJsonDeserializer
  • #​3575: Tweak dynamic type inference logic for NewPocoBuilder
  • #​3572: Halve the allocations of parse-time validation
  • #​3574: Bump the runtime-dependencies-minor group with 1 update
  • #​3558: Improve serialization performance by caching encoded property names
  • #​3570: Release 6.4.0
  • #​3569: Prune empty objects via token-deferring writers
  • #​3564: Remove allocations from ClassMapping hot path

This list of changes was auto generated.

v6.4.0: 6.4.0

Intro:

This release adds opt-in retention of XML comments in the POCO-based parser. There are no breaking changes.

Serialization

  • The POCO-based XML parser can now retain the comments found in the source document. Set DeserializerSettings.RetainComments to true (the default remains false) and comments are attached to the parsed POCOs as SourceComments annotations, so that they survive a parse/serialize round-trip. See issue #​3561.

    Behavioural note: the XML serializer now writes any SourceComments annotation it encounters. Previously only POCOs produced by the legacy parser carried such annotations, so in practice nothing was written for POCOs coming from the new parser. If your code adds SourceComments annotations itself, those comments will now show up in serialized output.

Dependencies

  • Updated Fhir.Metrics, Microsoft.SourceLink.GitHub, MSTest.TestFramework and Verify.MSTest to their latest versions. NSubstitute was updated to 6.0.0 (test-only, not part of the shipped packages).

Changes:

  • #​3567: Bump the runtime-dependencies-minor group with 3 updates
  • #​3562: Retain XML comments in the POCO-based parser
  • #​3561: Support retaining XML comments in the POCO-based parser
  • #​3560: Bump the runtime-dependencies-minor group with 3 updates
  • #​3556: Bump NSubstitute from 5.3.0 to 6.0.0
  • #​3554: Start development cycle 6.3.1

This list of changes was auto generated.

v6.3.0: 6.3.0

Intro:

This release includes a behavioral change in parsing alongside a minor bug fix. Please read the notes below carefully before upgrading.

POCO / type system

  • The SDK now detects incorrectly cased element and resource type names. Two new error codes are introduced: PVAL131 (WRONG_CASED_ELEMENT) and PVAL132 (WRONG_CASED_RESOURCE_TYPE).

    Breaking change: Parsers running in strict mode will now report errors when receiving data with incorrectly cased element or resource type names. Data that was previously silently corrected during parsing will now cause parse errors instead. Make sure your data sources use the correct casing as defined by the FHIR specification. All non-strict modes (BackwardsCompatible, Recoverable, NoOverflow, and the default) continue to bind leniently, preserving the behaviour from previous SDK versions. The exact handling of wrong-cased names in lenient modes is subject to change in future major versions of the SDK.

Other fixes

  • Fixed redundant null-checks and initialization logic in bundle link handling.

Changes:

  • #​3553: Potential fix for code scanning alert no. 1: Workflow does not contain permissions
  • #​3541: Remove redundant null-checks and initialization logic from setLink method
  • #​3552: Bump the runtime-dependencies-minor group with 1 update
  • #​3540: Fix #​3502: Detect wrong-cased element and resource type names at the model level
  • #​3502: Standardize case-sensitivity handling in JSON & XML parsers
  • #​3539: Start development cycle 6.2.2
  • #​3538: Add JetBrains Rider settings to .gitignore

This list of changes was auto generated.

v6.2.1: 6.2.1

Intro:

This is a bugfix release with several stability and correctness improvements.

Serialization

  • Fixed an OverflowException when serializing large decimal values with old parsing stack
  • Switched FhirClient to use the modern POCO serializer for better consistency
    • If legacy serializers are still needed, our choice can be overriden by assigning Settings.SerializationEngine an instance of FhirSerializationEngineFactory.Legacy.FromParserSettings(ModelInfo.ModelInspector, Settings.ParserSettings ?? new()) as it was before
  • Fixed size limitations when serializing base64-encoded data
  • Fixed the pretty option being ignored when calling ToXml()

Snapshot generation

  • Fixed incorrect behavior in collection merge when suppression extensions were involved, which could cause an index-out-of-range error or suppression being silently ignored

POCO / type system

  • ISourceNode now has a direct ToPoco() extension method
  • Fixed instant values being stored incorrectly when converting from an untyped source
  • Untyped sources are now correctly associated with the model when building POCOs
  • Custom resources and datatypes are now easier to define and build as a ClassMapping for ModelInspector
  • Restored collection initializer syntax support on the Parameters class
  • Added IVersionableConformanceResource to R5 NamingSystem

Other fixes

  • Resolver base class now allows returning null, leaving it to the caller to decide whether to throw
  • Dependencies downgraded to align with the target framework version

Changes:

  • #​3535: Added more tests cases for unit tests. Some code cleanup.
  • #​3536: Pretty parameter is not being used in ToXml extension method.
  • #​3534: Fix: store 'instant' as canonical string when building a POCO from an untyped source
  • #​3531: Fix serialization base64 size limits
  • #​3472: Add direct ISourceNode.ToPoco() implementation
  • #​3526: Fixed incorrect merge logic in mergeCollectionWithSuppression that could result in suppression extension not being honoured
  • #​3530: Skip major version update rules for specific dependencies
  • #​3527: Bump the runtime-dependencies-minor group with 1 update
  • #​3509: Central Package Dependency Management AND LTS/Condition Suggestions
  • #​3525: Optimize serialization locking
See More
  • #​3523: Logic in mergeCollectionWithSuppression could result in an Index Out Of Range exception.
  • #​3521: Rebind untyped sources to builder's inspector in NewPocoBuilder
  • #​3520: Implement Central Package Management (CPM)
  • #​3508: Implement Central Package Management (CPM)
  • #​3516: Bump the runtime-dependencies-minor group with 1 update
  • #​3519: Support custom resources and datatypes in ClassMapping/ModelInspector
  • #​3518: Add Version interface to R5 NamingSystem
  • #​2850: Change ClassMappings so it can support custom resources
  • #​3517: fix: restore collection initializer support on Parameters class
  • #​3480: Fix OverflowException for large decimals, switch FhirClient to POCO serializer
  • #​3447: Parameters class in SDK 6 cannot be used with collection initializers like in older SDK
  • #​3514: Fix ResolverResult nullability annotations
  • #​3512: Relax resolve in base class to allow null, let caller decide about throwing
  • #​3507: Bump runtime deps and align MSTest adapter
  • #​3503: Fix DebuggerDisplay attribute for Url property on Extension.cs
  • #​3500: R6 related fixes
  • #​3498: Start development cycle 6.2.1
  • #​3473: Fix XmlReader field name collision in DeserializationBenchmark

This list of changes was auto generated.

New Contributors

v6.2.0: 6.2.0

Intro:

  • Added a RespectSuppressExtension setting to SnapshotGeneratorSettings (default: true) to allow consumers to opt out of suppress-extension handling during snapshot generation.
  • Added Base.ClearOverflow() and corrected the NoOverflow docstring.
  • ITypedElement extension methods now use OverloadResolutionPriority(1), ensuring they are preferred over ISourceNode extensions for types implementing both interfaces (such as PocoNode).
  • Fixed a cache key issue in CachingTerminologyService where resource or unrecognized parameter values could produce invalid cache keys.
  • Validation now includes canonicals in failed resolve attempts, and cardinality validation correctly handles cases where no member name is reported.
  • Updated System.Text.Json and Microsoft.Extensions.Caching.Memory to version 10.0.7.

Changes:

  • #​3492: Bump Microsoft.Extensions.Caching.Memory and 4 others
  • #​3496: Skip build stages when only docs change (DEVOPS-706, DEVOPS-709)
  • #​3491: Added RespectSuppressExtension to SnapshotGeneratorSettings
  • #​3490: Fix small bug in the CachingTerminologyService
  • #​3487: Bump the test-dependencies group with 1 update
  • #​3483: Bump the runtime-dependencies-minor group with 4 updates
  • #​3479: Add ClearOverflow() to Base and fix misleading NoOverflow docstring
  • #​3475: Handle the case of cardinality validation not reporting membername
  • #​3470: Include canonicals in failed resolve attempts
  • #​3477: Add OverloadResolutionPriority to ITypedElement extensions
See More
  • #​3469: Start development cycle 6.1.2

This list of changes was auto generated.

v6.1.1: 6.1.1

Intro:

Fixes wrong logic for BaseTerminologyService filtering parameters for duplicates on requests that accept 0..* on some parameters

Changes:

  • #​3464: Remove NoDuplicates from operations that allow for multiple params
  • #​3463: Merge support/sdk5 into develop (SDK5 → SDK6 sweep)

This list of changes was auto generated.

v6.1.0: 6.1.0

Intro:

  • FHIRPath CompiledExpression now accepts 0..* resources as input, removing the need for a dummy resource when the expression does not reference one.
  • ModelInspector now protects against cross-version contamination of ClassMappings, preventing type resolution errors when multiple library versions are used in the same process.
  • Improved the terminology stack with a more complete base class that simplifies implementations and standardizes error handling.
  • Improved error handling for POCO validation and serialization by setting the MemberName property for easier debugging.
  • Minor nullability improvements.

Changes:

  • #​3436: Bump Microsoft.SourceLink.GitHub from 10.0.102 to 10.0.103
  • #​3435: Bump Microsoft.Extensions.Caching.Memory from 10.0.2 to 10.0.3
  • #​3443: Give major runtime deps individual PRs
  • #​3442: Bump Microsoft.Extensions.Caching.Memory and Microsoft.SourceLink.GitHub
  • #​3440: Combine dependabot PRs for minors/patch into a single PR
  • #​3439: Override deepcopy on the terminology parameters
  • #​3428: Cache assembly attributes in ModelInspector
  • #​3434: Parse TRX file to detect failures in test runner
  • #​3431: Sync test dependencies for test runner issues
  • #​3397: Support null focus on fhirpath operations
See More
  • #​3430: Made BaseFhirClient thread safe
  • #​3429: Apply UnsafeRelaxedJsonEscaping in regular serializer options as well
  • #​3424: Implement CodeSystem ops for MIME/Language services
  • #​3425: Cache assembly attributes in ModelInspector validation
  • #​3422: Bump Microsoft.SourceLink.GitHub from 8.0.0 to 10.0.102
  • #​3420: Bump MSTest.TestFramework and Verify.MSTest
  • #​3421: Bump FluentAssertions from 7.2.0 to 7.2.1
  • #​3415: Preserve URL host casing in bundle references
  • #​3407: Use PropertyMapping.Name for MemberName if possible to report FHIR properties rather than FHIRPath names
  • #​3417: Add cross-version type conflict detection to ModelInspector
  • #​3414: Add FhirPath .value property support
  • #​3416: Fix Resource.VersionId setter with existing Meta
  • #​3410: Set MemberName to null for overflow elements
  • #​3409: Update XML deserialization snapshot for PropertyMapping.Name
  • #​3405: Fixes for Attribute validation
  • #​3403: Handle duplicate XML attributes gracefully
  • #​3399: Add ZipSource Exception and Retry Logic
  • #​3401: Fix missing period in CommonLocation
  • #​3394: VONK-9235: Base for strongly typed and pre-validated TerminologyService implementations
  • #​3396: Update README to include commercial support details
  • #​3391: Bump Microsoft.Extensions.Caching.Memory from 10.0.1 to 10.0.2
  • #​3392: Bump System.Text.Json from 10.0.0 to 10.0.2
  • #​3389: Bump version number
  • #​3388: Added release notes

This list of changes was auto generated.

v6.0.2: 6.0.2

Intro:

Mostly minor changes, but one breaking change where the PocoNode's ParentNode constructor has been removed, as it was not
necessary and is derived from the Parent.

Changes:

  • #​3387: Enable public signing
  • #​3385: Make extension public, aligning it with SDK5 and our usages
  • #​3384: Remove double space in error message.
  • #​3383: Split terminology error 6005 into warning and error
  • #​3378: Added shared error messages fir Tx services.
  • #​3380: Bump Verify.MSTest from 31.9.0 to 31.9.3
  • #​3379: Bump Verify.MSTest from 31.7.3 to 31.9.0
  • #​3369: Remove $findmatches
  • #​3370: Validate strings for leading/trailing whitespaces
  • #​3371: Bump Microsoft.Extensions.Caching.Memory from 10.0.0 to 10.0.1
See More
  • #​3366: Fix IsAbsolute property to handle null values and improve error handling
  • #​3365: Turn package validation back on
  • #​3362: Bump Microsoft.Extensions.Caching.Memory from 9.0.11 to 10.0.0
  • #​3361: Bump BenchmarkDotNet from 0.15.0 to 0.15.8
  • #​3354: Bump System.Text.Json from 9.0.1 to 10.0.0
  • #​3356: VONK-9012 implemented CachingTerminologyService
  • #​3353: Bump System.Buffers from 4.5.1 to 4.6.1
  • #​3352: Bump BenchmarkDotNet from 0.15.6 to 0.15.8
  • #​3357: Fixed unit tests not running in pipeline OR locally
  • #​3355: Bump MSTest.TestFramework and Verify.MSTest
  • #​3348: Bump BenchmarkDotNet from 0.15.5 to 0.15.6
  • #​3347: Address MSTest 4.0 analyzer warnings (1,424 of 1,866 fixed)
  • #​3343: Bump MSTest.TestFramework and Verify.MSTest
  • #​3342: Bump BenchmarkDotNet from 0.15.4 to 0.15.5
  • #​3344: Fix MSTest 4.0 breaking changes in test suite
  • #​3341: Added call to RemoveAllNonInheritableExtensions to ExpandElementAsync
  • #​3338: Changed the parent property design on PocoNode
  • #​3340: Added $find-match operation to ITerminologyService

This list of changes was auto generated.

v6.0.1: 6.0.1

Intro:

Fixes Code having System and Value switched.
Leaves snapshot generation result usability to the caller rather than assuming error.

  • For breaking changes compared to 5.x see our GitHub wiki

Changes:

  • #​3321: Fix snapshot generator errors and CodeOfT values
  • #​3319: Release SDK-6

This list of changes was auto generated.

v6.0.0

Intro:

Firely .NET SDK v6.0.0

  • For breaking changes compared to 5.x see our GitHub wiki

Changes:

Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@github-actions

github-actions Bot commented Jun 21, 2026 •

Copy link
Copy Markdown
Contributor

✅⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Max errors Warnings Elapsed time
✅ ACTION actionlint 2 0 0 0.08s
✅ ACTION zizmor 2 0 0 1.39s
⚠️ CSHARP csharpier 34 1 0 10.77s
✅ EDITORCONFIG editorconfig-checker 68 0 0 0.22s
✅ JSON jsonlint 18 0 0 0.3s
⚠️ JSON prettier 18 1 0 0.71s
✅ JSON v8r 18 0 0 3.79s
⚠️ MARKDOWN markdownlint 2 2 0 0.49s
✅ MARKDOWN markdown-table-formatter 2 0 0 0.17s
✅ REPOSITORY betterleaks yes no no 0.59s
✅ REPOSITORY checkov yes no no 16.41s
✅ REPOSITORY dustilock yes no no 0.02s
✅ REPOSITORY git_diff yes no no 0.02s
✅ REPOSITORY kingfisher yes no no 5.01s
✅ REPOSITORY osv-scanner yes no no 0.66s
✅ REPOSITORY secretlint yes no no 0.84s
✅ REPOSITORY syft yes no no 2.87s
✅ REPOSITORY trivy yes no no 10.23s
✅ REPOSITORY trivy-sbom yes no no 0.43s
✅ REPOSITORY trufflehog yes no no 3.34s
✅ YAML prettier 5 0 0 0.68s
✅ YAML v8r 5 0 0 5.55s
✅ YAML yamllint 5 0 0 1.38s

Detailed Issues

⚠️ CSHARP / csharpier - 1 error
Error ./Directory.Build.props - Was not formatted.
  ----------------------------- Expected: Around Line 46 -----------------------------
    <ItemGroup>
      <PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="all" />
    </ItemGroup>
  ----------------------------- Actual: Around Line 46 -----------------------------
    <ItemGroup>
      <PackageReference
        Include="Microsoft.SourceLink.GitHub"
  
Error ./src/FhirOperationDefinitionGen.Tests/FhirOperationDefinitionGen.Tests.csproj - Was not formatted.
  ----------------------------- Expected: Around Line 24 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" PrivateAssets="all" />
    </ItemGroup>
  ----------------------------- Actual: Around Line 24 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference
        Include="Microsoft.CodeAnalysis.Analyzers"
  
Error ./src/FhirOperationDefinitionGen/FhirOperationDefinitionGen.csproj - Was not formatted.
  ----------------------------- Expected: Around Line 12 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" PrivateAssets="all" />
      <PackageReference Include="Hl7.Fhir.R4" PrivateAssets="all" GeneratePathProperty="true" />
  ----------------------------- Actual: Around Line 12 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference
        Include="Microsoft.CodeAnalysis.Analyzers"
  
Error ./src/FhirParametersGenerator.Benchmark/FhirParametersGenerator.Benchmark.csproj - Was not formatted.
  ----------------------------- Expected: Around Line 12 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" PrivateAssets="all" />
    </ItemGroup>
  ----------------------------- Actual: Around Line 12 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference
        Include="Microsoft.CodeAnalysis.Analyzers"
  
Error ./src/FhirParametersGenerator.Tests/FhirParametersGenerator.Tests.csproj - Was not formatted.
  ----------------------------- Expected: Around Line 23 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" PrivateAssets="all" />
    </ItemGroup>
  ----------------------------- Actual: Around Line 23 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference
        Include="Microsoft.CodeAnalysis.Analyzers"
  
Error ./src/FhirParametersGenerator/FhirParametersGenerator.csproj - Was not formatted.
  ----------------------------- Expected: Around Line 11 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" PrivateAssets="all" />
    </ItemGroup>
  ----------------------------- Actual: Around Line 11 -----------------------------
      <PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
      <PackageReference
        Include="Microsoft.CodeAnalysis.Analyzers"
  
Checked 24 files in 10320ms.
⚠️ MARKDOWN / markdownlint - 2 errors
CHANGELOG.md:32 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:37 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
⚠️ JSON / prettier - 1 error
Checking formatting...
[warn] src/FhirOperationDefinitionGen.Tests/packages.lock.json
[warn] src/FhirOperationDefinitionGen/packages.lock.json
[warn] src/FhirParametersGenerator.Attributes/packages.lock.json
[warn] src/FhirParametersGenerator.Benchmark/packages.lock.json
[warn] src/FhirParametersGenerator.Demo/packages.lock.json
[warn] src/FhirParametersGenerator.Tests/packages.lock.json
[warn] src/FhirParametersGenerator/packages.lock.json
[warn] Code style issues found in 7 files. Run Prettier with --write to fix.

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@10.1.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,ACTION_ZIZMOR,CSHARP_CSHARPIER,EDITORCONFIG_EDITORCONFIG_CHECKER,JSON_JSONLINT,JSON_V8R,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_DUSTILOCK,REPOSITORY_GIT_DIFF,REPOSITORY_BETTERLEAKS,REPOSITORY_OSV_SCANNER,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,REPOSITORY_KINGFISHER,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is provided by OX Security
Show us your support by starring ⭐ the repository

@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from b32a423 to 71f0b8d Compare June 23, 2026 07:25
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 3 times, most recently from 389ae57 to 8cab3c9 Compare July 8, 2026 13:17
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 5 times, most recently from 3f88056 to f97d6f9 Compare July 14, 2026 15:26
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 5 times, most recently from c9aa184 to 25aa7df Compare July 23, 2026 23:52
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 9 times, most recently from b8a7ae1 to c6c9648 Compare August 2, 2026 11:46
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from c6c9648 to f274ae3 Compare August 5, 2026 17:43
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from f274ae3 to 14f77bd Compare August 13, 2026 11:15
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from 14f77bd to 6110a90 Compare August 26, 2026 16:31
@renovate

renovate Bot commented Aug 26, 2026 •

Copy link
Copy Markdown
Contributor Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: src/FhirOperationDefinitionGen.Tests/packages.lock.json, src/FhirOperationDefinitionGen/packages.lock.json, src/FhirParametersGenerator.Attributes/packages.lock.json, src/FhirParametersGenerator.Benchmark/packages.lock.json, src/FhirParametersGenerator.Demo/packages.lock.json, src/FhirParametersGenerator.Tests/packages.lock.json, src/FhirParametersGenerator/packages.lock.json

Welcome to .NET 10.0!
---------------------
SDK Version: 10.0.402

----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate, run 'dotnet dev-certs https --trust'
Learn about HTTPS: https://aka.ms/dotnet-https

----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------

@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 2 times, most recently from 8333afc to cba6efe Compare August 26, 2026 20:43
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 2 times, most recently from 4ddaebb to 9032229 Compare September 12, 2026 12:30
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from 9032229 to d74fb4c Compare September 14, 2026 13:53
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from d74fb4c to b95e0ab Compare October 1, 2026 16:13
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 2 times, most recently from b5c5234 to 7de424b Compare October 15, 2026 17:27
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch 2 times, most recently from 4730a62 to d91ab26 Compare October 20, 2026 09:05
@renovate
renovate Bot force-pushed the renovate/hl7.fhir.base-6.x branch from d91ab26 to bd73be4 Compare October 24, 2026 11:22

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants