Skip to content

fix: require android dwarf symbols#100

Open
ovitrif wants to merge 1 commit into
masterfrom
ovi/fix-android-dwarf-symbols
Open

fix: require android dwarf symbols#100
ovitrif wants to merge 1 commit into
masterfrom
ovi/fix-android-dwarf-symbols

Conversation

@ovitrif

@ovitrif ovitrif commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Refs synonymdev/bitkit-android#982

Related

Description

Follow-up to #99. The Android release path now requires full DWARF .debug_* sections instead of accepting symbol-table-only metadata.

This PR:

  • Bumps bitkit-core to 0.1.71.
  • Updates the shell and Gradle native validation gates to reject Android libraries without full DWARF metadata.
  • Regenerates the iOS xcframework, Python dylib, and Package.swift checksum for the same release version.
  • Keeps Android package publication on the generated workflow path because full-DWARF libbitkitcore.so files exceed GitHub's normal blob limit and this repo has Git LFS disabled.

Release

Pending after PR creation:

  • GitHub release: v0.1.71
  • Android package: com.synonym:bitkit-core-android:0.1.71

Preview

N/A

QA Notes

  • Passed: ./build.sh -r all.
  • Passed: bash -n build_android.sh.
  • Passed: ./bindings/android/gradlew --project-dir ./bindings/android :lib:validateReleaseNativeLibraries after regeneration.
  • Passed: cargo fmt --check.
  • Passed: git diff --check.
  • Verified regenerated Android ABIs have .debug_* sections and 0x4000 LOAD alignment.
  • Workflow release behavior can be verified automatically after merge.

@chatgpt-codex-connector chatgpt-codex-connector Bot 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b2b1672891

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +137 to +138
if (sectionsExit != 0 || !Regex("""\.debug_""").containsMatchIn(sections)) {
throw GradleException("Android native library has no full DWARF debug metadata: '${lib.path}'")

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Require .debug_info, not any .debug_ section*

This predicate still passes artifacts that only contain a partial DWARF section, e.g. a line-tables-only build with .debug_line/.debug_line_str but no .debug_info. In that case the publish gate would accept a library that does not contain the full DWARF metadata this change is meant to require; the shell validator was changed to the same broad \.debug_ test, so both gates should check for the section(s) that prove full debug info is present, at least .debug_info.

Useful? React with 👍 / 👎.

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.

1 participant