Sphobjinv

Latest version: v2.3.1

Safety actively analyzes 628903 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

2.1

Added

* Python 3.10 support was officially added.

Changed

* The User-Agent header sent by `Inventory` when making an HTTP(S) request
now identifies `sphobjinv` and its version (anticipate no API or
behavior change).

* An extraneous newline was removed before tables printed in the
'suggest' CLI mode (cosmetic change).

Fixed

* Previously, `sphobjinv.Inventory` would ignore entries in `objects.inv`
that contained spaces within `name`
(see [181](https://github.com/bskinn/sphobjinv/issues/181));
this is now fixed.

Removed

* Python 3.5 is no longer supported.

* The relaxation of the integer constraint on the `priority` field
introduced in v2.1b1 has been *reverted*, as `objects.inv` data lines
with such non-integer `priority` values are skipped by Sphinx.

Internal

* Where possible, string interpolation has been refactored to use
f-strings.

* A 'speedup' `extras_require` entry has been added to allow simple installation
of `python-Levenshtein` for Linux and MacOS platforms, as
`pip install sphobjinv[speedup]`. This extra does nothing on Windows, since
compilation machinery is anticipated not to be available for most users.

* `objects_mkdoc_zlib0.inv`, which was compressed at `zlib` level 0,
has been added to the test resources directory.

* This file had to be flagged as binary in `.gitattributes` in order to avoid
git EOL auto-conversion on Windows.

* The CLI functionality was refactored from the single `sphobjinv.cmdline` module
into a dedicated set of `sphobjinv.cli.*` submodules.

* Some internal `type(...) is ...` checks were replaced with `isinstance(...)`

Testing

* Added *significant* body of new tests to confirm inventory compatibility
with both `sphobjinv` and Sphinx itself.

* Consistency checks added both for data within `sphobjinv.Inventory` instances
**AND** as emitted from `sphinx.ext.inventory.InventoryFile.load()`.

* The tests in `tests/test_valid_objects.py` strive to bracket as precisely
as possible what content is allowed on an `objects.inv` data line,
in addition to providing guidance on what is allowable, but discouraged.

`docs/source/syntax.rst` was also edited to reflect this guidance.

* Additional tests have been added to probe corner cases involving Windows EOLs.

* A test was added to ensure that the schema in `sphobjinv.schema` is in fact
a valid JSON schema.

* Multiple asserts/checks per test method have been converted to use
`pytest-check` instead of `pytest-subtests`, due to some inconsistent
behavior with the latter.

* `tox` environments and dependencies were updated, and some flake8 configuration
was adjusted.

Administrative

* Standard development Python version bumped to 3.9.

* Standard development Sphinx version bumped to 3.5.0.

* Added `[skip ci]` flag in commit text for skipping Github Actions CI.

* RtD upgraded to use Python 3.8.

* Added 'radio Sphinx' logo to RtD docs.

* Drafted `CONTRIBUTING.md` and added PR & issue templates.

* Tranferred most project metadata from `setup.py` to `setup.cfg`.

2.1b1

Fixed

* Equality tests on Inventory and DataObjStr/DataObjBytes instances
now work correctly.

* Non-integer and non-numeric values for `priority` are now accepted
during `Inventory` instantiation, consistent with what is allowed
by `DataObjStr` and `DataObjBytes` instantiation.

2.1a2

Added

* When an inventory is retrieved via CLI from a remote URL with `-u`,
the resolved location of the inventory is included in generated JSON
at `json_dict.metadata.url`.

Changed

* CLI logging messages are now emitted to stderr instead of stdout.

2.1a1

Added

* A hyphen can now be passed as the CLI input and/or output file name
to instruct sphobjinv to use stdin and/or stdout, respectively.

* The `fileops` and `inventory` APIs are now tested to work with
both strings and `pathlib.Path` objects, where they interact
with the filesystem.

Refactored

* Patterns in regular expressions are now defined with raw strings
to improve readability.

2.0.1

Fixed

* attr.s usage on Inventory changed to use eq=False where possible,
per the deprecation of the cmp argument.

* URL inventory retrieval now sends a User-Agent header, to avoid
403 FORBIDDEN errors on some docs servers.

2.0.1rc1

Fixed

* Sphinx *can* generate inventories with empty-string values for
`project` and `version`; `sphobjinv` now can import such
inventories without error.

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.