Commit graph

105 commits

Author SHA1 Message Date
Harsh Shandilya
bda515d1ec
Remove unused dependencies (#1930)
gradle: remove unused instrumentation testing deps
2022-05-29 14:29:36 +00:00
Harsh Shandilya
88151f4bdd
Simplify BouncyCastle workaround and upgrade Fragment (#1926)
* Simplify bouncycastle workaround

* Upgrade fragment-ktx to 1.5.x
2022-05-27 07:30:10 +00:00
Harsh Shandilya
37b80d5d19
Upgrade to AGP 7.2.0 (#1920) 2022-05-19 07:23:59 +00:00
Harsh Shandilya
81b439b5f0
app: setup Lint baseline 2022-04-24 16:47:50 +05:30
renovate[bot]
18cff9c144
chore(deps): update dependency org.pgpainless:pgpainless-core to v1.2.0 (#1832)
* chore(deps): update dependency org.pgpainless:pgpainless-core to v1.2.0

* gradle: bump bouncycastle to 1.71

* Transparently update older BC versions

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2022-04-09 13:49:31 +00:00
Harsh Shandilya
2320201f89
Migrate namespaces to Gradle (#1805)
* ui-compose: update Gradle configuration

* gradle: fix namespace for a couple astray Compose dependencies

* all: switch to Gradle namespace property

Mirrors a similar change from AndroidX dcfa035a96
2022-03-27 12:37:18 +00:00
Harsh Shandilya
861ca58a58
Configure Sentry with more information (#1782)
* build-logic: remove error path in Sentry plugin

* gradle: fix UnstableApiUsage warning

* build-logic: configure Sentry Gradle Plugin

* app: set traces sample-rate to 1.0

* sentry-stub: init

* app: populate Sentry user field with feature flags
2022-03-13 12:11:01 +00:00
Harsh Shandilya
acc448ce74
Use explicit Gradle tasks to handle build artifact collection (#1745) 2022-02-23 14:25:03 +05:30
Harsh Shandilya
3d0006d610
Introduce Sentry for error reporting (#1737) 2022-02-20 19:01:19 +05:30
Harsh Shandilya
2b293e5805
Port build to Gradle 7.4-rc-2 (#1707) 2022-02-04 13:59:36 +00:00
Harsh Shandilya
d89d500319
Move Compose code to ui-compose module (#1687) 2022-01-26 17:11:04 +00:00
Harsh Shandilya
d838b7da59
all: upgrade to AGP 7.1.0-rc01 (#1678) 2022-01-24 08:16:58 +05:30
Aditya Wasan
abc62c2b6b
Refactor randomized password generator into a separate module (#1663) 2022-01-13 16:43:53 +00:00
Harsh Shandilya
5bcbf8da08
app: add diceware dependency 2021-12-21 13:01:41 +05:30
Harsh Shandilya
8db0b67ce9
Refactor coroutine testing setup (#1583)
* coroutine-utils: init

* coroutine-utils-testing: init

* format-common: switch over to using DispatcherProvider

* Convert Binds method to an extension function

* Add Dispatcher module
2021-12-09 04:37:54 +00:00
Harsh Shandilya
120dc5fca4
all: switch to new convention plugins 2021-12-03 12:59:57 +05:30
Harsh Shandilya
fc211418c4
Implement workarounds for Dependabot to update dependencies (#1552) 2021-11-30 12:26:05 +00:00
Harsh Shandilya
0fad4d24b5
build: apply kotlin-common convention plugin where applicable 2021-11-16 00:22:17 +05:30
Harsh Shandilya
0834c979a5
app: add Material3 themes 2021-11-03 15:07:00 +05:30
Harsh Shandilya
aac74ae451
Switch new PGP backend to use PGPainless (#1522)
* crypto-pgpainless: init

* crypto-pgpainless: add an opinionated CryptoHandler impl

* app: migrate to crypto-pgpainless

* crypto-pgp: remove

* github: remove now unused instrumentation tests job

* crypto-common: fixup package names

* wip(crypto-pgpainless): add `PGPKeyPair` and `PGPKeyManager`

Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
(cherry picked from commit 02d07e9e797a8600cc8c534a731dfffcc44cfdde)

* crypto-pgpainless: use hex-encoded key IDs

* crypto-pgpainless: replace legacy Gopenpgp-generated key file

* crypto-pgpainless: fix CryptoConstants source set

* crypto-pgpainless: fix tests

* crypto-pgpainless: reinstate PGPKeyManager tests

Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
2021-10-23 17:02:50 +05:30
Harsh Shandilya
6df3ba0083
Upgrade plugin dependencies and fix Javadoc generation (#1517)
* build: upgrade all plugins

* autofill-parser/openpgp-ktx: apply Dokka plugin

* Move repository configuration to settings.gradle.kts

* Replace deprecated lintOptions

* Reorder repositories
2021-10-09 13:13:14 +05:30
(´⌣`ʃƪ)
2cef6a5bb4
Replace Timber with logcat (#1509)
* Replace Timber with logcat (#1505)

* Add extension for asLog which takes a message param

Co-authored-by: Aditya Wasan <adityawasan55@gmail.com>
2021-10-03 14:02:15 +05:30
Harsh Shandilya
1738364d2f
Make password generator parameter changes reactive (#1480)
* Make XkPassword generator reactive

* Handle empty strings

* Make password generator reactive

* Sync changelog for 1.13.5 release

* Add to changelog
2021-08-08 13:06:26 +05:30
Harsh Shandilya
6004addf62
Upgrade Compose and other AndroidX libraries (#1477)
* app: re-enable Compose

* app: remove inapplicable lint suppression

* gradle: bump AndroidX dependencies
2021-08-05 02:11:31 +05:30
Harsh Shandilya
392ad847bf
Cleanup and fix CI tests (#1464) 2021-07-19 16:31:37 +05:30
Harsh Shandilya
fd6d0e52fc
Upgrade dependencies and temporarily disable Compose (#1457) 2021-07-15 06:44:05 +00:00
Harsh Shandilya
6e4ffe2902
Add initial implementation of Gopenpgp-backed PGP (#1441) 2021-07-11 17:22:26 +00:00
Harsh Shandilya
7bbdfcf6f6
Remove LeakCanary from snapshot builds (#1435) 2021-06-07 17:18:17 +00:00
Harsh Shandilya
fbb4dafc1c
gradle: update AndroidX dependencies (#1430)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-06-04 11:30:30 +05:30
Aditya Wasan
373a46f73a
Add compose dependencies (#1421)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2021-05-25 09:45:26 +00:00
Harsh Shandilya
f2ad7e489f
lint: one bug fixed and another takes its place
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-05-22 22:16:52 +05:30
SphericalKat
9fcbde2f07
chore(format): format code using spotless
Signed-off-by: SphericalKat <amolele@gmail.com>
2021-05-22 13:41:51 +05:30
SphericalKat
49d8183917
fix(tests): return null/default values from faked android sdk
fixes behaviour of getFilesDir

Signed-off-by: SphericalKat <amolele@gmail.com>
2021-05-17 14:45:34 +05:30
SphericalKat
f377510afb
chore(build): add mock shared preference dependency
Signed-off-by: SphericalKat <amolele@gmail.com>
2021-05-17 14:19:02 +05:30
Harsh Shandilya
859dc008bc
Upgrade Gradle and androidx.annotation (#1407) 2021-05-12 16:11:32 +05:30
Harsh Shandilya
4880e1db27
Upgrade to Kotlin 1.5 (#1397)
* build: upgrade Kotlin to 1.5.0 and Hilt to 2.35.1

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* all: address kotlin.time.seconds deprecation

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* autofill-parser/openpgp-ktx: require Kotlin 1.5

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* all: address string method deprecations

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build: disable NewApi lint

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-28 10:27:14 +05:30
Harsh Shandilya
213778122c
Migrate some tests to Robolectric (#1389)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-19 17:13:12 +05:30
Harsh Shandilya
a3ebcfcc62
app: switch to format-common's PasswordEntry
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-18 04:22:52 +05:30
Harsh Shandilya
a0fdd6ddc3
app: configure Hilt and desugaring
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-18 04:03:17 +05:30
Harsh Shandilya
cfbdb5f92a
Update to Gradle 7.0 (#1381) 2021-04-12 12:08:06 +00:00
Amogh Lele
7acbf0eda8
Switch to sublime text's fuzzy matching (#1372)
* refactor(search): use sublime text's fuzzy matching algorithm

Signed-off-by: SphericalKat <amolele@gmail.com>

* chore(changelog): update

Signed-off-by: SphericalKat <amolele@gmail.com>

* build: fetch sublime-fuzzy from Maven Central

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* chore(changelog): update

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2021-04-07 11:02:41 +05:30
Harsh Shandilya
774fda83ac
all: reformat with ktfmt
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-03-18 11:40:30 +05:30
Harsh Shandilya
be31ae37f4
all: update copyrights
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2021-03-18 11:26:48 +05:30
Harsh Shandilya
3a2cfd22e6
Migrate versioning to Gradle plugin and automate version bumps (#1282) 2021-01-20 20:27:04 +05:30
Harsh Shandilya
8bd156dea6
Rework settings to use ModernAndroidPreferences (#1236)
Co-authored-by: Fabian Henneke <fabian@hen.ne.ke>
2021-01-12 11:19:28 +05:30
Harsh Shandilya
1a774eae23
Automate Crowdin localisation sync (#1265)
* build: add a Gradle plugin for Crowdin

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build/crowdin: add skipCleanup extension property

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build/crowdin: also handle nonFree source set

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* build/crowdin: fixup directory names for nonFree variant

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* app: sync translations from Crowdin

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* github: add Crowdin sync workflow

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-12-30 11:06:51 +01:00
Harsh Shandilya
6a6201f2ed
Dependency updates (#1229) 2020-12-03 22:02:01 +05:30
Harsh Shandilya
61b5285e4e
build: use vendored openpgp-ktx
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-11-29 17:51:16 +05:30
Harsh Shandilya
d3c1a73050
build: refactor for configuration cache compatibility (#1208)
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-11-15 09:34:14 +01:00
Fabian Henneke
1d13a1fbd6
Improve Autofill UI and enable inline presentations (#1181)
* Improve Autofill UI and enable inline presentations

Improves the Autofill UI in the following ways:

* Add support for Android 11 inline presentations of Autofill datasets.
* Instead of showing the identifier (app name or web origin) of the
current app on top of every Autofill dataset, it is now shown 1) as a
header dataset on Android 9 and 10 as well as 2) at the top of the
search activity on all supported versions of Android. Rationale: The
identifier is only used in trust decisions when choosing an existing
entry to fill and should feature prominently in that view, not
elsewhere.
* Show the actual identifier part of a matched entry's path, which may
differ from the identifier of the matched app/website.
* Slightly tweak the labels of Search/Generate Autofill actions to
indicate that a) this is about entries and b) the user may skip the
generation of a password and supply a custom one as well.

* Suppress lint error

* Address review comments

* Add a fixme about properly handling fill-in datasets

* CHANGELOG: add entry for inline presentation

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* Remove unused parameter

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-11-02 20:25:37 +01:00