* decrypt should not care about it at all
* PasswordStore.decrypt always forwards the passed in keyID, even when
gpg-id handling is disabled
* PasswordStore.encrypt: streamlined, but should be same behavior
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