refactor: setup.cfg and dev requirements (#504)

* refactor: use setup.cfg instead

* refactor: use dev extra

* fix: restore dev requiremetns
This commit is contained in:
Henry Schreiner
2021-01-02 11:33:38 -05:00
committed by GitHub
parent 10c052b5ef
commit bc8716c188
12 changed files with 93 additions and 70 deletions
+1 -1
View File
@@ -4,6 +4,6 @@ set -o xtrace
$PYTHON --version
$PYTHON -m pip --version
$PYTHON -m virtualenv -p $PYTHON venv
venv/bin/python -m pip install -r requirements-dev.txt
venv/bin/python -m pip install -e ".[dev]"
venv/bin/python -m pip freeze
venv/bin/python --version
+1 -1
View File
@@ -36,7 +36,7 @@ jobs:
- name: Install dependencies
run: |
python -m pip install -r requirements-dev.txt
python -m pip install -e ".[dev]"
- name: Install Visual C++ for Python 2.7
if: runner.os == 'Windows'
+1 -1
View File
@@ -11,5 +11,5 @@ linux:
DOCKER_TLS_CERTDIR: ""
script:
- curl -sSL https://get.docker.com/ | sh
- python -m pip install -r requirements-dev.txt
- python -m pip install -e ".[dev]"
- python ./bin/run_tests.py
+4 -1
View File
@@ -8,4 +8,7 @@ mkdocs:
python:
version: 3.7
install:
- requirements: requirements-dev.txt
- method: pip
path: .
extra_requirements:
- dev
+1 -1
View File
@@ -54,6 +54,6 @@ jobs:
# must repeat the s390x job above exactly to match
- *linux_s390x_36
install: $PYTHON -m pip install -r requirements-dev.txt pytest-custom-exit-code
install: $PYTHON -m pip install -e ".[dev]" pytest-custom-exit-code
script: $PYTHON ./bin/run_tests.py
+1 -1
View File
@@ -19,7 +19,7 @@ init:
$env:PYTEST_ADDOPTS='-k "unit_test or test_0_basic" --suppress-no-test-exit-code'
}
install: python -m pip install -r requirements-dev.txt pytest-custom-exit-code
install: python -m pip install -e ".[dev]" pytest-custom-exit-code
# the '-u' flag is required so the output is in the correct order.
# See https://github.com/joerick/cibuildwheel/pull/24 for more info.
+4 -4
View File
@@ -6,7 +6,7 @@ jobs:
inputs:
versionSpec: '3.8'
- bash: |
python -m pip install -r requirements-dev.txt pytest-azurepipelines
python -m pip install -e ".[dev]" pytest-azurepipelines
python ./bin/run_tests.py
- job: macos_38
@@ -16,7 +16,7 @@ jobs:
inputs:
versionSpec: '3.8'
- bash: |
python -m pip install -r requirements-dev.txt pytest-azurepipelines
python -m pip install -e ".[dev]" pytest-azurepipelines
python ./bin/run_tests.py
- job: windows_36
@@ -29,7 +29,7 @@ jobs:
- script: choco install vcpython27 -f -y
displayName: Install Visual C++ for Python 2.7
- bash: |
python -m pip install -r requirements-dev.txt pytest-azurepipelines
python -m pip install -e ".[dev]" pytest-azurepipelines
python ./bin/run_tests.py
- job: windows_38
@@ -42,5 +42,5 @@ jobs:
- script: choco install vcpython27 -f -y
displayName: Install Visual C++ for Python 2.7
- bash: |
python -m pip install -r requirements-dev.txt pytest-azurepipelines
python -m pip install -e ".[dev]" pytest-azurepipelines
python ./bin/run_tests.py
+1 -1
View File
@@ -17,7 +17,7 @@ config = [
('docs/faq.md', "cibuildwheel@v{}"),
('docs/setup.md', "cibuildwheel@v{}"),
('examples/*', "cibuildwheel=={}"),
('setup.py', "version='{}'"),
('setup.cfg', "version = {}"),
]
+15
View File
@@ -32,8 +32,21 @@ So, if we can, I'd like to improve the experience on errors as well. In [this](h
Maintainer notes
----------------
## Local testing
You should run:
```python
python3 -m venv venv
. venv/bin/activate
pip install -e .[dev]
```
To prepare a development environment.
## Testing minimal configs
cibuildwheel's _minimal_ example configs can be tested on a simple project on cibuildwheel's existing CI. These should be run whenever the minimal configs change.
To test minimal configs, make sure you have a clean git repo, then run the script:
@@ -48,6 +61,8 @@ The script then outputs a Markdown table that can be copy/pasted into a PR to mo
## Preparing environments
This has been moved to using docker, so you only need the following instructions if you add `--no-docker` to avoid using docker.
The dependency update script in the next section requires multiple python versions installed. One way to do this is to use `pyenv`:
```bash
+1 -13
View File
@@ -1,13 +1 @@
-e .
pytest
pytest-timeout
mkdocs==1.0.4
mkdocs-include-markdown-plugin==2.1.1
pymdown-extensions
pip-tools
requests
click
mypy
pyyaml
pygithub
typing-extensions
-e .[dev]
+61
View File
@@ -1,3 +1,64 @@
[metadata]
name = cibuildwheel
version = 1.7.4
description = Build Python wheels on CI with minimal configuration.
long_description = file: README.md
long_description_content_type = text/markdown
author = Joe Rickerby
author_email = joerick@mac.com
url = https://github.com/joerick/cibuildwheel
license = BSD
classifiers =
Intended Audience :: Developers
Natural Language :: English
Programming Language :: Python :: 3
Development Status :: 5 - Production/Stable
License :: OSI Approved :: BSD License
Programming Language :: Python :: Implementation :: CPython
Topic :: Software Development :: Build Tools
project_urls =
Changelog=https://github.com/joerick/cibuildwheel#changelog
Documentation=https://cibuildwheel.readthedocs.io/
keywords = ci,wheel,packaging,pypi,travis,appveyor,macos,linux,windows
[options]
packages = find:
zip_safe = False
include_package_data = True
python_requires = >=3.6
install_requires =
bashlex!=0.13
toml
certifi
[options.package_data]
cibuildwheel = resources/*
[options.extras_require]
dev =
click
mkdocs-include-markdown-plugin==2.1.1
mkdocs==1.0.4
mypy
pip-tools
pygithub
pymdown-extensions
pytest
pytest-timeout
pyyaml
requests
typing-extensions
[options.packages.find]
include =
cibuildwheel
[options.entry_points]
console_scripts =
cibuildwheel = cibuildwheel.__main__:main
[flake8]
ignore = E501,W503,E741,E226,B950
select = C,E,F,W,B,B9
+1 -45
View File
@@ -1,49 +1,5 @@
# -*- coding: utf-8 -*-
from pathlib import Path
try:
from setuptools import setup
except ImportError:
from distutils.core import setup
this_directory = Path(__file__).parent
long_description = (this_directory / 'README.md').read_text(encoding='utf-8')
setup(
name='cibuildwheel',
version='1.7.4',
install_requires=['bashlex!=0.13', 'toml', 'certifi'],
description="Build Python wheels on CI with minimal configuration.",
long_description=long_description,
long_description_content_type='text/markdown',
author="Joe Rickerby",
author_email='joerick@mac.com',
url='https://github.com/joerick/cibuildwheel',
project_urls={
'Changelog': 'https://github.com/joerick/cibuildwheel#changelog',
'Documentation': 'https://cibuildwheel.readthedocs.io/',
},
packages=['cibuildwheel', ],
license="BSD",
zip_safe=False,
package_data={
'cibuildwheel': ['resources/*'],
},
# Supported python versions
python_requires='>=3.6',
keywords='ci wheel packaging pypi travis appveyor macos linux windows',
classifiers=[
'Intended Audience :: Developers',
'Natural Language :: English',
'Programming Language :: Python :: 3',
'Development Status :: 5 - Production/Stable',
'License :: OSI Approved :: BSD License',
'Programming Language :: Python :: Implementation :: CPython',
'Topic :: Software Development :: Build Tools',
],
entry_points={
'console_scripts': [
'cibuildwheel = cibuildwheel.__main__:main',
],
},
)
setup()