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.36

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.36
File Size Uploaded
oarepo_invenio_typing_stubs-0.1.36.tar.gz 165.3 kB Details

Built distribution (wheel)

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

Total release size: 595.7 kB

Release files / oarepo_invenio_typing_stubs-0.1.36.tar.gz

Download URL oarepo_invenio_typing_stubs-0.1.36.tar.gz
Size 165.3 kB
Tags Source
SHA-256 checksum
How to use checksums
af78da26ec88b463878f03acba3fd5bb4716545802405ee6c42ad0ffc8e67eb8
BLAKE2b-256 checksum
How to use checksums
288e94ca8c0722f366cd3004f32e3b6579770b3134e7b16d16c6724b57dbc4c9
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.36-py3-none-any.whl

Download URL oarepo_invenio_typing_stubs-0.1.36-py3-none-any.whl
Size 430.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b11fc0fb9dab126ef399ab6d69fbed6a7381a175f5a84cfcc0f25c8448e2886e
BLAKE2b-256 checksum
How to use checksums
3353808469a02af40fa062c222e06dfee3e44e2459d033371ed40382c5eae82a
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