Skip to content

refactor: Move darwin native sources into a canonical Sources/ tree#892

Closed
NandanPrabhu wants to merge 1 commit into
mainfrom
refactor/move-darwin-sources-to-shared-tree
Closed

refactor: Move darwin native sources into a canonical Sources/ tree#892
NandanPrabhu wants to merge 1 commit into
mainfrom
refactor/move-darwin-sources-to-shared-tree

Conversation

@NandanPrabhu

Copy link
Copy Markdown
Contributor

📋 Changes

Extracted from #804. Relocates auth0_flutter/darwin/Classes/*.swift into auth0_flutter/darwin/auth0_flutter/Sources/auth0_flutter/, turning the old Classes/ location — and the ios//macos/ CocoaPods directories — into symlinks generated by scripts/generate-symlinks.sh. This gives CocoaPods (and a future SPM target) a single canonical source location instead of duplicated/symlinked per-platform trees.

Also renames SwiftAuth0FlutterPluginAuth0FlutterPlugin and drops the Objective-C shim (Auth0FlutterPlugin.h/.m), since the class name can now match the pluginClass declared in pubspec.yaml directly without an ObjC bridge.

This is a pure move + rename, no behavior change for CocoaPods consumers:

  • Every relocated file is byte-identical to its previous location (verified file-by-file against main).
  • darwin/auth0_flutter.podspec's source_files is updated to point at the new path; ios/ and macos/ podspecs are unchanged (they still glob Classes/**/*, which is now populated by regenerated symlinks).
  • scripts/generate-symlinks.sh is updated to generate darwin/Classes/<rel> -> ../../auth0_flutter/Sources/auth0_flutter/<rel> and ios|macos/Classes/<rel> -> ../../../darwin/Classes/<rel>, verifying every symlink resolves. Confirmed idempotent (re-running the script against its own output produces no diff), so the existing Symlinks CI job continues to pass.

No Dart files, pubspec.yaml, or CI workflows are touched.

📎 References

🎯 Testing

  • Verified every file moved from darwin/Classes/ is byte-identical to its main counterpart (2 intentional exceptions: the plugin class rename and dropping the ObjC shim).
  • pod ipc spec auth0_flutter/darwin/auth0_flutter.podspec validates the podspec and resolves source_files to the 64 real Swift files under the new Sources/ path.
  • Re-ran scripts/generate-symlinks.sh after committing; zero diff, confirming CI's Symlinks check will pass.
  • plutil -lint on the updated example iOS project.pbxproj after the test-file rename.

🤖 Generated with Claude Code

Relocates auth0_flutter/darwin/Classes/*.swift into
auth0_flutter/darwin/auth0_flutter/Sources/auth0_flutter/, turning the old
Classes/ location (and the ios/ and macos/ CocoaPods dirs) into symlinks
generated by scripts/generate-symlinks.sh. This gives CocoaPods and a future
SPM target a single canonical source location instead of duplicated/symlinked
per-platform trees.

Also renames SwiftAuth0FlutterPlugin -> Auth0FlutterPlugin and drops the
Objective-C shim (Auth0FlutterPlugin.h/.m), since the class name can now match
the pluginClass declared in pubspec.yaml directly without an ObjC bridge.

Pure move: every relocated file is byte-identical to its previous location.
@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 67cd4b25-71e9-44c9-b24b-68cef97c8bc7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch refactor/move-darwin-sources-to-shared-tree

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.

@NandanPrabhu

Copy link
Copy Markdown
Contributor Author

Closing and reopening as a fresh PR to keep this cascading pair's PR numbers/descriptions in sync (see the SPM PR it now precedes: #893).

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