Compatibility shim providing selectable entry points for older implementations
Project description
Compatibility shim to ease adoption of importlib_metadata 3.6. Supplies forward-compatibility of “selectable” entry points even on older versions of importlib_metadata and importlib.metadata, and avoids usage that triggers deprecation warnings.
Use this shim for libraries or applications invoking entry_points() that run on Python older than 3.10 or where importlib_metadata is older than 3.6. In most cases, this shim is unnecessary and the easiest thing to do is simply require importlib_metadata >= 3.6 on all Pythons (or only those prior to 3.10a7). In some environments, a library may be constrained on which versions of importlib_metadata can be required, so this library bridges that gap.
To use this shim, add backports.entry_points_selectable to your project requirements. It will require importlib_metadata automatically where needed (prior to Python 3.8) but be satisfied by older versions. Projects should still require importlib_metadata as appropriate for API uses other than for entry_points.
Then in code, instead of from importlib.metadata import entry_points, use:
from backports.entry_points_selectable import entry_points
And then use the “selectable” features (pass keyword arguments to entry_points or invoke .select() on the result).
This backport has a very lenient dependency on importlib_metadata for older Pythons and is a single module implementation. If adding a dependency is a concern, this module may be vendored into the downstream project.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for backports.entry_points_selectable-1.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 914b21a479fde881635f7af5adc7f6e38d6b274be32269070c53b698c60d5386 |
|
MD5 | ffa5f1ffcabb689ec7b8c3a5b672b917 |
|
BLAKE2b-256 | 7116edd003270daaab0168f7dbac6e22b055322e9ba66fb2cc951f58d1ed158b |
Hashes for backports.entry_points_selectable-1.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7fceed9532a7aa2bd888654a7314f864a3c16a4e710b34a58cfc0f08114c663b |
|
MD5 | 753054489655e013b1d02c59ad76ceaf |
|
BLAKE2b-256 | 6d2ea6789183415658c7f2c41da8599d53077bd222233039f5c92bffbf23b28d |