Default enable FF_USE_FASTZIP

What does this MR do?

Makes FF_USE_FASTZIP default to true, so fastzip becomes the default archiver and extractor for cache and artifact zip handling.

The legacy zip implementation is unchanged and still reachable via FF_USE_FASTZIP=false. Removing it is deliberate follow-up work, not part of this MR.

Why was this MR needed?

Fastzip has been opt-in since 2020 and the flag has never graduated, despite repeated user requests on #27698 (closed). The blocker was never the change itself - it was confidence that no edge cases remained.

Every fastzip-specific bug report is closed: #27462 (closed), #27528 (closed), #27398 (closed), #27285 (closed), #27549 (closed), #28102 (closed), #28903 (closed), #28928 (closed), #28989 (closed), #36884 (closed). The newest was fixed in September 2023, so roughly two and a half years have passed with no new fastzip-specific defect while the flag has seen wide production use.

Fastzip is also faster, has better test coverage, and already fixes bugs the legacy implementation still has around file permissions (#3354 (closed), #27496 (closed)) and timestamp resolution (#27817).

What's the best way to test this MR?

  1. Run a job with a cache and artifacts on a runner built from this branch. It should use fastzip with no configuration, and the job header should no longer list FF_USE_FASTZIP (it now matches the default).
  2. Set FF_USE_FASTZIP: "false" on the same job and confirm the legacy path is still used and still works.
  3. Restore a cache written by a released runner with the flag off, to confirm cross-version archive compatibility.

What are the relevant issue numbers?

Merge request reports

Loading
Loading