Open Bug 1723040 Opened 3 years ago Updated 3 years ago

Move pre-initialization Mach code into a separate module

Categories

(Firefox Build System :: Mach Core, enhancement)

enhancement

Tracking

(Not tracked)

People

(Reporter: mhentges, Unassigned)

References

Details

There's three phases of code-import-ability in a Mach invocation:

  1. Pre-initialization: We need to parse the list of module locations from mach_virtualenv_packages.txt and manage the virtualenv without having access to the other modules yet. (note: there's code in here that may be used in #2 as well, it's not only for initialization).
  2. Post-initialization: Most Mach code runs here and has access to global dependencies and all needed first-party modules.
  3. Command: Command-specific dependencies are available

Right now, #1 and #2 are smudged together, and it's easy to accidentally break the initialization process by adding an import to code that only executes in #1.

Assignee: nobody → mhentges
Status: NEW → ASSIGNED
Summary: Move pre-initialization Mach code into separate module → Move pre-initialization Mach code into a separate module
Assignee: mhentges → nobody
Status: ASSIGNED → NEW
You need to log in before you can comment on or make changes to this bug.