Commit graph

287 commits

Author SHA1 Message Date
Mingshen Sun
3292bd3652
Resolving symlinks in path (#679) 2025-02-15 23:38:23 -08:00
Mingshen Sun
1e79e12593
Cleanup duplicated code (#678) 2025-02-08 14:26:45 -08:00
Mingshen Sun
a43f2b017c
Set auto migration to false (#675) 2025-02-07 18:15:39 -08:00
Mingshen Sun
a69c4d16b1
Refactor git repository model (#674)
- Create a new model class for operations of Git repository.
- Refactor everything related with git.
- Add unit tests for git functions.
2025-02-02 22:18:16 -08:00
Mingshen Sun
d1de81d919
Refactor core data classes (#671) 2025-01-25 15:40:12 -08:00
Mingshen Sun
a410c9480a
Refactor YubiKey decryptor (#663)
- Add YKFSmartCardInterface extension to simplify smart card related calls
- Use async/await to rewrite callback closures
- Update YubiKeyConnection
- Better error handling
2024-12-15 21:08:27 -08:00
Mingshen Sun
c5d9d258d8
Use createPGPMessage instead of CryptoNewPGPMessage to support ASCII-armored password with YubiKey (#658) 2024-11-30 11:29:27 -08:00
Danny Mösch
1bdf9d684b Rely on SPM plugins to consume SwiftLint and SwiftFormat
Use their latest releases and fix some violations and issues.

# Conflicts:
#	.github/workflows/linting.yml
#	.github/workflows/testing.yml
2024-11-29 00:18:30 +01:00
Danny Mösch
d9bd0f3014
Update SwiftLint and SwiftFormat (#613)
* 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
2023-04-23 13:01:37 -07:00
Mingshen Sun
da5aa61986 Update tab bar badge value immediately after sync 2023-03-18 15:54:18 -07:00
Mingshen Sun
3054e8e6f4 Fix YubiKey feature detection logics 2023-03-17 22:20:50 -07:00
Mingshen Sun
788adee1a7 Unify cell style for the password generator 2023-03-12 21:30:31 -07:00
Mingshen Sun
cdaf60da73 Do not init Yubikey if device does not support MFI accessory 2023-03-12 14:46:37 -07:00
Mingshen Sun
d078d3ca0a Use system colors (fix #608) 2023-03-10 20:34:30 -08:00
Dominik Johs
f2a0c4ccf1
do not dismiss views when application is resumed (#605)
* 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>
2023-03-09 21:33:19 -08:00
Mingshen Sun
b09bc7444f Remove branches for iOS 12 compatibility 2023-03-09 11:40:33 -08:00
Anton Krasovsky
f6b2316324 Add support for Yubikey command chaining 2023-03-09 11:40:33 -08:00
Martin Nowak
3ab334dd00 fix #488 - support user field for completion
- 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
2023-01-22 09:44:41 -08:00
Mingshen Sun
440b0123f2 Fix building issues with XCode 2022-05-23 10:54:11 -07:00
Mingshen Sun
90f1f54a21 Fix building issue 2022-05-22 21:40:35 -07:00
Mingshen Sun
955e50c3d3
Initial implementation of using YubiKey for decryption (#533) 2022-01-09 21:38:39 -08:00
Danny Moesch
819371f55e
Remove unused elements (#530) 2021-12-30 22:35:17 -08:00
Mingshen Sun
ff6a1edf62 Add confirmation prompt for removing keys (fix #491) 2021-12-29 16:19:12 -08:00
Danny Moesch
cdedff0d4d
Use SwiftFormat version 0.49.x and enable some new rules (#527) 2021-12-27 17:57:11 -08:00
Danny Moesch
b62c5fa2e5
Check cloned repository for .gpg-id file (#523)
* Extract method
* Separate deletion of store data from general data erasure
* Check cloned repository for .gpg-id file
2021-12-27 17:38:33 -08:00
Danny Moesch
b7e08dfb9e Enable SwiftLint rule 'static_operator' and fix all violations 2021-10-07 19:48:57 +02:00
Danny Moesch
831ffe2235 Use Self for internal static access 2021-10-07 19:19:56 +02:00
Danny Mösch
3eea063d61
Fix issues with OTP notification (#517)
* 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
2021-10-03 17:20:22 -07:00
Danny Mösch
32b7c9b635
Some cleanup especially regarding method references (#516)
* 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
2021-10-02 20:46:07 -07:00
Danny Mösch
e1cbcb5d7a
Add notification action to copy OTP or just inform about the copied OTP (#513)
* 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
2021-10-01 10:32:14 -07:00
Danny Mösch
763cddf540
Show notification with OTP after providing password through extension (#509)
* 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
2021-09-20 00:50:05 -07:00
Mingshen Sun
f2ab400f4b
Support Steam OTP (#505) 2021-09-06 10:47:04 -07:00
Mingshen Sun
dab850f311
Check keychain every time to ensure changes propagate to extensions instantly 2021-08-31 20:36:16 -07:00
Danny Mösch
ab8eaaf97c
Already show password list in background before dismissing lock view (#497)
Currently it's like:

  1) Lock view is presented
  2) Authenticate
  3) Lock view disappears
  4) Browser is shown briefly
  5) Extension shows password list

This change skips step 4.
2021-08-29 14:54:56 -07:00
Danny Mösch
3eb131b65d
Fix file headers (#494) 2021-08-27 22:32:31 -07:00
Danny Moesch
b3eef51a9d Rename method 2021-08-27 22:03:00 -07:00
Danny Mösch
a83acd096a
Remove availability checks for iOS 11.0 (#486) 2021-08-16 12:59:46 -07:00
Mingshen Sun
75332270d6
Merge pull request #477 from SimplyDanny/use-protonmail-gopenpgp
Use ProtonMail's GopenPGP library
2021-08-15 01:49:16 -07:00
Danny Moesch
7cbc14978a Use SwiftFormat version 0.48.x 2021-08-15 01:34:43 -07:00
Danny Moesch
93954f3bec Use ProtonMail's GopenPGP library
This allows for a simpler setup and the usage of a recent version of Go. The library provides a build script which creates an XCFramework containing binaries for multiple target architectures. The gnu-dummy.patch is taken from mssun/gopenpgp. The forks are not needed anymore.
2021-06-20 12:30:14 +02:00
Danny Moesch
3f75591484 Use SwiftLint version 0.43.x 2021-03-07 16:42:08 -08:00
Danny Moesch
1454693308 Remove redundant 'else' blocks 2021-01-31 20:16:57 -08:00
Danny Moesch
ad4ed9419e Format code with SwiftFormat 2021-01-31 20:16:57 -08:00
Mingshen Sun
8afc40a5a1
Fix search issues 2021-01-17 20:47:52 -08:00
Mingshen Sun
68077bf04c
Rewrite PasswordViewController 2021-01-17 19:49:05 -08:00
Mingshen Sun
b49593e87f
Rename ignore .gpg-id switch to enalbe .gpg-id 2021-01-10 20:28:20 -08:00
Mingshen Sun
f539d2ccfc
Ignore .gpg-id for encryption 2021-01-10 15:27:50 -08:00
Mingshen Sun
011762c4bd
Fix decryption issue when key without passphrase set 2021-01-10 15:01:21 -08:00
Mingshen Sun
1e1d6f0f44
Fix passphrase issue 2021-01-07 22:35:45 -08:00
Mingshen Sun
a62792bd11
Add ignore .gpg-id switch default ON 2021-01-07 21:58:38 -08:00