E407 Upgrade to java 11 and make java module system (jigsaw) compliant · Issue #19 · haster/java-chartjs · GitHub
[go: up one dir, main page]

Skip to content

Upgrade to java 11 and make java module system (jigsaw) compliant #19

@haster

Description

@haster

Based upon what I've gathered during the research for #18, this is what I want to do:

  • This library will be java 11 based (not sure yet about further upgrade path).
  • This library will be at the least usable in a jigsaw environment without breakage in the future (Automatic-Module-Name). The preferable situation would be to use module-info for all modules.

To do that, we will:

  1. Update to java 9 so we can set release parameters for the compiler and check for module usage (crashdata-parent 1.22)
  2. Set Automatic-Module-Name entries in manifests via maven-jar-plugin
  3. Check for module-system-compliancy in dependencies. If every dependency at last declares an automatic module name, that module can go full module and create a module descriptor (module-info). If not, it will stay as is for now.
  4. Update to java 11.
  5. Optionally, move the nl.crashdata.chartjs.colors package in java-chartjs-data to nl.crashdata.chartjs.data.colors so all packages of the data module have the same nl.crashdata.chartjs.data prefix. This also enables us to make the module name compliant with Stephen Colebourne's recommendations
    Move the nl.crashdata.chartjs.components.* packages in java-chartjs-wicket to nl.crashdata.chartjs.wicket.components.*
  6. Release all this as version 2.0.0 as these are pretty significant changes and point 5 is an API break.

(Non-test) Dependencies and modularity:

dependency modularity module
java-chartjs-data
jackson-annotations automatic module name in manifest com.fasterxml.jackson.annotation
java-chartjs-serialization
jackson-annotations automatic module name in manifest com.fasterxml.jackson.annotation
jackson-core automatic module name in manifest com.fasterxml.jackson.core
jackson-databind automatic module name in manifest com.fasterxml.jackson.databind
jackson-datatype-jsr310 automatic module name in manifest com.fasterxml.jackson.datatype.jsr310
java-chartjs-wicket
jackson-annotations automatic module name in manifest com.fasterxml.jackson.annotation
jackson-core automatic module name in manifest com.fasterxml.jackson.core
jackson-databind automatic module name in manifest com.fasterxml.jackson.databind
jackson-datatype-jsr310 automatic module name in manifest com.fasterxml.jackson.datatype.jsr310
java-chartjs-data module-info nl.crashdata.chartjs.data
java-chartjs-serialization module-info nl.crashdata.chartjs.serialization
wicket-core none (see WICKET-6585)
wicket-request none (see WICKET-6585)
wicket-util none (see WICKET-6585)
jdk-serializable-functional module-info org.danekja.jdk.serializable.functional
openjson none (see openjson/openjson#15)
commons-fileupload none
commons-io none
commons-collections4 none
slf4j-api none

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0