The Saxon 12.8 maintenance release has been published. This is a maintenance release for Java, C#, C/C++, PHP, and Python that fixes a security gap and a few other issues that have been addressed since 12.7 was released.
Saxon 12.8 was released on 3 July 2025. This release has been uploaded to the usual locations on the Saxonica website, GitHub, and Maven, PyPi, and NuGet. SaxonCS 12.8 is built with .NET 8.
For a list of the issues resolved in this release, please visit the issue trackers for SaxonJ and SaxonCS or SaxonC on the Saxon support site.
Download products:
- Binaries for PE and EE are available from our download pages.
- SaxonJ-HE is available on the Maven Central repository.
- SaxonJ-HE, PE, and EE can also be found on our experimental Maven repository.
- Python wheels for SaxonC (HE, PE, and EE) are available from PyPI.
- SaxonCS is available on NuGet
- Saxon-HE is available from our open source GitHub repository. The GitHub repository also provides source code for those who need it.
For more details, please consult the documentation.
Issues resolved
In addition to the security issue, only a few other issues have been fixed; our focus was on getting the security release out promptly.
Issues in SaxonJ
Only one additional issue was fixed in SaxonJ:
- 6804
String index out-of-bounds in
parse-xml()
Issues in SaxonC
A few small issues were fixed in SaxonC:
- 6835 SaxonC PHP @@VERSION@@
- 6830 SaxonC HE 12.7.0 - PHP - XdmNode->getColumnNumber() returns the line number
- 6823 DocumentBuilder memory not deleted
- 6803 Please provide parseJsonFromString example
- 6802 Remove XdmAtomicValue::getStringValue
- 6801 PRIMITIVE_TYPE defined, but not used?
- 6800 Implement operator== for XdmItem or make it private
- 6785 Instructions in Python README for running pytest are missing the use of a pytest.ini
If you encounter any issues with Saxon 12.8, please report them on our issue tracker.