-
Notifications
You must be signed in to change notification settings - Fork 354
Forward merge SDK5 into SDK6 #3314
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop-6.0
Are you sure you want to change the base?
Conversation
…ant (that's the base class of identifier) Permits being able to differentiate in the expression tree between them.
only has minor impact on expression compilation, and no effect on runtime if no debugger injected.
Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
…idation Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
Start development phase 5.12.2
Only inject the debugger break when in debug mode. This code should never be hit, so excluding the break is good. Intended to wake the developer if it ever hits here, as that means a new Expression type has been added that doesn't derived from one of the existing ones. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…e into the compiled expression
…variable processing
… show in the debug output what steps the evaluation took.
…them immediately Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
…n run to prevent state reuse across operations Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
- Add new overloads to BaseFhirXmlPocoSerializer.Serialize() and SerializeToString() that take Func<SerializationFilter> factory parameter - Mark existing methods taking SerializationFilter as obsolete with clear migration guidance - Update internal calls in PocoSerializationEngine_Xml to use new thread-safe methods - Add comprehensive tests verifying factory methods work correctly and produce identical output to obsolete methods - Ensure filter factories create fresh instances per call for thread safety Addresses XML serialization thread-safety concerns similar to JSON serialization fixes Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
Unified duplicate MatchesVersion implementations across ArtifactSummaryExtensions and InMemoryResourceResolver by moving the logic to a public static method on the Canonical class. This eliminates code duplication and provides a centralized, reusable canonical version matching utility. - Added Canonical.MatchesVersion() as public static method - Updated all three implementations to use Canonical.MatchesVersion() - Removed duplicate private MatchesVersion methods - Maintains full backward compatibility Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
…hen Value is null Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
Co-authored-by: ewoutkramer <2276305+ewoutkramer@users.noreply.github.com>
…al argument to the existing function. (from a usage side, looks the same)
Fix mapping and example inheritance during snapshot generation with suppress extension support across all FHIR versions
Integrate Java validator logic for primitive element merging without duplicating existing code
… json during serialization
…whitespace Add TrimWhiteSpacesInJson to trim string values
Also erase contentRef in STU3
…r of parameters (specifically for sort/coalesce)
…y of the fhirpath specification
…into feature/BP-fhirpath-debugger
…ing RemoveAllSnapshotGeneratorAnnotations. Added fix and unit test for STU3.
--- updated-dependencies: - dependency-name: BenchmarkDotNet dependency-version: 0.15.4 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
…rks/BenchmarkDotNet-0.15.4 Bump BenchmarkDotNet from 0.15.2 to 0.15.4
Add fhirpath support for coalesce and sort
…te-content-reference Added check on absolute content reference when expanding elements
…rely-net-sdk into bugfix/append-text
Bugfix/append text
# Conflicts: # release-notes.md # src/Hl7.Fhir.Base/ElementModel/Types/Ucum.cs # src/Hl7.Fhir.Base/FhirPath/EvaluationContext.cs # src/Hl7.Fhir.Base/FhirPath/Expressions/Closure.cs # src/Hl7.Fhir.Base/FhirPath/Expressions/DynaDispatcher.cs # src/Hl7.Fhir.Base/FhirPath/Expressions/EvaluatorVisitor.cs # src/Hl7.Fhir.Base/FhirPath/Expressions/Invokee.cs # src/Hl7.Fhir.Base/FhirPath/Expressions/SymbolTableInit.cs # src/Hl7.Fhir.Base/FhirPath/FhirPathCompiler.cs # src/Hl7.Fhir.Base/Model/Canonical.cs # src/Hl7.Fhir.Base/Model/Date-comparators.cs # src/Hl7.Fhir.Base/Model/FhirDateTime-comparators.cs # src/Hl7.Fhir.Base/Model/Instant-comparators.cs # src/Hl7.Fhir.Base/Model/Time-comparators.cs # src/Hl7.Fhir.Base/Serialization/BaseFhirJsonPocoSerializer.cs # src/Hl7.Fhir.Base/Serialization/BaseFhirParser.cs # src/Hl7.Fhir.Base/Serialization/BaseFhirXmlPocoSerializer.cs # src/Hl7.Fhir.Base/Serialization/CommonFhirJsonSerializer.cs # src/Hl7.Fhir.Base/Serialization/FhirJsonParsingSettings.cs # src/Hl7.Fhir.Base/Serialization/FhirJsonPocoSerializerSettings.cs # src/Hl7.Fhir.Base/Serialization/FhirJsonSerializationSettings.cs # src/Hl7.Fhir.Base/Serialization/FilterPredicateExtensions.cs # src/Hl7.Fhir.Base/Serialization/ParserSettings.cs # src/Hl7.Fhir.Base/Serialization/SerializationFilter.cs # src/Hl7.Fhir.Base/Serialization/SerializerSettings.cs # src/Hl7.Fhir.Base/Serialization/engine/PocoSerializationEngine_Xml.cs # src/Hl7.Fhir.Base/Specification/Snapshot/SnapshotGeneratorExtensions.cs # src/Hl7.Fhir.Base/Specification/Source/InMemoryResourceResolver.cs # src/Hl7.Fhir.Conformance/Specification/Snapshot/ElementDefnMerger.cs # src/Hl7.Fhir.STU3/Specification/Snapshot/ElementDefnMerger.cs # src/Hl7.Fhir.STU3/Specification/Snapshot/SnapshotGeneratorAnnotations.cs # src/Hl7.Fhir.Shared.Tests/Validation/ValidatePatient.cs # src/Hl7.Fhir.Shims.Base/Specification/Snapshot/SnapshotGeneratorAnnotations.cs # src/Hl7.Fhir.Shims.STU3AndUp/Model/ModelInfo.cs # src/Hl7.Fhir.Specification.Shared.Tests/Source/ResourceResolverTests.cs # src/Hl7.Fhir.Support.Poco.Tests/NewPocoSerializers/FhirXmlSerializationTests.cs # src/Hl7.Fhir.Support.Poco.Tests/Serialization/SummaryFilterThreadSafetyTests.cs # src/firely-net-sdk.props
#pragma warning disable CS0618 // Type or member is obsolete | ||
foreach (var child in element.Children()) | ||
#pragma warning restore CS0618 // Type or member is obsolete |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this use EnumerateElements
?
public partial class FhirJsonNode : ISourceNode, IResourceTypeSupplier, IAnnotated, IExceptionSource | ||
{ | ||
internal FhirJsonNode(JObject root, string nodeName, FhirJsonParsingSettings settings = null) | ||
internal FhirJsonNode(JObject root, string nodeName, FhirJsonParsingSettings settings = null, bool preserveWhiteSpaceInValues = false) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think here it should go into the FhirJsonParsingSettings
(as it is in SDK5), otherwise it will not be publicly accessible option.
namespace Hl7.Fhir.Serialization | ||
{ | ||
internal class FhirJsonBuilder : IExceptionSource | ||
internal class FhirJsonBuilder(bool preserveWhiteSpaceInValues = false) : IExceptionSource |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We'll also need to update the callsites at SourceNodeExtensions.Conversions
to allow for this argument to be passed, since the type itself is internal.
Description
Merged our SDK5 changes since rc1 into the SDK6 branch, this includes: