#26450 closed enhancement (fixed)

Build components for which dependencies are already available

Reported by: gk Owned by: tbb-team
Priority: Medium Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-rbm, TorBrowserTeam201806R
Cc: boklm, arthuredelstein Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

We are downloading the SHA5125UMS file right in the beginning of the Tor Browser build but actually need that file only at the end for verifying the lang packs. Arthur had the idea to download it at the end as well. The rationale is that we can save time building because the lang packs is the last thing that shows up on Mozilla's servers while the build tag is way earlier available that would allow us to deliver an update faster and/or have more time for QA.

The general idea Arthur had is building intelligently only those components that can already be built and once there are none left but not everything got build we should fail.

Not sure whether that is worth the effort, though, given that it in practice should only affect the Mozilla lang pack situation we landed in right now (and previously a bunch of times)

Child Tickets

Change History (3)

comment:1 Changed 15 months ago by arthuredelstein

One option might be to create a project that does everything but the lang-packs. (call it say, tor-browser-en-US). Then tor-browser would depend on that project. No change to rbm needed in that case.

comment:2 Changed 15 months ago by boklm

Keywords: TorBrowserTeam201806R added
Status: newneeds_review

So the goal would be to be able build almost everything while the langpacks are not yet available, and then be able to do the final builds quickly once the langpacks are available?

I think we could remove the dependency on firefox-langpacks during testbuilds, where we don't build any locale. This should allow us to run make testbuild (after editing rbm.local.conf to select alpha or release in torbrowser-testbuild. Or maybe we could think about adding testbuild-alpha, testbuild-release, testbuild-nightly targets if that's easier) to start the initial building while the langpacks are not yet available.

In branch bug_26450 I made a patch that should disable the dependency on firefox-langpacks when the list of locales is empty (which should be the case in testbuild):
https://gitweb.torproject.org/user/boklm/tor-browser-build.git/commit/?h=bug_26450&id=88ff6003f2d8b45aca111e2f7cfcce3837fe5414

comment:3 in reply to:  2 Changed 15 months ago by gk

Resolution: fixed
Status: needs_reviewclosed

Replying to boklm:

So the goal would be to be able build almost everything while the langpacks are not yet available, and then be able to do the final builds quickly once the langpacks are available?

Yes.

I think we could remove the dependency on firefox-langpacks during testbuilds, where we don't build any locale. This should allow us to run make testbuild (after editing rbm.local.conf to select alpha or release in torbrowser-testbuild. Or maybe we could think about adding testbuild-alpha, testbuild-release, testbuild-nightly targets if that's easier) to start the initial building while the langpacks are not yet available.

In branch bug_26450 I made a patch that should disable the dependency on firefox-langpacks when the list of locales is empty (which should be the case in testbuild):
https://gitweb.torproject.org/user/boklm/tor-browser-build.git/commit/?h=bug_26450&id=88ff6003f2d8b45aca111e2f7cfcce3837fe5414

Let's try that one. Merged to master (commit 71207ea2468a8535e73dc8e8aa09aecfedbbed34).

Note: See TracTickets for help on using tickets.