chore: sync plus with upstream main (conflicts)#79
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
📝 WalkthroughWalkthroughThis PR rebrands capacitor-plus packages to capacitor under Ionic ownership, updates all package metadata and changelogs to reference the upstream ionic-team/capacitor repository, and adjusts CLI telemetry routing and SPM plugin-handling logic. ChangesPackage namespace migration and runtime updates
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related issues
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@CHANGELOG.md`:
- Around line 6-30: Revert any manual edits to CHANGELOG.md and restore the
CI-generated content exactly as produced by the release workflow; remove any
hand-modified lines (the version entries and notes in CHANGELOG.md) and do not
commit manual changelog changes, then re-run or trigger the repository's release
workflow/CI job that regenerates CHANGELOG.md so the correct auto-generated
entries are committed by the pipeline.
In `@ios/package.json`:
- Around line 2-6: The package name change to the Ionic-owned scope will block
publishes; update the "name" field in ios/package.json (currently
"@capacitor/ios") back to your org scope (e.g., "@capacitor-plus/ios") or
coordinate/ensure ownership of the "@capacitor" scope and registry auth before
merging; make the same revert/config change for any other packages renamed to
"@capacitor/*" so Lerna's publish scripts and .npmrc remain valid.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 24ee00c0-e3ab-44f0-89d6-e689aa367c86
📒 Files selected for processing (11)
CHANGELOG.mdandroid/CHANGELOG.mdandroid/package.jsoncli/CHANGELOG.mdcli/package.jsoncli/src/ios/update.tscli/src/ipc.tscore/CHANGELOG.mdcore/package.jsonios/CHANGELOG.mdios/package.json
| ## [8.3.4](https://github.com/ionic-team/capacitor/compare/8.3.3...8.3.4) (2026-05-12) | ||
|
|
||
| **Note:** Version bump only for package capacitor | ||
|
|
||
| ## [8.3.3](https://github.com/ionic-team/capacitor/compare/8.3.2...8.3.3) (2026-05-08) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **cli:** copy plugin files in CocoaPods projects ([#8467](https://github.com/ionic-team/capacitor/issues/8467)) ([b2d7719](https://github.com/ionic-team/capacitor/commit/b2d771926a180e60deea31992d7d4abcd5ca3bc7)) | ||
|
|
||
| ## [8.3.2](https://github.com/ionic-team/capacitor/compare/8.3.1...8.3.2) (2026-05-07) | ||
|
|
||
| ### Bug Fixes | ||
|
|
||
| - **cli:** add cSettings support for compiler flags in generated Package.swift ([#8448](https://github.com/ionic-team/capacitor/issues/8448)) ([0bd0676](https://github.com/ionic-team/capacitor/commit/0bd0676315c5fd77e50312dd7b5bf4990dcbd7d0)) | ||
| - **cli:** add system framework and weak framework support in SPM Package.swift ([#8447](https://github.com/ionic-team/capacitor/issues/8447)) ([3232f0f](https://github.com/ionic-team/capacitor/commit/3232f0fe1d9811b0b5c500e3dc05cb8a250177f8)) | ||
| - **cli:** correct Capacitor plugin SPM compat check ([#8440](https://github.com/ionic-team/capacitor/issues/8440)) ([e5ccc45](https://github.com/ionic-team/capacitor/commit/e5ccc451dda27d56bca824ed644bd20fe4d988cb)) | ||
| - **cli:** generate binaryTarget entries for custom xcframeworks in Package.swift ([#8445](https://github.com/ionic-team/capacitor/issues/8445)) ([1f7e33f](https://github.com/ionic-team/capacitor/commit/1f7e33fca43d183332ec19d22b0d75ef81d8cc6d)) | ||
| - **cli:** generate resource entries in Package.swift ([#8455](https://github.com/ionic-team/capacitor/issues/8455)) ([790bd27](https://github.com/ionic-team/capacitor/commit/790bd27123497111984227010c3162cec94a108e)) | ||
| - **cli:** handle Cordova plugins without iOS source files ([#8443](https://github.com/ionic-team/capacitor/issues/8443)) ([0da130e](https://github.com/ionic-team/capacitor/commit/0da130eb7a861bee4e2c35bc0aac53ba9c983fc3)) | ||
| - **cli:** link plugin dependencies in Package.swift ([#8457](https://github.com/ionic-team/capacitor/issues/8457)) ([b3c769e](https://github.com/ionic-team/capacitor/commit/b3c769e856c826b1174518877cf86ac7ce73bf09)) | ||
| - **ios:** support Cordova plugins with Package.swift ([#8438](https://github.com/ionic-team/capacitor/issues/8438)) ([139943b](https://github.com/ionic-team/capacitor/commit/139943b0c05fddb2d1ce2d6f468800fddf17b4cf)) | ||
| - **SystemBars:** avoid extra view padding on API <= 34 ([#8439](https://github.com/ionic-team/capacitor/issues/8439)) ([5b135a7](https://github.com/ionic-team/capacitor/commit/5b135a70217be560e7176c8d5b514cc92ed3e4e4)) | ||
|
|
||
| ## [8.3.1](https://github.com/ionic-team/capacitor/compare/8.3.0...8.3.1) (2026-04-16) |
There was a problem hiding this comment.
Do not manually modify generated changelog entries.
This file is CI/CD-managed, so these edits should be reverted and regenerated by the release workflow to avoid divergence.
As per coding guidelines, Do not manually edit CHANGELOG.md; it is managed automatically by CI/CD.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@CHANGELOG.md` around lines 6 - 30, Revert any manual edits to CHANGELOG.md
and restore the CI-generated content exactly as produced by the release
workflow; remove any hand-modified lines (the version entries and notes in
CHANGELOG.md) and do not commit manual changelog changes, then re-run or trigger
the repository's release workflow/CI job that regenerates CHANGELOG.md so the
correct auto-generated entries are committed by the pipeline.
| "name": "@capacitor/ios", | ||
| "version": "8.3.4", | ||
| "description": "Capacitor+: Enhanced Capacitor with automated upstream sync - Cross-platform apps with JavaScript and the web", | ||
| "homepage": "https://capgo.app/docs/plugins/capacitor-plus/", | ||
| "author": "Capgo Team <support@capgo.app> (https://capgo.app)", | ||
| "description": "Capacitor: Cross-platform apps with JavaScript and the web", | ||
| "homepage": "https://capacitorjs.com", | ||
| "author": "Ionic Team <hi@ionic.io> (https://ionic.io)", |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Verify package identity consistency and cross-package references.
python - <<'PY'
import json, pathlib
pkg_files = [p for p in pathlib.Path('.').rglob('package.json') if 'node_modules' not in p.parts]
rows = []
for p in sorted(pkg_files):
try:
data = json.loads(p.read_text())
except Exception:
continue
name = data.get("name")
version = data.get("version")
peer = data.get("peerDependencies", {})
deps = data.get("dependencies", {})
refs = sorted([k for k in {**peer, **deps}.keys() if k.startswith("@capacitor/") or k.startswith("@capacitor-plus/")])
if name or refs:
rows.append((str(p), name, version, refs))
print("== Package identities and capacitor-scope references ==")
for p, name, version, refs in rows:
print(f"{p}\n name={name}\n version={version}\n refs={refs}\n")
PYRepository: Cap-go/capacitor-plus
Length of output: 533
🏁 Script executed:
# Check root package.json and npm publishing configuration
cat package.json | head -40Repository: Cap-go/capacitor-plus
Length of output: 2599
🏁 Script executed:
# Look for any npm registry or publishing configuration
find . -maxdepth 2 -type f \( -name ".npmrc" -o -name ".npm*" -o -name "*.yml" -o -name "*.yaml" \) | head -20Repository: Cap-go/capacitor-plus
Length of output: 195
🏁 Script executed:
# Check git remote and repository metadata
git remote -v 2>/dev/null || echo "No git remote"
git config --get remote.origin.url 2>/dev/null || echo "No origin URL"Repository: Cap-go/capacitor-plus
Length of output: 241
🏁 Script executed:
# Check if there are any npm publish scripts or CI/CD configuration
find . -maxdepth 2 -type f -name "*.json" | xargs grep -l "publish" 2>/dev/null | head -10Repository: Cap-go/capacitor-plus
Length of output: 161
🏁 Script executed:
cat ./.npmrcRepository: Cap-go/capacitor-plus
Length of output: 83
🏁 Script executed:
cat ./cli/.npmrc ./core/.npmrc 2>/dev/null || echo "No individual .npmrc in subdirs"Repository: Cap-go/capacitor-plus
Length of output: 101
🏁 Script executed:
# Check if there are any references to Cap-go or capacitor-plus scope in package.json files
grep -r "capacitor-plus" . --include="package.json" | head -20Repository: Cap-go/capacitor-plus
Length of output: 837
Scope rename to @capacitor/* will block package publishing without ownership of the scope.
The workspace is configured with Lerna to automatically publish packages via npm publish (see root package.json publish scripts), but renaming all packages to @capacitor/*—which is owned by Ionic—will fail with permission denied on npmjs unless your organization owns that scope. The .npmrc contains no registry overrides. Either revert the package names to @capacitor-plus/* or configure scope ownership before merging.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@ios/package.json` around lines 2 - 6, The package name change to the
Ionic-owned scope will block publishes; update the "name" field in
ios/package.json (currently "@capacitor/ios") back to your org scope (e.g.,
"@capacitor-plus/ios") or coordinate/ensure ownership of the "@capacitor" scope
and registry auth before merging; make the same revert/config change for any
other packages renamed to "@capacitor/*" so Lerna's publish scripts and .npmrc
remain valid.
Merge Conflict Resolution Required
The automatic sync of the
plusbranch with upstream main encountered merge conflicts.What happened
Action needed: Review the branch and resolve any remaining concerns before merging.
This PR was created automatically by the Capacitor+ sync workflow
Summary by CodeRabbit
Bug Fixes
Chores