-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[PM-9022] scaffold the extension and build pipeline #9948
[PM-9022] scaffold the extension and build pipeline #9948
Conversation
Electron builder modifies the .plist in the extension which causes issues with the signing process. Copying and re-signing manually avoids this because it bypasses the electron builder for the extension
@@ -68,6 +68,7 @@ bitwarden_license/bit-web/src/app/billing @bitwarden/team-billing-dev | |||
## Platform team files ## | |||
apps/browser/src/platform @bitwarden/team-platform-dev | |||
apps/cli/src/platform @bitwarden/team-platform-dev | |||
apps/desktop/macos @bitwarden/team-platform-dev |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thought: we might want to assign some this folder to team-autofill-dev
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added autofill as owner of the autofill-extension
Codecov ReportAll modified and coverable lines are covered by tests ✅
✅ All tests successful. No failed tests found. Additional details and impacted files@@ Coverage Diff @@
## main #9948 +/- ##
=======================================
Coverage 33.48% 33.48%
=======================================
Files 2845 2845
Lines 89046 89046
Branches 16982 16982
=======================================
Hits 29817 29817
Misses 56889 56889
Partials 2340 2340 ☔ View full report in Codecov by Sentry. |
New Issues
Fixed Issues
|
if (copyPlugIn) { | ||
let shouldResign = false; | ||
|
||
// cannot use extraFiles because it modifies the extensions .plist and makes it invalid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
question: Can you elaborate a bit on what modifications they do?
I was hoping we could finally get rid of the after sign script and re-evaluate if newer electron builders supports this out of the box.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It adds an Electron ASAR
section, and I couldn't find a way to selectively disable ASAR for extraFiles
I'm honestly not entirely sure why that invalidates the .plist
file since we should be re-signing the whole plugin. But nonetheless it fails to sign it with the error message saying that .plist
was modified
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we open a issue for this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not entirely sure what the issue is so we'd have put in a fair amount of work just to report it. I really don't wanna do that right now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
question: What is the desktop project?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is just a project used with xcodebuild
to build the extension. Why? Are there simpler ways?
apps/desktop/macos/autofill-extension/autofill_extension.entitlements
Outdated
Show resolved
Hide resolved
@Hinton sorry I re-requested a review from you before I noticed that our dev build is failing due to a missing provisioning profile |
This way we don't include the extension in any build and can avoid the signing issues it brings
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not familiar with native Mac apps yet, but this looks good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Workflows look good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You will want to add xcuserdata
to gitignore.
if (copyPlugIn) { | ||
let shouldResign = false; | ||
|
||
// cannot use extraFiles because it modifies the extensions .plist and makes it invalid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we open a issue for this?
🎟️ Tracking
PM-9022 [Desktop][Swift Extension] Scaffold the extension and build pipeline
📔 Objective
Only add the extension for locally built MAS DEV buildsThe extension is no longer included in any build to avoid the signing issues⏰ Reminders before review
🦮 Reviewer guidelines
:+1:
) or similar for great changes:memo:
) or ℹ️ (:information_source:
) for notes or general info:question:
) for questions:thinking:
) or 💭 (:thought_balloon:
) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion:art:
) for suggestions / improvements:x:
) or:warning:
) for more significant problems or concerns needing attention:seedling:
) or ♻️ (:recycle:
) for future improvements or indications of technical debt:pick:
) for minor or nitpick changes