Commit graph

27 commits

Author SHA1 Message Date
Dan Stillman
ce20a5f228 Ship legacy Safari App Extension alongside the web extension on Mac
Developer ID-signed Safari web extensions load only in Safari 18.4 and
later -- older Safari blocks them at the code-signing layer -- so macOS
11 and 12 users, whose Safari versions top out at 16.6 and 17.6, lost
the connector with the web extension conversion.

Embed the prebuilt legacy App Extension ($SAFARI_APP_EXTENSION, set by
the deploy scripts) at Contents/PlugIns/ZoteroSafariExtension.appex with
the historical bundle identifier, and move the web extension to
Contents/PlugIns/ZoteroSafariWebExtension.appex with a new
.SafariWebExtension identifier. The web extension's
SFSafariAppExtensionBundleIdentifiersToReplace key causes Safari
versions that can load it to hide the App Extension and migrate its
enabled state, while older Safari shows only the App Extension.

Also remove the removed-files entries for the App Extension's
resources, which would otherwise delete them on update.

https://forums.zotero.org/discussion/132925/
2026-07-28 07:24:27 -04:00
Dan Stillman
6fb30346e6 Bundle Safari web extension instead of Safari App Extension
Some checks are pending
CI / Test (shard 1) (push) Waiting to run
CI / Test (shard 2) (push) Waiting to run
CI / Test (shard 3) (push) Waiting to run
CI / Test (shard 4) (push) Waiting to run
CI / Utilities Tests (push) Waiting to run
CI / Build, Upload (push) Waiting to run
The connector is now a Safari web extension, so the bundled appex is a
static wrapper stub whose placeholder resources are replaced at build
time with a connector build via $SAFARI_EXT_RESOURCES. The stub only
needs to be rebuilt when the native wrapper project changes, not for
connector releases.
2026-07-22 15:11:23 -04:00
Dan Stillman
1c9bf88888 Unpack update archives for different architectures in parallel
Some checks are pending
CI / Test (shard 1) (push) Waiting to run
CI / Test (shard 2) (push) Waiting to run
CI / Test (shard 3) (push) Waiting to run
CI / Test (shard 4) (push) Waiting to run
CI / Utilities Tests (push) Waiting to run
CI / Build, Upload (push) Waiting to run
2026-07-08 12:10:46 -04:00
Dan Stillman
39a1c56f6c Cache update diffs and compressed files across builds
Cache patches and compressed files by content hash so that they're reused
across FROM versions and releases. Cache entries are touched when used and
expire after 60 days.

The cache key includes a tag covering the xz/mbsdiff versions and the
compression options, so entries are invalidated when the toolchain changes.
2026-07-08 12:10:45 -04:00
Dan Stillman
d07dd66c21 Parallelize update MAR generation
Run the per-file mbsdiff/xz work in make_incremental_update.sh and
make_full_update.sh through a parallel job pool, largest files first, and
assemble the manifests serially afterward, producing byte-identical MARs.

Set UPDATE_PACKAGING_JOBS to override the number of parallel jobs.
2026-07-08 12:10:45 -04:00
Dan Stillman
620d1b96b9 Don't try to create incremental updates from Z7 for ARM Linux 2026-01-21 22:42:18 +00:00
Dan Stillman
163ed14f92 Add removed-files_linux-arm64 2025-07-30 22:18:34 -04:00
Dan Stillman
832575b7c0 Update build scripts for Linux ARM64
This doesn't include an ARM updater, so those lines in build.sh need to
be commented out for the build to succeed.

Addresses #3515
2025-07-30 22:15:31 -04:00
Dan Stillman
9f83790ed6 fx128: Fix broken update channel after an update on macOS
Don't delete ChannelPrefs.framework during updates
2025-01-16 19:05:43 -05:00
Dan Stillman
f118d49d24 update-packaging updates from Mozilla 2024-12-14 01:16:05 -05:00
Dan Stillman
1fa34daeef Better fix for filename with spaces in xz_to_bzip
And some associated Mozilla fixes for the same file ("Firefox Media
Plugin Helper")
2024-12-14 01:16:05 -05:00
Dan Stillman
967b0c6df4 xz_to_bzip: Wrap filenames in quotes
fx128 has a helper app with spaces in the filename
2024-12-14 01:16:05 -05:00
Dan Stillman
e3c80ac6a0 Add additional files from Zotero 6.0.36 to win32 removed-files
I added some entries in bf59645133 based on an update from an earlier
version, but I missed files that were in the last Z6 build.
2024-08-26 07:53:02 -04:00
Dan Stillman
bf59645133 Update removed-files for Win32 and Linux after #3133 2024-07-25 03:12:34 -04:00
Dan Stillman
9b38d3a02f Don't touch precomplete or removed-files in build_autocomplete.sh
Follow-up to ef2cceba7
2024-07-25 02:58:19 -04:00
Dan Stillman
cf389ff20f Update removed-files for macOS after #3133
This is all the files removed since 5.0.
2024-07-25 02:13:52 -04:00
Dan Stillman
4067514a7e Don't build bzip updates for architectures that didn't exist in Z6 2024-05-28 06:44:23 +01:00
Dan Stillman
7056513b77 Finish Windows ARM support
And rename to "ARM64"

Closes #3112
2024-05-28 06:44:21 +01:00
Dan Stillman
8dd1db9839 Convert POSIX paths to Windows paths for mbsdiff on Windows 2023-05-20 12:46:32 +01:00
Dan Stillman
8a4d305843 Fix xz_to_bzip under Cygwin 2023-05-18 05:00:38 +01:00
Dan Stillman
39fa35ae12 Restore workaround for -C in mar command 2023-05-18 04:59:37 +01:00
Dan Stillman
33ac72ebac Generate xz MARs for new updater
The old updater used MARs with bzip2-compressed files, but Mozilla switched to
xz compression, so we generate xz-based MARs using the current MAR tools and
`make_(full|incremental)_update.sh` scripts and add a script to generate
bzip2-based MARs to serve to pre-7.0 builds.
2023-05-17 04:35:40 -04:00
Dan Stillman
a30e63eee1 Remove unused make_incremental_updates.py script 2023-05-17 04:35:40 -04:00
Dan Stillman
4695b156e0 Move add_version_info to scripts dir
Not specific to update packaging
2023-05-17 04:35:40 -04:00
Dan Stillman
3d7ce028e9 Change win64 to win-x64 in app build scripts 2023-05-11 05:17:52 +01:00
Dan Stillman
659c131de6 Fix Win64 ZIP filename when fetching build for incremental updates 2023-05-09 07:39:28 -04:00
Dan Stillman
a3d7b58b83 Add zotero-standalone-build repo as app folder
Minus obsolete 4.0 files
2023-04-26 04:40:22 -04:00