Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 4 improvements #6188

Merged
merged 391 commits into from
Mar 31, 2022
Merged

Version 4 improvements #6188

merged 391 commits into from
Mar 31, 2022

Conversation

fxprunayre
Copy link
Member

@fxprunayre fxprunayre commented Mar 1, 2022

Overview

This pull request combines all work done (https://github.com/titellus/core-geonetwork/pulls?q=is%3Apr+is%3Aclosed) in the past months with some organizations supporting and using GeoNetwork version 4 in production:

  • EEA
  • Service Public de Wallonie
  • BRGM
  • CNRS
  • Office International de l'Eau
  • Ifremer
  • APUR

and about to move to v4:

  • geocat.ch

It is aligned on main branch and contains various bug fixes and improvements. Most of them done by me but also with @josegar74, @MichelGabriel, @davinciagf, @jahow, @bhoefling-c2c in the context of those projects. This version is also available as a demo here https://apps.titellus.net/geonetwork with the content of various catalogues.

Proposal

The major changes are:

Some of those organizations are running security analysis and some PRs addressed those issues and also those reported by github https://github.com/titellus/core-geonetwork/pulls?q=is%3Apr+is%3Aclosed+Security.

Most of those changes are minor bug fixes https://github.com/titellus/core-geonetwork/pulls?q=is%3Apr+is%3Aclosed+label%3Abug+-label%3Ablocker and some more blocking issues https://github.com/titellus/core-geonetwork/pulls?q=is%3Apr+is%3Aclosed+label%3Abug+label%3Ablocker.

Then a number of minor improvements mainly:

This branch has been continuously deployed in those projects and tested by various users using (for sure not all) but most of the GeoNetwork functionnalities and for some of them in great details.

It also relates to some work done on GeoNetwork repository:
Contains (unmerged PR):

Contains (closed PR):

Replace:

Note

A major update was made on Keycloak library as it was reported by security tools (update from 4.8.3 to 15.0.2) but not tested (maybe @ianwallen can do a check?)

We have to also check which version of Elasticsearch to propose by default. The branch is using 7.15.1 (updated due to security report) and #5800 propose 7.6.2 due to the licence change of Elasticsearch. We discussed to check compatibility with the Java client in another PR and decide which version is a good default. Wwe also discussed that it could make sense to evaluate using Amazon opensearch instead.

Voting history

The CFV will ask 2 questions:

  • Do you accept to merge this work?
    • +1 Simon, Florent, Jo, Jeroen, Paul
  • If merged, do you think it should be a version 4.0.7 or 4.2.0 ?
    • 4.0.7 : Simon, Jo, Florent
    • 4.2.0 : Simon, Jo, Paul - (Non PSC member: Olivier)

fxprunayre and others added 30 commits December 3, 2021 16:40
Before the API url was used instead of the default https://doi.org prefix.
Keep the setting empty to use the default. When using the test API, user can set a custom value.
Can be a new record, a copy or a child of.
It was switching visibility of contained elements (visible one > hidden, hidden > visible) when we are forcing some element to not be visible 

eg. with something like
```css
.gn-tab-eo-access-and-usage {
  .gn-processStep .gn-level,
  .gn-resourceSpecificUsage .gn-specificUsage,
  .gn-resourceSpecificUsage .gn-userDeterminedLimitations,
  .gn-identifiedIssues .gn-add-field,
  .gn-required > label:after {
    display: none;
    visibility: hidden;
  }
```

Add `visibility` attribute to make distinction between elements to keep hidden and elements to switch.
In some case, the URL to use is always the same. Provide options to set a list of URLs for a type of link

eg. 

```json
      },{
        "group": "services",
        "label": "OpenSearch",
        "copyLabel": "desc",
        "icon": "fa gn-icon-onlinesrc",
        "process": "onlinesrc-add",
        "fields": {
          "url": {
            "isMultilingual": false,
            "choices": ["https://opensearch.ifremer.fr/", "https://cmr.earthdata.nasa.gov/opensearch/"]
```
Default record view was ok because doing location change in JS.
Here we restore last search when coming from /metadata only if no query_string set in new state.
Use the codelist key for multilingual support. 
Also fix the missing label.
Avoid to mix languages in emails.
… for mix of schema in members. eg. ISO19139 and ISO19115-3.
…bject.

            <div data-gn-record-mosaic= record=mdView.current.record size=2/>
…ords. Then related object are displayed as search results.
…. when accessing recordView _search is called 3 times instead of 16.
Fix resource type for ISO19115 records
Collapse managements facets
Add filters for catalogue with large set of groups, users.
Suggestions report title which can be in various languages.
In order to find a match, default searches will consider an exact match on all title, so user choosing a suggestion will always get a result (and will not depend on language detection - which may be wrong).
Copy link
Member

@josegar74 josegar74 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did a review of the main changes and seem ok, thanks.

@fgravin
Copy link
Member

fgravin commented Mar 31, 2022

Thans @fxprunayre for the huge contribution and @josegar74 for the review.
I'm merging it now to move forward.
We have tested it on geocat.ch, we have some feedback but it seems to work as expected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants