Skip to content

CONFIG: Bump Hl7.Fhir.STU3 from 6.6.0 to 6.8.0 - #46

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/NHSDigital.ApiPlatform.Sdk.AspNetCore.Tests.Unit/multi-fdb0ae6741
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/NHSDigital.ApiPlatform.Sdk.AspNetCore.Tests.Unit/multi-fdb0ae6741

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 26, 2026

Copy link
Copy Markdown
Contributor

Updated Hl7.Fhir.STU3 from 6.6.0 to 6.8.0.

Release notes

Sourced from Hl7.Fhir.STU3's releases.

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.

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
    ... (truncated)

Commits viewable in compare view.

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

---
updated-dependencies:
- dependency-name: Hl7.Fhir.STU3
  dependency-version: 6.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: Hl7.Fhir.STU3
  dependency-version: 6.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Code review skipped — your organization has no extra usage available to pay for this review.

If your organization's extra usage balance is empty, an organization admin can add extra usage credits at claude.ai/admin-settings/usage. If its monthly spend limit was reached, an admin can raise it on the same page. If neither applies, contact Anthropic support.

Once extra usage is available, someone with write access to this repository can comment @claude review on this pull request to trigger a review.

@github-actions github-actions Bot added the CONFIG The configuration category is for any configuration changes i.e. setting up appsettings.json label Oct 26, 2026

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

CONFIG The configuration category is for any configuration changes i.e. setting up appsettings.json dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants