Skip to content

Releases: css4j/css4j-dom4j

5.0

05 Oct 18:49
v5.0
Compare
Choose a tag to compare

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) in XHTMLDocumentFactory.
  • 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

19 Nov 13:26
v4.2
Compare
Choose a tag to compare
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

19 Aug 12:31
v4.0
Compare
Choose a tag to compare

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

23 Jan 16:39
v3.9.1
Compare
Choose a tag to compare

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

19 Oct 13:59
v3.9.0
Compare
Choose a tag to compare

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

21 Aug 12:26
v3.8.0
Compare
Choose a tag to compare

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

01 Mar 17:52
v3.7.1
Compare
Choose a tag to compare

Fixes a bug in positional selector matching.

Version 3.7.0

15 Feb 15:55
v3.7.0
Compare
Choose a tag to compare

Release Highlights

  • getSheet() now returns null if the sheet's Content-Type is invalid.

  • css4j-dom4j now requires css4j 3.7.1 or later.

Version 1.3.0

15 Feb 15:51
v1.3.0
Compare
Choose a tag to compare

Although the 1-stable branch is nowhere near the level of features of master, it is still the easiest upgrade path for people that use other SAC implementations, or that are stuck with Java 7.

This maintenance release backports a few master fixes to 1-stable, for people that cannot upgrade to 3.x. By all means please use css4j-dom4j 3.x or later, instead of this release.


Release Highlights

Support the :dir() pseudo-class

The :dir() pseudo-class is now partially supported in computed styles.

Full support could not be implemented due to dom4j's limited DOM support. Users are advised to switch to css4j's native DOM if they need a full :dir implementation.

Build

The build system was switched from Maven to Gradle.

Version 3.6.1

28 Nov 18:21
v3.6.1
Compare
Choose a tag to compare

Release Highlights

DOM conformance.

  • XHTMLDocument has gained getCompatMode().

  • XHTMLDocument now returns sane default values for Document.inputEncoding, xmlEncoding, xmlStandalone and xmlVersion attributes (instead of throwing an exception). Thanks to that, css4j-dom4j documents can now be used with a wider XML infrastructure like javax.xml.transform.Transformer.

Build & CI.

  • Miscellaneous build improvements.

  • Added a CI workflow.

  • New workflow to automatically publish in Github packages on release.