Closed
Bug 1491408
Opened 6 years ago
Closed 6 years ago
testing/geckodriver/build.rs is very slow if your hg config defaults to |--follow|
Categories
(Testing :: geckodriver, defect, P1)
Tracking
(firefox64 fixed)
RESOLVED
FIXED
mozilla64
Tracking | Status | |
---|---|---|
firefox64 | --- | fixed |
People
(Reporter: Alex_Gaynor, Assigned: ato)
References
Details
Attachments
(1 file)
1.26 KB,
patch
|
whimboo
:
review+
|
Details | Diff | Splinter Review |
In my system-wide hg config I make |hg log| default to |--follow|. This causes: https://searchfox.org/mozilla-central/source/testing/geckodriver/build.rs#35 to be incredibly slow, since it prints the node for _every single commit_. A solution would be to pass |--no-follow| in the invocation of |hg log|.
Comment 1•6 years ago
|
||
build.rs should set HGPLAIN=1 in the environment to avoid this.
Assignee | ||
Updated•6 years ago
|
Assignee: nobody → ato
Status: NEW → ASSIGNED
Priority: -- → P1
Assignee | ||
Comment 2•6 years ago
|
||
Looking at this I discovered another bug with build.rs. For Mercurial we use "hg log -r." in the CWD which selects the last commit in the current working directory, but for git we just do "git log -1" which picks the latest commit to the repository, whatever that may be.
Assignee | ||
Comment 3•6 years ago
|
||
Disregard what I just said about "hg log -r.": it apparently selects the parent/tip commit of the entire repository.
Assignee | ||
Comment 4•6 years ago
|
||
This sets HGPLAIN and GIT_CONFIG_NOSYSTEM to bypass local user version control system configuration when the build script is invoked. If not set, the version control system's output could be influenced by configuration settings. It was for example discovered that if you have "hg log" default to --follow, this slows down the Gecko build significantly since it prints the node for every single commit. According to hg(1) it is highly recommended for programs invoking hg to set this.
Attachment #9009588 -
Flags: review?(hskupin)
Comment 5•6 years ago
|
||
Comment on attachment 9009588 [details] [diff] [review] bypass local vcs config when invoking build script Review of attachment 9009588 [details] [diff] [review]: ----------------------------------------------------------------- ::: testing/geckodriver/build.rs @@ +53,5 @@ > S: AsRef<OsStr>, > I: IntoIterator<Item = S>, > { > let mut cmd = Command::new(program); > + cmd.env("HGPLAIN", "1"); Note that this doesn't actually disable any configuration for Mercurial but only those which change the default output.
Attachment #9009588 -
Flags: review?(hskupin) → review+
Reporter | ||
Comment 6•6 years ago
|
||
Thanks for jumping on this!
Pushed by archaeopteryx@coole-files.de: https://hg.mozilla.org/mozilla-central/rev/b7f409bd51c8 bypass local vcs config when invoking build script. r=whimboo a=Aryx
Comment 8•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/b7f409bd51c8
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
status-firefox64:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
You need to log in
before you can comment on or make changes to this bug.
Description
•