Skip to content

Commit 27e485f

Browse files
committed
Remove official Appveyor support
1 parent 5b65230 commit 27e485f

14 files changed

+26
-107
lines changed

CI.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
This is a summary of the host Python versions and platforms covered by the different CI platforms:
22

3-
| | 3.11 | 3.12 | 3.13 |
4-
|---------|----------------------------------|---------------------------------------------------------|----------------|
5-
| Linux | Azure Pipelines / GitHub Actions | AppVeyor¹ / CircleCI¹ / Cirrus CI / GitLab¹ / Travis CI | GitHub Actions |
6-
| macOS | Azure Pipelines | AppVeyor¹ / CircleCI¹ / Cirrus CI / GitLab¹ | GitHub Actions |
7-
| Windows | Azure Pipelines | AppVeyor¹ / Cirrus CI / GitLab¹ / Travis CI | GitHub Actions |
3+
| | 3.11 | 3.12 | 3.13 |
4+
|---------|----------------------------------|---------------------------------------------|----------------|
5+
| Linux | Azure Pipelines / GitHub Actions | CircleCI¹ / Cirrus CI / GitLab¹ / Travis CI | GitHub Actions |
6+
| macOS | Azure Pipelines | CircleCI¹ / Cirrus CI / GitLab¹ | GitHub Actions |
7+
| Windows | Azure Pipelines | Cirrus CI / GitLab¹ / Travis CI | GitHub Actions |
88

99
> ¹ Runs a reduced set of tests to reduce CI load
1010

README.md

+2-5
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ cibuildwheel
55
[![Documentation Status](https://readthedocs.org/projects/cibuildwheel/badge/?version=stable)](https://cibuildwheel.pypa.io/en/stable/?badge=stable)
66
[![Actions Status](https://github.com/pypa/cibuildwheel/workflows/Test/badge.svg)](https://github.com/pypa/cibuildwheel/actions)
77
[![Travis Status](https://img.shields.io/travis/com/pypa/cibuildwheel/main?logo=travis)](https://travis-ci.com/github/pypa/cibuildwheel)
8-
[![Appveyor status](https://ci.appveyor.com/api/projects/status/gt3vwl88yt0y3hur/branch/main?svg=true)](https://ci.appveyor.com/project/joerick/cibuildwheel/branch/main)
98
[![CircleCI Status](https://img.shields.io/circleci/build/gh/pypa/cibuildwheel/main?logo=circleci)](https://circleci.com/gh/pypa/cibuildwheel)
109
[![Azure Status](https://dev.azure.com/joerick0429/cibuildwheel/_apis/build/status/pypa.cibuildwheel?branchName=main)](https://dev.azure.com/joerick0429/cibuildwheel/_build/latest?definitionId=4&branchName=main)
1110

@@ -16,7 +15,7 @@ cibuildwheel
1615

1716
Python wheels are great. Building them across **Mac, Linux, Windows**, on **multiple versions of Python**, is not.
1817

19-
`cibuildwheel` is here to help. `cibuildwheel` runs on your CI server - currently it supports GitHub Actions, Azure Pipelines, Travis CI, AppVeyor, CircleCI, and GitLab CI - and it builds and tests your wheels across all of your platforms.
18+
`cibuildwheel` is here to help. `cibuildwheel` runs on your CI server - currently it supports GitHub Actions, Azure Pipelines, Travis CI, CircleCI, and GitLab CI - and it builds and tests your wheels across all of your platforms.
2019

2120

2221
What does it do?
@@ -45,7 +44,7 @@ While cibuildwheel itself requires a recent Python version to run (we support th
4544
<sup>⁵ manylinux armv7l support is experimental. As there are no RHEL based image for this architecture, it's using an Ubuntu based image instead.</sup><br>
4645

4746
- Builds manylinux, musllinux, macOS 10.9+ (10.13+ for Python 3.12+), and Windows wheels for CPython, PyPy, and GraalPy
48-
- Works on GitHub Actions, Azure Pipelines, Travis CI, AppVeyor, CircleCI, GitLab CI, and Cirrus CI
47+
- Works on GitHub Actions, Azure Pipelines, Travis CI, CircleCI, GitLab CI, and Cirrus CI
4948
- Bundles shared library dependencies on Linux and macOS through [auditwheel](https://github.com/pypa/auditwheel) and [delocate](https://github.com/matthew-brett/delocate)
5049
- Runs your library's tests against the wheel-installed version of your library
5150

@@ -61,7 +60,6 @@ Usage
6160
| GitHub Actions |||||| ✅² | ✅³ |
6261
| Azure Pipelines |||| || ✅² | ✅³ |
6362
| Travis CI || ||| | | |
64-
| AppVeyor |||| || ✅² | ✅³ |
6563
| CircleCI ||| ||| | ✅³ |
6664
| Gitlab CI |||| ✅¹ || | ✅³ |
6765
| Cirrus CI |||||| | ✅³ |
@@ -188,7 +186,6 @@ Here are some repos that use cibuildwheel.
188186
[Prophet]: https://github.com/facebook/prophet
189187
[Kivy]: https://github.com/kivy/kivy
190188

191-
[appveyor icon]: docs/data/readme_icons/appveyor.svg
192189
[github icon]: docs/data/readme_icons/github.svg
193190
[azurepipelines icon]: docs/data/readme_icons/azurepipelines.svg
194191
[circleci icon]: docs/data/readme_icons/circleci.svg

appveyor.yml

-38
This file was deleted.

bin/projects.py

-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
from github import Github, GithubException
3434

3535
ICONS = (
36-
"appveyor",
3736
"github",
3837
"azurepipelines",
3938
"circleci",

bin/run_example_ci_configs.py

-5
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,6 @@ class CIService(typing.NamedTuple):
4141

4242

4343
services = [
44-
CIService(
45-
name="appveyor",
46-
dst_config_path="appveyor.yml",
47-
badge_md="[![Build status](https://ci.appveyor.com/api/projects/status/gt3vwl88yt0y3hur/branch/{branch}?svg=true)](https://ci.appveyor.com/project/joerick/cibuildwheel/branch/{branch})",
48-
),
4944
CIService(
5045
name="azure-pipelines",
5146
dst_config_path="azure-pipelines.yml",

cibuildwheel/ci.py

+5-1
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,17 @@
66

77

88
class CIProvider(Enum):
9+
# official support
910
travis_ci = "travis"
10-
appveyor = "appveyor"
1111
circle_ci = "circle_ci"
1212
azure_pipelines = "azure_pipelines"
1313
github_actions = "github_actions"
1414
gitlab = "gitlab"
1515
cirrus_ci = "cirrus_ci"
16+
17+
# unofficial support
18+
appveyor = "appveyor"
19+
1620
other = "other"
1721

1822

docs/ci-services.md

+6-16
Original file line numberDiff line numberDiff line change
@@ -86,22 +86,6 @@ Then setup a deployment method by following the [Travis CI deployment docs](http
8686

8787
[`examples/travis-ci-deploy.yml`](https://github.com/pypa/cibuildwheel/blob/main/examples/travis-ci-deploy.yml) extends this minimal example with a demonstration of how to automatically upload the built wheels to PyPI.
8888

89-
### AppVeyor [linux/mac/windows] {: #appveyor}
90-
91-
To build Linux, Mac, and Windows wheels on AppVeyor, create an `appveyor.yml` file in your repo.
92-
93-
> appveyor.yml
94-
95-
```yaml
96-
{% include "../examples/appveyor-minimal.yml" %}
97-
```
98-
99-
Commit this file, enable building of your repo on AppVeyor, and push.
100-
101-
AppVeyor will store the built wheels for you - you can access them from the project console. Alternatively, you may want to store them in the same place as the Travis CI build. See [AppVeyor deployment docs](https://www.appveyor.com/docs/deployment/) for more info, or see [Delivering to PyPI](deliver-to-pypi.md) below.
102-
103-
For more info on this config file, check out the [docs](https://www.appveyor.com/docs/).
104-
10589
### CircleCI [linux/mac] {: #circleci}
10690

10791
To build Linux and Mac wheels on CircleCI, create a `.circleci/config.yml` file in your repo,
@@ -149,6 +133,12 @@ Cirrus CI will store the built wheels for you - you can access them from the ind
149133

150134
> ⚠️ Got an error? Check the [FAQ](faq.md).
151135
136+
### Other CI services
137+
138+
#### AppVeyor {: #appveyor}
139+
140+
Appveyor official support was dropped in cibuildwheel v3.0, due to a lack of CI credits. However, it can probably still be used as-is. Check the Appveyor example from the cibuildwheel v2.0 branch: [appveyor-minimal.yml](https://github.com/pypa/cibuildwheel/blob/v2.23.3/examples/appveyor-minimal.yml).
141+
152142
## Next steps
153143

154144
Once you've got the wheel building successfully, you might want to set up [testing](options.md#test-command) or [automatic releases to PyPI](deliver-to-pypi.md#automatic-method).

docs/data/projects.schema.json

-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
"enum": [
1919
"github",
2020
"travisci",
21-
"appveyor",
2221
"circleci",
2322
"gitlab",
2423
"cirrusci",

docs/data/projects.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# stars: GitHub repo (optional, if different from package, such as for Twisted)
55
# pypi: The pypi name, if different from the GitHub package name
66
# os: Operating system list, [windows, apple, linux] (optional)
7-
# ci: [appveyor, github, azurepipelines, circleci, gitlab, travisci, cirrusci] (optional)
7+
# ci: [github, azurepipelines, circleci, gitlab, travisci, cirrusci] (optional)
88
# notes: (text, optional)
99

1010
- name: abess
@@ -19,11 +19,11 @@
1919
ci: [github]
2020
os: [windows, apple, linux]
2121

22-
- name: pyinstrument_cext
23-
gh: joerick/pyinstrument_cext
24-
ci: [travisci, appveyor]
22+
- name: pyinstrument
23+
gh: joerick/pyinstrument
24+
ci: [github]
2525
os: [windows, apple, linux]
26-
notes: A simple C extension, without external dependencies
26+
notes: Python profiler with a C extension. No external dependencies.
2727

2828
- name: websockets
2929
gh: python-websockets/websockets
@@ -182,7 +182,7 @@
182182
183183
- name: python-rapidjson
184184
gh: python-rapidjson/python-rapidjson
185-
ci: [travisci, gitlab, appveyor]
185+
ci: [travisci, gitlab]
186186
os: [windows, linux]
187187

188188
- name: jq.py

docs/data/readme_icons/appveyor.svg

-1
This file was deleted.

docs/working-examples.md

+2-3
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ title: Working examples
7575
| [KDEpy][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Kernel Density Estimation in Python |
7676
| [dd-trace-py][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Uses custom alternate arch emulation on GitHub |
7777
| [tgcalls][] | ![github icon][] | ![apple icon][] ![windows icon][] | Python `pybind11` binding to Telegram's WebRTC library with third party dependencies like `OpenSSL`, `MozJPEG`, `FFmpeg`, etc. |
78-
| [python-rapidjson][] | ![travisci icon][] ![gitlab icon][] ![appveyor icon][] | ![windows icon][] ![linux icon][] | Python wrapper around rapidjson |
78+
| [python-rapidjson][] | ![travisci icon][] ![gitlab icon][] | ![windows icon][] ![linux icon][] | Python wrapper around rapidjson |
7979
| [pybind11 python_example][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Example pybind11 module built with a Python-based build system |
8080
| [sourmash][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Quickly search, compare, and analyze genomic and metagenomic data sets. |
8181
| [abess][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | A fast best-subset selection library. It uses cibuildwheel to build a large project with C++ extensions. |
@@ -115,7 +115,7 @@ title: Working examples
115115
| [CorrectionLib][] | ![github icon][] | ![apple icon][] ![linux icon][] | Structured JSON powered correction library for HEP, designed for the CMS experiment at CERN. |
116116
| [xmlstarlet][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Python 3.6+ CFFI bindings with true MSVC build. |
117117
| [werpy][] | ![github icon][] | ![windows icon][] ![linux icon][] ![apple icon][] | An ultra-fast python package using optimized dynamic programming to compute the Word Error Rate (WER). |
118-
| [pyinstrument_cext][] | ![travisci icon][] ![appveyor icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | A simple C extension, without external dependencies |
118+
| [pyinstrument_cext][] | ![travisci icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | A simple C extension, without external dependencies |
119119
| [pybind11 cross build example][] | ![github icon][] ![gitlab icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Same as pybind11 cmake_example but used to demo Linux ARM + Windows + macOS builds on GitLab |
120120

121121
[scikit-learn]: https://github.com/scikit-learn/scikit-learn
@@ -228,7 +228,6 @@ title: Working examples
228228
[pyinstrument_cext]: https://github.com/joerick/pyinstrument_cext
229229
[pybind11 cross build example]: https://github.com/wbarnha/pybind_cmake_example_crossbuild
230230

231-
[appveyor icon]: data/readme_icons/appveyor.svg
232231
[github icon]: data/readme_icons/github.svg
233232
[azurepipelines icon]: data/readme_icons/azurepipelines.svg
234233
[circleci icon]: data/readme_icons/circleci.svg

examples/appveyor-minimal.yml

-18
This file was deleted.

pyproject.toml

-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ authors = [
1313
{ name = "Joe Rickerby", email = "[email protected]" },
1414
]
1515
keywords = [
16-
"appveyor",
1716
"ci",
1817
"linux",
1918
"macos",

test/test_cpp_standards.py

-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
import os
2-
31
import jinja2
4-
import pytest
52

63
from . import utils
74
from .test_projects import TestProject
@@ -100,9 +97,6 @@ def test_cpp17(tmp_path):
10097
"""
10198
cpp17_project.generate(project_dir)
10299

103-
if os.environ.get("APPVEYOR_BUILD_WORKER_IMAGE", "") == "Visual Studio 2015":
104-
pytest.skip("Visual Studio 2015 does not support C++17")
105-
106100
add_env = {}
107101
if utils.platform == "macos":
108102
add_env["MACOSX_DEPLOYMENT_TARGET"] = "10.13"

0 commit comments

Comments
 (0)