Releases: css4j/css4j-dom4j
6.0
Release Highlights
Update to changes in css4j 6.0
One of the changes in version 6.0 of css4j, necessary to support style layers in the future, requires modifications in css4j-dom4j.
Detail of changes
- Upgrade to css4j and css4j-agent 6.0.
- Upgrade to JUnit 5.12.2.
- Upgrade to extra-java-module-info version 1.12.
- Upgrade Gradle wrapper to 8.14.
5.3
NOTE: This new version is not required to run with css4j 5.3, but if you use it, then you need css4j 5.3 or later.
Release Highlights
Update to latest changes in css4j 5.3
This version no longer calls an agent method which was deprecated by css4j 5.3.
java.net.URL constructor deprecations
The library dropped the deprecated java.net.URL constructors. To achieve that, it is calling a method from css4j 5.3, which makes the build dependent on 5.3 and later.
Detail of changes
- Deprecation cleanup: do not use java.net.URL constructors (requires css4j 5.3 or later).
- Update to latest changes in css4j.
- Upgrade to css4j 5.3.
- Upgrade to css4j-agent 5.3.
- Test with Jaxen 2.0.0.
- Upgrade Gradle wrapper to 8.13.
- Use SLF4J 2.0.17 in tests.
- Upgrade to JUnit 5.12.1.
- Upgrade to extra-java-module-info 1.11.
- Run CI with Java 11 and 21.
5.1
Release Highlights
Test suite updated for css4j 5.1
This library is the same as 5.0 except for the test suite, which was modified for compatibility with the new attr()
syntax supported by css4j 5.1.
There is no need for upgrading unless you want to run the supplied tests.
Detail of changes
- Upgrade to css4j 5.1, adapt tests accordingly.
- Upgrade to slf4j 2.0.16.
- Upgrade to JUnit 5.11.4.
- Gradle: use the assignment operator in the maven repo section.
- Upgrade Gradle wrapper to 8.12.1.
- Bump year to 2025 in copyright notices.
5.0
Highlights
Major version bumped to 5
To emphasize that it is compatible with css4j 5.0, major version was bumped to 5.
Detail of changes
- Override
createElement(String, String)
inXHTMLDocumentFactory
. - Tests: add selector matcher tests.
- Upgrade to actions/setup-java v4.
- Default to Linux line endings for source files.
- Set up CodeQL analysis.
- Upgrade JUnit to version 5.11.1.
- Upgrade Gradle wrapper to 8.10.2.
- Upgrade to extra-java-module-info version 1.9.
- Bump copyright year to 2024.
4.2
Release Highlights
Align with css4j 4.2.2
Implements a method required by css4j 4.2.2.
Detail of changes
- Handle also embedded sheets when setting and enabling sets by title.
- Several code simplifications.
- Tests: add a test for
getDoctype()
. - Tests: add another (disabled) upstream test.
- Add scm section to Maven POM data.
- Upgrade to css4j 4.2.2.
- Upgrade to SLF4J 2.0.9.
- Upgrade to JUnit 5.10.1.
- Upgrade Gradle wrapper to 8.4.
- Upgrade to extra-java-module-info 1.6.
- Upgrade to actions/checkout@v4.
- Enable dependabot for Github actions.
Version 4.0
Release Highlights
Override several deprecated methods
Several deprecated DOM methods were triggering exceptions, now they just do nothing or return null
.
Detail of changes
- Override several deprecated methods.
- Tests: convert the tests to JUnit 5.
- Upgrade to css4j 4.1.
- Upgrade to JUnit 5.10.0.
- Upgrade to slf4j 2.0.7.
- Upgrade to extra-java-module-info 1.4.1.
- Upgrade Gradle wrapper to 8.3.
- changes.sh: add a dot at the end of each item.
- Add a RELEASE_HOWTO.
Version 3.9.1
Release Highlights
Use org.dom4j
as DOM4J's module name
DOM4J version 2.1.4 was released which uses the org.dom4j
module name, and this project was upgraded accordingly.
Detail of changes
- Invalidate computed style after the removal of a default-style
http-equiv
attribute. - Speed up the computation of base URI, make it more reliable.
- Tests: add a few styling error checks.
- Tests: remove an unnecessary cast.
- Gradle: use a different line conversion procedure to avoid Git glitches
- Bump year to 2023 in copyright notices.
- Upgrade to slf4j-api 2.0.6
- Upgrade to css4j 3.9.1
- Upgrade to css4j-agent 3.7.1
- Upgrade to dom4j 2.1.4
- Upgrade Gradle wrapper to 7.6
- Upgrade to extra-java-module-info 1.2
Version 3.9.0
Release Highlights
Add rebuildCascade()
to XHTMLDocument
Gives a native, more efficient implementation to css4j's CSSDocument.rebuildCascade()
default method.
Detail of changes
- Get on pair with css4j 3.9.0 and provide a non-default implementation for
rebuildCascade()
. - Check for read-only in
setAttributeNode()
. - Prevent NPE in
setTargetMedium(String)
. - Upgrade to
extra-java-module-info
1.0 - Gradle: prefer version 2.0.3 of
slf4j-api
.
Version 3.8.0
Release Highlights
Use <style>
elements from any namespace for computing styles
In style computation, inline styles that were in a non-HTML namespace were not being used. This is what some browsers did in the past but that is no longer the case.
Now it uses style elements having any namespace, which matches the current behaviour of web browsers and makes it easier to support inlined SVG.
Detail of changes
- Use
<style>
elements from any namespace for computing styles. - Javadoc: add a module description.
- Fix javadoc warning.
- Gradle: upgrade wrapper to 7.5.1.
- Upgrade
extra-java-module-info
plugin to 0.15. - Actions: switch from 'adopt' distribution to 'temurin', setup-java@v2 to 3.
- Actions: upgrade actions/checkout to v3.
Version 3.7.1
Fixes a bug in positional selector matching.