pyinstaller / pyinstaller/pyinstaller
Document how to `git bisect` a bug
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 13.1k
- Forks
- 2k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 11
Description
Along this scratch:
If you know an older version – no matter if release or develop – of PyInstaller worked for you, you can "bisect" to find out which change (commit) causes the error. "Bisecting" is easy, all you need is a development setup for PyInstaller and git.
Let's assume commit 12345678 worked for you then run
git bisect start
git bisect bad # Current version is bad
git bisect good 12345678 # 12345678 is known to be good
Git will now checkout some next version to test, you need to test you program and run git bisect good or git bisect bad, depending on if you program worked.
To automate this, you can adopt the following script to your needs, save it as run-bisect.sh and run git bisect run sh ./run-bisect.sh.
#!/usr/bin/bash
COMPILE_BOOTLOADER=
if [ -n "$COMPILE_BOOTLOADER" ] ; then
cd bootloader
./waf --no-lsb all
cd -
fi
pyinstaller --noconfirm my-app.py
dist/my-app/my-app
exit $?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing scratch text and the PyInstaller development setup described in the issue. Document the manual git bisect commands and the optional run-bisect.sh automation, including how to judge each tested version; the work is done when a user can follow the instructions to identify a problematic commit.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- bash, git, python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100