ComicBot API
Requirements
- Python 3.9 or above
- Virtualenv 20.14.1 or above
Project Expectations
- Client library to get new releases, or releases for a given date.
- Client can filter by the format of releases e.g. 'single-issue' or by publisher e.g. 'marvel'
- Client should be straight forward and easy to use by using the KISS model (Keep It Simple Stupid)
- Cache results where possible as not to hit provider with too many requests for the same data
How to get started
Create a virtual environment
virtualenv -p python3.9 venv
Enter virtual environment
source venv/bin/activate
Install Poetry, the package manager for this project
pip install poetry
Build distribution of project
poetry build
Build artifacts will be located in dist/
Running Unit Tests
Pytest to run all unit tests in test/
pytest
Pytest to run all unit tests and lint code with Pylama
pytest --pylama
Linting
This project strives to keep the code style in line with PEP8. To test the project for compliance with PEP8, I use Ruff
ruff check
Deployment
Github actions auto creates and pushes releases to PyPi on creating a tag/release.
Manual
To deploy, one must obtain an API key from the public pypi (https://pypi.org/project/comicbot-api/)
and add it to the local poetry configuration with the following command:
poetry config pypi-token.pypi <pypi-token>
Once we have a valid token, we can push distributions to PyPi.
poetry build
poertry publish
or do both with
poetry publish --build
Roadmap
- Database to cache results from source
- Sphinx Automatic Documentation Creation
Metadata
Release files for comicbot-api 0.1.19
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| comicbot_api-0.1.19.tar.gz | 9.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| comicbot_api-0.1.19-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.7 kB
Release files / comicbot_api-0.1.19.tar.gz
| Download URL | comicbot_api-0.1.19.tar.gz |
|---|---|
| Size | 9.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
157de6678d3fc503defde9a021b2eed41b374cae589c64eace9a7aa63ebdfa79
|
|
BLAKE2b-256 checksum How to use checksums |
40a9deae6c61055fb66c30cda2659c3a6edb4b8264e986b95f915b9e20f02427
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 3, 2025.
Transparency logRelease files / comicbot_api-0.1.19-py3-none-any.whl
| Download URL | comicbot_api-0.1.19-py3-none-any.whl |
|---|---|
| Size | 12.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
45b6214e71cfdb4cc94e34b025002b835cec530a46dd74f2e2aab7b3afe0892c
|
|
BLAKE2b-256 checksum How to use checksums |
c308b5f76c2e96377991a4084bcc05406be56cc7462a9ebdf46a637dfca0a37b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 3, 2025.
Transparency log