Skip to content

Use Gradle zip task for binary copy and preserve permissions - #92

Merged
bishiboosh merged 1 commit into
mainfrom
preserve-permissions
Jul 25, 2026
Merged

Use Gradle zip task for binary copy and preserve permissions#92
bishiboosh merged 1 commit into
mainfrom
preserve-permissions

Conversation

@bishiboosh

Copy link
Copy Markdown
Collaborator

What does this PR do?

Fix zip of release binaries by using Gradle zip task and preserving permissions

Issue number, if applicable

FIxes #91

Checklist

  • I have read the contributing guidelines.
  • I have documented my code if it is included in the public API.
  • I have added tests for my code and ran them via ./gradlew check.

@bishiboosh
bishiboosh requested a review from Copilot July 25, 2026 13:27
@bishiboosh bishiboosh self-assigned this Jul 25, 2026
@bishiboosh bishiboosh added the bug Something isn't working label Jul 25, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes packaging of the Kotlin/Native release binaries by switching from a custom ZipOutputStream implementation to Gradle’s built-in Zip task, enabling filesystem permission preservation so Linux (and macOS) binaries keep their executable bit when extracted.

Changes:

  • Replaces the single custom MakeBinariesZipTask with per-target Gradle Zip tasks.
  • Enables useFileSystemPermissions() on the produced archives and keeps a consistent output location/name scheme.
  • Removes the now-unused custom zipping task implementation from buildSrc.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
cli/build.gradle.kts Creates per-target Zip tasks that zip the produced binaries while preserving filesystem permissions (fixing the missing executable bit issue).
buildSrc/src/main/kotlin/com/deezer/caupain/tasks/MakeBinariesZipTask.kt Deletes the custom zipping task that didn’t preserve executable permissions in the resulting zip entries.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@bishiboosh
bishiboosh merged commit 5e031ac into main Jul 25, 2026
9 checks passed
@bishiboosh
bishiboosh deleted the preserve-permissions branch July 25, 2026 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Executable bit not set for Linux distribution

2 participants