* Applies patch to enable the autofill extension
* Fixes the zip command
* Updates the signing identity
* Fixes a typo in a github action
* Moves the security command to a previous action
* Updates workflow to work on the PR branch
* Updates the workflow to build from this branch
* Forces native module build
* Adds profile to extension building
* Enables the autofill production config
* List the profiles
* Copies the autofill provisioning profile to Xcode
* Updates the provisioning profile used for the autofill extension
* Alters how the provisioning profile is provided to xcodebuild
* Adds a mas build with the autofill extension
* Print variables
* Removes spaces from the config file
* Updates all provisioning profile installation steps
* Adds a new provisioning profiles location
* Updates the inherited entitlements
* Passes in identity and provisioning profile in after sign call
* Removes mac dev cert from keychain
* Undoes after sign changes
* Adds resign step to workflow
* Fixes the codesign call
* Adds profile argument to electron builder
* Adds resign step to mas builds
* Removes resign step
* Enable debug messages for electron builder signing
* Copies autofill profile instead of desktop
* Add autofill extension to signIgnore list in electron-builder config
* Comment out if in test flight
* Bump version
* Moves the autofill extension building to after pack
* Update version
* Fixes windows and linux builds
* Forces native build
* Removes installation of unrelated certificates
* Comments out synchronous function call
* Update autofill project configuration
* Adds ls command to debug framework
* Moves the extension build script back
* Updates mac developer id provisioning profile
* Updates build location for autofill extension release versions
* Removes unnecessary extension build call
* Updates the version number
* Debug signing
* Removes team identifier from mac entitlements
* Adds new inherited entitlements for mac
* Updates the version number
* Debug version number
* Removes check for creating fastlane secrets
* Readds check for cache before building
* Reverts workflow changes in build-desktop.yml
* Cleans up after-sign and extension build script
* Removes installation of unnecessary mac signing certs
---------
Co-authored-by: Michal Checinski <mchecinski@bitwarden.com>
* Test ARM64 build
* Remove sudo
* Change to public preview runner
* Change cache key for architectures
* Test
* Test
* Test
* remove x86 musl target - troubleshooting build error
* native module troubleshooting
* remove cross-platform for testing
* attempt to resolve cross-platform issue
* support more arm64 build types
* fix missed amd to arm update
* missing dependency during env setup
* lxd troubleshooting
* install lxd with snap instead
* electron-builder debug
* simplified script for testing
* testing
* 22.04 to 20.04
* try ubuntu 24.04 runner
* add dist script
* update build command
* troubleshoot 24.04 compatibility
* remove lxd before merging main
* add comment, bump arm runner down to 22.04
* revert to tar.gz support only for this PR
* testing cli arm builds
* fix build target designation
* adjust runner designation
* runner name typo
* not needed currently
* adjust build.js logic and call in workflow
* address styling feedback and unnecessary rust toolchain call
* simplify build cli os matrix
* revert x86 linux builds to cross-platform command for build.js
---------
Co-authored-by: Vince Grassia <593223+vgrassia@users.noreply.github.com>
* Update TestFlight deployment to use Fastlane for app uploads
* Update TestFlight deployment to use Fastlane for app uploads
* Fix
* Fix create secret for fastlane
* Fix create secret for fastlane
* Fix create secret for fastlane
* Install gsed to use sed on macos runner
* Create test file
* Fix test
* Use actual token
* Add TestFlight distribution option for QA testing
* Update .github/workflows/build-desktop.yml
Co-authored-by: MtnBurrit0 <77340197+mimartin12@users.noreply.github.com>
* Add if to secret construction for fastlane
---------
Co-authored-by: MtnBurrit0 <77340197+mimartin12@users.noreply.github.com>
* [BRE-610] - Sign windows CLI
* little fix
* testing path to script
* testing script path
* Testing windows signing script
* single line run
---------
Co-authored-by: Andy Pixley <3723676+pixman20@users.noreply.github.com>
* feat: create copy of desktop build for PR target
* chore: add temporary file to trigger ci
* fix: remove check-run from regular desktop build
* feat: change browser build to not use pr target
* fix: skip build-safari if secret is not available
* feat: skip safari build if secrets are not available
* feat: let windows desktop build without secrets
* fix: has_secrets not being output correctly
* feat: let macos desktop build without secrets
* feat: don't build browser as part of desktop
* feat: change CLI to pull_request
* feat: let web build without secrets
* feat: tweak lint to run on PR and not just push
* feat: add PR target workflows
* fix: remove wip files
* fix: lint on hotfix-rc branches
* feat: add new workflows to CODEOWNERS
* fix: remove workflow_dispatch
pull_request_target are only intended to be used with contributor PRs and we cannot dispatch builds for these branches so there was no point having that option.
* Revert "fix: target workflows not triggering on pull_request_target (#12370)"
This reverts commit 645d36f465.
* Revert "[PM-15126] Tighten scope of our client build pipelines to remove reliance on secrets (#12243)"
This reverts commit f8c33ea04b.
* feat: create copy of desktop build for PR target
* chore: add temporary file to trigger ci
* fix: remove check-run from regular desktop build
* feat: change browser build to not use pr target
* fix: skip build-safari if secret is not available
* feat: skip safari build if secrets are not available
* feat: let windows desktop build without secrets
* fix: has_secrets not being output correctly
* feat: let macos desktop build without secrets
* feat: don't build browser as part of desktop
* feat: change CLI to pull_request
* feat: let web build without secrets
* feat: tweak lint to run on PR and not just push
* feat: add PR target workflows
* fix: remove wip files
* fix: lint on hotfix-rc branches
* feat: add new workflows to CODEOWNERS
* Switch to oo7 and drop libsecret
* Fix tests
* Fix windows
* Fix windows
* Fix windows
* Fix windows
* Add migration
* Update apps/desktop/desktop_native/core/src/password/unix.rs
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
* Remove libsecret in ci
* Move allow async to trait level
* Fix comment
* Pin oo7 dependency
---------
Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
* feat: update sdk service abstraction with documentation and new `userClient$` function
* feat: add uninitialized user client with cache
* feat: initialize user crypto
* feat: initialize org keys
* fix: org crypto not initializing properly
* feat: avoid creating clients unnecessarily
* chore: remove dev print/subscription
* fix: clean up cache
* chore: update sdk version
* feat: implement clean-up logic (#11504)
* chore: bump sdk version to fix build issues
* chore: bump sdk version to fix build issues
* fix: missing constructor parameters
* refactor: simplify free() and delete() calls
* refactor: use a named function for client creation
* fix: client never freeing after refactor
* fix: broken impl and race condition in tests
* feat: add sdk override to desktop build
* feat: add SDK version to browser about dialog
* feat: add sdk override to browser build
* fix: `npm ci` overriding the override
* fix: artifacts not properly downloaded
* fix: switch to new repository
* feat: add debug version function to web
* feat: add sdk-version to CLI
* feat: add version to desktop
* feat: add override to cli
* feat: add override to web
* fix: cli version acting as default command
* fix: consistent workflow input name
* feat: add error handling
* feat: upgrade sdk-internal
* fix: forgot to update package lock
* fix: broken CI build
move sdk version to a regular command
* chore: revert version changes
* refactor: move error handling code
* chore: bump SDK to 0.2.0.main-1
* fix: clean up references to inputs.sdk_commit
* refactor: rename `init` to `applyVersionToWindow`
* Revert workflow changes in "[PM-9022] scaffold the extension and build pipeline (#9948)"
This reverts commit 62112b99a9.
* fix: comment out autofill entitlement
* feat: add macos xcode project
* feat: add extension to mas build
* feat: use `after-sign` to avoid issues
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
* feat: always clean build and add better error handling
* chore: add some logging to after-sign
* feat: automatically cleanup xcode build to avoid duplicate extensions
* docs: add information about managing extensions
* feat: add missing safari extension logging
* lint: allow macos filenames
* chore: add macos to platform ownership
* lint: add some additional allowed files
* feat: don't build autofill extension for MAS
* chore: ignore capital letters linting for all macos files
* chore: replace gulpfile with regular node script
* chore: add lint rules to script
* lint: fix remaining lint issues in script
* chore: tweak lint rule
* feat: remove desktop target
* fix: use new provisioning profile for dev extension
* Update to unblock CI builds
* chore: remove extension from masdev pack
This way we don't include the extension in any build and can avoid the signing issues it brings
* chore: add autofill as codeowner
* chore: remove xcuserdata
* chore: ignore xcuserdata
---------
Co-authored-by: Vince Grassia <593223+vgrassia@users.noreply.github.com>
Co-authored-by: Michał Chęciński <mchecinski@bitwarden.com>
Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
* Revert "Remove unnecessary plist keys in desktop_proxy (#10933)"
This reverts commit 4dbb036df1.
* Revert "Fix TestFlight errors caused by desktop_proxy (#10928)"
This reverts commit 40cb4b5353.
* Revert "[PM-5506] Enable electron fuses (#10073)"
This reverts commit 78c5e9c706.
* Revert "[PM-7846] Implement a rust based native messaging proxy and IPC system (#9894)"
This reverts commit 55874b72bf.
* [PM-7846] Implement a rust based native messaging proxy and IPC system
* Only build desktop_proxy
* Bundle the desktop_proxy file
* Make sys deps optional for the proxy
* Restore accidentally deleted after-sign
* Update native cache to contain dist folder
* Add some test logging
* Native module cache seems very aggressive
* Fix invalid directory
* Fix debug print
* Remove cache force
* Remove cache debug code
* Only log to file in debug builds
* Place the binary in the correct place for mac and make sure it's signed
* Fix platform paths
* Test unsigned appx
* Revert "Test unsigned appx"
This reverts commit e47535440a.
* Fix comment
* Remove logs
* Use debug builds in native code, and test private path on MacOS
* Add connected message
* Update IPC API comments
* Update linux to also use XDG_ dir
* Update main.rs comment
* Improve docs and split some tasks spawned into separate functions
* Update send docs and return number of elements sent
* Mark `listen` as async to ensure it runs in a tokio context, handle errors better
* Add log on client channel closed
* Move binary to MacOS folder, and sign it manually so it gets the correct entitlements
* Fix some review comments
* Run prettier
* Added missing zbus_polkit dep
* Extract magic number and increase it to match spec
* Comment fix
* Use Napi object, combine nativeBinding export, always log to file
* Missed one comment
* Remove unnecessary generics
* Correct comment
* Select only codesigning identities
* Filter certificates
* Also add local dev cert
* Remove log
* Fix package ID
* debug_assert won't run the pop() in release mode
* Better error messages
* Fix review comments
* Remove unnecessary comment
* Update napi generated TS file
* Temporary fix for DDG
* Add setuptools to mac pipeline
Mac runners have progressed above python 3.12, which removed `distutils`. We need to ensure it's installed for node-gyp compilations by installing the setuptools package.
* Add missed mac build