Skip to content

Update docs#25

Merged
youknowone merged 2 commits intomainfrom
docs
Mar 7, 2026
Merged

Update docs#25
youknowone merged 2 commits intomainfrom
docs

Conversation

@youknowone
Copy link
Owner

@youknowone youknowone commented Mar 7, 2026

close #9

Summary by CodeRabbit

Release Notes

  • New Features

    • Default build mode now uses prebuilt artifacts instead of generating bindings at compile time.
  • Documentation

    • Updated guidance clarifying binding sources and build configuration options.
  • Chores

    • Version bumped to 0.26.2 across prebuilt crate packages.

@youknowone youknowone merged commit 448a7ca into main Mar 7, 2026
185 of 332 checks passed
@coderabbitai
Copy link

coderabbitai bot commented Mar 7, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 297dd700-3953-4319-badf-754abc2b2495

📥 Commits

Reviewing files that changed from the base of the PR and between adf3fbf and 441464f.

📒 Files selected for processing (5)
  • README.md
  • crates/apple-sys-prebuilt-iphoneos/Cargo.toml
  • crates/apple-sys-prebuilt-macosx/Cargo.toml
  • crates/apple-sys/Cargo.toml
  • crates/apple-sys/configure.py

Walkthrough

This change updates prebuilt crate versions to 0.26.2, switches the default build strategy from bindgen-based generation to prebuilt bindings, and introduces SDK version management capabilities to configure.py to synchronize version numbers across crate manifests.

Changes

Cohort / File(s) Summary
Version Synchronization
README.md, crates/apple-sys-prebuilt-iphoneos/Cargo.toml, crates/apple-sys-prebuilt-macosx/Cargo.toml
Documentation and prebuilt crate version updates to 0.26.2; README reorganizes sections around "Prebuilt vs Bindgen" and adds explicit reference to objc2 project as a source of human-curated bindings.
Default Build Strategy & Dependencies
crates/apple-sys/Cargo.toml
Changes default features from bindgen to prebuilt; updates apple-sys-prebuilt-macosx and apple-sys-prebuilt-iphoneos dependencies to 0.26.2.
SDK Version Management
crates/apple-sys/configure.py
Introduces SDK\_MAP constant and \_xcrun\_sdk helper; adds public APIs get\_sdk\_version(sdk\_name) and update\_prebuilt\_versions(sdk\_versions) to query SDK versions and propagate them into prebuilt crate and root Cargo.toml manifests; extends main flow to collect and synchronize versions across all discovered SDK paths.

Sequence Diagram

sequenceDiagram
    participant Config as Configure Script
    participant Xcrun as xcrun SDK Query
    participant Cargo as Cargo.toml Manifests
    
    Config->>Xcrun: Query SDK versions for all paths
    Xcrun-->>Config: SDK version map
    Config->>Config: Collect all SDK versions
    Config->>Cargo: update_prebuilt_versions(sdk_versions)
    Cargo-->>Config: Prebuilt crates & dependencies synchronized
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Poem

🐰 Hop forth with versions all synchronized true,
Prebuilt bindings now the default, tried and new!
SDK queries dance through xcrun's embrace,
From manifests to manifests, each in its place,
With objc2 friends collaborating at last,
We're binding the future while honoring the past! 🔗✨

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch docs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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.

Let's collaborate on objc2!

1 participant