{"id":18041178,"url":"https://github.com/bskinn/sphobjinv","last_synced_at":"2026-04-02T00:43:18.208Z","repository":{"id":40257580,"uuid":"58900414","full_name":"bskinn/sphobjinv","owner":"bskinn","description":"Toolkit for manipulation and inspection of Sphinx objects.inv files","archived":false,"fork":false,"pushed_at":"2026-03-23T05:15:28.000Z","size":2595,"stargazers_count":90,"open_issues_count":71,"forks_count":10,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-03-24T01:00:11.419Z","etag":null,"topics":["inspector","inventory","manager","python","sphinx","sphinx-doc"],"latest_commit_sha":null,"homepage":"https://sphobjinv.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bskinn.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["bskinn"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":"pypi/sphobjinv","community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2016-05-16T03:20:40.000Z","updated_at":"2026-03-23T05:15:35.000Z","dependencies_parsed_at":"2023-01-30T23:16:23.991Z","dependency_job_id":"362a7bfa-b7f5-4c94-bd9d-d7c78e4fb9c7","html_url":"https://github.com/bskinn/sphobjinv","commit_stats":{"total_commits":750,"total_committers":5,"mean_commits":150.0,"dds":0.008000000000000007,"last_synced_commit":"df278555fe1d9e0774577e7ebeb6d9aeda8e5471"},"previous_names":[],"tags_count":42,"template":false,"template_full_name":null,"purl":"pkg:github/bskinn/sphobjinv","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bskinn%2Fsphobjinv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bskinn%2Fsphobjinv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bskinn%2Fsphobjinv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bskinn%2Fsphobjinv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bskinn","download_url":"https://codeload.github.com/bskinn/sphobjinv/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bskinn%2Fsphobjinv/sbom","scorecard":{"id":256266,"data":{"date":"2025-08-11","repo":{"name":"github.com/bskinn/sphobjinv","commit":"ae11a0efc473368028d7a0885300643ce312403d"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.5,"checks":[{"name":"Code-Review","score":1,"reason":"Found 1/6 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"24 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/all_core_tests.yml:1","Warn: no topLevel permission defined: .github/workflows/ready_doctest.yml:1","Warn: no topLevel permission defined: .github/workflows/ready_linting.yml:1","Warn: no topLevel permission defined: .github/workflows/ready_test_matrix.yml:1","Warn: no topLevel permission defined: .github/workflows/ready_test_nonloc.yml:1","Warn: no topLevel permission defined: .github/workflows/release_check_sdist.yml:1","Warn: no topLevel permission defined: .github/workflows/release_doc_warnings.yml:1","Warn: no topLevel permission defined: .github/workflows/release_flake8_noqa_nofail.yml:1","Warn: no topLevel permission defined: .github/workflows/release_readme_doctest.yml:1","Warn: no topLevel permission defined: .github/workflows/release_test_file_coverage.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/all_core_tests.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/all_core_tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/all_core_tests.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/all_core_tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_doctest.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_doctest.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_doctest.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_doctest.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_linting.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_linting.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_linting.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_linting.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_linting.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_linting.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_linting.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_linting.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_test_matrix.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_test_matrix.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_test_matrix.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_test_matrix.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_test_nonloc.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_test_nonloc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ready_test_nonloc.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/ready_test_nonloc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_check_sdist.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_check_sdist.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_check_sdist.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_check_sdist.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_doc_warnings.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_doc_warnings.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_doc_warnings.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_doc_warnings.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_flake8_noqa_nofail.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_flake8_noqa_nofail.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_flake8_noqa_nofail.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_flake8_noqa_nofail.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_readme_doctest.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_readme_doctest.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_readme_doctest.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_readme_doctest.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_test_file_coverage.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_test_file_coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_test_file_coverage.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bskinn/sphobjinv/release_test_file_coverage.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/all_core_tests.yml:33","Warn: pipCommand not pinned by hash: .github/workflows/all_core_tests.yml:36","Warn: pipCommand not pinned by hash: .github/workflows/ready_doctest.yml:36","Warn: pipCommand not pinned by hash: .github/workflows/ready_doctest.yml:39","Warn: pipCommand not pinned by hash: .github/workflows/ready_linting.yml:36","Warn: pipCommand not pinned by hash: .github/workflows/ready_linting.yml:39","Warn: pipCommand not pinned by hash: .github/workflows/ready_linting.yml:64","Warn: pipCommand not pinned by hash: .github/workflows/ready_linting.yml:67","Warn: pipCommand not pinned by hash: .github/workflows/ready_test_matrix.yml:43","Warn: pipCommand not pinned by hash: .github/workflows/ready_test_matrix.yml:46","Warn: pipCommand not pinned by hash: .github/workflows/ready_test_nonloc.yml:39","Warn: pipCommand not pinned by hash: .github/workflows/ready_test_nonloc.yml:42","Warn: pipCommand not pinned by hash: .github/workflows/release_check_sdist.yml:35","Warn: pipCommand not pinned by hash: .github/workflows/release_check_sdist.yml:66","Warn: pipCommand not pinned by hash: .github/workflows/release_doc_warnings.yml:35","Warn: pipCommand not pinned by hash: .github/workflows/release_flake8_noqa_nofail.yml:35","Warn: pipCommand not pinned by hash: .github/workflows/release_readme_doctest.yml:35","Warn: pipCommand not pinned by hash: .github/workflows/release_test_file_coverage.yml:37","Info:   0 out of  22 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  18 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":9,"reason":"1 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2022-43017 / GHSA-qwmp-2cf2-g9g6"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T09:47:41.299Z","repository_id":40257580,"created_at":"2025-08-17T09:47:41.299Z","updated_at":"2025-08-17T09:47:41.299Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31293497,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["inspector","inventory","manager","python","sphinx","sphinx-doc"],"created_at":"2024-10-30T15:08:43.981Z","updated_at":"2026-04-02T00:43:18.202Z","avatar_url":"https://github.com/bskinn.png","language":"Python","funding_links":["https://github.com/sponsors/bskinn","https://tidelift.com/funding/github/pypi/sphobjinv"],"categories":[],"sub_categories":[],"readme":"## sphobjinv: Manipulate and inspect Sphinx objects.inv files\n\n\n#### Current Development Version\n\n[![GitHub Workflow Status][workflow badge]][workflow link target]\n\n#### Most Recent Stable Release\n\n[![PyPI Version][pypi badge]][pypi link target]\n![Python Versions][python versions badge]\n\n#### Info\n\n[![ReadTheDocs status][readthedocs badge]][readthedocs link target]\n[![gitter chat][gitter badge]][gitter link target]\n\n[![MIT License][license badge]][license link target]\n[![black formatted][black badge]][black link target]\n[![PePY stats][pepy badge]][pepy link target]\n\n----\n\n### Using Sphinx?\n\n#### Having trouble writing cross-references?\n\n`sphobjinv` (short for '**sph**inx **obj**ects.**inv**') can help!\n\nThe syntax required for a functional Sphinx cross-reference is\nnon-obvious in many cases. Sometimes Sphinx can guess correctly what\nyou mean, but it's pretty hit-or-miss.  The best approach is to provide\nSphinx with a completely specified cross-reference, and that's where\n`sphobjinv` comes in.\n\nAfter a `pip install sphobjinv` (or `pipx install sphobjinv`), find the\ndocumentation set you want to cross-reference into, and pass it to\n`sphobjinv suggest`.\n\nFor internal cross-references, locate `objects.inv` within `build/html`:\n\n```none\n$ sphobjinv suggest doc/build/html/objects.inv as_rst -st 58\n\n-----------------------------------------------------------------------------------------------------------\n\nCannot infer intersphinx_mapping from a local objects.inv.\n\n-----------------------------------------------------------------------------------------------------------\n\nProject: sphobjinv\nVersion: 2.4\n\n151 objects in inventory.\n\n-----------------------------------------------------------------------------------------------------------\n\n10 results found at/above current threshold of 58.\n\n  Name                                                Score\n---------------------------------------------------  -------\n:py:property:`sphobjinv.data.SuperDataObj.as_rst`      60\n:py:class:`sphobjinv.data.DataFields`                  59\n:py:class:`sphobjinv.data.DataObjBytes`                59\n:py:class:`sphobjinv.data.DataObjStr`                  59\n:py:class:`sphobjinv.data.SuperDataObj`                59\n:py:class:`sphobjinv.enum.HeaderFields`                59\n:py:class:`sphobjinv.enum.SourceTypes`                 59\n:py:function:`sphobjinv.fileops.writebytes`            59\n:py:function:`sphobjinv.fileops.writejson`             59\n:py:class:`sphobjinv.inventory.Inventory`              59\n```\n\nThe `-s` argument in the above shell command indicates to print the\n`fuzzywuzzy` match score along with each search result, and `-t 50`\nchanges the reporting threshold for the match score.\n\nFor external references, find the API documentation wherever it lives on\nthe web, and pass `sphobjinv suggest` a URL from within the documentation set\nwith the `--url/-u` flag. For example, say I need to know how to\ncross-reference the `linspace` function from numpy (see\n[here][numpy linspace]):\n\n```none\n$ sphobjinv suggest https://numpy.org/doc/2.4/reference/index.html linspace -su\n\nAttempting https://numpy.org/doc/2.4/reference/index.html ...\n  ... no recognized inventory.\nAttempting \"https://numpy.org/doc/2.4/reference/index.html/objects.inv\" ...\n  ... HTTP error: 404 Not Found.\nAttempting \"https://numpy.org/doc/2.4/reference/objects.inv\" ...\n  ... HTTP error: 404 Not Found.\nAttempting \"https://numpy.org/doc/2.4/objects.inv\" ...\n  ... inventory found.\n\n-----------------------------------------------------------------------------------------------------------\n\nThe intersphinx_mapping for this docset is LIKELY:\n\n  (https://numpy.org/doc/2.4/, None)\n\n-----------------------------------------------------------------------------------------------------------\n\nProject: NumPy\nVersion: 2.4\n\n8456 objects in inventory.\n\n-----------------------------------------------------------------------------------------------------------\n\n8 results found at/above current threshold of 75.\n\n  Name                                                           Score\n--------------------------------------------------------------  -------\n:py:function:`numpy.linspace`                                     90\n:py:method:`numpy.polynomial.chebyshev.Chebyshev.linspace`        90\n:py:method:`numpy.polynomial.hermite.Hermite.linspace`            90\n:py:method:`numpy.polynomial.hermite_e.HermiteE.linspace`         90\n:py:method:`numpy.polynomial.laguerre.Laguerre.linspace`          90\n:py:method:`numpy.polynomial.legendre.Legendre.linspace`          90\n:py:method:`numpy.polynomial.polynomial.Polynomial.linspace`      90\n:std:doc:`reference/generated/numpy.linspace`                     90\n```\n\n**NOTE** that the results from `sphobjinv suggest` are printed using the\nlonger *block directives*, whereas cross-references must be composed using the\n*inline directives*. Thus, the above `linspace()` function must be\ncross-referenced as ``` :func:`numpy.linspace` ``` , **not**\n``` :function:`numpy.linspace` ```.\n\n**Need to edit an inventory after it's created, or compose one from scratch?**\n\n`sphobjinv` can help with that, too.\n\n`objects.inv` files can be decompressed to plaintext at the commandline:\n\n```none\n$ sphobjinv convert plain -o doc/build/html/objects.inv doc/scratch/\nConversion completed.\n'...objects.inv' converted to '...objects.txt' (plain).\n```\n\nJSON output is supported (`sphobjinv convert json ...`), and\ninventories can be re-compressed to the\npartially-zlib-compressed form that `intersphinx` reads\n(`sphobjinv convert zlib ...`).\n\nAlternatively, `sphobjinv` exposes an API to enable automation of\ninventory creation/modification:\n\n```python\n\u003e\u003e\u003e import sphobjinv as soi\n\u003e\u003e\u003e inv = soi.Inventory('doc/build/html/objects.inv')\n\u003e\u003e\u003e print(inv)\n\u003cInventory (fname_zlib): sphobjinv v2.4, 151 objects\u003e\n\u003e\u003e\u003e inv.project\n'sphobjinv'\n\u003e\u003e\u003e inv.version\n'2.4'\n\u003e\u003e\u003e inv.objects[0]\nDataObjStr(name='sphobjinv.data', domain='py', role='module', priority='0', uri='api/data.html#module-$', dispname='-')\n\n```\n\nThe API also enables straightforward re-export of an inventory, for subsequent\nuse with `intersphinx` cross-references. See [the docs][soi docs inv export] for\nmore details.\n\n----\n\nFull documentation is hosted at [Read The Docs][readthedocs link target].\n\nAvailable on [PyPI][pypi link target] (`pip install sphobjinv`).\n\nSource on [GitHub][github repo]. Bug reports and feature requests are welcomed\nat the [Issues][github issue tracker] page there.\n\nCopyright (c) 2016-2026 Brian Skinn and community contributors\n\nThe `sphobjinv` documentation (including docstrings and README) is licensed\nunder a [Creative Commons Attribution 4.0 International License][cc-by 4.0]\n(CC-BY). The `sphobjinv` codebase is released under the [MIT License]. See\n[`LICENSE.txt`][license link target] for full license terms.\n\n\n[black badge]: https://img.shields.io/badge/code%20style-black-000000.svg\n[black link target]: https://github.com/psf/black\n[cc-by 4.0]: https:/creativecommons.org/licenses/by/4.0/\n[soi docs inv export]: https://sphobjinv.readthedocs.io/en/latest/api_usage.html#exporting-an-inventory\n[github issue tracker]: https://github.com/bskinn/sphobjinv/issues\n[github repo]: https://github.com/bskinn/sphobjinv\n[gitter badge]: https://badges.gitter.im/sphobjinv/community.svg\n[gitter link target]: https://gitter.im/sphobjinv/community?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge\n[license badge]: https://img.shields.io/github/license/mashape/apistatus.svg\n[license link target]: https://github.com/bskinn/sphobjinv/blob/stable/LICENSE.txt\n[mit license]: https://opensource.org/licenses/MIT\n[numpy linspace]: https://numpy.org/doc/1.26/reference/generated/numpy.linspace.html\n[pepy badge]: https://pepy.tech/badge/sphobjinv/month\n[pepy link target]: https://pepy.tech/projects/sphobjinv?timeRange=threeMonths\u0026category=version\u0026includeCIDownloads=true\u0026granularity=daily\u0026versions=2.3.*%2C2.4*\n[pypi badge]: https://img.shields.io/pypi/v/sphobjinv.svg?logo=pypi]\n[pypi link target]: https://pypi.org/project/sphobjinv\n[python versions badge]: https://img.shields.io/pypi/pyversions/sphobjinv.svg?logo=python\n[readthedocs badge]: https://img.shields.io/readthedocs/sphobjinv/latest.svg\n[readthedocs link target]: https://sphobjinv.readthedocs.io/en/latest/\n[workflow badge]: https://img.shields.io/github/actions/workflow/status/bskinn/sphobjinv/all_core_tests.yml?logo=github\u0026branch=main\n[workflow link target]: https://github.com/bskinn/sphobjinv/actions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbskinn%2Fsphobjinv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbskinn%2Fsphobjinv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbskinn%2Fsphobjinv/lists"}