#51584: build: update squirrel.mac to 8d808803, drop upstreamed patches
Description
Bumps squirrel.mac from 0e5d146ba1 to 8d808803bc (latest main)
and removes 14 of our 15 patches — all of which have been upstreamed into
Squirrel/Squirrel.Mac.
Patches removed
| Electron patch | Upstreamed in |
|---|---|
feat_add_new_squirrel_mac_bundle_installation_method_behind_flag |
Squirrel/Squirrel.Mac#312 |
fix_abort_installation_attempt_at_the_final_mile_if_the_app_is |
Squirrel/Squirrel.Mac#312 |
fix_resolve_target_bundle_path_once_at_start_of_install |
Squirrel/Squirrel.Mac#312 |
feat_add_ability_to_prevent_version_downgrades |
Squirrel/Squirrel.Mac#312 |
refactor_use_posix_spawn_instead_of_nstask_so_we_can_disclaim_the |
Squirrel/Squirrel.Mac#312 |
fix_trigger_shipit_mach_service_after_smjobsubmit_to_unblock |
Squirrel/Squirrel.Mac#312 |
chore_turn_off_launchapplicationaturl_deprecation_errors_in_squirrel |
Squirrel/Squirrel.Mac#312 |
refactor_use_non-deprecated_nskeyedarchiver_apis |
Squirrel/Squirrel.Mac#312 |
fix_clean_up_orphaned_staged_updates_before_downloading_new_update |
Squirrel/Squirrel.Mac#312 |
fix_add_explicit_json_property_mappings_for_shipit_request_model |
Squirrel/Squirrel.Mac#312 |
fix_use_kseccschecknestedcode_kseccsstrictvalidate_in_the_sec |
Squirrel/Squirrel.Mac#302 |
fix_crash_when_process_to_extract_zip_cannot_be_launched |
Squirrel/Squirrel.Mac#308 |
fix_ensure_that_self_is_retained_until_the_racsignal_is_complete |
Squirrel/Squirrel.Mac#312 |
use_uttype_class_instead_of_deprecated_uttypeconformsto |
(not upstreamed — see below) |
The use_uttype_class_instead_of_deprecated_uttypeconformsto patch is
dropped without an upstream equivalent. It was added in the Chromium 139
bump (#47348) when mac_deployment_target moved to 12.0 and
squirrel_framework did not yet carry -Wno-deprecated-declarations.
That flag was added later in #38437, making the patch a no-op — verified
by building squirrel_framework against the new pin (which still uses
UTTypeConformsTo).
Patch kept
build_add_gn_config.patch — slimmed down. Squirrel/Squirrel.Mac#298
upstreamed the ReactiveCocoa → ReactiveObjC import renames the patch
was carrying, so it now only adds BUILD.gn, filenames.gni,
build/xcrun.gni, build/xcrun.py, and the .gitignore tweaks for the
DEPS-managed vendor/ checkouts. It no longer touches any .m/.h
source files.
Notable upstream changes pulled in by the bump
- Squirrel/Squirrel.Mac#314 — fix: invert
isVersionStandardsuperset
check so numeric versions pass (theElectronSquirrelPreventDowngrades
format gate was rejecting normal versions like1.2.3) - Squirrel/Squirrel.Mac#316 — fix: don't cache
shipItLaunchererrors
across update checks - Squirrel/Squirrel.Mac#317 — fix: forward
requestForDownloadin
-initWithUpdateRequest:requestForDownload: - Squirrel/Squirrel.Mac#318 — cleanup: dead code removal + assorted
low-risk correctness fixes - Squirrel/Squirrel.Mac#296, Squirrel/Squirrel.Mac#297, Squirrel/Squirrel.Mac#299, Squirrel/Squirrel.Mac#310, Squirrel/Squirrel.Mac#319, Squirrel/Squirrel.Mac#321 — test suite
is running again on GitHub Actions across the macOS / Xcode matrix
Checklist
-
script/lint.js --patchespasses -
gn gensucceeds -
squirrel_framework,squirrel_shipit,stripped_squirrel_framework
build cleanly
Notes: Updated the Squirrel.Mac autoUpdater backend on macOS to pick up upstream fixes, including correct version-string validation when downgrade prevention is enabled, fixes for stale launcher errors persisting across update checks, and forwarding of custom download request headers.
Backports
No Backports Requested
This pull request doesn't have any backports requested or created for older release branches.
What are backports?
Backports are copies of changes made to the main branch that are applied to older release branches. They ensure that bug fixes and important changes are available in maintained older versions of Electron.
Semver Impact
Semantic Versioning helps users understand the impact of updates:
- Major (X.y.z): Breaking changes that may require code modifications
- Minor (x.Y.z): New features that maintain backward compatibility
- Patch (x.y.Z): Bug fixes that don't change the API
- None: Changes that don't affect using facing parts of Electron