eossr issueshttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues2022-02-01T14:19:15+01:00https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/62provide a way to know if a record provides an environment compatible with myb...2022-02-01T14:19:15+01:00Vuillaumeprovide a way to know if a record provides an environment compatible with mybindermybinder is based on repo2docker
we can probaby use repo2docker lib to know the list of supported env and thus provide that answer.
Useful links:
- https://github.com/jupyterhub/repo2docker
- https://repo2docker.readthedocs.io/en/l...mybinder is based on repo2docker
we can probaby use repo2docker lib to know the list of supported env and thus provide that answer.
Useful links:
- https://github.com/jupyterhub/repo2docker
- https://repo2docker.readthedocs.io/en/latest/config_files.htmlSprint: Define codemeta entries and vocabularyhttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/38How to express multiple funding sources in codemeta ?2022-12-02T11:08:18+01:00Dave MorrisHow to express multiple funding sources in codemeta ?How do we express, multiple funding sources?
The example JSON has separate entries for `funder` and `funding`, but they are not directly linked. What if a project received funding from multiple grants from different funders?
```json
...How do we express, multiple funding sources?
The example JSON has separate entries for `funder` and `funding`, but they are not directly linked. What if a project received funding from multiple grants from different funders?
```json
"funder":[
{
"@type": "Organization",
"name": "ESCAPE: European Science Cluster of Astronomy & Particle physics ESFRI research infrastructures",
"funder": {
"@type": "Organization",
"@id": "https://doi.org/10.13039/501100000780",
"name": "European Commission"
}
}
],
"funding": "824064"
```Sprint: Define codemeta entries and vocabularyEnrique GarciaEnrique Garciahttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/28Instead of hard coding the grants in codemeta2zenodo, could we generate it fr...2022-03-18T10:39:07+01:00Enrique GarciaInstead of hard coding the grants in codemeta2zenodo, could we generate it from the funder entry?At the moment we are not parsing the funder entry in the `codemeta.json` file and just adding a single `grants` entry for the ESCAPE project in the `.zenodo.json`.
We should add the possibility of having various funders and thus various...At the moment we are not parsing the funder entry in the `codemeta.json` file and just adding a single `grants` entry for the ESCAPE project in the `.zenodo.json`.
We should add the possibility of having various funders and thus various `grants` entries, of course compatible with the Zenodo syntax.Refactor codemeta2zenodo converterhttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/108convert2zenodo has an issue with reading people's affiliations2023-02-15T09:40:50+01:00MARCHAND Manonconvert2zenodo has an issue with reading people's affiliationsI called the codemeta to zenodo.json converter in a fresh install of the eossr library like so:
`eossr-codemeta2zenodo -i codemeta.json`
The codemeta file is this one: [codemeta.json](https://github.com/cds-astro/tutorials/blob/master...I called the codemeta to zenodo.json converter in a fresh install of the eossr library like so:
`eossr-codemeta2zenodo -i codemeta.json`
The codemeta file is this one: [codemeta.json](https://github.com/cds-astro/tutorials/blob/master/codemeta.json)
```
❯ eossr-codemeta2zenodo -i codemeta.json
Traceback (most recent call last):
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/bin/eossr-codemeta2zenodo", line 8, in <module>
sys.exit(main())
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/lib/python3.10/site-packages/eossr/scripts/eossr_codemeta2zenodo.py", line 65, in main
parse_codemeta_and_write_zenodo_metadata_file(
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/lib/python3.10/site-packages/eossr/metadata/codemeta2zenodo.py", line 333, in parse_codemeta_and_write_zenodo_metadata_file
meta_converter.convert()
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/lib/python3.10/site-packages/eossr/metadata/codemeta2zenodo.py", line 270, in convert
self.zenodo_data = find_matching_metadata(self.codemeta_data)
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/lib/python3.10/site-packages/eossr/metadata/codemeta2zenodo.py", line 210, in find_matching_metadata
add_author_metadata(metadata_zenodo, codemeta_json[person_type], person_field=person_type)
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/lib/python3.10/site-packages/eossr/metadata/codemeta2zenodo.py", line 91, in add_author_metadata
zenodo_person = parse_person_schema_property(person_property, person_field)
File "/home/manon.marchand/miniconda3/envs/cds-tutos-dev/lib/python3.10/site-packages/eossr/metadata/codemeta2zenodo.py", line 55, in parse_person_schema_property
zenodo_person['affiliation'] = person_property['affiliation']['name']
TypeError: list indices must be integers or slices, not str
```
The issue occurs because one of the authors has more than one affiliation. It looks like this in the `codemeta.json`.
```json
{
"@type": "Person",
"@id": "0000-0000-0000-0000",
"givenName": "Jane",
"familyName": "Doe",
"affiliation": [
{
"@type": "Organization",
"name": "Univ. Lille, CNRS, Centrale Lille, UMR 9189 CRIStAL, F-59000 Lille, France"
},
{
"@type": "Organization",
"name": "Université Paris-Saclay, CNRS, Institut d'Astrophysique Spatiale, 91405, Orsay, France"
},
{
"@type": "Organization",
"name": "Leibniz-Institut für Astrophysik (AIP), An der Sternwarte 16, D-14482 Potsdam, Germany"
}
]
},
```
I'm not sure how this would be translated in terms of `zenodo.json` otherwise I'd fix that. Do you know? Their doc says this:
![image](/uploads/d81a5b79dfee5b5b1d6752121ebfa470/image.png)
(Please add other relevant labels if any)https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/107update snippets with v1.02023-01-17T14:21:33+01:00Vuillaumeupdate snippets with v1.0After v1.0 releaseAfter v1.0 releaseVuillaumeVuillaumehttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/96software as a service metadata2022-05-24T12:13:14+02:00Vuillaumesoftware as a service metadata## Describe the problem or requirement
Shall we have a specific metadata key for services in the OSSR?## Describe the problem or requirement
Shall we have a specific metadata key for services in the OSSR?https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/89zenodo-validate CLI and GitHub action2022-03-20T21:43:55+01:00Vuillaumezenodo-validate CLI and GitHub action## Describe the feature you would like to see in eossr
- zenodo-validate CLI
- zenodo-validate GitHub action
Being able to validate a `.zenodo.json` file with a CLI.
## In what context do you need this feature?
After creating a `.zen...## Describe the feature you would like to see in eossr
- zenodo-validate CLI
- zenodo-validate GitHub action
Being able to validate a `.zenodo.json` file with a CLI.
## In what context do you need this feature?
After creating a `.zenodo.json` files (with the codemeta2zenodo converter or not), people need to make sure their file is valid before making a release.
The `eossr-check-zenodo-connection` includes such a feature, I'd like to have it as a separate one.
A lot of people seem to request this from zenodo (since 2018!):
https://github.com/zenodo/zenodo/issues/1606
## Expected behavior?
- pass a `.zenodo.json` file, it connects to the sandbox, make a fake deposit, deletes it.
## Possible way(s) to implement
- [ ] CLI: already implemented, just some refactoring
- [ ] GitHub action
See #21VuillaumeVuillaumehttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/88Does an incomplete `.zenodo.json` replace all previously added metadata of a ...2023-01-17T10:47:00+01:00VuillaumeDoes an incomplete `.zenodo.json` replace all previously added metadata of a record?Use case:
- a pre-existing record has some metadata filled (from the Zenodo web interface), such as communities
- a new version of the record is done, using a `.zenodo.json` file
- the `.zenodo.json` file does not contain all the metadat...Use case:
- a pre-existing record has some metadata filled (from the Zenodo web interface), such as communities
- a new version of the record is done, using a `.zenodo.json` file
- the `.zenodo.json` file does not contain all the metadata that has been filled already from the web interface
Does the former metadata get deleted?
Specific current use-case: gammapy former communities.VuillaumeVuillaumehttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/65Missing machine readable docker deployment2022-10-23T00:51:11+02:00Dave MorrisMissing machine readable docker deploymentThe human-readable [install instructions](https://escape2020.pages.in2p3.fr/wp3/eossr/README.html#for-users) says:
> You can also run it with docker:
>
> docker run -it gitlab-registry.in2p3.fr/escape2020/wp3/eossr:latest
The machin...The human-readable [install instructions](https://escape2020.pages.in2p3.fr/wp3/eossr/README.html#for-users) says:
> You can also run it with docker:
>
> docker run -it gitlab-registry.in2p3.fr/escape2020/wp3/eossr:latest
The machine-readable [metadata](https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/blob/master/codemeta.json) is missing an equivalent section that describe how to discover, access and run the container image.https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/64Use zenodo `prereserve_doi` and save DOI in codemeta file2023-01-17T11:02:19+01:00VuillaumeUse zenodo `prereserve_doi` and save DOI in codemeta file## Describe the feature you would like to see in eossr
The correct DOI of the record is written in the codemeta file.
## Expected behavior?
DOI is included in `codemeta.json`
Note: This could also solve the issue of having to write ...## Describe the feature you would like to see in eossr
The correct DOI of the record is written in the codemeta file.
## Expected behavior?
DOI is included in `codemeta.json`
Note: This could also solve the issue of having to write again the record ID in the gitlab-ci file (?)
1. first publicatioin: eOSSR connects to Zenodo and pre-reserve DOI
2. generic DOI is added to codemeta
3. next publication: just read generic DOI to get record ID
## Possible way(s) to implement
Use zenodo `prereserve_doi` and, write it to `codemeta.json`, push back to repo, continue upload as usual.
~MetaData ~improvementVuillaumeVuillaumehttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/61Consider adding support for zenodo metadata in the software heritage crosswalk2021-10-29T10:44:09+02:00VuillaumeConsider adding support for zenodo metadata in the software heritage crosswalkSee https://docs.softwareheritage.org/devel/swh-indexer/metadata-workflow.html#adding-support-for-additional-ecosystem-specific-metadata
Benefits:
- more generic crosswalk
- support by softwareheritageSee https://docs.softwareheritage.org/devel/swh-indexer/metadata-workflow.html#adding-support-for-additional-ecosystem-specific-metadata
Benefits:
- more generic crosswalk
- support by softwareheritagehttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/52Base exclude_files for upload on `.gitignore`2021-10-14T12:24:31+02:00VuillaumeBase exclude_files for upload on `.gitignore`## Describe the feature you would like to see in eossr
Files excluded from upload could be based (not only?) on `.gitignore` file
## In what context do you need this feature?
in script `upload_repository`
(Please add other relevant...## Describe the feature you would like to see in eossr
Files excluded from upload could be based (not only?) on `.gitignore` file
## In what context do you need this feature?
in script `upload_repository`
(Please add other relevant labels if any)https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/35metadata to indicate services to run the software2021-09-08T10:02:19+02:00Vuillaumemetadata to indicate services to run the softwareExchanging with WP5 raised the idea to have a `mybinder` entry in the metadata to know that the software can be run by mybinder service.
In a more general way, it raises the questions _*if*_ a OSSR software provider should be aware of wa...Exchanging with WP5 raised the idea to have a `mybinder` entry in the metadata to know that the software can be run by mybinder service.
In a more general way, it raises the questions _*if*_ a OSSR software provider should be aware of ways to run its software in the ESCAPE virtual environment and if yes, _*how*_ this should be implemented in the metadata schema.https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/34containers entry2022-10-23T00:51:11+02:00Vuillaumecontainers entryAdd an entry to the schema to know:
- if there is an associated container to the software
- what container manager (docker, singularity) and its version
- URL to the containerAdd an entry to the schema to know:
- if there is an associated container to the software
- what container manager (docker, singularity) and its version
- URL to the containerhttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/33Associating data formats with a software package in codemeta2022-03-18T12:25:31+01:00Mark KettenisAssociating data formats with a software package in codemetaI've been suggesting a way to associate data formats with a software package in the OSSR such that a science platform can suggest software packages or notebook environments for certain data types. Codemeta and schema.org tend to use MIM...I've been suggesting a way to associate data formats with a software package in the OSSR such that a science platform can suggest software packages or notebook environments for certain data types. Codemeta and schema.org tend to use MIME format descriptions for this (e.g. `image/fits` or `application/fits`) which is a good match since that is what VO protocols tend to use as well. But actually including this information in codemeta isn't totally straightforward.
One possible way to do this is by using an "abstract" `DataFeed` with the appropriate `encodingFormat` and use that in the `supportingData` object of the codemeta description. With "abstract" I mean that it would not provide most of the normal elements that would describe a concrete data set. We could include an element in such a DataFeed that indicates whethere it is an input or output format for the software package.https://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/21create GitHub actions2022-03-18T17:48:17+01:00Vuillaumecreate GitHub actionsFor:
- [ ] codemeta2zenodo
- [ ] zenodo-checkerFor:
- [ ] codemeta2zenodo
- [ ] zenodo-checkerVuillaumeVuillaumehttps://gitlab.in2p3.fr/escape2020/wp3/eossr/-/issues/12codemeta-zenodo conversion of non ESCAPE funder and funding entries2021-09-08T21:32:45+02:00Enrique Garciacodemeta-zenodo conversion of non ESCAPE funder and funding entriesRelated with an (ESCAPE metadata template issue)[https://gitlab.in2p3.fr/escape2020/wp3/escape_metadata_template/-/issues/3].
We would need to be able to map and and correctly convert other funding and funder information from the codeme...Related with an (ESCAPE metadata template issue)[https://gitlab.in2p3.fr/escape2020/wp3/escape_metadata_template/-/issues/3].
We would need to be able to map and and correctly convert other funding and funder information from the codemeta to the zenodo syntax.