Skip to content

Add tracking for various unsupported features and implement xsl:output as the one failing the most tests#124

Merged
faassen merged 4 commits intoPaligo:mainfrom
bojidar-bg:x-xsl-output
Oct 10, 2025
Merged

Add tracking for various unsupported features and implement xsl:output as the one failing the most tests#124
faassen merged 4 commits intoPaligo:mainfrom
bojidar-bg:x-xsl-output

Conversation

@bojidar-bg
Copy link
Contributor

After the relatively low counts of fixed tests by #123, I decided to approach the problem a bit more systematically, and find which parts of the code throw the most Unsupported errors throughout. This was done in the first two commits. (First commit should have been part of #118 probably, but apparently I missed updating the filters back then.)

At that point, I could use the following Bash pipeline to determine the most-common sources of errors in the test suite:

cargo run --release --bin xee-testrunner -- -v all vendor/xslt-tests/ | cut -sd' ' -f3- | cut -d'(' -f-2 | sort | uniq -c | sort -h

Output at that point:

<snip>
    923 CONTEXT ITEM ERROR Error parsing stylesheet: Unsupported Failed parsing XSLT: Unexpected { span: Span { start: 40, end: 51 } }
    984 PASS
   2027 CONTEXT ITEM ERROR Error parsing stylesheet: Unsupported Failed parsing XSLT: Unsupported("Unsupported declaration: Output")
   5113 CONTEXT ITEM ERROR No stylesheet found

As most errors seemed to come from the lack of xsl:output support (and most tests that use that just have a basic xsl:output method="xml" encoding="UTF-8" /> or so at the start), I decided to follow up on that and implement xsl:output.

Now, the output from the pipeline above looks like the following:

<snip>
    345 CONTEXT ITEM ERROR Error parsing stylesheet: Unsupported Failed parsing XSLT: Unsupported("Unsupported declaration: Variable")
    449 CONTEXT ITEM ERROR Error parsing stylesheet: Unsupported Named templates not supported
    466 FAIL xml:
    663 CONTEXT ITEM ERROR Error parsing stylesheet: Unsupported Failed parsing XSLT: Unexpected { span: Span { start: 40, end: 51 } }
   1098 PASS
   2160 CONTEXT ITEM ERROR Error parsing stylesheet: Unsupported Failed parsing XSLT: Unsupported("Unsupported declaration: Param")
   5113 CONTEXT ITEM ERROR No stylesheet found

So, with this implemented, working through swathes of tests in #123 makes more sense (:

@bojidar-bg bojidar-bg force-pushed the x-xsl-output branch 3 times, most recently from a466c2c to 9791311 Compare October 6, 2025 21:28
@faassen faassen merged commit fa071fe into Paligo:main Oct 10, 2025
1 check passed
@github-actions github-actions bot mentioned this pull request Sep 18, 2025
@bojidar-bg bojidar-bg mentioned this pull request Oct 27, 2025
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.

2 participants