Bleeding edge dependency testing
Project description
Bleeding edge dependency testing
edgetest is a tox-inspired python library that will loop through your project's dependencies, and check if your
project is compatible with the latest version of each dependency. It does this by:
- creating a virtual environment,
- installing your local package into the environment,
- upgrading specified dependency package(s), and
- running your test command.
For example, if you depend on pandas>=0.25.1,<=1.0.0, edgetest will test your project against the most current
pandas version (say 1.3.4), so you know if you can safely update your dependency to pandas>=0.25.1,<=1.3.4 or not.
edgetest works with the following types of projects:
pyproject.tomlsetup.cfg- and
requirements.txt
Table Of Contents
Install
Create a conda environment with Python 3.8+ and install from PyPI:
$ python -m pip install edgetest
or conda-forge:
$ conda install -c conda-forge edgetest
Getting Started
edgetest allows multi-package, bleeding edge dependency testing. Suppose you have a package, mypackage, with
the following requirements.txt:
pandas>=0.25.1,<=1.0.0
...
edgetest allows you to test your package against the latest version of pandas. If you run
$ edgetest
the package will
- Create a virtual environment in the
.edgetestfolder, - Install the local
mypackage:.edgetest/pandas/bin/python -m pip install ., - Upgrade
pandas:.edgetest/pandas/bin/python -m pip install pandas --upgrade, - Run
.edgetest/pandas/bin/python -m pytest, and - Repeat steps 1-4 for all packages in
requirements.txt.
After you run the command, you should get console output similar to the following:
============= =============== =================== =================
Environment Passing tests Upgraded packages Package version
------------- --------------- ------------------- -----------------
pandas True pandas 1.3.4
============= =============== =================== =================
Options
See the advanced usage page.
Plugins
Current plugins include:
| Plugin | Description |
|---|---|
| edgetest-conda | Uses conda or mamba for environment creation instead of venv. |
| edgetest-hub | Creates a pull request in your GitHub repository with the dependency updates. |
| edgetest-pip-tools | Refreshes a locked requirements file based on the updated dependency pins. |
Contributing
See our developer documentation.
We welcome and appreciate your contributions! Before we can accept any contributions, we ask that you please be sure to sign the Contributor License Agreement (CLA)
This project adheres to the Open Source Code of Conduct. By participating, you are expected to honor this code.
License
Apache-2.0
Roadmap
Roadmap details can be found here.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file edgetest-2026.1.1.tar.gz.
File metadata
- Download URL: edgetest-2026.1.1.tar.gz
- Upload date:
- Size: 30.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f698a85885a6c450237dc4857c8df7ea5f2b4aa3269820cda1ea3e0defa1526e
|
|
| MD5 |
f40818796198a349074aaffb469e0f96
|
|
| BLAKE2b-256 |
0fe26f3ffdf687895b55c67ac5c0a40b79ab2a60c00e8bca4f866524eae98655
|
Provenance
The following attestation bundles were made for edgetest-2026.1.1.tar.gz:
Publisher:
publish-package.yml on capitalone/edgetest
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
edgetest-2026.1.1.tar.gz -
Subject digest:
f698a85885a6c450237dc4857c8df7ea5f2b4aa3269820cda1ea3e0defa1526e - Sigstore transparency entry: 848573271
- Sigstore integration time:
-
Permalink:
capitalone/edgetest@36432890ea5d6760c2e674edb48fa38978a67b3d -
Branch / Tag:
refs/tags/v2026.1.1 - Owner: https://github.com/capitalone
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-package.yml@36432890ea5d6760c2e674edb48fa38978a67b3d -
Trigger Event:
release
-
Statement type:
File details
Details for the file edgetest-2026.1.1-py3-none-any.whl.
File metadata
- Download URL: edgetest-2026.1.1-py3-none-any.whl
- Upload date:
- Size: 22.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26f766bfedcb800ad8b5e36897576ea81ff201e3ed39a384ff820472a9201fd1
|
|
| MD5 |
47b00fe71bbf86897aa5ca6dd5432cc4
|
|
| BLAKE2b-256 |
f96ca8bdd54a6827d28a89e1421582d93a057d9a6f3caf3b5c41fffa25878870
|
Provenance
The following attestation bundles were made for edgetest-2026.1.1-py3-none-any.whl:
Publisher:
publish-package.yml on capitalone/edgetest
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
edgetest-2026.1.1-py3-none-any.whl -
Subject digest:
26f766bfedcb800ad8b5e36897576ea81ff201e3ed39a384ff820472a9201fd1 - Sigstore transparency entry: 848573312
- Sigstore integration time:
-
Permalink:
capitalone/edgetest@36432890ea5d6760c2e674edb48fa38978a67b3d -
Branch / Tag:
refs/tags/v2026.1.1 - Owner: https://github.com/capitalone
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-package.yml@36432890ea5d6760c2e674edb48fa38978a67b3d -
Trigger Event:
release
-
Statement type: