Geonetwork 2019 openlayers migration

From OSGeo
Jump to navigation Jump to search

GeoNetwork team would like to organize a sprint to upgrade Openlayers version.

Location

Sprint scheduled for Q4 2019, proposed date:

  • None ATM

Possible locations

  • Chambéry

Contacts

Florent Gravin

Sponsors

EEA, Ifremer, Camptocamp, Titellus, GeoCat BV.

Participants

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

Participants
# Participant Country Organization Arrival Departure Project Work on Notes Attendance
1 Florent Gravin France Camptocamp local local GeoNetwork Notes Confirmed
2 Olivier Guyot France Camptocamp local local GeoNetwork Notes Confirmed
3 Francois-Xavier Prunayre France Titellus local local GeoNetwork Notes Confirmed
4 Michel Gabriël Netherlands GeoCat 1/12/2019 6/12/2019 GeoNetwork Notes Confirmed

Discussion

How to upgrade Openlayers version

Openlayers is embedded in GeoNetwork via ngeo, a companion library for Openlayers that provides tools to integrate AngularJS application. The ngeo library has moved to ES6 modules, following Openlayers fresh build system. We cannot build ngeo anymore as a dist library and integrate it to GeoNetwork, the result is that we are not able to upgrade Openlayers version anymore. We are stuck with version 3.18 (I guess).

The javascript build system of GeoNetwork is pretty closed, using Wro4j and Closure dependency convention, it's very hard to upgrade this build system to a modern JS one, and very risky. The only solution then is to remove ngeo from the code source of GeoNetwork.

This is a very painfull task because many code of GeoNetwork UI is using ngeo ATM. Here will be the approach:

  • port specific used code of ngeo in GeoNetwork
  • remove ngeo
  • import openlayers as a standalone library
  • upgrade openlayers version
  • fix geontework code to match openlayers version

GeoNetwork comes along with a 3D version using Cesium and ol-cesium library, that was also built along ngeo. This has to be migrated too.

How to Sponsor

  1. Sponsorship is accepted through the Open Source Geospatial Foundation
    • Use OSGeo PayPal link, funds are in USD marked towards "OSGeo Foundation java code sprint".
    • To make alternative arrangements or request an invoice contact OSGeo Treasurer: treasurer@osgeo.org
  2. Once sponsorship is received the OSGeo Treasurer will contact you and the event organizers to acknowledge your sponsorship
    • Please have a logo ready for your organization if you wish to be acknowledged publicly
    • Your event sponsorship, at your request, can contribute towards being recognized as an OSGeo Foundation sponsor

OSGeo Funding Request

The work load is estimated to about 10 days of work.

Some partners, GeoNetwork sponsors get engaged to help the effort (Ifremer, EEA), but it's not enough to cover it all (working days and accomodation).

We would hope OSGEO could help funding this event.