feat: default to bare base for flask, django and fastapi extensions
Metadata
Current evaluation
Merged. Defaults to bare base for Flask, Django, and FastAPI extensions to reduce image size and attack surface. Approved by four reviewers and merged after CI checks passed.
Suggested action: —
No scores available.
Issue body
<!-- Describe your changes -->
Default to bare base for flask, django and fastapi extensions.
Reduce image size with all this entails: smaller attack surface and improved download performance. The change should only impact the rockcraft init, so it won't impact existing projects.
---
- [x] I've followed the [contribution guidelines](https://github.com/canonical/rockcraft/blob/main/CONTRIBUTING.md).
- [x] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/).
- [x] I've successfully run `make lint && make test`.
- [x] I've added or updated any relevant documentation.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged. Defaults to bare base for Flask, Django, and FastAPI extensions to reduce image size and attack surface. Approved by four reviewers and merged after CI checks passed. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged changes defaulting to a bare base for flask, django, and fastapi extensions. Reduces image size and attack surface. Only affects rockcraft init. Resolved failing tests and completed review before merging. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Defaults to a bare base for Flask, Django, and FastAPI extensions, reducing image size, attack surface, and download times. Changes only affect new projects created via rockcraft init. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1087 feat: default to bare base for flask extension | rockcraft | closed | Closed in favor of pull request 1086. The flask extension bare base default change was abandoned to consolidate efforts and address reviewer feedback regarding image size and potential project impacts. | |
| #1084 feat: default to bare base for fastapi extension | rockcraft | closed | Closed by the author and superseded by pull request #1086. The FastAPI extension bare base default change was abandoned in favor of the newer PR. | |
| #1320 feat(extensions): support bare bases in V2 frameworks | rockcraft | merged | Merged changes adding bare base support to FastAPI, Go, Flask, Django, and Spring Boot V2 extensions. Includes unit tests verifying V1 and V2 selection by Ubuntu build base. Approved by two reviewers and integrated after passing CI. | |
| #529 fix(flask): don't enforce definition of base, build-base and platforms | rockcraft | merged | Merged a Flask extension fix that stops enforcing mandatory base, build-base, and platforms definitions for gunicorn extensions. Approved by two reviewers and passed CI. | |
| #1083 feat: default to bare base for django extension | rockcraft | closed | Changes to default to a bare base for the django extension and add a symlink were closed without merging. Failing CI checks and zero review activity indicate the contribution was abandoned. |