v2.0
This is a major new release of codemetapy. It does introduce some backward-incompatible changes.
- Major overhaul of the entire codebase:
- Implements codemeta 2.0 with some extensions (see the README)
- map developmentStatus to repostatus.org vocabulary #7
- map licenses to SPDX vocabulary #8
- The old 'entrypoints' extension to codemeta (as described in https://github.com/codemeta/codemeta#183 ) is now deprecated in favour of the newer software types extension (proposed in https://github.com/codemeta/codemeta#271 and worked out in https://github.com/SoftwareUnderstanding/software_types ).
- Supports
schema:targetProduct
to link software source code to instances of the software - Supports extended software types, on top of the ones already available in schema.org.
- See the README for more info
- Supports
- Implemented support for parsing and converting Java/Maven
pom.xml
to codemeta #9 - Implemented support for parsing and converting NodeJS/npm
package.json
to codemeta #11 - Implemented support for parsing and converting remote webservices (via
targetProduct
) (https://github.com/CLARIAH/clariah-plus#92)- Can extract
<script>
blocks withapplication/json+ld
from HTML - Parses and converts metadata in HTML
<head>
(including RDFa and microdata)
- Can extract
- Improved support for parsing and converting Python/setuptools/distutils to codemeta
- use
runtimePlatform
instead ofprogrammingLanguage
when converting pip's 'programmingLanguage' classes - No longer requires software to be actually installed prior to parsing
- use
- Implemented supported for parsing and converting from the GitHub API to codemeta
- Set environment variable
GITHUB_TOKEN
to your personal access token if you run into rate limitations.
- Set environment variable
- Improvements in merging/reconciliating metadata that describe the same source, but from multiple perspectives
- Improvements in joining multiple sources together in one graph (
--graph
parameter, replaces the old--registry
parameter) - Improvements in author parsing
- Implemented support for ingesting simple textual lists of authors as is customary in files like
AUTHORS
,CONTRIBUTORS
,MAINTAINERS
.
- Implemented support for ingesting simple textual lists of authors as is customary in files like
- Rich HTML visualisation (with RDFa!), is used primarily by codemeta-server (https://github.com/CLARIAH/clariah-plus#99)
- Added a
--strict
option to disable codemeta extensions (the inverse of the old--all
parameter that is now removed) - Dropped support for Python 3.5 and below
This release also comes with two related projects that rely on codemetapy, together they form a powerful ensemble:
- codemeta-server - Server for codemeta, in memory triple store, SPARQL endpoint and simple web-based visualisation for end-users
- codemeta-harvester - Harvest and aggregate codemeta from source repositories and service endpoints, automatically converting known metadata schemes in the process. Wraps around codemetapy and other codemeta software.