Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable producing native debug symbols in canary/dev releases #9679

Merged
merged 9 commits into from
May 1, 2024

Conversation

marcins
Copy link
Contributor

@marcins marcins commented May 1, 2024

↪️ Pull Request

Added debug = true to the canary release profile, this produces binaries with symbol debug information included. Existing strip operations take care of stripping these back out for the @parcel/rust package itself, however before we strip we now use platform specific tools to extract debug symbols out to a separate file / artifact.

At "build and release" time these are combined into a single debug-symbols artifact for ease of use. Any additional work is gated to only the dev/canary releases - there's a minor impact to build time, especially uploading the combined artifact, but it's pretty minor.

This has no impact on final @parcel/rust binary size (as the debug info is stripped), and it will be on our end when we bump to a canary to download the debug symbols artifact and upload it to Sentry.

Example dev-release with these changes: https://github.com/parcel-bundler/parcel/actions/runs/8902598798

@marcins marcins requested a review from a team May 1, 2024 00:31
@@ -35,7 +35,7 @@ jobs:
os: macos-latest
target: aarch64-apple-darwin

- name: macos-latest
- name: x86_64-apple-darwin
Copy link
Contributor Author

Choose a reason for hiding this comment

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

We talked about this briefly in sync this morning.. maybe it doesn't belong in this PR, but hopefully it doesn't conflict.

@yamadapc yamadapc self-requested a review May 1, 2024 01:25
@marcins
Copy link
Contributor Author

marcins commented May 1, 2024

Just leaving some notes here from some "offline" conversations:

  • Github has a default 90 day retention for artifacts - if the size of the new artifacts proves problematic, we have a few options:
  • remove the "convenience" single symbols artifact, just use the separate ones (which will complicate our consumption side slightly)
  • change the retention for the separate artifacts to 1 day, or work out if we can delete them after the combined artifact is produced
  • look into whether we can publish these directly or elsewhere

@marcins marcins added this pull request to the merge queue May 1, 2024
@yamadapc yamadapc removed this pull request from the merge queue due to a manual request May 1, 2024
@yamadapc
Copy link
Contributor

yamadapc commented May 1, 2024

I'm removing this from the merge queue because #9658 needs to be merged first.

@mattcompiles mattcompiles added this pull request to the merge queue May 1, 2024
@mattcompiles mattcompiles removed this pull request from the merge queue due to a manual request May 1, 2024
@mattcompiles mattcompiles added this pull request to the merge queue May 1, 2024
Merged via the queue into v2 with commit f5f0bb4 May 1, 2024
16 of 17 checks passed
@mischnic mischnic deleted the mszczepanski/enable-debug-for-canary branch May 1, 2024 09:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants