Commit Graph

215 Commits

Author SHA1 Message Date
Daniel Varga
7460807a56 Backed out changeset f9cf33c52739 (bug 1498715) on request by nalexander for local developer failures. a=backout 2018-10-17 22:02:34 +03:00
Nick Alexander
a1d5fbf47a Bug 1498715 - Use faster XZ compression preset for Android assets/ libraries for local developers. r=esawin
Before:

xz-compressing dist/fennec/assets/x86/libxul.so with "xz -zkf dist/fennec/assets/x86/libxul.so --threads=1 --x86 --lzma2=dict=8MiB,lc=3,lp=0,pb=2,mode=normal,nice=64,mf=bt4,depth=0"...
xz-compressing dist/fennec/assets/x86/libxul.so with "xz -zkf dist/fennec/assets/x86/libxul.so --threads=1 --x86 --lzma2=dict=8MiB,lc=3,lp=0,pb=2,mode=normal,nice=64,mf=bt4,depth=0"... DONE (69.13s)

$ ls -al dist/fennec/assets/x86/libxul.so
-rwxr-xr-x  1 nalexander  staff  31286204 12 Oct 14:06 dist/fennec/assets/x86/libxul.so

After:

xz-compressing dist/fennec/assets/x86/libxul.so with "xz -zkf dist/fennec/assets/x86/libxul.so --threads=1 --x86 --lzma2=dict=8MiB,lc=3,lp=0,pb=2,mode=fast,nice=273,mf=hc4,depth=24"...
xz-compressing dist/fennec/assets/x86/libxul.so with "xz -zkf dist/fennec/assets/x86/libxul.so --threads=1 --x86 --lzma2=dict=8MiB,lc=3,lp=0,pb=2,mode=fast,nice=273,mf=hc4,depth=24"... DONE (19.52s)

$ ls -al dist/fennec/assets/x86/libxul.so
-rwxr-xr-x  1 nalexander  staff  34877984 12 Oct 14:00 dist/fennec/assets/x86/libxul.so

All timings on a late 2013 MacBook Pro (i.e., a very slow device).

Differential Revision: https://phabricator.services.mozilla.com/D8614

--HG--
extra : moz-landing-system : lando
2018-10-15 13:07:23 +00:00
Nick Alexander
5d4e0021b0 Bug 1418464 - Part 1: XZ compress in the packager rather than package_fennec_apk.py. r=mshal
By doing this in the packager, it makes it easier to incorporate the
strip and XZ compress logic into the local Gradle build process.

To that end, this patch makes XZ compression a little more explicit in
package-manifest.in and lifts the logic next to the existing logic for
stripping.  Since we only want to XZ compress assets/ (and not libs/),
we need a new flag.

Differential Revision: https://phabricator.services.mozilla.com/D7314

--HG--
extra : moz-landing-system : lando
2018-10-09 18:35:22 +00:00
Ciure Andrei
148577fc45 Backed out 2 changesets (bug 1418464) for test_packager.py build bustages CLOSED TREE
Backed out changeset d6794cb231e1 (bug 1418464)
Backed out changeset cc793c2d8cee (bug 1418464)
2018-10-05 22:11:05 +03:00
Nick Alexander
2f10ff4106 Bug 1418464 - Part 1: XZ compress in the packager rather than package_fennec_apk.py. r=mshal
By doing this in the packager, it makes it easier to incorporate the
strip and XZ compress logic into the local Gradle build process.

To that end, this patch makes XZ compression a little more explicit in
package-manifest.in and lifts the logic next to the existing logic for
stripping.  Since we only want to XZ compress assets/ (and not libs/),
we need a new flag.

Differential Revision: https://phabricator.services.mozilla.com/D7314

--HG--
extra : moz-landing-system : lando
2018-10-05 18:29:12 +00:00
Mike Hommey
7fa84b1acd Bug 1489340 - Handle XPT files as blobs of data in packager. r=froydnj
We don't actually ship XPT files anymore, but it's still useful for the
packager code to handle old Firefox versions. But for that, we don't
really need the complexity of "linking" XPT files in a single unit per
directory. We can just as well keep the XPT files intact, as long as we
retain individual `interfaces` manifest entries for each.

And since those entries used to be all merged into one, we now instead
group them all together in manifests (which also happens to make it
easier on unit test changes).

Differential Revision: https://phabricator.services.mozilla.com/D5221

--HG--
extra : moz-landing-system : lando
2018-09-07 22:21:07 +00:00
Kris Maglione
30986431c7 Bug 1472491: Part 5a - Add BrowserTabChild actor. r=felipe
MozReview-Commit-ID: 38Y1xwkgxCx

--HG--
extra : rebase_source : 61a85af58f9f16b8e39b716e3df2d09b788fcb1a
2018-07-29 19:42:46 -07:00
Andrew Swan
09e5e4ef55 Bug 1479599 Recognize webextensions in packager r=glandium
MozReview-Commit-ID: KethvfCTf6G

--HG--
extra : rebase_source : 48a513cf4a195fe68d729234ac487682a71ff22a
extra : source : 443493f2db03743656866d49912d26c75ae18434
2018-07-31 21:51:02 -07:00
Andrew Halberstadt
9435736ade Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt
This will make sure that when running |mach python-test --python 3| locally,
we only run the tests that also run in CI with python 3 (and therefore pass
presumably).

MozReview-Commit-ID: 3OBr9yLSlSq

--HG--
extra : rebase_source : 456340d0ecdddf1078f2b5b4ebb1eddf3813b26a
2018-06-27 11:10:02 -04:00
assiya
10dd6c9781 Bug 1468328 - Make other codecoverage import statements Python3 compatible. r=marco
MozReview-Commit-ID: J3uaRsbE1sf

--HG--
extra : rebase_source : bbf3cad256ab9c46ab0dfd9e6923a1d0338feb52
2018-06-16 00:06:25 -07:00
Noemi Erli
629749b257 Backed out changeset 44827df784b2 (bug 1468328) for bustages on builds/worker/workspace/build/src/python/mozbuild/mozpack/chrome/manifest.py on a CLOSED TREE 2018-06-15 23:55:02 +03:00
assiya
51f05e6e16 Bug 1468328 - Make other codecoverage import statements Python3 compatible. r=marco
MozReview-Commit-ID: 9UmVk6onIQw

--HG--
extra : rebase_source : ff9932f0c3e8a36fa2a3cda612bb2010a1a19221
2018-06-15 10:30:54 -07:00
Kris Maglione
9b633c92ac Bug 1457321: Part 4 - Update built-in add-ons manifst during l10n repack. r=ted f=pike
This is slightly ugly, but is unfortunately necessary due to do the nature of
l10n repacks. Hopefully this can go away once we move to bundling lancpack
add-ons rather than repacking in the future.

MozReview-Commit-ID: JZUblVsEbZI

--HG--
extra : rebase_source : 60c9ced2184a52f52c7f2a8820021b14b1a66abf
2018-05-08 01:04:01 -07:00
Kris Maglione
e2fecdd542 Bug 1457321: Part 2 - Add dictionaries to omnijar. r=ted
MozReview-Commit-ID: 4zqD8Di7Imb

--HG--
extra : rebase_source : 2fdf8d1429ed1de6c86fc9dc880af2aadcc2b84b
2018-04-27 15:43:38 -07:00
Nick Alexander
00bbcb11bb Bug 1429815 - Fix InstallManifest::add_entries_from with non-trivial base. r=gps
There's a bug in InstallManifest::add_entries_from: some of the
manifest entries bake their destination into both the manifest key and
the manifest value, and add_entries_from with a non-empty "base"
parameter to prepend to the destination only updates the manifest key
and not the value.

This bug causes |mach watch| to fail to _read_ the unified manifest
that aggregates all of the build manifests relevant to |mach watch|
that |mach build-backend -b FasterMake| successfully _wrote_, because
the manifest keys are validated against the manifest values written to
disk.

I see no way to address this other than to manually reach into the
manifest values and patch the internal destination parameter, which
this patch does.

MozReview-Commit-ID: FVyRB41NnHa

--HG--
extra : rebase_source : 23eb18ddc0452955539ce2e7a6d7bbfd083c940c
2018-01-18 16:58:07 -08:00
Tim Nguyen
e1b673bf04 Bug 1428938 - Remove legacy toolbar customization code. r=Gijs
MozReview-Commit-ID: 1ppfxI7yYJW

--HG--
extra : rebase_source : b4a2c44dd5e244c81e479e6b43e9669cc031f349
2018-01-11 16:35:17 +00:00
Tom Prince
f8e4948e67 Bug 1426528: Pass paths to extra dmg files explicitly when packing; r=glandium
MozReview-Commit-ID: FKwZcNycUW8

--HG--
extra : rebase_source : 3972c8719c58e03483a7d2bded1705df0a82dfda
2017-12-21 13:38:35 -07:00
Tom Prince
739a0defb2 Bug 1427213: Clean up docstrings in mozpack.path; r=glandium
MozReview-Commit-ID: 91cm9XJROy0

--HG--
extra : rebase_source : 1ab1ce1063096651f9095fd221656c852b6892d8
2017-12-27 15:57:32 -07:00
Masatoshi Kimura
0427005429 Bug 1416465 - Expand pattern when track file is created rather than read. r=mshal
MozReview-Commit-ID: WISu4wThdw

--HG--
extra : rebase_source : 480c508f8437a7a31f9a12c8548f1b4be6cbbdeb
2017-12-02 16:51:19 +09:00
Sebastian Hengst
9bab9dc5a9 Backed out changeset 6f0e650b0e53 (bug 1416465) on request from nalexander for many busted build environments. r=backout a=backout 2017-11-16 18:41:24 +02:00
Masatoshi Kimura
bc80676578 Bug 1416465 - Fix PATTERN_LINK and PATTERN_COPY entries of install manifests. r=mshal
MozReview-Commit-ID: DNVk40ISour

--HG--
extra : rebase_source : 4a9f45674152196ffd743dab2ddf615dec09a743
2017-11-12 00:06:22 +09:00
Zibi Braniecki
634e419761 Bug 1415432 - .ftl files repackaged multiple times. r=glandium 2017-11-07 22:16:16 -08:00
Marco Castelluccio
6e2598919b Bug 1317041 - Calculate crc32 incrementally; r=gps
--HG--
extra : rebase_source : 9b9e26ccda2edf2e2ada98f0156b69a737c8879e
extra : amend_source : 05908f721af861cb2b954414c8a457b4d36c9f2e
2017-11-07 15:34:20 -08:00
Zibi Braniecki
c15f333a09 Bug 1413985 - Package .ftl files on repackage for both, source and AB_CD locales. r=glandium
When repackaging, we want to take all localization resources from the source package,
and add all localization resources from the repackage target locale.

This patch makes packager.l10n scan for `localization` directories in l10n_finder and
add them.

MozReview-Commit-ID: CRLP3bOAyDx

--HG--
extra : rebase_source : 3b1bc098aaed2481a1cc06fc86d0865e654a1b6e
2017-11-02 12:10:26 -07:00
Gregory Szorc
b2e9cd1780 Bug 1393242 - Normalize paths in MercurialRevisionFinder; r=mshal
This ensures we use forward slashes, even if Mercurial emits
backslashes (which it can do on Windows).

MozReview-Commit-ID: 2dnWAEvytwn

--HG--
extra : rebase_source : 9ebb454bc9ad11b3eba334e412685e529573a0a1
2017-08-31 10:39:28 -07:00
Gregory Szorc
8a82cba53d Bug 1393242 - Make hglib tests more resilient; r=mshal
These tests weren't running in automation because hglib wasn't
available. An upcoming commit will vendor hglib. This exposed that the
tests can fail if ui.username isn't set.

In this commit, we introduce a helper function to obtain an hglib
client with ui.username set. We also convert tests to use the context
manager form of the client so resources are cleaned up immediately
without relying on refcounting or garbage collection.

MozReview-Commit-ID: HRSBDlYgqpC

--HG--
extra : rebase_source : 83deb56a0c2efefa883d6df104cd67194a811907
2017-08-30 10:42:35 -07:00
Mike Shal
f1348beac8 Bug 1394576 - Fix install manifests tracking with broken symlinks; r=gps
The install manifest with the .track files uses os.path.exists() to
determine if a previously tracked file is no longer installed and needs
to be removed from the system. However, exists() returns False for
broken symlinks, so as far as the manifest is concerned, there is no
file in the filesystem that needs to be removed. We should use lexists()
so we know that the broken symlink still exists in the system so
that it can be removed when the install manifest is processed.

MozReview-Commit-ID: 6v7CYOKzjGs

--HG--
extra : rebase_source : 8aeeef59e644613f34c8458bd30a83d8299585ea
2017-08-28 22:12:04 -04:00
Dustin J. Mitchell
53df6a181b Bug 1390968: python-3 compatibility for python/**/*.py; r=Alex_Gaynor,gps
This passes `python3 -mcompileall`.  Changes:

 * use `0o` prefix for octal literals
 * print as a function
 * except .. as
 * use six.reraise to replace a multi-argument raise statement
 * use six.string_types and six.moves.configparser
 * remove uses of `L` suffix for long integers

MozReview-Commit-ID: KLaYRNHGpay

--HG--
extra : rebase_source : 6ca1b5447cd28eff8d9f2805add6a0f07e8b4c63
2017-08-28 21:31:30 +00:00
Mike Hommey
45680ab0c7 Bug 1352595 - Add basic support for brotli compression to the packager. r=gps
Bug 1355661 added support for brotli streams in "jar" files handled by
Gecko, and bug 1355671 made us build the `bro` command line utility that
allows to compress and decompress brotli streams.

This change uses the `bro` command line utility in the packager so that
it can create and handle "jar" files using brotli streams.

However, the `bro` command line utility is not available to l10n
repacks. As, at the moment, we're only hoping that the outcome of using
brotli will be good, we avoid doing all the work to make those work and
just hook things enough to enable brotli, while ensuring l10n repacks
don't break. This involves forcing some files to be deflated, and to
disable some optimizations from the packager.

Things will need to be figured out more properly if the experiment
proves brotli to be worthwhile.

--HG--
extra : rebase_source : a2e0cff67dcaed465fd441ed5d2a7de94b6351c5
2017-08-18 05:37:18 +09:00
Chung-Sheng Fu
e5b80e9a8f Bug 863246 - Move resources that need to be exposed to web content to locations that are marked as contentaccessible r=billm
MozReview-Commit-ID: ArhSHKPYOr8

--HG--
extra : rebase_source : 888f7ce8f9db809ad5abbe6340af74e9dfb1d73b
2017-06-08 17:52:46 +08:00
Zibi Braniecki
6a8bee55cc Bug 1377911 - Do not strip localized override entries when repackaging. r=glandium,Pike
MozReview-Commit-ID: vKPJcxzh4T

--HG--
extra : rebase_source : 8c062673bdb20f2886aee40d08d184917d025086
2017-08-24 18:08:26 -07:00
Sebastian Hengst
2e163c99b1 Backed out changeset 1bfbae351dd7 (bug 863246) 2017-08-25 16:43:44 +02:00
Chung-Sheng Fu
bb279d6d5e Bug 863246 - Move resources that need to be exposed to web content to locations that are marked as contentaccessible r=billm
MozReview-Commit-ID: ArhSHKPYOr8

--HG--
extra : rebase_source : b0cf8d159ba6bfa6e7bcd9528ae2f9851185ac30
2017-06-08 17:52:46 +08:00
Zibi Braniecki
0c7d3529d7 Bug 1333980 - Introduce L10nRegistry.jsm. r=mossop
This patch introduces a new registry for localization resources to replace
ChromeRegistry. It uses asynchronous I/O and iterators to generate
permutations of possible sources of language resources for use in the new
Localization API.

In the initial form the API handles packages resources and has API for
interacting with the AddonsManager which will report language packs.

MozReview-Commit-ID: LfERDYMROh

--HG--
extra : rebase_source : 68a664c2c59a82b4dfcae66542c315a00ddae565
2017-06-02 10:36:08 +02:00
Wes Kocher
a27358fe6a Backed out changeset 3cb5dfb73fa3 (bug 1333980) for browser_all_files_referenced.js failures a=backout
MozReview-Commit-ID: 8dZ1lcv6p9V
2017-08-08 13:52:23 -07:00
Zibi Braniecki
c41553945d Bug 1333980 - Introduce L10nRegistry.jsm. r=mossop
This patch introduces a new registry for localization resources to replace
ChromeRegistry. It uses asynchronous I/O and iterators to generate
permutations of possible sources of language resources for use in the new
Localization API.

In the initial form the API handles packages resources and has API for
interacting with the AddonsManager which will report language packs.

MozReview-Commit-ID: LfERDYMROh

--HG--
extra : rebase_source : a6e5b790142e5afb1ce750478190e5ad87012f8d
2017-06-02 10:36:08 +02:00
Nick Alexander
82017ffc19 Bug 1384241 - Add |mach watch|: pywatchman based incremental |mach build faster| shell. r=gps
There's a natural follow-on that I haven't time to explore right now:
I want the faster make backend to also write a "unified chrome
manifest" that maps outputs
(browser/chrome/browser/content/browser/ext-utils.js) to chrome:// or
resource:// URLs (chrome://content/browser/ext-utils.js or similar).

MozReview-Commit-ID: LDQmm8KD57I

--HG--
extra : rebase_source : 13dbeac2fbfa78741be3718fd5305a8ae0d698a8
extra : source : 2af5df7741147769a51da78770c308b370a0cded
2017-07-26 20:34:09 -07:00
Swapnesh Kumar Sahoo
363572e058 Bug 1347582 - Use File object to obtain normalized file mode; r=dustin,gps
MozReview-Commit-ID: HeDq4EwAfVS

--HG--
extra : rebase_source : 5336af2c0868bf2d74e890612e349a55ca846b0b
2017-07-26 11:51:37 +05:30
Nick Alexander
8f1ac5b651 Bug 1384400 - Add input to output mappings to mozpack.FileRegistry. r=gps
This is necessary because the existing manifests don't expose full
dependency information.  I needed to avoid the existing dependency
files because those code paths need to know the output destination of
the manifest in order to parse the Make dependency files; trying to
adapt this system is more complicated than just preprocessing each
file to extract dependency information directly.

MozReview-Commit-ID: 5m0SEqmhJMM

--HG--
extra : rebase_source : 1ff6a1a51bc76efa78eb564cd8e572777dace0f6
2017-07-25 12:28:31 -07:00
Alex Gaynor
837b88dc9c Bug 1384224 - Add support for hardlinks to InstallManifest; r=gps
Also removes InstallManifestNoSymlinks which can be more simply expressed by
passing link_policy='copy' to InstallManifest.populate_registry.

MozReview-Commit-ID: Bkjc2hIub4A

--HG--
extra : rebase_source : df05080fef3baf7e6c60ff9a468e71f0b2c67462
2017-07-25 14:06:15 -04:00
Philip Chimento
fb83555684 Bug 1379537 - Fix InstallManifestNoSymlinks to not install symlinks. r=glandium 2017-07-21 20:13:34 -07:00
Alex Gaynor
18571165c2 Bug 1382739 - Added support for hardlinks to mozbuild; r=gps
MozReview-Commit-ID: 7DcOAVNsr3c

--HG--
extra : rebase_source : 633a1c1af5ae92c16ab17bcf22f2403001003069
2017-07-20 14:04:05 -04:00
Mike Hommey
74f132e11e Bug 1365419 - Fixup l10n packager after bug 780562. r=gps
The change to l10n packager from bug 780562 worked in practice because
no chrome category had exclusively manifest entries with flags, which
we're changing in this bug.

It turns out this was only due to a missing change in the patch for bug
780562.

--HG--
extra : rebase_source : 9f782e115f97063c97f165ed95eb4beeb72f86d0
2017-05-26 11:24:40 +09:00
Wes Kocher
135f065d54 Merge m-c to autoland, a=merge
MozReview-Commit-ID: GZPNfYTsjn1
2017-06-01 18:43:48 -07:00
Wes Kocher
9782406dd8 Backed out 4 changesets (bug 1365419) for android mochitest failures in test_bug583533.html a=backout
Backed out changeset d82aa6aec2c1 (bug 1365419)
Backed out changeset 9aafdd1ca0bd (bug 1365419)
Backed out changeset 261eecf8497f (bug 1365419)
Backed out changeset 1d9b50fadc05 (bug 1365419)

MozReview-Commit-ID: HkhXf1Dkkbk
2017-06-01 18:39:21 -07:00
Mike Hommey
a95e3eb0b4 Bug 1365419 - Fixup l10n packager after bug 780562. r=gps
The change to l10n packager from bug 780562 worked in practice because
no chrome category had exclusively manifest entries with flags, which
we're changing in this bug.

It turns out this was only due to a missing change in the patch for bug
780562.

--HG--
extra : rebase_source : 3c8c31c37d8fb48bb99b1758bcd8ef5f32c71fe0
2017-05-26 11:24:40 +09:00
Gregory Szorc
df5138f5a5 Bug 1359965 - Support mozpack.file.BaseFile in create_tar_from_files; r=glandium
This allows us to write files coming from a finder or other source
that isn't directly the filesystem.

MozReview-Commit-ID: KhPSD0JYzsQ

--HG--
extra : rebase_source : fea376f642e20e8c7723506fd4a73e3f8ac5d0e5
extra : intermediate-source : a872303fd08497bbde0e3b4cea09a88a4182810e
extra : source : ae8bce278626bc84914063f93292ac5e825eec36
2017-05-08 17:00:20 -07:00
Justin Wood
e0c208d7dc Backed out changeset a872303fd084, for Nightly bustage from Bug 1359965 c#29
MozReview-Commit-ID: K06A4HcRM6K
2017-05-25 09:02:54 -04:00
Gregory Szorc
5172222fa9 Bug 1359965 - Support mozpack.file.BaseFile in create_tar_from_files; r=glandium
This allows us to write files coming from a finder or other source
that isn't directly the filesystem.

MozReview-Commit-ID: KhPSD0JYzsQ

--HG--
extra : rebase_source : 24db84974b54a714ba82dfad7ff68fd1a5bf656a
extra : source : ae8bce278626bc84914063f93292ac5e825eec36
2017-05-08 17:00:20 -07:00
Ryan VanderMeulen
62671ef4d8 Merge autoland to m-c. a=merge 2017-05-23 18:01:59 -04:00