Requests Extensions
Usage
...
Developement Setup
This repository requires Python 3.10 at minimum -- prefer the latest 3.10.X.
Installation
Prefer using a virtual Python environment when installing. Tools such as virtualenv can be used to set up the environment using a specific Python version. pyenv can be used to install the desired Python version if your choice of OS does not provide it for you.
Example install
python -m virtualenv -p /usr/bin/python3.10 venv
source venv/bin/activate
# Install platform and developer extra packages
pip install --editable '.[dev]'
Testing
pytest is used to run test.
cd /to/requests_extensions
pytest # runs both unit and integration tests
Pre-commit + Linting
We enforce the use of certain linting tools. To not get caught by the build-system's checks, you should use
pre-commit to scan your commits before they go upstream.
The following hooks are enabled in pre-commit:
black: The black formatter is enforced on the project. We use a basic configuration. Ideally this should solve any and all formatting questions we might encounter.isort: the isort import-sorter is enforced on the project. We use it with theblackprofile.
To enable pre-commit from within your virtual environment, simply run:
pip install pre-commit
pre-commit install
Additional tools
These tools should be used by the developer because the build-system will enforce that the code complies with them.
These tools are pinned in the dev extra-requirements of pyproject.toml, so you can acquire them with
# within environment
pip install .[dev]
We use the following additional tools:
pytest: This tool is used to run the test e.g.pytest .mypy: This is a static and dynamic type-checking tool. This also checks for unreachable and non-returning code. Seepyproject.tomlfor its settings. This tool is not included in pre-commit because doing so would require installing this repo's package and additional stubs into the pre-commit environment, which is inadvised by pre-commit, and poorly supported.
FAQ: mypy errors
I've encountered 'Unused "type: ignore" comment'
Good news, this means that mypy has found symbols for the thing which you are ignoring. That means its time to enable
type-checking on these code-paths.
To resolve this error, do two things:
- Remove the ignore and fix any type errors.
- run
mypy . --install-typesand add any newly installedtypes-*packages installed to ourdevdependencies.
Metadata
Release files for requests-extensions 1.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| requests-extensions-1.1.3.tar.gz | 10.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| requests_extensions-1.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.9 kB
Release files / requests-extensions-1.1.3.tar.gz
| Download URL | requests-extensions-1.1.3.tar.gz |
|---|---|
| Size | 10.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e3bb64cb783981f21dc1111bef11caf052b577362c10ebfaadb7596ce2c7742d
|
|
BLAKE2b-256 checksum How to use checksums |
ce09988b1c2eb80702ffd29ae62bda5bbb26bd70bc57de52c575ebb50abb683f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|
Release files / requests_extensions-1.1.3-py3-none-any.whl
| Download URL | requests_extensions-1.1.3-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f16d203b300dded7434060043a1bc42517c1d799cd34c2c176d441fb9fb10fdc
|
|
BLAKE2b-256 checksum How to use checksums |
17b5d79886cb5b13b716edb33f4072824c601847456e62e1ba58db4d261e2880
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|