Stop installing web-platform tests and support files to the objdir

VERIFIED FIXED in Firefox 46

Status

VERIFIED FIXED
3 years ago
7 months ago

People

(Reporter: chmanchester, Assigned: gps)

Tracking

(Blocks: 2 bugs)

unspecified
mozilla46
Dependency tree / graph

Firefox Tracking Flags

(firefox46 fixed)

Details

Attachments

(1 attachment)

(Reporter)

Description

3 years ago
This should be straightforward given the structure of web-platform tests, and given the volume of web-platform tests it should be a significant improvement.
(Assignee)

Comment 1

3 years ago
I'm going to see if I can get anywhere meaningful in the next hour or two...
Assignee: nobody → gps
Status: NEW → ASSIGNED
(Assignee)

Comment 2

3 years ago
Created attachment 8708642 [details]
MozReview Request: Bug 1239880 - Don't copy thousands of web-platform test files to objdir; r?chmanchester

AFAICT, we don't actually access web-platform test files from the
objdir for anything except test packaging. And we already have
a mechanism for creating test archives from files directly in the
source directory. So, let's stop copying them to the objdir and
package them directly from the source directory!

The _tests install manifest reports the following change:

before: 41,977 files installed
after:  24,537 files installed
delta: -17,440 files

We still copy some WPT files to the objdir. We might be able to
eliminate these as well. However, since there are only ~200 files,
I'm not too concerned.

I manually compared the resulting web-platform zip archives from before
and after. No files were removed from the archive. However, the new
archive does gain several hundred empty directories with .gitkeep
files. This feels weird, but it shouldn't break anything (I would
think). I'm inclined to leave them for now. I'll file a follow-up
bug to deal with them (preferably by removing them from version
control).

Review commit: https://reviewboard.mozilla.org/r/31139/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/31139/
Attachment #8708642 - Flags: review?(cmanchester)
(Assignee)

Comment 3

3 years ago
https://reviewboard.mozilla.org/r/31139/#review27947

Significant tests install manifest processing time difference on Windows. This is on a i7-6700K with a fast SSD: hardware is not lacking.

Before: ~40s full install manifest
After:  ~27

Before: ~5.4s no-op install manifest
After:  ~2.7s
The .gitkeep files are intentional; they're there to mark directories that should contain tests (because they correspond to sections of the specification that have testable assertions), but don't have any yet.
(Reporter)

Updated

3 years ago
Attachment #8708642 - Flags: review?(cmanchester) → review+
(Reporter)

Comment 5

3 years ago
Comment on attachment 8708642 [details]
MozReview Request: Bug 1239880 - Don't copy thousands of web-platform test files to objdir; r?chmanchester

https://reviewboard.mozilla.org/r/31139/#review27953

Nice.
(Assignee)

Updated

3 years ago
Blocks: 1240322

Comment 7

3 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/b31310af2606
Status: ASSIGNED → RESOLVED
Last Resolved: 3 years ago
status-firefox46: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla46
I believe this change has cut my local test running time by more than 50%.

When I filed bug 1234336 I was seeing consistent test runs around 1m8s. Building off of 819fff092e3d I now run the same command and consistently see test runs around 32s

Thanks!
Status: RESOLVED → VERIFIED

Updated

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