RaBe cridlib for Python
Generate RaBe CRIDs based on several data sources:
- Songticker for current CRID
archiv.rabe.chfor past CRIDs- LibreTime for future CRIDs (currently only data for the next 7 days and only available internally at RaBe)
Installation
poetry add rabe-cridlib
# or on old setup style projects
pip -m install rabe-cridlib
Usage
>>> import cridlib
>>>
>>> # parse an existing crid
>>> crid = cridlib.parse("crid://rabe.ch/v1/klangbecken#t=clock=19930301T131200.00Z")
>>> print(f"version: {crid.version}, show: {crid.show}, start: {crid.start}")
version: v1, show: klangbecken, start: 1993-03-01 13:12:00
>>> # get crid for current show
>>> crid = cridlib.get()
>>> print(f"version: {crid.version}, show: {crid.show}") # doctest:+ELLIPSIS
version: v1, show: ...
Development
# setup a dev env
python -mvenv env
. env/bin/activate
# install a modern poetry version
python -mpip install poetry>=1.2.0
# install deps and dev version
poetry install
# make changes, run tests
pytest
Release Management
The CI/CD setup uses semantic commit messages following the conventional commits standard.
There is a GitHub Action semantic-release.yaml in radiorabe/actions
that uses go-semantic-commit to create new
releases.
The commit message should be structured as follows:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
The commit contains the following structural elements, to communicate intent to the consumers of your library:
- fix: a commit of the type
fixpatches gets released with a PATCH version bump - feat: a commit of the type
featgets released as a MINOR version bump - BREAKING CHANGE: a commit that has a footer
BREAKING CHANGE:gets released as a MAJOR version bump - types other than
fix:andfeat:are allowed and don't trigger a release
If a commit does not contain a conventional commit style message you can fix it during the squash and merge operation on the PR.
Once a commit has landed on the main branch a release will be created and automatically published to pypi
using the GitHub Action in .github/workflows/release.yaml which uses poetry
to publish the package to pypi.
License
This package is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, version 3 of the License.
Copyright
Copyright (c) 2022 Radio Bern RaBe
Metadata
Release files for rabe-cridlib 0.13.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| rabe_cridlib-0.13.2.tar.gz | 17.9 kB | Without provenance | Details for rabe_cridlib-0.13.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| rabe_cridlib-0.13.2-py3-none-any.whl | Python 3 | none | any | Details for rabe_cridlib-0.13.2-py3-none-any.whl |
Total release size: 38.7 kB
Release files / rabe_cridlib-0.13.2.tar.gz
| Download URL | rabe_cridlib-0.13.2.tar.gz |
|---|---|
| Size | 17.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
001424d5106e9491e8a01f9c96298063ccd073faae8206e9f2b4ada63f01e2c2
|
|
BLAKE2b-256 checksum How to use checksums |
90b0680de80fdcce3329fa35e7bbac70f3dbdf10c3296c0f8c48423282e964c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.3 Linux/6.11.0-1018-azure
|
Release files / rabe_cridlib-0.13.2-py3-none-any.whl
| Download URL | rabe_cridlib-0.13.2-py3-none-any.whl |
|---|---|
| Size | 20.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1d333c71fb327af40130b9a6af98e389bf59900647368d2c6b2fa478a4f98866
|
|
BLAKE2b-256 checksum How to use checksums |
3ceaa061c33a565774da8d7ac85b5b3bb501d4b39875e6c3dc42d95c1f74dca2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.3 Linux/6.11.0-1018-azure
|
Security for rabe-cridlib 0.13.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.