Prototype: Add a mechanism for processing JavaScript files with Babel.

Assigned to


a year ago
6 months ago


(Reporter: mossop, Assigned: mossop)



Firefox Tracking Flags

(firefox57 wontfix)


MozReview Requests

Submitter Diff Changes Open Issues Last Updated
Error loading review requests:


(1 attachment)



a year ago
I have no plans to land this currently, this bug is just here for code sharing purposes.
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
(Summarizing IRC conversion and speaking as build module owner)

We're hesitant to introduce Node as a *required* build dependency because this triggers all kinds of requirements for everyone who builds Firefox (including downstream packagers like Linux distros). It is a non-trivial amount of work to establish that requirement. (See recent pain around Rust - although that's likely worse than Node since it is newer.)

Leveraging Node in CI and for tasks that aren't required to build a Firefox distribution is acceptable. I think it is even encouraged if it is the right/best tool for the job! I could also be convinced that local builds should require Node by default and require an opt-out to disable if that will result in a better development experience. But establishing a *required* build dependency for all Firefox distributors requires some deliberate thought and cannot be done lightly.

I'm not sure what you are planning to do with Babel, but the code in this patch touches many parts of the build system and seems to be flirting with establishing a new build requirement.

I do want to support whatever you want to do though. With the trajectory of JS tooling, it is probably inevitable that we incur a required build dependency on Node. But a "burden of proof" to justify the overhead of supporting it will need to be made. I'm very sympathetic to "it makes developers' lives easier" arguments :)


11 months ago
status-firefox57: --- → wontfix


6 months ago
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.