jaxen-xpath/jaxen

Jaxen 2

Closed this issue · 2 comments

There are some issues with the current code base in Java 9 and later. I'm thinking it's time to move forward. Specifically I'm thinking we should push a Jaxen 2.0 release that breaks backwards compatibility. In particular:

  1. Remove the org.w3c.dom classes we bundle
  2. Set minimum Java version to 5 or later (maybe 6)
  3. Split the navigators except for dom into separate submodules.
  4. Remove the pattern package which is buggy and unused.

Group ID and package names would rename the same. Artifact ID would change.

This might cause some problems since two jars with different coordinates that bundle the same packages could show up in the class path. Alternatives include keeping artifact ID the same but bumping the version, at least for the core package or repackaging.

Thoughts?

I thought its workable

Current thoughts:

  1. Artifact ID, group ID, and package of core modules remain the same as there's too much existing code that depends on this.
  2. Core module includes DOM navigator but no others.
  3. dom4j navigator dropped (dom4j 2 is not in this repo)
  4. XOM navigator dropped (can be republished later as a separate artifact with new package and new IDs)
  5. JDOM 1 navigator dropped. JDOM2 bundles its own navigator.
  6. Pattern package retained, at least for time being.