We have four instances of NSRequiresAquaSystemAppearance <true/> in the tree; this fixes two out of four:
- The parent process is now protected by the widget.macos.require-system-appearance pref.
- The updater never shows any UI, and if it does, it's probably using native controls which correctly adapt to Dark Mode.
- We cannot yet flip the switch for content processes (ipc/app/macbuild/Contents/Info.plist.in) as long as we still allow using the native theme in content processes, due to bug 1688113.
- And the crash reporter is tracked in bug 1697991.
Depends on D107749
Differential Revision: https://phabricator.services.mozilla.com/D108150
Since python creates little-endian utf-16 consistently whether
cross-compiling from Linux or compiling natively on macOS, we could
write a small script that essentially replaces iconv. On the other hand,
we're also doing some manual preprocessing on the InfoPlist.strings.in
files, and we might as well use the preprocessor for that.
So, we augment the preprocessor to allow an explicit output encoding
other than utf-8, and use the preprocessor instead of `sed | iconv`.
Differential Revision: https://phabricator.services.mozilla.com/D96013
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
This happened because the `browser/app/macbuild/Contents/MacOS-files.in` file had the string `firefox-bin` hardcoded, which introduces packaging failures down the line. The naive solution didn't work however because we don't preprocess this file. (This is apparently an error. We SHOULD have been doing this from day one, since this file contains preprocessor directives that are ignored by `rsync` since `#` is its "comment" character.) So preprocess the file and update the `Makefile` accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D86563
The minidump-analyzer tool was originally conceived to be used from the crash
report client and as such was installed in the crash reporter client
application bundle on macOS. It was later adapted to work from Firefox itself
but this caused linking problems when invoked from the Firefox app bundle.
This patch moves the minidump-analyzer into the Firefox app bundle and adapts
the relevant code to find it there.
The minidump-analyzer was also not signed like the rest of our executables and
this patch addresses that issue too.
Differential Revision: https://phabricator.services.mozilla.com/D52910
--HG--
extra : moz-landing-system : lando
Instead of using symlinks, copy .dylib files to the ${OBJDIR}/dist/Nightly{Debug}.app/Contents/MacOS dir for local builds.
Differential Revision: https://phabricator.services.mozilla.com/D41926
--HG--
extra : moz-landing-system : lando
We're not actually using it, and it messes up with the zone allocator in
mozjemalloc after fork(). See the lengthy analysis in
https://bugzilla.mozilla.org/show_bug.cgi?id=1424709#c34 and following.
--HG--
extra : rebase_source : c58e13b897dde7b32d83c43fbb2a04a0db3a5dc9
The geckodriver binary is not being moved to correct directory which is required
to be able to run web platform tests successfully.
MozReview-Commit-ID: HTxnACX2FLR
--HG--
extra : rebase_source : 816dc27bfad7d9e93ca1074f9ab05ba1c0bb578b
On Mac developer builds, add $topsrcdir and $topobjdir paths to the application
bundle Info.plist files for the main process and plugin-container, removing the
dependency on MOZ_DEVELOPER_REPO_DIR and MOZ_DEVELOPER_OBJ_DIR environment variables.
MozReview-Commit-ID: JfFFK9sEayn
--HG--
extra : rebase_source : ab2d8dd625783326b4108eb1e4ebaf49ef8fbedb
We need to add webrtc-gtest to MacOS-files.in in order for it to be built
in the place that mach expects to find it.
MozReview-Commit-ID: 74kWZeE65R1
--HG--
extra : rebase_source : 06b923f17d65dd491e071a1c1f37ae1c736f66db
It's widely documented on the web that Apple enforces quarantine attributes
'for us' using the list in
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Exceptions.plist
Unfortunately, this is based on the bundle ID. Which means it won't apply to custom
builds, to Nightly, and potentially to other cases. It would also be much nicer
if we could just make these determinations ourselves. Step 1: opt-in from Info.plist
Without this, for e.g. local Nightly builds, asking for quarantine attributes
simply gets you a nil dictionary and our code bails out.
MozReview-Commit-ID: 4aLyz2901BS
--HG--
extra : rebase_source : 7aab5177276c20007036abd19efb56741d790ec2