changes PasswordStore.encrypt behavior when .gpg-id support is off
(default):
old:
* ignores passed in keyID
* encrypt with first public key in keychain (gopenPGP), or entire
keychain (ObjectivePGP)
new:
* honor passed in keyID
* encrypt with all keys in keychain
So the system can have multiple private keys, and the caller doesn't
need to specify a specific one regardless.
Ideally: If there are several matches we could also take into account
which keys have already been unlocked (or passthrases saved in
keychain). Right now it only grabs the first match.
this is refactoring support, so that we can notice changes in how the
underlying APIs are called, and make changes intentionally when needed,
instead of accidentally.
* Update Swift version used by SwiftFormat
* Update SwiftLint version
* Rely on new virtual 'all' rule in SwiftLint
* Enable SwiftLint rule 'direct_return' rule and fix all violations
* Enable SwiftLint rule 'shorthand_optional_binding' rule and fix all violations
* Enable SwiftLint rule 'blanket_disable_command' rule and fix all violations
* do not dismiss views when application is resumed
* prevents the PasswordNavigationViewController and PasswordDetailTableViewController from being dismissed when the app is put to the background and then brought back to the foreground
* Instead, the PasswordEntities are re-fetched from the context by their path to handle the re-creation of the entities during an update process that could have run in the background
* update SwiftLint to version 0.50.*
* update SwiftFormat to 0.51.*
---------
Co-authored-by: Mingshen Sun <bob@mssun.me>
- a few other backends use `user` instead of `username` or `login`
(e.g. gopass-jsonapi, keepass2csv importer, fpm2 importer)
- shorter to type when extracting field separately (e.g. CLI/clipboard) tools
* Use "Beta" since this is what Apple uses too
* Actually copy the OTP if the option is set
* Shorten notification text to make it fit to smaller screens
* Set notification center delegate before app launches
* Fix SwiftFormat issue fixed with version 0.48.12
* Remove superfluous method arguments in method references
* Use 'Self' for internal static access
* Convert static to instance field in singleton class
* Remove class name prefix in references to local methods
* Remove nested frameworks in all extensions and frameworks
* Add notification action to copy OTP or just inform about the copied OTP
The notification either shows the current OTP which can be copied by a notification action or it shows just a hint to inform about the copied OTP. This depends on the new option "autoCopyOTP".
* Extract method
* Set type and style one-time
* Allow to do something with a password after providing it in the extension
* Make fields non-nil
* Show OTP in notification after providing a password through extension