Repository Information
- Repository Name: eossr
- Record ID: 18749221
- Repository URL: https://gitlab.com/escape-ossr/eossr
- Tool Type: SoftwareSourceCode
- Version: v2.2.0
Results
| Indicator | generated by | evidence | Value | Run Status | Check passed |
|---|---|---|---|---|---|
| https://w3id.org/everse/i/indicators/codemeta_completeness | Codemeta Completeness Tool | Codemeta completeness = 40.5%, minimal threshold to consider this check to pass is set to 20.0%. Found ['codeRepository', 'programmingLanguage', 'runtimePlatform', 'downloadUrl', 'operatingSystem', 'releaseNotes', 'softwareRequirements', 'softwareVersion', 'author', 'contributor', 'dateCreated', 'dateModified', 'datePublished', 'funder', 'keywords', 'license', 'version', 'isAccessibleForFree', 'isPartOf', 'description', 'name', 'name', 'maintainer', 'contIntegration', 'buildInstructions', 'developmentStatus', 'funding', 'issueTracker', 'referencePublication', 'readme'] keys in codemeta file. | 0.40540540540540543 | ✅ | ✅ |
| https://w3id.org/everse/i/indicators/codemeta_completeness | Codemeta Completeness Tool | Codemeta completeness = 40.5%, minimal threshold to consider this check to pass is set to 50.0%. Found ['codeRepository', 'programmingLanguage', 'runtimePlatform', 'downloadUrl', 'operatingSystem', 'releaseNotes', 'softwareRequirements', 'softwareVersion', 'author', 'contributor', 'dateCreated', 'dateModified', 'datePublished', 'funder', 'keywords', 'license', 'version', 'isAccessibleForFree', 'isPartOf', 'description', 'name', 'name', 'maintainer', 'contIntegration', 'buildInstructions', 'developmentStatus', 'funding', 'issueTracker', 'referencePublication', 'readme'] keys in codemeta file. | 0.40540540540540543 | ✅ | ❌ |
| https://w3id.org/everse/i/indicators/doi_presence | SOMEF | Found DOI: https://doi.org/10.5281/zenodo.7544514 with confidence 100.0% from source https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md | https://doi.org/10.5281/zenodo.7544514 | ⚠️ | ✅ |
| https://w3id.org/everse/i/indicators/codemeta_discrepancy | SOMEF, Codemeta Completeness Tool | Comparison value: 0.6176470588235294, Threshold: 0.5, Status: True | 0.6176470588235294 | ⚠️ | ✅ |
Results Output
https://w3id.org/everse/i/indicators/codemeta_completeness
- Status: CompletedActionStatus
- Value: 0.41
- Evidence: Codemeta completeness = 40.5%, minimal threshold to consider this check to pass is set to 20.0%. Found ['codeRepository', 'programmingLanguage', 'runtimePlatform', 'downloadUrl', 'operatingSystem', 'releaseNotes', 'softwareRequirements', 'softwareVersion', 'author', 'contributor', 'dateCreated', 'dateModified', 'datePublished', 'funder', 'keywords', 'license', 'version', 'isAccessibleForFree', 'isPartOf', 'description', 'name', 'name', 'maintainer', 'contIntegration', 'buildInstructions', 'developmentStatus', 'funding', 'issueTracker', 'referencePublication', 'readme'] keys in codemeta file.
- Output:
{"pass": true, "value": 0.40540540540540543, "codemeta_dict": {"@context": "https://doi.org/10.5063/schema/codemeta-2.0", "@type": "SoftwareSourceCode", "name": "eossr", "description": "<p><img alt=\"eossr_logo\" src=\"docs/images/eossr_logo_200x100.png\" /></p><h1>The ESCAPE OSSR library</h1><p>The eOSSR is the Python library to programmatically manage the ESCAPE OSSR.In particular, it includes:</p><ul><li>an API to access the Zenodo and the OSSR, retrieve records and publish content</li><li>functions to map and convert metadata from CodeMeta to Zenodo metadata shema</li><li>functions to validate their <code>codemeta.json</code> file against OSSR requirements</li><li>functions to help developers automatically publish to Zenodo and contribute to the OSSR, in particular using their continuous integration (see also code snippets)</li></ul><p><img alt=\"eossr schema\" src=\"https://s3-eu-west-1.amazonaws.com/openreseurope/manuscripts/16954/8df35fb4-5da0-472b-b560-c410ecf56296_figure1.gif\" /></p><p>Code: <a href=\"https://gitlab.com/escape-ossr/eossr\">https://gitlab.com/escape-ossr/eossr</a></p><p>Documentation: <a href=\"https://escape-ossr.gitlab.io/ossr-pages/\">https://escape-ossr.gitlab.io/eossr/</a></p><p><a href=\"https://gitlab.com/escape-ossr/eossr/-/commits/master\"><img alt=\"pipeline_badge\" src=\"https://gitlab.com/escape-ossr/eossr/badges/master/pipeline.svg\" /></a><a href=\"https://gitlab.com/escape-ossr/eossr/-/commits/master\"><img alt=\"coverage_badge\" src=\"https://gitlab.com/escape-ossr/eossr/badges/master/coverage.svg\" /></a><a href=\"https://bestpractices.coreinfrastructure.org/projects/5712\"><img alt=\"CII Best Practices\" src=\"https://bestpractices.coreinfrastructure.org/projects/5712/badge\" /></a><a href=\"https://api.eu.badgr.io/public/assertions/aiB2ndZOSL6IuVTOmljRCw\" title=\"SQAaaS silver badge achieved\"><img alt=\"SQAaaS badge shields.io\" src=\"https://img.shields.io/badge/sqaaas%20software-silver-lightgrey\" /></a><a href=\"https://opensource.org/licenses/MIT\"><img alt=\"MIT_license_badge\" src=\"https://img.shields.io/badge/License-MIT-blue.svg\" /></a><a href=\"https://doi.org/10.5281/zenodo.5524912\"><img alt=\"zenodo_badge\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5524912.svg\" /></a><a href=\"https://mybinder.org/v2/git/https%3A%2F%2Fgitlab.in2p3.fr%2Fescape2020%2Fwp3%2Feossr/HEAD?labpath=examples%2Fnotebooks%2Fossr_api-Explore_the_OSSR.ipynb\"><img alt=\"Binder\" src=\"https://mybinder.org/badge_logo.svg\" /></a></p><h2>Former stable versions</h2><ul><li>v1.0: <a href=\"https://doi.org/10.5281/zenodo.7544514\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.7544514.svg\" /></a></li><li>v0.6: <a href=\"https://doi.org/10.5281/zenodo.6475946\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6475946.svg\" /></a></li><li>v0.5: <a href=\"https://doi.org/10.5281/zenodo.6352039\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6352039.svg\" /></a></li><li>v0.4: <a href=\"https://doi.org/10.5281/zenodo.6326454\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6326454.svg\" /></a></li><li>v0.3.3: <a href=\"https://doi.org/10.5281/zenodo.5592584\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5592584.svg\" /></a></li><li>v0.2 : <a href=\"https://doi.org/10.5281/zenodo.5524913\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5524913.svg\" /></a></li></ul><h2>Install</h2><h3>For users</h3><pre><code class=\"language-bash\">pip install eossr</code></pre><p>You can also run it with docker:</p><pre><code class=\"language-bash\">docker run -it registry.gitlab.com/escape-ossr/eossr:latest</code></pre><p><a href=\"https://gitlab.com/escape-ossr/eossr/container_registry\">Visit our registry</a> to see the available docker containers.</p><p>Note that <code>latest</code> tag always point to the latest stable released container. For reproducible results, use a tagged version.</p><h3>For developers</h3><pre><code class=\"language-bash\">git clone https://gitlab.com/escape-ossr/eossr.gitcd eossrpip install -e .</code></pre><h4>Running tests</h4><p>To run tests locally, run:</p><pre><code class=\"language-bash\">pip install -e ".[tests]"pytest eossr</code></pre><p>Some tests will be skiped if <code>SANDBOX_ZENODO_TOKEN</code> is not defined in your environment variables.If you want to run these tests, you will need to create a <a href=\"https://sandbox.zenodo.org/account/settings/applications/tokens/new/\">sandbox zenodo token</a> and add it to your env:</p><pre><code class=\"language-bash\">export SANDBOX_ZENODO_TOKEN="your_sandbox_token"</code></pre><h2>Online CodeMeta validator for the OSSR</h2><p>The eOSSR powers an online validator for your CodeMeta metadata and to convert it to Zenodo metadata:</p><p><a href=\"https://mybinder.org/v2/gl/escape-ossr%2Feossr/HEAD?urlpath=voila%2Frender%2Fdocs%2Fmetadata%2Fvalidate_codemeta.ipynb\"><img alt=\"badge\" src=\"https://img.shields.io/badge/OSSR%20metadata%20tool-binder-579ACA.svg?logo=data:image/png;base64,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\" /></a></p><h2>License</h2><p>See <a href=\"LICENSE\">LICENSE</a></p><h2>Cite</h2><p>If using this library, please cite the ESCAPE OSSR project using:</p><pre><code class=\"language-latex\">@Article{ 10.12688/openreseurope.15692.2,AUTHOR = { Vuillaume, T and Al-Turany, M and F\u00fc\u00dfling, M and Gal, T and Garcia, E and Graf, K and Hughes, G and Kettenis, M and Kresan, D and Schnabel, J and Tacke, C and Verkouter, M},TITLE = {The ESCAPE Open-source Software and Service Repository [version 2; peer review: 5 approved]},JOURNAL = {Open Research Europe},VOLUME = {3},YEAR = {2023},NUMBER = {46},DOI = {10.12688/openreseurope.15692.2}}</code></pre><p>If you used the library in a workflow, please cite the version used as well, using the cite section in <a href=\"https://zenodo.org/record/5592584#.YiALJRPMI-Q\">the Zenodo page</a> (right column, below the <code>Versions</code> section).</p>", "license": "https://spdx.org/licenses/MIT", "version": "v2.2.0", "softwareVersion": "v2.2.0", "codeRepository": "https://gitlab.com/escape-ossr/eossr", "developmentStatus": "active", "isAccessibleForFree": true, "isPartOf": ["https://gitlab.com/escape-ossr", "https://projectescape.eu/"], "referencePublication": "https://doi.org/10.48550/arxiv.2212.00499", "contIntegration": "https://gitlab.com/escape-ossr/eossr/-/pipelines", "buildInstructions": "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md", "issueTracker": "https://gitlab.com/escape-ossr/eossr/-/issues", "readme": "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md", "programmingLanguage": [{"@type": "ComputerLanguage", "name": "Python", "url": "https://www.python.org/"}], "softwareRequirements": [{"@type": "SoftwareApplication", "identifier": "requests", "name": "requests", "softwareVersion": ">=3.6"}, {"@type": "SoftwareApplication", "identifier": "pytest", "name": "pytest", "softwareVersion": ">=5.4.2"}], "keywords": ["jupyter-notebook", "zenodo"], "runtimePlatform": "Python 3", "downloadUrl": "https://gitlab.com/escape-ossr/eossr/-/archive/v2.2.0/eossr-v2.2.0.zip", "releaseNotes": "This new version mainly adds a new feature to convert fundings in `codemeta.json` into `.zenodo.json` grants.\n\nChangelog since release v2.1.1 of eossr:\n* Add codemeta funding \u2192 Zenodo grants conversion (@vuillaut)\n* Update file 3.ex_CI_upload_ossr.md (@vuillaut)\n* fix bug with setuptools and use numpy >=2.0 (@vuillaut)", "dateCreated": "2021-08-31", "datePublished": "2026-02-23", "dateModified": "2026-02-23", "operatingSystem": "", "maintainer": {"@type": "Person", "@id": "https://orcid.org/0000-0002-5686-2078", "givenName": "Thomas", "familyName": "Vuillaume", "email": "vuillaume@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}, "author": [{"@type": "Person", "@id": "https://orcid.org/0000-0002-5686-2078", "givenName": "Thomas", "familyName": "Vuillaume", "email": "vuillaume@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0003-2224-4594", "givenName": "Enrique", "familyName": "Garcia", "email": "garcia@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}], "contributor": [{"@type": "Person", "@id": "https://orcid.org/0000-0002-5321-8404", "givenName": "Christian", "familyName": "Tacke", "affiliation": {"@type": "Organization", "name": "GSI"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0001-7821-8673", "givenName": "Tam\u00e1s", "familyName": "G\u00e1l", "email": "tamas.gal@fau.de", "affiliation": {"@type": "Organization", "name": "ECAP, FAU (Nuremberg, Germany)"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0001-5226-3089", "givenName": "Tom", "familyName": "Fran\u00e7ois", "email": "tom.francois@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}], "funder": [{"@type": "Organization", "name": "European Commission", "@id": "https://doi.org/10.13039/501100000780"}], "funding": "824064"}, "threshold": 0.2}
https://w3id.org/everse/i/indicators/codemeta_completeness
- Status: CompletedActionStatus
- Value: 0.41
- Evidence: Codemeta completeness = 40.5%, minimal threshold to consider this check to pass is set to 50.0%. Found ['codeRepository', 'programmingLanguage', 'runtimePlatform', 'downloadUrl', 'operatingSystem', 'releaseNotes', 'softwareRequirements', 'softwareVersion', 'author', 'contributor', 'dateCreated', 'dateModified', 'datePublished', 'funder', 'keywords', 'license', 'version', 'isAccessibleForFree', 'isPartOf', 'description', 'name', 'name', 'maintainer', 'contIntegration', 'buildInstructions', 'developmentStatus', 'funding', 'issueTracker', 'referencePublication', 'readme'] keys in codemeta file.
- Output:
{"pass": false, "value": 0.40540540540540543, "codemeta_dict": {"@context": "https://doi.org/10.5063/schema/codemeta-2.0", "@type": "SoftwareSourceCode", "name": "eossr", "description": "<p><img alt=\"eossr_logo\" src=\"docs/images/eossr_logo_200x100.png\" /></p><h1>The ESCAPE OSSR library</h1><p>The eOSSR is the Python library to programmatically manage the ESCAPE OSSR.In particular, it includes:</p><ul><li>an API to access the Zenodo and the OSSR, retrieve records and publish content</li><li>functions to map and convert metadata from CodeMeta to Zenodo metadata shema</li><li>functions to validate their <code>codemeta.json</code> file against OSSR requirements</li><li>functions to help developers automatically publish to Zenodo and contribute to the OSSR, in particular using their continuous integration (see also code snippets)</li></ul><p><img alt=\"eossr schema\" src=\"https://s3-eu-west-1.amazonaws.com/openreseurope/manuscripts/16954/8df35fb4-5da0-472b-b560-c410ecf56296_figure1.gif\" /></p><p>Code: <a href=\"https://gitlab.com/escape-ossr/eossr\">https://gitlab.com/escape-ossr/eossr</a></p><p>Documentation: <a href=\"https://escape-ossr.gitlab.io/ossr-pages/\">https://escape-ossr.gitlab.io/eossr/</a></p><p><a href=\"https://gitlab.com/escape-ossr/eossr/-/commits/master\"><img alt=\"pipeline_badge\" src=\"https://gitlab.com/escape-ossr/eossr/badges/master/pipeline.svg\" /></a><a href=\"https://gitlab.com/escape-ossr/eossr/-/commits/master\"><img alt=\"coverage_badge\" src=\"https://gitlab.com/escape-ossr/eossr/badges/master/coverage.svg\" /></a><a href=\"https://bestpractices.coreinfrastructure.org/projects/5712\"><img alt=\"CII Best Practices\" src=\"https://bestpractices.coreinfrastructure.org/projects/5712/badge\" /></a><a href=\"https://api.eu.badgr.io/public/assertions/aiB2ndZOSL6IuVTOmljRCw\" title=\"SQAaaS silver badge achieved\"><img alt=\"SQAaaS badge shields.io\" src=\"https://img.shields.io/badge/sqaaas%20software-silver-lightgrey\" /></a><a href=\"https://opensource.org/licenses/MIT\"><img alt=\"MIT_license_badge\" src=\"https://img.shields.io/badge/License-MIT-blue.svg\" /></a><a href=\"https://doi.org/10.5281/zenodo.5524912\"><img alt=\"zenodo_badge\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5524912.svg\" /></a><a href=\"https://mybinder.org/v2/git/https%3A%2F%2Fgitlab.in2p3.fr%2Fescape2020%2Fwp3%2Feossr/HEAD?labpath=examples%2Fnotebooks%2Fossr_api-Explore_the_OSSR.ipynb\"><img alt=\"Binder\" src=\"https://mybinder.org/badge_logo.svg\" /></a></p><h2>Former stable versions</h2><ul><li>v1.0: <a href=\"https://doi.org/10.5281/zenodo.7544514\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.7544514.svg\" /></a></li><li>v0.6: <a href=\"https://doi.org/10.5281/zenodo.6475946\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6475946.svg\" /></a></li><li>v0.5: <a href=\"https://doi.org/10.5281/zenodo.6352039\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6352039.svg\" /></a></li><li>v0.4: <a href=\"https://doi.org/10.5281/zenodo.6326454\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6326454.svg\" /></a></li><li>v0.3.3: <a href=\"https://doi.org/10.5281/zenodo.5592584\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5592584.svg\" /></a></li><li>v0.2 : <a href=\"https://doi.org/10.5281/zenodo.5524913\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5524913.svg\" /></a></li></ul><h2>Install</h2><h3>For users</h3><pre><code class=\"language-bash\">pip install eossr</code></pre><p>You can also run it with docker:</p><pre><code class=\"language-bash\">docker run -it registry.gitlab.com/escape-ossr/eossr:latest</code></pre><p><a href=\"https://gitlab.com/escape-ossr/eossr/container_registry\">Visit our registry</a> to see the available docker containers.</p><p>Note that <code>latest</code> tag always point to the latest stable released container. For reproducible results, use a tagged version.</p><h3>For developers</h3><pre><code class=\"language-bash\">git clone https://gitlab.com/escape-ossr/eossr.gitcd eossrpip install -e .</code></pre><h4>Running tests</h4><p>To run tests locally, run:</p><pre><code class=\"language-bash\">pip install -e ".[tests]"pytest eossr</code></pre><p>Some tests will be skiped if <code>SANDBOX_ZENODO_TOKEN</code> is not defined in your environment variables.If you want to run these tests, you will need to create a <a href=\"https://sandbox.zenodo.org/account/settings/applications/tokens/new/\">sandbox zenodo token</a> and add it to your env:</p><pre><code class=\"language-bash\">export SANDBOX_ZENODO_TOKEN="your_sandbox_token"</code></pre><h2>Online CodeMeta validator for the OSSR</h2><p>The eOSSR powers an online validator for your CodeMeta metadata and to convert it to Zenodo metadata:</p><p><a href=\"https://mybinder.org/v2/gl/escape-ossr%2Feossr/HEAD?urlpath=voila%2Frender%2Fdocs%2Fmetadata%2Fvalidate_codemeta.ipynb\"><img alt=\"badge\" src=\"https://img.shields.io/badge/OSSR%20metadata%20tool-binder-579ACA.svg?logo=data:image/png;base64,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\" /></a></p><h2>License</h2><p>See <a href=\"LICENSE\">LICENSE</a></p><h2>Cite</h2><p>If using this library, please cite the ESCAPE OSSR project using:</p><pre><code class=\"language-latex\">@Article{ 10.12688/openreseurope.15692.2,AUTHOR = { Vuillaume, T and Al-Turany, M and F\u00fc\u00dfling, M and Gal, T and Garcia, E and Graf, K and Hughes, G and Kettenis, M and Kresan, D and Schnabel, J and Tacke, C and Verkouter, M},TITLE = {The ESCAPE Open-source Software and Service Repository [version 2; peer review: 5 approved]},JOURNAL = {Open Research Europe},VOLUME = {3},YEAR = {2023},NUMBER = {46},DOI = {10.12688/openreseurope.15692.2}}</code></pre><p>If you used the library in a workflow, please cite the version used as well, using the cite section in <a href=\"https://zenodo.org/record/5592584#.YiALJRPMI-Q\">the Zenodo page</a> (right column, below the <code>Versions</code> section).</p>", "license": "https://spdx.org/licenses/MIT", "version": "v2.2.0", "softwareVersion": "v2.2.0", "codeRepository": "https://gitlab.com/escape-ossr/eossr", "developmentStatus": "active", "isAccessibleForFree": true, "isPartOf": ["https://gitlab.com/escape-ossr", "https://projectescape.eu/"], "referencePublication": "https://doi.org/10.48550/arxiv.2212.00499", "contIntegration": "https://gitlab.com/escape-ossr/eossr/-/pipelines", "buildInstructions": "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md", "issueTracker": "https://gitlab.com/escape-ossr/eossr/-/issues", "readme": "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md", "programmingLanguage": [{"@type": "ComputerLanguage", "name": "Python", "url": "https://www.python.org/"}], "softwareRequirements": [{"@type": "SoftwareApplication", "identifier": "requests", "name": "requests", "softwareVersion": ">=3.6"}, {"@type": "SoftwareApplication", "identifier": "pytest", "name": "pytest", "softwareVersion": ">=5.4.2"}], "keywords": ["jupyter-notebook", "zenodo"], "runtimePlatform": "Python 3", "downloadUrl": "https://gitlab.com/escape-ossr/eossr/-/archive/v2.2.0/eossr-v2.2.0.zip", "releaseNotes": "This new version mainly adds a new feature to convert fundings in `codemeta.json` into `.zenodo.json` grants.\n\nChangelog since release v2.1.1 of eossr:\n* Add codemeta funding \u2192 Zenodo grants conversion (@vuillaut)\n* Update file 3.ex_CI_upload_ossr.md (@vuillaut)\n* fix bug with setuptools and use numpy >=2.0 (@vuillaut)", "dateCreated": "2021-08-31", "datePublished": "2026-02-23", "dateModified": "2026-02-23", "operatingSystem": "", "maintainer": {"@type": "Person", "@id": "https://orcid.org/0000-0002-5686-2078", "givenName": "Thomas", "familyName": "Vuillaume", "email": "vuillaume@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}, "author": [{"@type": "Person", "@id": "https://orcid.org/0000-0002-5686-2078", "givenName": "Thomas", "familyName": "Vuillaume", "email": "vuillaume@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0003-2224-4594", "givenName": "Enrique", "familyName": "Garcia", "email": "garcia@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}], "contributor": [{"@type": "Person", "@id": "https://orcid.org/0000-0002-5321-8404", "givenName": "Christian", "familyName": "Tacke", "affiliation": {"@type": "Organization", "name": "GSI"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0001-7821-8673", "givenName": "Tam\u00e1s", "familyName": "G\u00e1l", "email": "tamas.gal@fau.de", "affiliation": {"@type": "Organization", "name": "ECAP, FAU (Nuremberg, Germany)"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0001-5226-3089", "givenName": "Tom", "familyName": "Fran\u00e7ois", "email": "tom.francois@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}], "funder": [{"@type": "Organization", "name": "European Commission", "@id": "https://doi.org/10.13039/501100000780"}], "funding": "824064"}, "threshold": 0.5}
https://w3id.org/everse/i/indicators/codemeta_discrepancy
- Status: PotentialActionStatus
- Value: 0.62
- Evidence: Comparison value: 0.6176470588235294, Threshold: 0.5, Status: True
- Output:
{"pass": true, "value": 0.6176470588235294, "threshold": 0.5, "results": {"completeness_1": 0.40540540540540543, "codemeta_version_1": "codemeta-2.0", "codemeta_version_2": "codemeta-3.0", "completeness_2": 0.2972972972972973, "missing_keys_1": ["targetProduct", "applicationCategory", "applicationSubCategory", "fileSize", "installUrl", "memoryRequirements", "permissions", "processorRequirements", "softwareHelp", "storageRequirements", "supportingData", "citation", "copyrightHolder", "copyrightYear", "editor", "encoding", "fileFormat", "producer", "provider", "publisher", "sponsor", "hasPart", "position", "identifier", "sameAs", "url", "relatedLink", "givenName", "familyName", "email", "affiliation", "identifier", "address", "", "", "softwareSuggestions", "embargoDate", "creator", "", "", "", "endDate", "roleName", "startDate"], "missing_keys_2": ["runtimePlatform", "targetProduct", "applicationCategory", "applicationSubCategory", "fileSize", "installUrl", "memoryRequirements", "operatingSystem", "permissions", "processorRequirements", "softwareHelp", "storageRequirements", "supportingData", "citation", "contributor", "copyrightHolder", "copyrightYear", "dateModified", "editor", "encoding", "fileFormat", "funder", "producer", "provider", "publisher", "sponsor", "version", "isAccessibleForFree", "isPartOf", "hasPart", "position", "sameAs", "relatedLink", "givenName", "familyName", "email", "affiliation", "address", "", "", "softwareSuggestions", "maintainer", "developmentStatus", "embargoEndDate", "funding", "creator", "review", "reviewAspect", "reviewBody", "endDate", "roleName", "startDate"], "existing_keys_1": ["codeRepository", "programmingLanguage", "runtimePlatform", "downloadUrl", "operatingSystem", "releaseNotes", "softwareRequirements", "softwareVersion", "author", "contributor", "dateCreated", "dateModified", "datePublished", "funder", "keywords", "license", "version", "isAccessibleForFree", "isPartOf", "description", "name", "name", "maintainer", "contIntegration", "buildInstructions", "developmentStatus", "funding", "issueTracker", "referencePublication", "readme"], "existing_keys_2": ["codeRepository", "programmingLanguage", "downloadUrl", "releaseNotes", "softwareRequirements", "softwareVersion", "author", "dateCreated", "datePublished", "keywords", "license", "description", "identifier", "name", "url", "identifier", "name", "continuousIntegration", "buildInstructions", "issueTracker", "referencePublication", "readme"], "differences": {"codeRepository": {"value_in_1": "https://gitlab.com/escape-ossr/eossr", "value_in_2": "https://gitlab.com/escape-ossr/eossr/"}, "programmingLanguage": {"value_in_1": [{"@type": "ComputerLanguage", "name": "Python", "url": "https://www.python.org/"}], "value_in_2": ["Python"]}, "runtimePlatform": {"value_in_1": "Python 3", "value_in_2": null}, "downloadUrl": {"value_in_1": "https://gitlab.com/escape-ossr/eossr/-/archive/v2.2.0/eossr-v2.2.0.zip", "value_in_2": "https://gitlab.com/escape-ossr/eossr/-/branches"}, "operatingSystem": {"value_in_1": "", "value_in_2": null}, "softwareRequirements": {"value_in_1": [{"@type": "SoftwareApplication", "identifier": "requests", "name": "requests", "softwareVersion": ">=3.6"}, {"@type": "SoftwareApplication", "identifier": "pytest", "name": "pytest", "softwareVersion": ">=5.4.2"}], "value_in_2": [{"name": "bqplot"}, {"name": "ipympl"}, {"name": "ipyvolume"}, {"name": "scipy"}, {"name": "voila"}, {"name": "."}, "requests", "pytest", "numpy>=2.0", "requests>=2.25.0,<3.0", "markdown>=3.3.6,<4.0", "pandas", "remotezip==0.9.3", "semver>=2,<3", "jsonschema", "jsonref", "setuptools_scm>=8.0", "beautifulsoup4", "setuptools>=80", "setuptools-scm>=8"]}, "author": {"value_in_1": [{"@type": "Person", "@id": "https://orcid.org/0000-0002-5686-2078", "givenName": "Thomas", "familyName": "Vuillaume", "email": "vuillaume@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0003-2224-4594", "givenName": "Enrique", "familyName": "Garcia", "email": "garcia@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}], "value_in_2": [{"@type": "Person", "email": "vuillaume@lapp.in2p3.fr", "name": null}, {"@type": "Person", "email": "garcia@lapp.in2p3.fr", "name": null}, {"@type": "Person", "email": "vuillaume@lapp.in2p3.fr", "name": "Thomas Vuillaume"}, {"@type": "Person", "name": "Enrique Garcia"}]}, "contributor": {"value_in_1": [{"@type": "Person", "@id": "https://orcid.org/0000-0002-5321-8404", "givenName": "Christian", "familyName": "Tacke", "affiliation": {"@type": "Organization", "name": "GSI"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0001-7821-8673", "givenName": "Tam\u00e1s", "familyName": "G\u00e1l", "email": "tamas.gal@fau.de", "affiliation": {"@type": "Organization", "name": "ECAP, FAU (Nuremberg, Germany)"}}, {"@type": "Person", "@id": "https://orcid.org/0000-0001-5226-3089", "givenName": "Tom", "familyName": "Fran\u00e7ois", "email": "tom.francois@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}], "value_in_2": null}, "dateModified": {"value_in_1": "2026-02-23", "value_in_2": null}, "datePublished": {"value_in_1": "2026-02-23", "value_in_2": "2021-09-23"}, "funder": {"value_in_1": [{"@type": "Organization", "name": "European Commission", "@id": "https://doi.org/10.13039/501100000780"}], "value_in_2": null}, "keywords": {"value_in_1": ["jupyter-notebook", "zenodo"], "value_in_2": "OSSR, escape, open-source, software, zenodo"}, "license": {"value_in_1": "https://spdx.org/licenses/MIT", "value_in_2": {"name": "MIT License", "url": "https://gitlab.com/escape-ossr/eossr/-/raw/master/LICENSE", "identifier": "https://spdx.org/licenses/MIT", "spdx_id": "MIT"}}, "version": {"value_in_1": "v2.2.0", "value_in_2": null}, "isAccessibleForFree": {"value_in_1": true, "value_in_2": null}, "isPartOf": {"value_in_1": ["https://gitlab.com/escape-ossr", "https://projectescape.eu/"], "value_in_2": null}, "description": {"value_in_1": "<p><img alt=\"eossr_logo\" src=\"docs/images/eossr_logo_200x100.png\" /></p><h1>The ESCAPE OSSR library</h1><p>The eOSSR is the Python library to programmatically manage the ESCAPE OSSR.In particular, it includes:</p><ul><li>an API to access the Zenodo and the OSSR, retrieve records and publish content</li><li>functions to map and convert metadata from CodeMeta to Zenodo metadata shema</li><li>functions to validate their <code>codemeta.json</code> file against OSSR requirements</li><li>functions to help developers automatically publish to Zenodo and contribute to the OSSR, in particular using their continuous integration (see also code snippets)</li></ul><p><img alt=\"eossr schema\" src=\"https://s3-eu-west-1.amazonaws.com/openreseurope/manuscripts/16954/8df35fb4-5da0-472b-b560-c410ecf56296_figure1.gif\" /></p><p>Code: <a href=\"https://gitlab.com/escape-ossr/eossr\">https://gitlab.com/escape-ossr/eossr</a></p><p>Documentation: <a href=\"https://escape-ossr.gitlab.io/ossr-pages/\">https://escape-ossr.gitlab.io/eossr/</a></p><p><a href=\"https://gitlab.com/escape-ossr/eossr/-/commits/master\"><img alt=\"pipeline_badge\" src=\"https://gitlab.com/escape-ossr/eossr/badges/master/pipeline.svg\" /></a><a href=\"https://gitlab.com/escape-ossr/eossr/-/commits/master\"><img alt=\"coverage_badge\" src=\"https://gitlab.com/escape-ossr/eossr/badges/master/coverage.svg\" /></a><a href=\"https://bestpractices.coreinfrastructure.org/projects/5712\"><img alt=\"CII Best Practices\" src=\"https://bestpractices.coreinfrastructure.org/projects/5712/badge\" /></a><a href=\"https://api.eu.badgr.io/public/assertions/aiB2ndZOSL6IuVTOmljRCw\" title=\"SQAaaS silver badge achieved\"><img alt=\"SQAaaS badge shields.io\" src=\"https://img.shields.io/badge/sqaaas%20software-silver-lightgrey\" /></a><a href=\"https://opensource.org/licenses/MIT\"><img alt=\"MIT_license_badge\" src=\"https://img.shields.io/badge/License-MIT-blue.svg\" /></a><a href=\"https://doi.org/10.5281/zenodo.5524912\"><img alt=\"zenodo_badge\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5524912.svg\" /></a><a href=\"https://mybinder.org/v2/git/https%3A%2F%2Fgitlab.in2p3.fr%2Fescape2020%2Fwp3%2Feossr/HEAD?labpath=examples%2Fnotebooks%2Fossr_api-Explore_the_OSSR.ipynb\"><img alt=\"Binder\" src=\"https://mybinder.org/badge_logo.svg\" /></a></p><h2>Former stable versions</h2><ul><li>v1.0: <a href=\"https://doi.org/10.5281/zenodo.7544514\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.7544514.svg\" /></a></li><li>v0.6: <a href=\"https://doi.org/10.5281/zenodo.6475946\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6475946.svg\" /></a></li><li>v0.5: <a href=\"https://doi.org/10.5281/zenodo.6352039\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6352039.svg\" /></a></li><li>v0.4: <a href=\"https://doi.org/10.5281/zenodo.6326454\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.6326454.svg\" /></a></li><li>v0.3.3: <a href=\"https://doi.org/10.5281/zenodo.5592584\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5592584.svg\" /></a></li><li>v0.2 : <a href=\"https://doi.org/10.5281/zenodo.5524913\"><img alt=\"DOI\" src=\"https://zenodo.org/badge/DOI/10.5281/zenodo.5524913.svg\" /></a></li></ul><h2>Install</h2><h3>For users</h3><pre><code class=\"language-bash\">pip install eossr</code></pre><p>You can also run it with docker:</p><pre><code class=\"language-bash\">docker run -it registry.gitlab.com/escape-ossr/eossr:latest</code></pre><p><a href=\"https://gitlab.com/escape-ossr/eossr/container_registry\">Visit our registry</a> to see the available docker containers.</p><p>Note that <code>latest</code> tag always point to the latest stable released container. For reproducible results, use a tagged version.</p><h3>For developers</h3><pre><code class=\"language-bash\">git clone https://gitlab.com/escape-ossr/eossr.gitcd eossrpip install -e .</code></pre><h4>Running tests</h4><p>To run tests locally, run:</p><pre><code class=\"language-bash\">pip install -e ".[tests]"pytest eossr</code></pre><p>Some tests will be skiped if <code>SANDBOX_ZENODO_TOKEN</code> is not defined in your environment variables.If you want to run these tests, you will need to create a <a href=\"https://sandbox.zenodo.org/account/settings/applications/tokens/new/\">sandbox zenodo token</a> and add it to your env:</p><pre><code class=\"language-bash\">export SANDBOX_ZENODO_TOKEN="your_sandbox_token"</code></pre><h2>Online CodeMeta validator for the OSSR</h2><p>The eOSSR powers an online validator for your CodeMeta metadata and to convert it to Zenodo metadata:</p><p><a href=\"https://mybinder.org/v2/gl/escape-ossr%2Feossr/HEAD?urlpath=voila%2Frender%2Fdocs%2Fmetadata%2Fvalidate_codemeta.ipynb\"><img alt=\"badge\" src=\"https://img.shields.io/badge/OSSR%20metadata%20tool-binder-579ACA.svg?logo=data:image/png;base64,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\" /></a></p><h2>License</h2><p>See <a href=\"LICENSE\">LICENSE</a></p><h2>Cite</h2><p>If using this library, please cite the ESCAPE OSSR project using:</p><pre><code class=\"language-latex\">@Article{ 10.12688/openreseurope.15692.2,AUTHOR = { Vuillaume, T and Al-Turany, M and F\u00fc\u00dfling, M and Gal, T and Garcia, E and Graf, K and Hughes, G and Kettenis, M and Kresan, D and Schnabel, J and Tacke, C and Verkouter, M},TITLE = {The ESCAPE Open-source Software and Service Repository [version 2; peer review: 5 approved]},JOURNAL = {Open Research Europe},VOLUME = {3},YEAR = {2023},NUMBER = {46},DOI = {10.12688/openreseurope.15692.2}}</code></pre><p>If you used the library in a workflow, please cite the version used as well, using the cite section in <a href=\"https://zenodo.org/record/5592584#.YiALJRPMI-Q\">the Zenodo page</a> (right column, below the <code>Versions</code> section).</p>", "value_in_2": ["The eOSSR is the Python library to programmatically manage the ESCAPE OSSR."]}, "identifier": {"value_in_1": null, "value_in_2": ["https://doi.org/10.5281/zenodo.7544514", "https://doi.org/10.5281/zenodo.6475946", "https://doi.org/10.5281/zenodo.6352039", "https://doi.org/10.5281/zenodo.6326454", "https://doi.org/10.5281/zenodo.5592584", "https://doi.org/10.5281/zenodo.5524913"]}, "url": {"value_in_1": null, "value_in_2": ["https://gitlab.com/escape-ossr/eossr"]}, "maintainer": {"value_in_1": {"@type": "Person", "@id": "https://orcid.org/0000-0002-5686-2078", "givenName": "Thomas", "familyName": "Vuillaume", "email": "vuillaume@lapp.in2p3.fr", "affiliation": {"@type": "Organization", "name": "Univ. Savoie Mont Blanc, CNRS, LAPP"}}, "value_in_2": null}, "contIntegration": {"value_in_1": "https://gitlab.com/escape-ossr/eossr/-/pipelines", "value_in_2": null}, "buildInstructions": {"value_in_1": "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md", "value_in_2": ["https://gitlab.com/escape-ossr/eossr/-/tree/master/docs", "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md"]}, "developmentStatus": {"value_in_1": "active", "value_in_2": null}, "funding": {"value_in_1": "824064", "value_in_2": null}, "issueTracker": {"value_in_1": "https://gitlab.com/escape-ossr/eossr/-/issues", "value_in_2": "https://gitlab.com/escape-ossr/eossr//issues"}, "referencePublication": {"value_in_1": "https://doi.org/10.48550/arxiv.2212.00499", "value_in_2": [{"@type": "ScholarlyArticle", "identifier": "10.12688/openreseurope.15692.2", "name": "The ESCAPE Open-source Software and Service Repository [version 2; peer review: 5 approved]", "datePublished": "2023", "author": [{"@type": "Person", "familyName": "Vuillaume", "givenName": "T"}, {"@type": "Person", "familyName": "Al-Turany", "givenName": "M"}, {"@type": "Person", "familyName": "F\u00fc\u00dfling", "givenName": "M"}, {"@type": "Person", "familyName": "Gal", "givenName": "T"}, {"@type": "Person", "familyName": "Garcia", "givenName": "E"}, {"@type": "Person", "familyName": "Graf", "givenName": "K"}, {"@type": "Person", "familyName": "Hughes", "givenName": "G"}, {"@type": "Person", "familyName": "Kettenis", "givenName": "M"}, {"@type": "Person", "familyName": "Kresan", "givenName": "D"}, {"@type": "Person", "familyName": "Schnabel", "givenName": "J"}, {"@type": "Person", "familyName": "Tacke", "givenName": "C"}, {"@type": "Person", "familyName": "Verkouter", "givenName": "M"}]}]}}, "equivalences": {"targetProduct": null, "applicationCategory": null, "applicationSubCategory": null, "fileSize": null, "installUrl": null, "memoryRequirements": null, "permissions": null, "processorRequirements": null, "releaseNotes": "This new version mainly adds a new feature to convert fundings in `codemeta.json` into `.zenodo.json` grants.\n\nChangelog since release v2.1.1 of eossr:\n* Add codemeta funding \u2192 Zenodo grants conversion (@vuillaut)\n* Update file 3.ex_CI_upload_ossr.md (@vuillaut)\n* fix bug with setuptools and use numpy >=2.0 (@vuillaut)", "softwareHelp": null, "softwareVersion": "v2.2.0", "storageRequirements": null, "supportingData": null, "citation": null, "copyrightHolder": null, "copyrightYear": null, "dateCreated": "2021-08-31", "editor": null, "encoding": null, "fileFormat": null, "producer": null, "provider": null, "publisher": null, "sponsor": null, "hasPart": null, "position": null, "name": "eossr", "sameAs": null, "relatedLink": null, "givenName": null, "familyName": null, "email": null, "affiliation": null, "address": null, "": null, "softwareSuggestions": null, "embargoDate": null, "readme": "https://gitlab.com/escape-ossr/eossr/-/blob/master/README.md", "creator": null, "endDate": null, "roleName": null, "startDate": null}}}
Logs
Log File: docs/records/18749221/18749221_somef_log.txt
2026-03-05 09:05:26,491 somef_tool.py:140 INFO Running SOMEF on repository: https://gitlab.com/escape-ossr/eossr
2026-03-05 09:05:37,380 somef_utils.py:43 INFO SOftware Metadata Extraction Framework (SOMEF) Command Line Interface
CODEMETA PARSER - Processing file: /tmp/tmpbwk73979/repo/eossr-master/codemeta.json
CODEMETA PARSER - Source: https:///escape-ossr/eossr/-/blob/master/codemeta.json
homepage
CODEMETA PARSER - Processing file: /tmp/tmpbwk73979/repo/eossr-master/eossr/metadata/schema/codemeta.json
CODEMETA PARSER - Source: https:///escape-ossr/eossr/-/blob/master/eossr/metadata/schema/codemeta.json
Saving json data to docs/records/18749221/18749221_somef.json
Success
2026-03-05 09:05:37,380 somef_utils.py:45 ERROR 05-Mar-26 09:05:32-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:33-DEBUG-https://gitlab.com:443 "GET /api/v4/projects HTTP/1.1" 200 None
05-Mar-26 09:05:33-INFO-gitlab.com is GitLab.
05-Mar-26 09:05:33-INFO-Loading Repository https://gitlab.com/escape-ossr/eossr Information....
05-Mar-26 09:05:33-INFO-Downloading https://gitlab.com/escape-ossr/eossr
05-Mar-26 09:05:33-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:33-DEBUG-https://gitlab.com:443 "GET /escape-ossr/eossr HTTP/1.1" 200 None
05-Mar-26 09:05:33-INFO-Downloading https://gitlab.com/api/v4/projects/47026416
05-Mar-26 09:05:33-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:33-DEBUG-https://gitlab.com:443 "GET /api/v4/projects/47026416 HTTP/1.1" 200 None
05-Mar-26 09:05:33-INFO-Getting releases from: https://gitlab.com/api/v4/projects/47026416/releases?page=1&per_page=100
05-Mar-26 09:05:33-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:34-DEBUG-https://gitlab.com:443 "GET /api/v4/projects/47026416/releases?page=1&per_page=100 HTTP/1.1" 200 None
05-Mar-26 09:05:34-INFO-Response: 200
05-Mar-26 09:05:34-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:34-DEBUG-https://gitlab.com:443 "GET /escape-ossr/eossr/-/raw/master/LICENSE HTTP/1.1" 200 1073
05-Mar-26 09:05:34-INFO-Repository information successfully loaded.
05-Mar-26 09:05:34-INFO-Downloading https://gitlab.com/escape-ossr/eossr/-/archive/master/eossr-master.zip
05-Mar-26 09:05:34-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:34-DEBUG-https://gitlab.com:443 "GET /escape-ossr/eossr/-/archive/master/eossr-master.zip HTTP/1.1" 200 None
05-Mar-26 09:05:34-INFO-############### Processing package file: pyproject.toml ###############
05-Mar-26 09:05:34-INFO-############### Processing package file: requirements.txt ###############
05-Mar-26 09:05:34-INFO-Extracting information using headers
/builds/escape-ossr/rs_quality_checks/.venv/lib/python3.11/site-packages/somef/header_analysis.py:112: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method.
The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy.
For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.
df['Content'].replace('', np.nan, inplace=True)
05-Mar-26 09:05:34-INFO-Labeling headers.
/builds/escape-ossr/rs_quality_checks/.venv/lib/python3.11/site-packages/somef/header_analysis.py:224: FutureWarning: ChainedAssignmentError: behaviour will change in pandas 3.0!
You are setting values through chained assignment. Currently this works in certain cases, but when using Copy-on-Write (which will become the default behaviour in pandas 3.0) this will never work to update the original DataFrame or Series, because the intermediate object on which we are setting values will behave as a copy.
A typical example is when you are setting values in a column of a DataFrame, like:
df["col"][row_indexer] = value
Use `df.loc[row_indexer, "col"] = values` instead, to perform the assignment in a single step and ensure this keeps updating the original `df`.
See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
data['Group'].iloc[0] = ['unknown']
/builds/escape-ossr/rs_quality_checks/.venv/lib/python3.11/site-packages/somef/header_analysis.py:230: FutureWarning: ChainedAssignmentError: behaviour will change in pandas 3.0!
You are setting values through chained assignment. Currently this works in certain cases, but when using Copy-on-Write (which will become the default behaviour in pandas 3.0) this will never work to update the original DataFrame or Series, because the intermediate object on which we are setting values will behave as a copy.
A typical example is when you are setting values in a column of a DataFrame, like:
df["col"][row_indexer] = value
Use `df.loc[row_indexer, "col"] = values` instead, to perform the assignment in a single step and ensure this keeps updating the original `df`.
See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
data['Group'].iloc[0] = np.NaN
05-Mar-26 09:05:36-INFO-Header information extracted.
05-Mar-26 09:05:36-INFO-Splitting text into valid excerpts for classification
05-Mar-26 09:05:36-INFO-Extraction of bibtex citation from readme completed.
05-Mar-26 09:05:36-INFO-Text Successfully split.
05-Mar-26 09:05:36-INFO-Classifying excerpts for the category description
05-Mar-26 09:05:36-INFO-Checking thresholds for classified excerpts.
05-Mar-26 09:05:36-INFO-All excerpts below the threshold have been removed.
05-Mar-26 09:05:36-DEBUG-Starting new HTTPS connection (1): gitlab.com:443
05-Mar-26 09:05:36-DEBUG-https://gitlab.com:443 "GET /escape-ossr/eossr/wiki HTTP/1.1" 302 98
05-Mar-26 09:05:36-INFO-Completed extracting regular expressions
Log File: docs/records/18749221/18749221_codemeta_completeness_tool_log.txt
2026-03-05 09:05:37,383 codemeta_completeness_tool.py:72 INFO [codemeta completeness tool] Running Codemeta Completeness Tool on record ID: 18749221