Bolsena 2022 - geonetwork/core-geonetwork GitHub Wiki
Agenda for the Bolsena Code Sprint 2022
Link to the event: Bolsena_Code_Sprint_2022
Presentations & discussions
JRC harvesting presentation (David, Jose)
Next to GeoNetwork can be installed a new CSW harvester and a link checker application that can be configured from GeoNetwork harvesting console. The progress of the task can be followed from the console too.
Agenda
Topics to talk about/things to do
Community
- Future of GN - What's each-other's vision for (the future of) GN - UI, Backend, Microservices
- GN Team organization
Project features
- A11y review PR for map panels
- DCAT (rdf) catalog output
- can export DCAT from current CSW
- could be implemented in OGC API records
- DataVerse
- Dataverse output, DCAT output
- Dataverse provides OAI-PMH client and server, v3 support it, v4 needs some work to move to Elasticsearch (https://github.com/geonetwork/core-geonetwork/issues/4727)
- OGC API Records harvester, current state of OGC-API (maps and features)
- geonetwork-ui (simple mapviewer, new editor POC)
- Data API
- Geospatial search
- Publisher entries
- Batch indexing/task - asynchronous tasks - sometimes the client is gone and server task is still running - use a polling system? SSE.
- How to make/use 1 microservice architecture (based on JRC infrastructure?)
Project updates
- JAVA8 to JAVA11
- AngularJS (no issue for the enterprise version)
- Automatic security/vulnerability check
- PR for updating Spring security version
- Remove keycloak client - reached end of life
- Dependabot reviews
- Saxon XML update? GeoNetwork use an old version of Saxon not easy to update because some features (eg. Java calls) are not opensource in latest Saxon. Hard to update.
Releases & documentation
- Making release on github only ? Check for GitHub statistics - Sourceforge is still preferred as it provides statistics (and has the history)
- integrate HNAP user manual
- Publish artifacts to main OSGeo repo (snapshots)
Work items
Testing and code quality
Integration tests for GeoNetwork (Ian/Jo)
Made some progress, needs some works (2/3 of the way making the existing tests work against 3.12)
We think this will be easier on GeoNetwork 4 where Michel has been doing clean up for accessibility (resulting in clear identifiers).
https://github.com/geonetwork/core-geonetwork/tree/main/integration-test
Code quality / Setting up sonar cloud (Björn)
Only PR proposed in geonetwork org can be analyzed (not those from a fork).
Github Issue and PR (Juan)
Setup a bot on GitHub to close inactive issues/PR automatically after 6 months PSC agreed on the following rule:
- 6 months for PR
- After 6 months send a warning and add a label (inactive)
- Automatically close a month later
Library updates
MapfishPrint V2, removal of IText (Jody, Juan, Jose)
- mapfish-print 2.2.0 published to osgeo repo from mapfish-print-v2 repository: https://github.com/mapfish/mapfish-print-v2/releases/tag/release%2F2.2.0
- main: https://github.com/geonetwork/core-geonetwork/pull/6343
- 3.12.x: https://github.com/geonetwork/core-geonetwork/pull/6393
Log4j 1.2 --> Log4j 2.0 update (Jody)
A prior PR tried to change to SLF4J (on review it only tried to change one class to use SLF4J logging).
See pull request for detailed progress, presently trying to ask harvesters to create an appender on the fly.
Dependabot alerts (Juan, Francois)
Was updated: Mysql client, Camel
Camel update cause issue deploying on Tomcat (needs more work)
New developments
Indexing performances (Jose, Francois)
Analyse how to improve indexing performances by:
- creating a minimum indexing task that can be used during editing.
- A complete indexing task which is triggered when completing an editing session.
- Adding cache for thesaurus searches which represent a large part of the indexing time.
- Moving small overview creation task to a dedicated background process. See https://github.com/geonetwork/core-geonetwork/pull/6415, https://github.com/GeoCat/core-geonetwork/pull/40 - Work in progress
INSPIRE Atom / Migration to Elasticsearch (Francois, Jose)
See https://github.com/geonetwork/core-geonetwork/pull/6395
Improve format support and more homogeneous icons & label (Francois, Michel)
See https://github.com/geonetwork/core-geonetwork/pull/6411, https://github.com/geonetwork/core-geonetwork/pull/6101
Others
- Configure user profile allowed to delete published https://github.com/geonetwork/core-geonetwork/pull/6398
- Map configuration for overviews https://github.com/geonetwork/core-geonetwork/pull/6410
- CMIS improvements https://github.com/geonetwork/core-geonetwork/pull/6404
- Batch editing / Support for attribute https://github.com/geonetwork/core-geonetwork/pull/6423
- Batch editing / Cleaning unused code https://github.com/geonetwork/core-geonetwork/pull/6400
GeoNetwork archaeology / Getting the XForms prototype from 2008 running (Volker/François)
We were be able to get the prototype of Bluenet MEST 1.1
Source code from https://sourceforge.net/p/geonetwork/code/HEAD/tree/sandbox/geonetworkui/BlueNetMEST/ (r1465(https://sourceforge.net/p/geonetwork/code/1465/)) running.
You couldn't really interact with the editor, but at least see it:
Javascript Converter microservice from pivot to ISO
- Investigate monorepo architecture in geonetwork-ui to implement Node backend
- Start a minimal pivot schema and use an orm to map it in postgres
- openapi and swagger UI
- Beginning of IS Convert https://github.com/geonetwork/geonetwork-ui/tree/nestjs-api/apps/editor-api