-
Notifications
You must be signed in to change notification settings - Fork 413
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
Update Saxon-HE dependency to 9.7 #674
Comments
See #647 for another Saxon discussion. |
Hi, I recently build epubcheck with Saxon 9.6.0-7 to use epubcheck as XProc extension step along with XML Calabash (which comes with the same Saxon version). You can find my changes to the epubcheck sources in this commit: 21cd661 If you want to update to Saxon 9.6.0-7, I can make a PR. best, Martin |
FYI: We will update to Saxon 9.6.0-10 soon with PR #767. |
Saxon 9.7 would also be a nice-to-have for @oxygenxml: @raducoravu wrote in #647 (comment):
We should probably consider updating from 9.5 to 9.7 instead from 9.5 to 9.6 (PR #767). Assigning this to milestone 4.1. |
Any thoughts on upgrading to latest Saxon 9.7? |
Oxygen XML Editor 20 will probably update its internal Saxon libraries to Saxon 9.8. So we'll still be out of phase with the EPUB Checker, but it does not matter much, we can probably make it work in one way or another. |
On Thu, Nov 30, 2017 at 1:12 AM, Tobias Fischer ***@***.***> wrote:
Any thoughts on upgrading to latest Saxon 9.7?
That would be 9.7.0.20 from July 31 2017
Hello,
According to [1], there is no 9.7.0.20, but 9.7.0.10 is the last one
in 9.7 series, which is also packaged in Debian.
Version 9.8 lacks some essential configuration files (for comparison
[2] and [3]), that's why I haven't considered packaging it for Debian
yet. Probably need to contact the upstream about that.
Eugene
[1] https://dev.saxonica.com/repos/archive/opensource/tags/
[2] https://dev.saxonica.com/repos/archive/opensource/tags/9.7.0.10/hej/
[3] https://dev.saxonica.com/repos/archive/opensource/tags/9.8.0.2/hej/
|
If we're going to upgrade Saxon, I would even go for the latest version (9.8 at the time of writing). @tofi86 Do you think we can do that for 4.1? I've not looked at the details, but there probably a few API changes and we have to make sure that the extension functions provided by EpubCheck (notably to report error line numbers) are working OK. |
I use this patch [1] in Debian to build and run EpubCheck 4.0.2 with
Saxon-HE 9.7.0.10.
[1] https://anonscm.debian.org/cgit/pkg-java/epubcheck.git/tree/debian/patches/compatibility_with_saxon_9.7.patch
|
Looks like most of the changes of your patch are already implemented with this PR #767. I can have a look into the Saxon API changes from 9.6 to 9.8 and create another PR if you all agree? |
@ezhukov I found 9.7.0.20 on maven: https://mvnrepository.com/artifact/net.sf.saxon/Saxon-HE/9.7.0-20 @rdeltour sure, I would also be okay with upgrading to 9.8 as long as we can still support Java 7 with it, right? don't know system reqs for 9.8 |
On Thu, Nov 30, 2017 at 7:19 PM, Tobias Fischer ***@***.***> wrote:
@ezhukov I found 9.7.0.20 on maven:
https://mvnrepository.com/artifact/net.sf.saxon/Saxon-HE/9.7.0-20
Unfortunately I cannot find source code for that release. In Debian we
build everything from source and do not rely on maven repositories. I
would appreciate if you would stick with the official 9.7.0.10/9.8.0.2
release.
At this point I'd like to emphasize the importance of reproducible-builds.org.
|
Yeah, I don’t know either.
👍
The source code for Saxon-HE is available on SourceForge. |
The good news is that just a few code changes were necessary to compile epubcheck with Saxon 9.8. The bad news is that I get plenty of error messages while running the tests because Saxon 9.8 HE no longer supports XSLT 1.0 and Jing's schematron implementation relies on XSLT 1.0. @rdeltour Concluding from the pom.xml, this version of Jing comes from Daisy? Perhaps one of your colleagues may have a look into the issue. Here is my fork of epubcheck: |
It's a mavenized* version of Jing, but otherwise comes straight from Jing's source code, with no change as far as I can remember (see the POM used to compile it) (*) and OSGified, although it doesn't matter for EpubCheck. |
Thanks for testing this Martin! So conclusion is we have to stick to Saxon 9.6 (currently implemented) or Saxon 9.7 (worth a try if it still supports XSLT 1.0). |
It should be safe to update to Saxon 9.7.0.21 without any code changes, except the one in the pom.xml. All tests passed with this version. |
👉 PR #822 |
Note for future EpubCheck/Schematron/Saxon heroes: |
Actually according to the Saxon docs starting from Saxon 9.8.0.7, XSLT 1.0 backwards-compatibility mode is reinstated in Saxon-HE. |
I've made a PR in order to update to Saxon 9.8: #830 |
There are two deps in pom.xml on Saxon. One is on 9.4 another is on 9.5.
I tried changing these to 9.7 and encountered 7 compilation errors.
I would really appreciate if you could rebase to latest Saxon version in your next release.
Thanks for your work on epubcheck!
Eugene
The text was updated successfully, but these errors were encountered: