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/

Metadata

Release files for oarepo-invenio-typing-stubs 0.1.37

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for oarepo-invenio-typing-stubs 0.1.37
File Size Uploaded
oarepo_invenio_typing_stubs-0.1.37.tar.gz 165.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for oarepo-invenio-typing-stubs 0.1.37
File Interpreter ABI Platform
oarepo_invenio_typing_stubs-0.1.37-py3-none-any.whl Python 3 none any Details

Total release size: 595.8 kB

Release files / oarepo_invenio_typing_stubs-0.1.37.tar.gz

Download URL oarepo_invenio_typing_stubs-0.1.37.tar.gz
Size 165.4 kB
Tags Source
SHA-256 checksum
How to use checksums
3e214da995415ccd90be0b93ce5dac62a1b50741d0fe0af033897eb007a24454
BLAKE2b-256 checksum
How to use checksums
b3edfd2268f9d8c13d11fb97878d8a2676688cd1fb3ae0f7c23bbad08c715705
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / oarepo_invenio_typing_stubs-0.1.37-py3-none-any.whl

Download URL oarepo_invenio_typing_stubs-0.1.37-py3-none-any.whl
Size 430.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a609c3979d2375d3e0bdbb110b53ef89f006a3b6662cf3ef6c37a27d35acc905
BLAKE2b-256 checksum
How to use checksums
b28e62f7be66694b51879fede08f06853728293acd50e638f9ce3cedefc275bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page