test(release): the publish test writes its SHA256SUMS fixture as bytes, so it passes on Windows #119
No reviewers
Labels
No labels
area/accessibility
area/audio
area/input
area/install
area/menu
area/renderer
area/saves
area/upscaling
good first issue
gpu/amd
gpu/igpu
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
needs measurements
platform/linux
platform/steam-deck
platform/windows
preview
priority
critical
priority
high
priority
low
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
testing wanted
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Longshot!119
Loading…
Reference in a new issue
No description provided.
Delete branch "d4nkn3ss/Longshot:fix/test-release-crlf"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
tests/test_release.pyfails onmainon Windows: its fixtures writeSHA256SUMSas text, which Windows writes with ``, so the publish test's upload doesn't match and the released-as tests' signature doesn't verify.
What changed
tests/test_release.pywrites itsSHA256SUMSfixtures as bytes,write_bytes(...), notwrite_text(...): intest_a_draft_then_the_files_then_published, and inReleasedAs's release fixture (added on main since), whose signature is made over that file and checked against the uploadedbytes.scripts/release.pyuploads and verifies each file as it is, which is right, so only the fixtures change.Flags and settings
None
Measurements
main:
3ece96e9(2026-11-13)this PR: fix/test-release-crlf @
6ce385fcHardware: Windows 11, Python 3.12 from python.org
Scene: n/a (game-free)
Method:
python -I -B tests/test_release.pyonce on each side, same checkoutHow to reproduce: on Windows,
python -I -B tests/test_release.py3ece96e96ce385fctests/test_release.py('SHA256SUMS', b'sums\r\n') != ('SHA256SUMS', b'sums\n')Testing
Tested: the command above on Windows 11 on both sides.
Full suite:
python -I -B tests/run_all.pyon this branch @ ba460632, Windows 11: 493 passed, 3 failed, 35 skipped. The failures:tests/test_check_third_party.py(#80),tests/test_setup_runtime.py(#118), andtests/test_release.pyitself only becauseopensslwasn't on that shell's PATH (its key tests need the command line; with Git'sopensslon PATH: main @cf0dbb340 passed 1 failed, this PR 1 passed 0 failed).Not tested: Linux:
write_textalready wrote\nthere, so the test passed before and the bytes are the same now.Needs other testers: None
Screenshots
Nothing on screen
Risk and rollback
Test-only; reverting the commit is enough.
Issues
None
Checklist
For everyone
type(scope): description).main.python -I -B tests/run_all.pyrun and passing (any failure that also fails onmainis named above).third_party/untouched (a new folder with aPROVENANCE.mdinstead).If applicable
Assisted-by:/Co-Authored-By:trailers.🤖 Generated with Claude Code
Full game-free suite run on this branch (Windows 11); the results and the failures that also fail on main are now under Testing. Marking ready.
WIP: test(release): the publish test writes its SHA256SUMS fixture as bytes, so it passes on Windowsto test(release): the publish test writes its SHA256SUMS fixture as bytes, so it passes on Windowsba460632fb6ce385fc11Rebased onto main
3ece96e9and extended: the ReleasedAs tests added on main since write their signed SHA256SUMS as text too, so all four errored on Windows ("its SHA256SUMS is not signed by a trusted key"). Their fixture now writes bytes as well; with openssl on PATH, tests/test_release.py goes from 5 errors and 1 failure to the one git-cliff error #145 fixes. Description updated.View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.