Skip to content

Remove Saxon and xmlresolver dependencies#215

Merged
david-waltermire merged 1 commit intometaschema-framework:developfrom
david-waltermire:remove-saxon-xmlresolver
Jan 7, 2026
Merged

Remove Saxon and xmlresolver dependencies#215
david-waltermire merged 1 commit intometaschema-framework:developfrom
david-waltermire:remove-saxon-xmlresolver

Conversation

@david-waltermire
Copy link
Copy Markdown
Contributor

@david-waltermire david-waltermire commented Dec 31, 2025

Summary

  • Replace Saxon TransformerFactoryImpl with standard Java TransformerFactory in PrettyPrinter for XML indentation
  • Remove unused xmlresolver dependencies from pom.xml

These dependencies were removed from metaschema-java in metaschema-framework/metaschema-java#607.

Test plan

  • All 302 tests pass
  • Build compiles successfully
  • PrettyPrinter.prettyPrintXml() still produces properly indented output

Summary by CodeRabbit

  • Tests
    • Updated test resource files with restructured YAML formatting. Sections reordered and nested elements reorganized across multiple test fixtures while preserving original data values and integrity.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Dec 31, 2025

📝 Walkthrough

Walkthrough

Three test YAML resource files were restructured to reorganize control-objective-selections and control-selections blocks. The changes reorder these sections and modify their nesting levels while preserving all objective IDs and control IDs across the files.

Changes

Cohort / File(s) Summary
YAML test resource restructuring
src/test/resources/yaml-null/example_ar_nullvar-1.yaml, src/test/resources/yaml-null/example_ar_nullvar-2.yaml, src/test/resources/yaml-null/example_ar_nullvar-3.yaml
Reordered control-objective-selections blocks to appear after control-selections; restructured include-controls entries with modified indentation and nesting; preserved all objective IDs (ac-8_obj.a.1 through ac-8_obj.a.4) and control IDs (ac-8)

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

Blocks shuffle and dance in YAML delight, 🐰
Objectives and controls find their new site,
Indent by indent, they waltz and reflow,
Same IDs remain—just a structural glow!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title 'Remove Saxon and xmlresolver dependencies' clearly and accurately summarizes the main objective of the changeset - removing specific dependencies from the project.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom Pre-merge Checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 71c30c4 and 5dea963.

📒 Files selected for processing (3)
  • src/test/resources/yaml-null/example_ar_nullvar-1.yaml
  • src/test/resources/yaml-null/example_ar_nullvar-2.yaml
  • src/test/resources/yaml-null/example_ar_nullvar-3.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/test/resources/yaml-null/example_ar_nullvar-1.yaml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Code
🔇 Additional comments (2)
src/test/resources/yaml-null/example_ar_nullvar-2.yaml (1)

23-31: LGTM! Restructuring correctly establishes sibling relationship.

The YAML structure now properly defines control-selections and control-objective-selections as siblings under reviewed-controls, with correct indentation. This addresses the ambiguous YAML indentation mentioned in the PR objectives and resolves parsing errors with stricter metaschema-java validation. All control and objective IDs are preserved.

src/test/resources/yaml-null/example_ar_nullvar-3.yaml (1)

23-31: LGTM! Restructuring matches file 2 and correctly establishes sibling relationship.

The YAML structure properly defines control-selections and control-objective-selections as siblings under reviewed-controls, identical to the changes in example_ar_nullvar-2.yaml. This resolves the parsing errors with stricter validation. Note that line 55 uses uppercase NULL while example_ar_nullvar-2.yaml uses lowercase null - this appears intentional for testing different null value representations in the "yaml-null" test suite.


Comment @coderabbitai help to get the list of available commands and usage tips.

Fix ambiguous YAML indentation in assessment-results test files that
caused parsing errors with stricter metaschema-java validation. The
control-selections and control-objective-selections elements now have
proper indentation as siblings under reviewed-controls.
@david-waltermire david-waltermire force-pushed the remove-saxon-xmlresolver branch from 71c30c4 to 5dea963 Compare January 7, 2026 05:09
@david-waltermire david-waltermire merged commit edc30b7 into metaschema-framework:develop Jan 7, 2026
3 checks passed
@david-waltermire david-waltermire deleted the remove-saxon-xmlresolver branch January 7, 2026 05:17
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.

1 participant