MozillaSecurity / MozillaSecurity/bugmon
Improve error handling when attempting to bisect revision that doesn't exist
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 11
- Forks
- 2
- Avg merge
- 2h 8m
- Merged PRs (30d)
- 1
Description
Attempts to bisect where the original revision doesn't exist (mistype, wrong branch, etc) will fail.
Traceback (most recent call last):
File "/home/worker/.local/bin/bugmon-process", line 8, in <module>
sys.exit(main())
File "/home/worker/.local/lib/python3.8/site-packages/bugmon_tc/process/cli.py", line 33, in main
results = processor.process()
File "/home/worker/.local/lib/python3.8/site-packages/bugmon_tc/process/process.py", line 69, in process
bugmon.process()
File "/home/worker/.local/lib/python3.8/site-packages/bugmon/bugmon.py", line 397, in process
self.confirm_open()
File "/home/worker/.local/lib/python3.8/site-packages/bugmon/bugmon.py", line 258, in confirm_open
self.bisect()
File "/home/worker/.local/lib/python3.8/site-packages/bugmon/bugmon.py", line 208, in bisect
bisector = Bisector(
File "/home/worker/.local/lib/python3.8/site-packages/autobisect/bisect.py", line 168, in __init__
self.end = Fetcher(
File "/usr/local/lib/python3.8/dist-packages/fuzzfetch/fetch.py", line 805, in __init__
requested = HgRevision(build, branch).pushdate
File "/usr/local/lib/python3.8/dist-packages/fuzzfetch/fetch.py", line 132, in __init__
self._data = get_url(
File "/usr/local/lib/python3.8/dist-packages/fuzzfetch/fetch.py", line 107, in get_url
raise FetcherException(exc) from None
fuzzfetch.fetch.FetcherException: 404 Client Error: Not Found for url: https://hg.mozilla.org/mozilla-central/json-rev/8be68465a851
Contributor guide
No contributing guide indexed for this repository
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 in bugmon/bugmon.py at bisect(), then follow the Bisector and Fetcher calls shown in the traceback. Reproduce an attempt using the nonexistent revision 8be68465a851 and define completion as a handled error rather than an unhandled FetcherException traceback.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100