On 8/27/2014 7:39 AM, Benjamin Smedberg wrote:
> On 8/27/14, 10:22 AM, Gregory Szorc wrote:
>>
>> There is additional cognitive load required to map a logical feature
>> into a set of directories. I would prefer this burden go away, as it
>> only breeds confusion and a higher barrier to contributing (new
>> contributors don't know these shortcuts so they sit through painfully
>> long full builds).
> 
> I don't understand. I didn't pick these directories because there was
> any concept of a logical feature: I picked those because those were the
> files that I edited. That seems like the least-posssible cognitive load
> in general.

The least-possible cognitive load is |mach build|. If that were near
instantaneous, we wouldn't be having this discussion.

>> Also, for the JS-centric use case you mentioned, if we invested in those
>> parts of the build system, we could probably get full tree builds with
>> no binary changes to under 10s. e.g. |mach build nonbinaries|.
> 
> Sure. But since we don't have that yet, let's make sure that thing we
> did have keeps working? Is returning to the prior behavior by making
> `mach build dir` recursive a complex fix?

The context that may be missing here is that the build system no longer
does directory traversal like it once did. At moz.build evaluation time,
we essentially build a DAG of all the binaries and construct directory
traversal rules from that: actual directory structure conceptually has
very little to do with things. In reality, the order on the filesystem
matches the derived dependencies because that's how things always
worked. But this won't always hold! Viewing the build as an iteration of
directories in their filesystem layout is antiquated and this practice
needs to further go away to make the build faster.

Again, I want to provide something. But making it purely derived on
directory layout is artificially constricting to making the build
faster. It ties us to the old world and prevents us from moving forward.
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to