Java 2018 Code Sprint

The Java tribe has a real challenge for 2018 - updating our open source projects for the Java roadmap.

Location
We are looking at setting up a distributed sprint with locations in North America, Europe and Oceania.

Contacts
TBD

Sponsors
We would like to thank our sponsors - would you like to be the first?

Gold Sponsors
TBD

Bronze Sponsors
TBD

In-Kind Support
TBD

Participants
Please add your name and the projects you are planning to sprint and note the likehood of your attendance.

Java has a roadmap?
Yes, we had a previous sprint focused on Java 8 compatibility, several features had changed breaking compatibility.

More importantly the Java roadmap has changed to a six-month release cycle:

- Oracle is offering three year LTS releases .. to paying customers - AdoptOpenJDK is setting up LTS releases of OpenJDK .. backed by IBM, Microsoft and others. - RedHat is skipping Java 9 and Java 10 and plans to ship OpenJDK based on Java SE 11

This six month release cycle is already well underway having started with Java 9 and Java 10.

Why is updating our open source projects for the Java roadmap a challenge?
- Java 9 changed the service provider interface plugin system used by GeoTools, forcing the project to write its own replacement.

- Java 9 introduced the module system "jigsaw" (introduced for Java 9) prevents two jars from using the same package. This breaks the GeoTools library which as gt-api defining interfaces, and gt-main providing implementations. Projects like GeoServer need to review of over hundred open source dependencies to determine what other libraries are broken, and if an update or replacement can be found.

- Jigsaw also locks down aspects of Java reflection, affecting projects like Spring that make heavy use of reflection to "auto wire" GeoServer together. Spring 5 has been released and upgrading to this release will be a key focus.

- The java runtime has been broken up into modules, not all of which are activated by default. We need to review what sections of the JRE we require and ensure they are turned on.

- The java web service framework (responsible for concepts like Servlet and Session) is being removed from Oracle oversight and has been setup as [Jakarta EE Software](https://jakarta.ee).

Do you have any experience running sprints?
The GeoServer team really benefited from java 2017 code sprint and is eager to repeat the success.

What is the plan?
With such a large task plans are well underway:


 * GSIP 171 Java 18.9 Compatibility (GeoServer)
 * GeoTools Java-9-Compatibility (GeoTools)

With some steps already completed:


 * Migrate Units to JSR-363 (GeoTools)
 * FactoryRegistry Refactoring for Java 9 Compatibility (GeoTools)
 * Add module names for better Java 9/Jigsaw support (JTS Topology Suite)

How to sponsorship
Contributions will be put towards travel costs for overseas sprinters who would be otherwise unable to attend. Any surplus at the end of the event will be turned over to OSGeo or used for a future code sprint. We have set-up the sprint to minimize travel and accommodation costs.

Sponsors will receive the following benefits / honours:


 * Your logo at the top of this page
 * Mention in all of our public communication, including GeoServer 2.15 release announcement
 * Our gratitude :)

This event provides the following sponsorship levels:

This is an official OSGeo event, your contribution counts towards being recognized as an OSGeo Sponsors.

For more information on sponsorship, please contact Jody Garnett, Andrea Aime.

How to Sponsor

 * 1) Contact OSGeo Treasurer for details on using PayPal or to request an invoice:
 * 2) The OSGeo Treasurer will contact both you and the event organizers to acknowledge your sponsorship
 * 3) * Please have a logo ready for your organization if you wish to be acknowledged publicly
 * 4) * Your event sponsorship, at your request, can contribute towards being recognized as an OSGeo Foundation sponsor

Sponsorship Outreach
We are reaching out to organizations to see if there is interest in sponsorship:


 * International organizations (OSGeo, GeoSolutions, Boundless);
 * Local organizations

If there is a lot of local sponsorship we expect to drag the developers away from the task at hand and meet the local community (at a social evening or similar).

OSGeo Funding Request
The following information is requested by OSGeo Board Code_Sprint_Guidelines, we provided an indication that we would be planning a sprint during the 2018 budget process.


 * Java 2018 Code Sprint Budget