Skip to main content

invenio-typing-stubs

This is a package that provides typing support for the InvenioRDM source base. It is intended as a temporary solution until InvenioRDM itself provides typing support.

As such, it is a collection of type stubs for the InvenioRDM source base, as well as some utility functions to help with typing.

It must not contain any runtime code, it is intended to be used only for type checking.

Warning

These stubs were generated mostly automatically and only some have been manually checked. They will surely contain some errors. Please report any issues you find.

Usage

Please install the package directly from github:

pip install git+https://github.com/oarepo/invenio-typing-stubs.git

If you add the dependency to your pyproject.toml built with hatchling, do it like:

[project.optional-dependencies]
dev = [
    "invenio-typing-stubs @ git+https://github.com/oarepo/invenio-typing-stubs.git",
]

How it was generated

Automatic generation

Copilot with GPT-5 was used to generate the stubs. The following prompt was used:

There is a agent_helper command that will give you work. Please call the command as 
`.venv/bin/python agent_helper.py invenio_communities`. 

The output of the command are the instructions that you should do. 
Read them carefully and execute them. 

After that, continue calling the agent and processing the instructions 
until it will tell you that all work has been done.

Manual checks

Some manual checks were done to ensure the stubs are correct. Systemfields were patched manually to ensure correct typing.

Problems

Typing for SQL Alchemy mostly does not work with invenio_db.

Final checks

Checked with

mypy --check-untyped-defs --ignore-missing-imports invenio_records_resources-stubs/

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oarepo_invenio_typing_stubs-0.1.34.tar.gz (165.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

oarepo_invenio_typing_stubs-0.1.34-py3-none-any.whl (430.0 kB view details)

Uploaded Python 3

File details

Details for the file oarepo_invenio_typing_stubs-0.1.34.tar.gz.

File metadata

File hashes

Hashes for oarepo_invenio_typing_stubs-0.1.34.tar.gz
Algorithm Hash digest
SHA256 3c2eca7f21b2c268f233a01dc908aaf681646e73757ed80dcb80cda0d664b41c
MD5 8b7442eef0b7ef19c993a836a798b554
BLAKE2b-256 9632adb19ec3b4bfabe8779daee713e509e6ab7aa0f4db94761772cce6fc77bd

See more details on using hashes here.

File details

Details for the file oarepo_invenio_typing_stubs-0.1.34-py3-none-any.whl.

File metadata

File hashes

Hashes for oarepo_invenio_typing_stubs-0.1.34-py3-none-any.whl
Algorithm Hash digest
SHA256 3ec54d9473875ca715ec34465c31cfb4b531af66cec77e54c8adcf25cbf1f46f
MD5 2dd74bc6fb10ff542156e521d50d16cd
BLAKE2b-256 1875a5af2c6d2bf103aef44a7294ea74143ab5ba17fed56e7d2422bdfcc6c712

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page