Commit graph

44 commits

Author SHA1 Message Date
Harsh Shandilya
cb6a92e1d3
refactor(pgpainless): rework runTest invocation 2023-05-06 01:59:35 +05:30
renovate[bot]
d04e1fa368
fix(deps): update dependency com.facebook:ktfmt to v0.44 (#2490)
* fix(deps): update dependency com.facebook:ktfmt to v0.44

* chore: reformat with ktfmt 0.44

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2023-04-29 01:28:41 +00:00
Harsh Shandilya
53497c0365
feat(lint): update baselines 2023-04-27 01:37:20 +05:30
Harsh Shandilya
ca327555cd
refactor(build): introduce a standalone plugin for Kotlin JVM libraries 2023-04-27 01:34:35 +05:30
Harsh Shandilya
1e74012656
fix: remove NoKeysProvided error
We're making this invariant impossible in the code paths that hit it
2023-03-25 12:26:01 +05:30
Harsh Shandilya
2f524fc2b7
fix(build): remove DSL_SCOPE_VIOLATION suppression
This was a Gradle bug that is now fixed https://docs.gradle.org/8.1-rc-1/release-notes.html#:~:text=Access%20to%20version%20catalog%20for%20plugins%20in%20the%20plugins%20%7B%7D%20block
2023-03-21 13:43:09 +05:30
Harsh Shandilya
f9d71e827d
feat(crypto-pgpainless): add PGPKeyManager test for keys with shared email 2022-11-09 14:59:42 +05:30
Harsh Shandilya
53a6007cac
feat(crypto-pgpainless): add PGPainlessCryptoHandler test for keys with shared email 2022-11-09 14:59:38 +05:30
Harsh Shandilya
56af2c936b
fix(crypto-pgpainless): pass test parameter directly where needed
Prevents unnecessary runs of tests that don't use the parameter
2022-11-07 21:21:59 +05:30
Harsh Shandilya
538ddbfd95
feat(app): wire in ASCII armor toggle 2022-10-29 04:37:04 +05:30
Harsh Shandilya
b4c9115365
feat(crypto-pgpainless): add a test for ASCII output 2022-10-29 04:37:04 +05:30
Harsh Shandilya
633cbe2714
feat(crypto-common): support passing arbitrary crypto options 2022-10-29 04:36:00 +05:30
Harsh Shandilya
edc110dcc1
chore(gradle): add missing suppressions and license headers 2022-10-24 14:46:38 +05:30
LckyDev
6f049fdcef
Clean up issues reported by Detekt (crypto-pgpainless.xml) (#2176) 2022-10-11 18:10:19 +00:00
Harsh Shandilya
8fca1bfc75
Use a simpler SecretKeyRingProtector (#2099) 2022-09-01 04:56:28 +00:00
Harsh Shandilya
8129495608
Implement support for .gpg-id (#2080) 2022-08-24 17:14:02 +00:00
Harsh Shandilya
8f7e4a405e
Upgrade all dependencies (#2057)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-11 18:34:25 +00:00
Harsh Shandilya
8292398349
Add KeyUtils#tryGetEmail 2022-07-18 23:04:58 +05:30
Harsh Shandilya
c0f04bec77
Rework key deletion to accept an identifier 2022-07-18 17:08:49 +05:30
Harsh Shandilya
15f2489550
crypto: consistently use secret key nomenclature 2022-07-18 00:01:06 +05:30
Harsh Shandilya
b9f4da71ea
crypto-pgpainless: allow updating existing keys automatically for specific cases 2022-07-17 22:38:27 +05:30
Harsh Shandilya
d646415977
Add missing asserts to PGPainlessCryptoHandler tests (#2010)
Add missing asserts
2022-07-16 23:25:03 +05:30
Harsh Shandilya
db01ed2a2e
Use KeyRingUtils#publicKeyRingCollectionFrom to extract public keys (#2009) 2022-07-16 15:55:04 +00:00
Harsh Shandilya
549ee790d3
all: re-do package structure yet again 2022-07-15 01:13:47 +05:30
Harsh Shandilya
d23b0c5d6f
Fix PGPainless backend key handling (#2000) 2022-07-13 19:12:23 +00:00
Harsh Shandilya
d65fc88a14
Reimplement PGPainless encryption logic (#1955)
* crypto-pgpainless: reimplement encryption logic

* crypto-pgpainless: add an explicit error type for empty keyset
2022-06-14 07:30:54 +00:00
Harsh Shandilya
fee7510496
Miscellaneous cleanups (#1934)
* build-logic: cleanups

* coroutine-utils-testing: cleanups

* coroutine-utils: cleanups

* crypto-common: cleanups

* crypto-pgpainless: cleanups

* format-common: cleanups
2022-06-04 09:11:52 +00:00
Harsh Shandilya
c555609f16
Misc cleanups (#1891) 2022-05-02 20:18:16 +00:00
Harsh Shandilya
d4a4ac06ed
crypto-pgpainless: prepare for error handling (#1877) 2022-04-27 17:02:36 +00:00
Harsh Shandilya
aaf6ceb8ec
all: reformat with ktfmt 0.36 2022-04-25 10:47:02 +05:30
Harsh Shandilya
62902ca80b
Reorganize crypto-common code and fix a couple minor bugs (#1868) 2022-04-24 15:55:34 +00:00
Aditya Wasan
9c9616d047
fix: ignore CancellationException in suspend functions (#1794)
* fix: ignore `CancellationException` in suspend functions

Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>

* build(coroutine-utils): use `api` instead of `implementation`

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

Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2022-03-23 12:48:06 +00:00
Harsh Shandilya
f08ad35d2e
Expand tests for multiple identity keys (#1743) 2022-02-22 14:33:03 +05:30
Harsh Shandilya
bbbcc76d65
Add failing test for multiple identities (#1741) 2022-02-21 20:12:19 +05:30
Harsh Shandilya
5509558eed
Parameterize key and key identifier types for KeyManager (#1669) 2022-01-18 17:40:16 +05:30
Harsh Shandilya
799f1393e4
Make CryptoHandler use Key as the abstraction layer (#1651) 2022-01-09 16:19:52 +05:30
Harsh Shandilya
ccb33af854
Refactor and simplify KeyManager API (#1650) 2022-01-09 10:07:45 +00:00
Harsh Shandilya
674a7d299b
Misc cleanups to build-logic and expand BCV exclusion list (#1622)
* build-logic: remove `kotlin-dsl-precompiled-script-plugins` plugin

* build-logic: use generated accessors for extensions

* build: exclude non-published library projects from API dump

There's no point in tracking binary compatibility for libraries that are only used internally
2021-12-26 06:29:57 +00:00
Harsh Shandilya
208eed4269
Turn on explicit API for Kotlin JVM projects (#1568) 2021-12-03 09:38:33 +00:00
Harsh Shandilya
1ade4eaf64
Cleanup dependency declarations and upgrade to Kotlin 1.6.0 (#1565) 2021-12-02 19:09:54 +00:00
Harsh Shandilya
0fad4d24b5
build: apply kotlin-common convention plugin where applicable 2021-11-16 00:22:17 +05:30
Harsh Shandilya
1040552dbf
all: spotless 2021-11-15 23:54:11 +05:30
Harsh Shandilya
7570bc8451
Add encrypt/decrypt tests for PGPainless (#1527)
* Remove redundant visibility modifiers

* Move key getter to TestUtils

* Add encrypt/decrypt tests to PGPainlessCryptoHandler
2021-10-28 17:57:05 +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