Closed Bug 1555762 Opened 8 months ago Closed 5 months ago

Run |mach google| using Python 3


(Firefox Build System :: General, task, P3)


(firefox70 fixed)

Tracking Status
firefox70 --- fixed


(Reporter: ahal, Assigned: ahal)


(Depends on 1 open bug, Blocks 1 open bug)


(Keywords: in-triage)


(1 file, 1 obsolete file)

This bug is more about proving out our Python 3 + mach infrastructure than actually needing to run mach google with Python 3. I'm choosing mach google as its implementation is absolutely trivial. The idea is that once we have a path forward for solving a simple mach command like this, the doors open to start converting more complicated ones in the future.

There are essentially two approaches here:

  1. Leave the mach driver and bootstrap code as is such that we invoke Python 2, then detect whether or not a command requires Python 3 and invoke a Python 3 interpreter in a subprocess prior to command dispatch.

  2. Extract a handful of command metadata into a config file that we read in the mach driver (using bash). This metadata would include name, description, path and python version. We could then see up-front whether our requested command needs Python 2 or Python 3 and invoke the proper interpreter directly.

I like option 2 better because it avoids spawning two interpreters. It also gives us a mechanism to discover mach commands without needing to import the world, which should speed up every mach invocation by dozens of milliseconds.

Type: defect → task
Blocks: py3
Keywords: in-triage
Priority: -- → P3

Depends on D36843

Comment on attachment 9075956 [details]
Bug 1555762 - Convert config.status back to unicode in Python 3

Revision D36912 was moved to bug 1473498. Setting attachment 9075956 [details] to obsolete.

Attachment #9075956 - Attachment is obsolete: true
Attachment #9075835 - Attachment description: Bug 1555762 - Convert |mach google| to run with Python 3 → Bug 1555762 - Get SearchProvider commands to run with Python 3
Attachment #9075835 - Attachment description: Bug 1555762 - Get SearchProvider commands to run with Python 3 → Bug 1555762 - [mach] Get SearchProvider commands to run with Python 3
Pushed by
[mach] Get SearchProvider commands to run with Python 3 r=Callek
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
You need to log in before you can comment on or make changes to this bug.