bug: devcontainers uses an old debian version with no non-EOL python header libs
- Dominant language
- Rust
- Stars
- 5.4k
- Forks
- 825
- Avg merge
- 1d 14m
- Merged PRs (30d)
- 127
Description
### Describe the bug
The devcontainers config cannot be used for python development. `mcr.microsoft.com/devcontainers/rust:bullseye` is based on debian bullseye, which only has libpython*-dev up to v3.9, [which is EOL](https://devguide.python.org/versions/). Microsoft provides a rust devcontainer image for bookworm, but that isn't much better, only going up to 3.11. However, this may be workable because the python bindings use the abi3-py311 target. If so, the uv config needs to be updated to lock the python version used in the dev environment, as currently it installs the latest (3.14).
### Steps to Reproduce
- Create a fresh devcontainer
- `cd bindings/python`
- `just setup` (installs python 3.14)
- `uv run just test`: fails to generate type stubs due to missing header libraries
### Expected Behavior
The devcontainer should include all tools necessary for development.
### Additional Context
Changing the base image of the devcontainer could cause problems across many other regions of the monorepo and needs thorough testing.
### Are you willing to submit a PR to fix this bug?
- [ ] Yes, I would like to submit a PR.
Contributor guide
Research direction
Start with the devcontainer configuration and reproduce the failure from bindings/python using just setup followed by uv run just test. Check the Rust image and Python version used by the environment; done means a fresh devcontainer provides the required Python header libraries and the Python binding tests complete successfully without disrupting the monorepo.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, python, rust
- Domain
- developer-experience, devops, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100