|
2 | 2 | CSS4J RELEASE NOTES |
3 | 3 | =================== |
4 | 4 |
|
5 | | -Release 1.1.0 - October 22, 2020 |
6 | | --------------------------------- |
| 5 | +Release 1.2.0 - December 20, 2020 |
| 6 | +--------------------------------- |
7 | 7 |
|
8 | 8 | Release Highlights |
9 | 9 | ------------------ |
10 | | - This release backports a few 3.x improvements to the 1.x branch, although users |
11 | | -should upgrade to 3.1 or later as soon as possible. When upgrading, please keep |
12 | | -in mind that 2 and 3.x releases require Java 8 or higher. |
| 10 | + The 1-stable branch is supposed to be superseded, but there are people still |
| 11 | +downloading 1.x artifacts so this release includes the 1-stable backports of |
| 12 | +several 3.x improvements. However, users are encouraged to upgrade to 3.2 or |
| 13 | +later as soon as possible. When upgrading, please keep in mind that 2 and 3.x |
| 14 | +releases require Java 8 or higher. |
13 | 15 |
|
14 | 16 | Notable changes: |
15 | 17 |
|
16 | | - - Previous versions are vulnerable to DoS attacks, and the new protections use |
17 | | - the new CSSDocument.isAuthorizedOrigin(URL) method. |
18 | | - - The method ErrorHandler.hasErrors() now returns true if there are I/O errors. |
19 | | - Those errors were previously considered transient, and therefore weren't |
20 | | - appearing there. |
21 | | - - On attribute nodes, getTextContent() now returns the attribute value instead |
22 | | - of the empty string. |
23 | | - |
24 | | - These new behaviors mean that this release is not fully backwards-compatible |
25 | | -with 1.0, so the minor version was bumped to 1.1. |
| 18 | +- New 'geom' package. |
| 19 | +- ":any-link" was overlooked but is now supported. ":link" and ":visited" now |
| 20 | + only apply to the link-related HTML elements and anything with a "xlink:href", |
| 21 | + while previously any element with an "href" attribute was matching. |
| 22 | +- Loads of improvements and fixes to the native DOM implementation. The new |
| 23 | + element-name iterator is a time saver. If you use native DOM, you are invited |
| 24 | + to upgrade. |
| 25 | +- In the native DOM and DOM4J, embedded style sheets are no longer used if they |
| 26 | + belong to a different namespace than the document element, preventing -for |
| 27 | + example- potential clashes with SVG styles and providing less overhead for the |
| 28 | + style computations when many SVG elements are present. Web browsers do not |
| 29 | + make this distinction about STYLE elements though, but IMHO is the right |
| 30 | + behaviour to have. |
| 31 | +- A security loophole was fixed in the DOM wrapper, which could allow setting an |
| 32 | + unsafe base href. |
| 33 | +- DOM4J module now depends on xmlpull-xpp3 1.2 artifact from |
| 34 | + https://github.com/xmlpull-xpp3/xmlpull-xpp3 instead of the old xpp3. The new |
| 35 | + artifact is not available from Maven Central -which is unlikely to make |
| 36 | + downstream users happy- but it is an optional dependency after all. |
| 37 | +- In the DOM4J module, Element.setAttributeNode() and setAttributeNodeNS() were |
| 38 | + not working correctly due to an upstream bug. Now css4j overrides the relevant |
| 39 | + methods. |
| 40 | + |
| 41 | + These changes mean that this release is not a drop-in replacement for 1.1, so |
| 42 | +the minor version was bumped to 1.2. |
26 | 43 |
|
27 | 44 |
|
28 | 45 | BUGS |
@@ -164,7 +181,7 @@ To build the dom4j module the following is required: |
164 | 181 |
|
165 | 182 | - The XPP3 Pull Parser (which is supported by this library but beware that it |
166 | 183 | does not support entities). See: |
167 | | - http://www.extreme.indiana.edu/dist/java-repository/xpp3/distributions/ |
| 184 | + https://github.com/xmlpull-xpp3/xmlpull-xpp3 |
168 | 185 |
|
169 | 186 | In addition, to run the library you need: |
170 | 187 |
|
|
0 commit comments