MIL-010: release v0.1.0 results, the executable is not attached
The tag v0.1.0 and the release exist and the executable was rebuilt and smoke-tested from the tagged commit, but the server's reverse proxy rejects the upload (413). README, CHANGELOG and the wiki Install pages now say that the executable is built from source until the limit is raised. Review record RC-055 (Go-with-conditions). Task: MIL-010#2 Task: MIL-010#3 Task: MIL-010#4 Task: MIL-010#6
This commit is contained in:
@@ -26,6 +26,7 @@ Python Pro Bootcamp*, for Malay words with Danish translations.
|
||||
### Known limits
|
||||
|
||||
- The executable is not signed; Windows SmartScreen may warn about it.
|
||||
- The executable is not attached to the release: the upload limit of the server rejects a file of its size. Build it with `python tools/build_executable.py`.
|
||||
- The executable is built for Windows (x64); on Linux and macOS run the program
|
||||
from source or build it on that system.
|
||||
- The Danish column of the word list is machine translated.
|
||||
|
||||
@@ -106,7 +106,7 @@ Known words stay known at every level: the level only limits which of the words
|
||||
|
||||
### Executable (Windows, no Python needed to run it)
|
||||
|
||||
Download `flash-card.exe` and `flash-card.exe.sha256` from the [release page][release-0-1-0] and compare the SHA-256 hash of the file with the checksum file, or build it yourself:
|
||||
The [release page][release-0-1-0] of v0.1.0 has the release notes. The executable is not attached there yet, because the server's upload limit rejects a file of this size (HTTP 413). Build it yourself:
|
||||
|
||||
```powershell
|
||||
python -m pip install -e ".[build,speech]"
|
||||
@@ -142,7 +142,7 @@ GNU Affero General Public License v3.0 or later. See [LICENSE][license].
|
||||
- [Repository][repository]
|
||||
- [Documentation][documentation]
|
||||
- [Issue tracker][issues]
|
||||
- [Releases][releases] (the Windows executable `flash-card.exe` and its checksum)
|
||||
- [Releases][releases] (v0.1.0: release notes; the executable is built from source, see Run)
|
||||
|
||||
## 📎 Appendix: Project documents
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ document of a type. `Primary File` may contain a glob (e.g.
|
||||
| DCD | Design Class Diagram | docs/dcd.md | 002 |
|
||||
| DICT | Domain Dictionary | docs/dictionary.md | 002 |
|
||||
| ADR | Architecture Decision Record | docs/adr/adr-NNNN-*.md | 0005 |
|
||||
| RC | SQA Review Record | docs/sqa/reviews/rc-*.md | 055 |
|
||||
| RC | SQA Review Record | docs/sqa/reviews/rc-*.md | 056 |
|
||||
| TM | Traceability Matrix | docs/sqa/traceability-matrix.md | 002 |
|
||||
|
||||
## Languages
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
# RC-055: Review of the release v0.1.0
|
||||
|
||||
## Metadata
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | RC-055 |
|
||||
| CrossReference | [MIL-010] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-15 | Accepted | Jens Tirsvad Nielsen | AI as stand-in for S01 | Initial version | pending |
|
||||
|
||||
---
|
||||
|
||||
## Artifact Under Review
|
||||
|
||||
- Instance reviewed: [MIL-010] (the milestone's Go / No-Go criteria, checked against the release v0.1.0)
|
||||
- Checklist used: none exists for a release; the seven criteria of MIL-010 are the checklist
|
||||
- Scope: full review
|
||||
- Language and domain: n/a (record of results)
|
||||
- Language reviewer: none
|
||||
- Mode: autonomous, not independent (reviewer is `AI as stand-in for S01`)
|
||||
|
||||
## Checklist Results
|
||||
|
||||
| # | Criterion | Status | Evidence/Notes |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | The executable is rebuilt from the head of `main` that gets the tag and passes the smoke test | Pass | Built with `--clean` from commit `2c580cc` after removing `build/` and `dist/`; four smoke cases passed (window "Flashy" after about 2 s, embedded list, progress file beside the exe with 999 cards, list override with a 2 word list) |
|
||||
| 2 | The tag `v0.1.0` is an annotated tag on that commit and the version files say `0.1.0` | Pass | `git show v0.1.0` shows the annotated tag on `2c580cc`; `pyproject.toml` and `__version__` say `0.1.0` |
|
||||
| 3 | The release has the assets `flash-card.exe` and `flash-card.exe.sha256` | Fail | The upload of `flash-card.exe` (25.8 MB) was rejected with `413 Request Entity Too Large` from the server's reverse proxy; a 1 MB test upload was reset as well; only an 82 byte file passed. The checksum asset alone was deleted again, because a checksum without its file is misleading |
|
||||
| 4 | The SHA-256 of the file downloaded from the release equals the checksum | Fail | There is no downloadable file; the hash of the local build was `0ac22621ecb8ddad53c5f3d2a35278bebd34cefe458510971106ec52d5bdb47d`, which cannot be verified by others because PyInstaller builds are not bit-for-bit reproducible |
|
||||
| 5 | The release notes say unsigned Windows build, the `data` folder and how to build, and give the SHA-256 | Fail | The notes say unsigned, the `data` folder and how to build, and state that the file is not attached; they give no SHA-256 because there is no file |
|
||||
| 6 | CHANGELOG, README and the Install page of the wiki link the release; `check-readme.sh` exit 0 | Pass | Links present in all five files and corrected to say the file is not attached; `check-readme.sh` exit 0 |
|
||||
| 7 | BC-001, US-001 and PP-001 are updated and reviewed `Go` | Pass | RC-051 to RC-053 |
|
||||
|
||||
## Overall Verdict
|
||||
|
||||
Go-with-conditions — the tag and the release page exist and the build was verified, but criteria 3, 4 and 5 fail because the server refuses the upload of the executable. The milestone MIL-010 stays open and issue "Create the release and attach the files" stays open until the executable is attached. Reviewed by AI as stand-in for S01; not independent of the author.
|
||||
|
||||
## Action Items
|
||||
|
||||
| Action | Owner | Due |
|
||||
| --- | --- | --- |
|
||||
| Raise the upload limit of the git host's reverse proxy (nginx `client_max_body_size`, and Gitea's attachment limit if set) to at least 50 MB, then ask for the attachment of `flash-card.exe` and its SHA-256 to v0.1.0 (or confirm another place to host the file) | S01 | 2026-10-21 |
|
||||
|
||||
---
|
||||
|
||||
[MIL-010]: ../milestones/mil-010-release.md
|
||||
@@ -52,7 +52,7 @@ updated whenever an artifact instance is created or reviewed.
|
||||
| MIL-008 | Milestone / Gateway | en | it | BC-001, PP-001 | tasks of MIL-008 | [RC-040] |
|
||||
| MIL-009 | Milestone / Gateway | en | it | BC-001 | - | [RC-050] |
|
||||
| ADR-0004 | Architecture Decision Record | - | - | BC-001 | - | [RC-046] |
|
||||
| MIL-010 | Milestone / Gateway | en | it | BC-001 | - | [RC-054] |
|
||||
| MIL-010 | Milestone / Gateway | en | it | BC-001 | - | [RC-054], [RC-055] |
|
||||
| PY-MIL-001 | Python Source Code | - | - | DCD-001, ADR-0002 | - | [RC-023] |
|
||||
| PY-MIL-002 | Python Source Code | - | - | DCD-001, ADR-0002 | - | [RC-024] |
|
||||
| PY-MIL-003 | Python Source Code | - | - | DCD-001, ADR-0002 | - | [RC-025] |
|
||||
@@ -167,3 +167,4 @@ updated whenever an artifact instance is created or reviewed.
|
||||
[RC-054]: ./reviews/rc-054-mil-010.md
|
||||
[MIL-010]: ../milestones/mil-010-release.md
|
||||
[9c8e294]: https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/commit/9c8e2940217e615f82eda2d48aca9b2fd58f3687
|
||||
[RC-055]: ./reviews/rc-055-release-v0-1-0.md
|
||||
|
||||
@@ -56,9 +56,9 @@ python -m pytest
|
||||
|
||||
Vinduestesten i `tests/e2e/` springes over, når der ikke er en skærm.
|
||||
|
||||
## Download programfilen (Windows)
|
||||
## Udgivelse og programfil (Windows)
|
||||
|
||||
Hent `flash-card.exe` og `flash-card.exe.sha256` fra [udgivelsessiden](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/releases/tag/v0.1.0). Sammenlign filens SHA-256-hash med kontrolsumfilen (`certutil -hashfile flash-card.exe SHA256` i Windows). Filen er ikke signeret, så Windows kan vise en SmartScreen-advarsel.
|
||||
[Udgivelsessiden](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/releases/tag/v0.1.0) for v0.1.0 har udgivelsesnoterne. Programfilen er endnu ikke vedhæftet, fordi serverens grænse for upload afviser en fil af denne størrelse (HTTP 413); byg den som beskrevet nedenfor. Filen er ikke signeret, så Windows kan vise en SmartScreen-advarsel.
|
||||
|
||||
## Byg en programfil (Windows)
|
||||
|
||||
|
||||
@@ -56,9 +56,9 @@ python -m pytest
|
||||
|
||||
Ujian tetingkap dalam `tests/e2e/` dilangkau apabila tiada paparan.
|
||||
|
||||
## Muat turun fail boleh laku (Windows)
|
||||
## Keluaran dan fail boleh laku (Windows)
|
||||
|
||||
Muat turun `flash-card.exe` dan `flash-card.exe.sha256` daripada [halaman keluaran](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/releases/tag/v0.1.0). Bandingkan cincangan SHA-256 fail dengan fail semak jumlah (`certutil -hashfile flash-card.exe SHA256` pada Windows). Fail tidak ditandatangani, jadi Windows mungkin menunjukkan amaran SmartScreen.
|
||||
[Halaman keluaran](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/releases/tag/v0.1.0) v0.1.0 mempunyai nota keluaran. Fail boleh laku belum dilampirkan di sana kerana had muat naik pelayan menolak fail sebesar ini (HTTP 413); bina seperti yang diterangkan di bawah. Fail tidak ditandatangani, jadi Windows mungkin menunjukkan amaran SmartScreen.
|
||||
|
||||
## Bina fail boleh laku (Windows)
|
||||
|
||||
|
||||
@@ -56,9 +56,9 @@ python -m pytest
|
||||
|
||||
The window test in `tests/e2e/` is skipped when no display is available.
|
||||
|
||||
## Download the executable (Windows)
|
||||
## Release and executable (Windows)
|
||||
|
||||
Download `flash-card.exe` and `flash-card.exe.sha256` from the [release page](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/releases/tag/v0.1.0). Compare the SHA-256 hash of the file with the checksum file (`certutil -hashfile flash-card.exe SHA256` on Windows). The file is not signed, so Windows may show a SmartScreen warning.
|
||||
The [release page](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card/releases/tag/v0.1.0) of v0.1.0 has the release notes. The executable is not attached there yet, because the server's upload limit rejects a file of this size (HTTP 413); build it as described below. The file is not signed, so Windows may show a SmartScreen warning.
|
||||
|
||||
## Build an executable (Windows)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user