Skip to content

Commit 26c3bc6

Browse files
authored
Merge branch 'master' into feature/delimiter-support-2538
2 parents 080fc83 + a54317c commit 26c3bc6

40 files changed

+617
-163
lines changed

.devcontainer/devcontainer.json

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,39 @@
11
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
22
// README at: https://github.com/devcontainers/templates/tree/main/src/python
33
{
4-
"name": "Python 3",
5-
"image": "mcr.microsoft.com/devcontainers/python:3.11",
4+
"name": "Falcon (CPython 3.14)",
5+
"image": "mcr.microsoft.com/devcontainers/python:3.14",
66
"features": {
7-
"ghcr.io/devcontainers-contrib/features/tox:1": {}
8-
}
9-
10-
// Features to add to the dev container. More info: https://containers.dev/features.
11-
// "features": {},
12-
13-
// Use 'forwardPorts' to make a list of ports inside the container available locally.
14-
// "forwardPorts": [],
7+
"ghcr.io/devcontainers-extra/features/ruff:1": {},
8+
"ghcr.io/devcontainers-extra/features/tox:2": {}
9+
},
1510

1611
// Use 'postCreateCommand' to run commands after the container is created.
17-
// "postCreateCommand": "pip3 install --user -r requirements.txt",
12+
// NOTE(vytas): We install pytest not via pipx or features so that test collection works via the default interpreter.
13+
"postCreateCommand": "pip install --upgrade pip pytest && FALCON_DISABLE_CYTHON=y pip install -e .",
1814

1915
// Configure tool-specific properties.
20-
// "customizations": {},
16+
"customizations": {
17+
"vscode": {
18+
"extensions": [
19+
"ms-python.python",
20+
"ms-python.vscode-pylance",
21+
"charliermarsh.ruff"
22+
],
23+
"settings": {
24+
"python.defaultInterpreterPath": "/usr/local/bin/python",
25+
"python.linting.enabled": true,
26+
"python.testing.pytestEnabled": true,
27+
"python.testing.unittestEnabled": false,
28+
// NOTE(vytas): Disable automatic random port-forwarding as running tox doesn't need it.
29+
"remote.autoForwardPorts": false
30+
}
31+
}
32+
}
2133

2234
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
35+
// NOTE(vytas): You will probably want to connect as root on rootless Docker/Podman/etc.
36+
// In rootless setups, the current user is typically mapped to root's UID inside the container.
37+
// (You may run into permission problems otherwise as the vscode user gets mapped to an ephemeral UID.)
2338
// "remoteUser": "root"
2439
}

.github/workflows/cibuildwheel.yaml

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,23 @@ jobs:
153153
- cp312
154154
- cp313
155155
- cp314
156+
include:
157+
- platform:
158+
name: manylinux_x86_64
159+
os: ubuntu-latest
160+
python: cp314t
161+
- platform:
162+
name: musllinux_x86_64
163+
os: ubuntu-latest
164+
python: cp314t
165+
- platform:
166+
name: manylinux_aarch64
167+
os: ubuntu-24.04-arm
168+
python: cp314t
169+
- platform:
170+
name: musllinux_aarch64
171+
os: ubuntu-24.04-arm
172+
python: cp314t
156173

157174
defaults:
158175
run:
@@ -171,7 +188,7 @@ jobs:
171188
platforms: all
172189

173190
- name: Build wheels
174-
uses: pypa/cibuildwheel@v3.1.0
191+
uses: pypa/cibuildwheel@v3.2.1
175192
env:
176193
# NOTE(vytas): Uncomment to test against alpha/beta CPython
177194
# (usually May-July until rc1).

.github/workflows/test-wheels.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
emulation: true
2424
- build: "cp39-manylinux_x86_64"
2525
os: ubuntu-latest
26-
- build: "cp314-musllinux_x86_64"
26+
- build: "cp314t-musllinux_x86_64"
2727
os: ubuntu-latest
2828
- build: "cp313-macosx_arm64"
2929
os: macos-15
@@ -43,7 +43,7 @@ jobs:
4343
platforms: all
4444

4545
- name: Build wheels
46-
uses: pypa/cibuildwheel@v3.1.0
46+
uses: pypa/cibuildwheel@v3.2.1
4747
env:
4848
# NOTE(vytas): Uncomment to test against alpha/beta CPython
4949
# (usually May-July until rc1).

.github/workflows/tests.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,8 @@ jobs:
6161
python-version: "3.14"
6262
- env: py314_cython
6363
python-version: "3.14"
64+
- env: py315
65+
python-version: "3.15.0-alpha.1 - 3.15.0"
6466
- env: py312_nocover
6567
os: macos-latest
6668
platform-label: ' (macos)'

AUTHORS

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,11 @@ listed below by date of first contribution:
214214
* Soubhik Kumar Mitra (x612skm)
215215
* Sviatoslav Sydorenko (webknjaz)
216216
* Soney (sonephyo)
217+
* Ayan Ahmed Khan (AyanAhmedKhan)
218+
* Parman Mohammadalizadeh (MannXo)
219+
* Tudor Gradinaru (TudorGR)
220+
* Swapnaneel Patra (thisisrick25)
221+
* 0x1618
217222

218223
(et al.)
219224

BACKERS.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@ See also: https://opencollective.com/falcon
88

99
* [GOVCERT.LU](https://www.govcert.lu/)
1010

11-
## Gold Patron
11+
## Gold Patrons
1212

13+
* [LambdaTest](https://www.lambdatest.com/?utm_source=falcon&utm_medium=sponsor)
1314
* [Sentry](https://sentry.io/)
1415

1516
## Past Commercial Patrons

CONTRIBUTING.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,25 @@ This helps to ensure that our recipes stay up-to-date as the framework's develop
153153

154154
## VS Code Dev Container development environment
155155

156-
When opening the project using the [VS Code](https://code.visualstudio.com/) IDE, if you have [Docker](https://www.docker.com/) (or some drop-in replacement such as [Podman](https://podman.io/) or [Colima](https://github.com/abiosoft/colima) or [Rancher Desktop](https://rancherdesktop.io/)) installed, you can leverage the [Dev Containers](https://code.visualstudio.com/docs/devcontainers/containers) feature to start a container in the background with all the dependencies required to test and debug the Falcon code. VS Code integrates with the Dev Container seamlessly, which can be configured via [devcontainer.json][devcontainer]. Once you open the project in VS Code, you can execute the "Reopen in Container" command to start the Dev Container which will run the headless VS Code Server process that the local VS Code app will connect to via a [published port](https://docs.docker.com/config/containers/container-networking/#published-ports).
156+
When opening the project using the [VS Code](https://code.visualstudio.com/) IDE,
157+
if you have [Docker](https://www.docker.com/) (or some drop-in replacement such as
158+
[Podman](https://podman.io/), [Colima](https://github.com/abiosoft/colima), or
159+
[Rancher Desktop](https://rancherdesktop.io/), etc) installed, you can leverage the
160+
[Dev Containers](https://code.visualstudio.com/docs/devcontainers/containers)
161+
feature to start a container in the background with all the dependencies
162+
required to test and debug the Falcon code base.
163+
164+
Once you open the project in VS Code, you can execute the "Reopen in Container"
165+
command to start the Dev Container which will run a headless VS Code Server
166+
process. In the connected Terminal, you can run the above referenced ``ruff``
167+
and ``tox`` commands inside the container (both tools are already pre-installed).
168+
169+
VS Code test collection also works, both in the container and without it.
170+
Open the "Testing" View, and you should see all the ~300 (at the time of
171+
writing) tests discovered via ``pytest``.
172+
173+
(If needed, the Dev Container's configuration can be tweaked via
174+
[devcontainer.json][devcontainer].)
157175

158176
## Use of LLMs ("AI")
159177

0 commit comments

Comments
 (0)