* 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
* fix#540, duplicate entries in auto fill extension
`prepareCredentialList` is called twice, once before unlock and once
after. If the lists are already prepared, i.e. not empty, skip this
step.
* fix format and lint
Apple's CryptoTokenKit is only present in iOS 13.0+ however it exports
symbols with availability annotations going back to iOS 10.0.
In the Pass app we have a deployment target of iOS 12.0. Apple's
automatic weak linking system apparently only looks at the
symbol-level availability annotations so it assumes the symbols
we use will always be present (even though they won't pre-iOS-13).
We can work around this issue by forcing weak linking using the
"Optional" framework setting. (Note that this workaround would not
work if CryptoTokenKit was used from a third-party swift package.)
This is necessary to restore iOS 12 support after #533.
For further history see https://github.com/mssun/passforios/issues/539