Firefox/Python 3 Migration: Difference between revisions

Jump to navigation Jump to search
→‎Getting Involved: update linter fix instructions
(→‎Getting Involved: simplify instructions)
(→‎Getting Involved: update linter fix instructions)
Line 29: Line 29:
=== Where to start: ===
=== Where to start: ===


==== Help port mach-core to Python 3 ([https://bugzilla.mozilla.org/show_bug.cgi?id=1473498 bug 1473498]) ====
==== Remove more of the "excluded" paths from the py2 and py3 linters ====
 
See [https://pad.mozilla.org/p/py3 this Etherpad] for instructions.


# Edit python/mach/mach/test/python.ini to remove the skip-if
Roughly:
# Run: ./mach python-test --python 3 python/mach
# Fix the errors until all tests pass


==== Remove more of the "excluded" paths from the py2 and py3 linters ====
* Pick a directory [https://pad.mozilla.org/p/py3 from the list], and put your name beside it so we know it's ported
* Edit py2.yml and/or py3.yml and remove that directory from the exclusion list
* Run `./mach lint -l py2 -l py3 <your directory name>` to get a list of errors
* To get a list of files that need fixing:
./mach lint -l py2 -l py3 <your directory name> --format unix > tofix.txt
* To install `futurize`:
pip install --user future
* To run through futurize
cat tofix.txt | cut -f1 -d: | sort -u | xargs futurize -1 -w
* Visually inspect the patch, especially around `except:` clauses.  Look for
When your patch is ready file:


Remove a line from https://searchfox.org/mozilla-central/source/tools/lint/py3.yml or https://searchfox.org/mozilla-central/source/tools/lint/py2.yml. Run the linter, see if the module passes.
# Use moz-phab for submitting the patch - https://moz-conduit.readthedocs.io/en/latest/phabricator-user.html#submitting-patches
# Use [https://bugzilla.mozilla.org/show_bug.cgi?id=1559975 bug 1559975]
# Set one of callek, ahal, or catlee as the code reviewer


==== Run all python source tests with Python 3 and see what breaks ====
==== Run all python source tests with Python 3 and see what breaks ====
Line 44: Line 56:


See what breaks, then fix it!
See what breaks, then fix it!
==== Help port mach-core to Python 3 ([https://bugzilla.mozilla.org/show_bug.cgi?id=1473498 bug 1473498]) ====
# Edit python/mach/mach/test/python.ini to remove the skip-if
# Run: ./mach python-test --python 3 python/mach
# Fix the errors until all tests pass


See the [[#References]] for links to other ideas and tracking bugs.
See the [[#References]] for links to other ideas and tracking bugs.
75

edits

Navigation menu