Skip to content
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

Bump org.hl7.fhir.core to 6.3.25 #6293

Merged
merged 6 commits into from
Oct 7, 2024
Merged

Conversation

dotasek
Copy link
Contributor

@dotasek dotasek commented Sep 16, 2024

This bumps the org.hl7.fhir.core dependency to 6.3.25

Copy link

github-actions bot commented Sep 16, 2024

Formatting check succeeded!

@dotasek
Copy link
Contributor Author

dotasek commented Sep 16, 2024

There is a change to the org.hl7.fhir.core validator that is of note, and may require redesign of our own validation implementation.

Internally, HAPI has logic that switches unknown code system validation issues to a specified level:

https://github.com/hapifhir/hapi-fhir/blob/master/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/support/UnknownCodeSystemWarningValidationSupport.java

The InstanceValidator now has similar internal logic that switches between reporting warnings and errors:

hapifhir/org.hl7.fhir.core@7fc34e5

Since in many cases we throw warnings instead of errors, the processing of error messages and severity by the core validator logic is made even less straightforward. This is evidenced by the still correct, but less informative warnings created by some of our tests after this update: df77506

Copy link

codecov bot commented Sep 16, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.52%. Comparing base (406db33) to head (228f618).
Report is 54 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #6293      +/-   ##
============================================
- Coverage     83.54%   83.52%   -0.02%     
- Complexity    27432    27625     +193     
============================================
  Files          1707     1720      +13     
  Lines        106185   106944     +759     
  Branches      13397    13453      +56     
============================================
+ Hits          88710    89328     +618     
- Misses        11750    11834      +84     
- Partials       5725     5782      +57     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@dotasek
Copy link
Contributor Author

dotasek commented Oct 1, 2024

@jamesagnew I made a disturbing discovery about this yesterday while trying to switch to using setUnknownSystemsCauseErrors

UnknownCodeSystemWarningValidationSupport is actually very interactive with InstanceValidator's setUnknownSystemsCauseErrors. The way our validation implementations currently work, one can't exist without the other, and 'setUnknownSystemsCauseErrorsmust always betrue`.

I'm working on splitting UnknownCodeSystemWarningValidationSupport into UnknownCodeSystemWarningValidationSupport and UnknownCodeSystemValidationSupport, the latter of which will support 'setUnknownSystemsCauseErrors` being true or false.

If there is a need for a core update before HAPI's code freeze however, I suggest removing the exposure of setUnknownSystemsCauseErrors for the time being, and sticking with the passing configuration we have today.

@dotasek
Copy link
Contributor Author

dotasek commented Oct 4, 2024

After discussion with @markiantorno it was decided to hold off exposing setUnknownSystemsCauseErrors. In after the latest commit, this setting will always be true for the instance validator. This preserves the expected errors (in severity, if not the exact message), passes tests, and marging this wouldn't block additional core version bumps, in contrast with having to work on a resolution to the entangled implementation.

If this is acceptable, this PR should be merged, and I will open a linked ticket that can be worked on independently, to re-expose setUnknownSystemsCauseErrors and deprecate UnknownCodeSystemWarningValidationSupport.

@KevinDougan KevinDougan enabled auto-merge (squash) October 7, 2024 13:21
@KevinDougan KevinDougan merged commit 43e28da into master Oct 7, 2024
65 of 66 checks passed
@KevinDougan KevinDougan deleted the do-20240916-core-bump-6-3-25 branch October 7, 2024 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants