gecko-dev/python/mozbuild
Nathan Froyd 0d5d951951 Bug 1476973 - part 3 - rationalize the backend's IDLManager; r=gps
The IDLManager in the moz.build backend is a bit weird.  It maintains a
bunch of per-IDL file information, some of which isn't used, and
attempts to map module names to information about what entities the
module needs to be built.  The former is done with Python dicts, and the
latter with Python tuples, both resulting in some contortions by the
clients of IDLManager to specify exactly what they need.

Let's clean this up, by making IDLManager to more clearly do two jobs:

1. Keep track of whether IDL files are globally unique; and
2. Map module names to the information needed to build them.

In the case of #2, we store everything as a straight Python object, so
we can use actual property accesses everywhere.  We also provide a
stems() function on IDLManager to make some client code more
straightforward.

Doing this makes IDLManager much more XPIDL module-centric, and paves
the way for the same change to be made in the frontend as well.
2018-07-24 14:30:53 -04:00
..
dumbmake Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt 2018-06-27 11:10:02 -04:00
mozbuild Bug 1476973 - part 3 - rationalize the backend's IDLManager; r=gps 2018-07-24 14:30:53 -04:00
mozpack Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt 2018-06-27 11:10:02 -04:00
setup.py
TODO