diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 85958220..0038ac45 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -24,15 +24,15 @@ repos: - id: end-of-file-fixer - id: trailing-whitespace - repo: https://github.com/tox-dev/pyproject-fmt - rev: d600c142bb19f521ae6a6a345f94a2efd7937759 # frozen: v2.26.0 + rev: 3b42b9776870badc9eaffdef9a4a0834b764d87c # frozen: v2.29.3 hooks: - id: pyproject-fmt - repo: https://github.com/abravalheri/validate-pyproject - rev: 4b2e70d08cb2ccd26d1fba73588de41c7a5d50b7 # frozen: v0.25 + rev: 17e12779811926f000bdfa1795f9e3735dd71ac3 # frozen: 0.26 hooks: - id: validate-pyproject - repo: https://github.com/astral-sh/ruff-pre-commit - rev: cb8c523fd4835aba42af70f4cad5568db4df0b6c # frozen: v0.16.0 + rev: 321478e58f4938179c6b86e4ddfa923d1547a49b # frozen: v0.16.6 hooks: - id: ruff-check args: [--fix, --exit-non-zero-on-fix] @@ -43,7 +43,7 @@ repos: - id: sphinx-lint types: [rst] - repo: https://github.com/adamchainz/blacken-docs - rev: fda77690955e9b63c6687d8806bafd56a526e45f # frozen: 1.20.0 + rev: dda8db18cfc68df532abf33b185ecd12d5b7b326 # frozen: 1.20.0 hooks: - id: blacken-docs args: [--line-length=79] diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 95d72bc6..3e680608 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -29,6 +29,7 @@ Added Changed ~~~~~~~ +* 📝 Update CodeMeta * 📝 Update string matching * Replace deprecated fuzzywuzzy lib with thefuzz diff --git a/docs/productive/cite/software/codemeta.rst b/docs/productive/cite/software/codemeta.rst index aba02131..02bcd44c 100644 --- a/docs/productive/cite/software/codemeta.rst +++ b/docs/productive/cite/software/codemeta.rst @@ -5,34 +5,75 @@ CodeMeta ======== -`CodeMeta `__ ist ein Austauschschema für -allgemeine Software-Metadaten und Referenzimplementierung für JSON for Linking -Data (`JSON-LD `_). +`CodeMeta `__ bietet ein gemeinsames +Metadatenvokabular für Software, das Forschung, Zitieren und Interoperabilität +über Plattformen hinweg unterstützt. Es wird derzeit in großen Initiativen wie +`FAIRCORE4EOSC `_ verwendet, um Forschungssoftware +FAIR (Findable, Accessible, Interoperable, Reusable) zu machen. -Dabei wird eine ``codemeta.json``-Datei im Stammverzeichnis des -Software-Repository erwartet. Die Datei kann :abbr:`z.B. (zum Beispiel)` so +Unter Verwendung bestehender Standards wie den Schema.org-Typen +`SoftwareApplication `_ und +`SoftwareSourceCode `_ sowie JSON for +Linking Data (`JSON-LD `_) identifiziert CodeMeta genau +jene Version, die in der wissenschaftlichen und sonstigen Forschung verwendet +wurde und erlaubt so die Reproduzierbarkeit der Ergebnisse. + +Dabei wird eine :file:`codemeta.json`-Datei im Stammverzeichnis des +Software-Repository erwartet. Die Datei kann :abbr:`z. B. (zum Beispiel)` so aussehen: .. code-block:: javascript - { - "@context": "https://doi.org/10.5063/schema/codemeta-2.0", - "@type": "SoftwareSourceCode", - "author": [{ - "@type": "Person", - "givenName": "Stephan", - "familyName": "Druskat", - "@id": "http://orcid.org/0000-0003-4925-7248" - }], - "name": "My Research Tool", - "softwareVersion": "2.0", - "identifier": "https://doi.org/10.5281/zenodo.1234", - "datePublished": "2017-12-18", - "codeRepository": "https://github.com/research-software/my-research-tool" - } + { + "@context": "https://w3id.org/codemeta/3.0", + "type": "SoftwareSourceCode", + "applicationCategory": "Universal", + "author": [ + { + "id": "http://orcid.org/0000-0002-1825-0097", + "type": "Person", + "affiliation": { + "type": "Organization", + "name": "Department of Research Software Engineering" + }, + "email": "veit.schiele@example.org", + "familyName": "Schiele", + "givenName": "Veit" + }, + { + "type": "Role", + "schema:author": "http://orcid.org/0000-0002-1825-0097", + "roleName": "Developer" + } + ], + "codeRepository": "git+https://github.com/cusy/my-research-tool.git", + "dateCreated": "2026-09-07", + "dateModified": "2026-09-07", + "datePublished": "2026-09-07", + "description": "My research tool reliably answers every question with 42.", + "license": "https://spdx.org/licenses/BSD-3-Clause", + "name": "My Research Tool", + "operatingSystem": [ + "Linux", + "Windows", + "MacOS" + ], + "programmingLanguage": "Python", + "releaseNotes": "Change log: this and that", + "review": { + "type": "Review", + "reviewBody": "Review about my tool." + }, + "softwareRequirements": "https://www.python.org/downloads/release/python-3147/", + "version": "2026.1.0", + "developmentStatus": "active", + "issueTracker": "https://github.com/cusy/my-research-tool/issues", + "referencePublication": "https://doi.org/10.1000/xyz123" + } .. seealso:: - * `CodeMeta generator `_ - * `Codemeta Terms `_ - * `GitHub Repository - `_ + * `The Research Software MetaData Guidelines for End-Users + `_ + * `CodeMeta generator `_ + * `Codemeta Terms `_ + * `GitHub Repository `_