Commit Graph

5308 Commits

Author SHA1 Message Date
Nik Clayton d66d9d32a4
refactor: Prune cached media using a worker (#529)
Previous code would prune any cached media every time `MainActivity` was
created, causing extra IO just as the user is trying to use the app.

Re-implement as a WorkManager worker so it can run when the device is
idle, without interfering with the responsiveness of the device.
2024-03-14 13:31:18 +01:00
Nik Clayton 6f8a3f20a9
chore: Add TODO for more specific error message in the future (#528) 2024-03-14 12:32:23 +01:00
Nik Clayton faee20dee4
chore: Ignore any files in app/*/release (#527)
Ensures release build files are ignored irrespective of the build type.
2024-03-14 12:32:13 +01:00
Angelo Suzuki 5be93acf6b
feat: Improve Image Viewer toolbar auto-hide (#521)
Cancel the auto-hide behavior in case the toolbar menu items are
interacted with.

Improves https://github.com/pachli/pachli-android/issues/505,
https://github.com/pachli/pachli-android/issues/507

---------

Co-authored-by: Nik Clayton <nik@ngo.org.uk>
2024-03-13 20:19:46 +01:00
Nik Clayton d9fc664a63
refactor: Remove obsolete emoji-related resources (#526) 2024-03-13 11:29:45 +01:00
Nik Clayton cfc15c8f64
refactor: Use LinearProgressIndicator with delayed show/hide (#525)
Previous code used a normal ProgressBar and a coroutine to delay
hiding/showing the bar for a snappier UI perception.

This is built-in functionality in LinearProgressIndicator, so switch to
that.

While I'm here, implement the "Select list" dialog's layout as a layout
resource.
2024-03-13 10:03:10 +01:00
Nik Clayton 006c358053 fix: Sort lists by title wherever they occur 2024-03-12 19:52:45 +01:00
Nik Clayton 7da4bc090b fix: Update tabs when lists are renamed or deleted
If the user has tabs containing one or more lists, and any of those
lists are renamed or deleted then the change should be reflected in the
tabs.

To do that:

`MainActivity`:

- Re-create tabs whenever lists are loaded and there's a list in a tab
- Compare lists-in-tabs by the ID of the list when restoring the user's
  tab, so that a list rename doesn't lose their position.

`NetworkListsRepository`:

- Update the user's tab preferences whenever lists are loaded, removing
  tabs that contain lists that have been deleted, and updating the
  list's title for lists that have been renamed.

Fixes #192
2024-03-12 19:52:45 +01:00
Nik Clayton a973f67ac8 refactor: Store tab preferences as polymorphic JSON 2024-03-12 19:52:45 +01:00
Nik Clayton e93e4ffb53
feat: Support client filters in GoToSocial 0.15.0 (#523) 2024-03-11 23:14:57 +01:00
Nik Clayton 805a2a9b1d feat: Show "Followed hashtags" menu item in left-nav 2024-03-11 21:31:34 +01:00
Nik Clayton 65a0fb19d9 feat: Tapping followed hashtag names in lists opens relevant timeline 2024-03-11 21:31:34 +01:00
Nik Clayton 4762411147
refactor: Replace custom worker factory with HiltWorkerFactory (#517)
Removes the need for a separate `WorkerModule` and factory methods in
each worker.
2024-03-11 10:49:58 +01:00
Nik Clayton 442f3bc80c
feat: Show user's lists in the left-side navigation menu (#514)
Previously to view a list the user either had to add it to a tab, or tap
through "Lists" in the navigation menu to their list of lists, and then
tap the list they want.

Fix that, and show all their lists in a dedicated section in the menu,
with a new "Manage lists" entry that's functionality identical to the
old "Lists" entry (i.e., it shows their lists and allows them to create,
delete, and edit list settings).

To do that:

- Implement a proper `ListsRepository` as the single source of truth for
list implementation throughout the app. Expose the current list of lists
as a flow, with methods to perform operations on the lists.

- Collect the `ListsRepository` flow in `MainActivity` and use that to
populate the menu and update it whenever the user's lists change.

- Rewrite the activities and fragments that manipulate lists to use
`ListRepository`.

- Always show error snackbars when list operations fail. In particular,
the HTTP code and error are always shown.

- Delete the custom `Either` implementation, it's no longer used.

- Add types for modelling API responses and errors, `ApiResponse` and
`ApiError` respectively. The response includes the headers as well as
the body, so it can replace the use of `NetworkResult` and `Response`.
The actual result of the operation is expected to be carried in a
`com.github.michaelbull.result.Result` type. Implement a Retrofit call
adapter for these types.

Unit tests for these borrow heavily from
https://github.com/connyduck/networkresult-calladapter

Additional user-visible changes:

- Add an accessible "Refresh" menu item to `ListsActivity`.

- Adding a list to a tab has a dialog with a "Manage lists" option.
Previously that would close the dialog when clicked, so the user had to
re-open it on returning from list management. Now the dialog stays open.

- The soft keyboard automatically opens when creating or editing a list.
2024-03-10 23:14:21 +01:00
Nik Clayton a4dc3b85bd
fix: Show sized placeholder for hidden account media (#516)
Previous code showed a small icon for account media that the user has
hidden.

Now determine the correct size / aspect ratio for the media and use that
to compute the placeholder (either a blurhash, or the link colour for
consistency with the view on a timeline).

Fixes #513
2024-03-10 23:13:58 +01:00
Angelo Suzuki bdf2d9329e
feat: Auto-hide Image Viewer toolbar (#507)
Previous code showed the toolbar and caption when displaying the image,
and the user has to tap the screen to dismiss it.

New code is consistent with the video viewer; the toolbar and caption
is displayed for two seconds, and then auto-hides.

- Tapping after the hide displays the toolbar and caption, which will
  not auto-hide and requires a second tap to dismiss.

- Tapping the caption before it's hidden cancels the auto-hide

Fixes #505
2024-03-10 23:13:40 +01:00
Nik Clayton 0445e187df
fix: Ensure logging out accounts completes (#515)
The account logout process could fail due to API exceptions; network
errors for example, or if the user had already revoked the app's token
for that account. This would prevent the rest of the logout process
(cleaning database, etc) from completing.

Fix this by ignoring network errors during the logout process, and
always cleaning up account content in the database.

Fix a related issue where a deleted account might be recreated in a
partial state if the account's visible position was saved after it was
deleted. The recreated account couldn't do anything as it had no tokens,
but is very confusing.
2024-03-10 12:25:12 +01:00
sanao 0105a8179c
test: close DB in TimelineDaoTest (#512)
The previous code forgot to close the DB after TimelineDaoTest was run,
so a warning message was displayed when the test was run locally.

Close the database using the `@After` annotation.

Fixes #511
2024-03-08 11:40:51 +01:00
renovate[bot] 21b85fce1b
fix(deps): update dependency app.cash.turbine:turbine to v1.1.0 (#506)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [app.cash.turbine:turbine](https://togithub.com/cashapp/turbine) |
`1.0.0` -> `1.1.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/app.cash.turbine:turbine/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/app.cash.turbine:turbine/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/app.cash.turbine:turbine/1.0.0/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/app.cash.turbine:turbine/1.0.0/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>cashapp/turbine (app.cash.turbine:turbine)</summary>

###
[`v1.1.0`](https://togithub.com/cashapp/turbine/blob/HEAD/CHANGELOG.md#110---2024-03-06)

[Compare
Source](https://togithub.com/cashapp/turbine/compare/1.0.0...1.1.0)

[1.1.0]: https://togithub.com/cashapp/turbine/releases/tag/1.1.0

##### Changed

-   Add `wasmJs` target, remove `iosArm32` and `watchosX86` targets.
-   Throw unconsumed events if scope is externally canceled.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjcuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyNy4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-06 21:01:55 +01:00
Nik Clayton 32a6d3465b
feat: Include "Notifications" in the left-side navigation menu (#504)
Previously the only way to access notifications was to dedicate a tab to
them. Now notifications are available from the left-side navigation menu
so they're always accessible.

Add them to the top of the list, and swap the order of bookmarks and
favourites, assuming that users are more likely to want to see their
bookmarks than their favourites.

Move "Edit profile" to the bottom with the other settings options,
assuming that editing their profile does not happen very often, so
should not be at the top of the list.
2024-03-05 14:45:28 +01:00
renovate[bot] 51d2c4cbda
chore(deps): update kotlin (#447)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [com.google.devtools.ksp](https://goo.gle/ksp)
([source](https://togithub.com/google/ksp)) | `1.9.22-1.0.17` ->
`1.9.22-1.0.18` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.devtools.ksp/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.devtools.ksp/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.devtools.ksp/1.9.22-1.0.17/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.devtools.ksp/1.9.22-1.0.17/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin](https://goo.gle/ksp)
([source](https://togithub.com/google/ksp)) | `1.9.22-1.0.17` ->
`1.9.22-1.0.18` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin/1.9.22-1.0.17/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin/1.9.22-1.0.17/1.9.22-1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[org.jetbrains.kotlinx:kotlinx-coroutines-test](https://togithub.com/Kotlin/kotlinx.coroutines)
| `1.7.3` -> `1.8.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlinx:kotlinx-coroutines-test/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.jetbrains.kotlinx:kotlinx-coroutines-test/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.jetbrains.kotlinx:kotlinx-coroutines-test/1.7.3/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlinx:kotlinx-coroutines-test/1.7.3/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[org.jetbrains.kotlinx:kotlinx-coroutines-android](https://togithub.com/Kotlin/kotlinx.coroutines)
| `1.7.3` -> `1.8.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlinx:kotlinx-coroutines-android/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.jetbrains.kotlinx:kotlinx-coroutines-android/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.jetbrains.kotlinx:kotlinx-coroutines-android/1.7.3/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlinx:kotlinx-coroutines-android/1.7.3/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>Kotlin/kotlinx.coroutines
(org.jetbrains.kotlinx:kotlinx-coroutines-test)</summary>

###
[`v1.8.0`](https://togithub.com/Kotlin/kotlinx.coroutines/blob/HEAD/CHANGES.md#Version-180)

[Compare
Source](https://togithub.com/Kotlin/kotlinx.coroutines/compare/1.7.3...1.8.0)

- Implement the library for the Web Assembly (Wasm) for JavaScript
([#&#8203;3713](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3713)).
Thanks [@&#8203;igoriakovlev](https://togithub.com/igoriakovlev)!
-   Major Kotlin version update: was 1.8.20, became 1.9.21.
- On Android, ensure that `Dispatchers.Main !=
Dispatchers.Main.immediate`
([#&#8203;3545](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3545),
[#&#8203;3963](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3963)).
- Fixed a bug that caused `Flow` operators that limit cancel the
upstream flow to forget that they were already finished if there is
another such operator upstream
([#&#8203;4035](https://togithub.com/Kotlin/kotlinx.coroutines/issues/4035),
[#&#8203;4038](https://togithub.com/Kotlin/kotlinx.coroutines/issues/4038))
- `kotlinx-coroutines-debug` is published with the correct Java 9 module
info
([#&#8203;3944](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3944)).
- `kotlinx-coroutines-debug` no longer requires manually setting
`DebugProbes.enableCoroutineCreationStackTraces` to `false`, it's the
default
([#&#8203;3783](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3783)).
- `kotlinx-coroutines-test`: set the default timeout of `runTest` to 60
seconds, added the ability to configure it on the JVM with the
`kotlinx.coroutines.test.default_timeout=10s`
([#&#8203;3800](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3800)).
- `kotlinx-coroutines-test`: fixed a bug that could lead to not all
uncaught exceptions being reported after some tests failed
([#&#8203;3800](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3800)).
- `delay(Duration)` rounds nanoseconds up to whole milliseconds and not
down
([#&#8203;3920](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3920)).
Thanks [@&#8203;kevincianfarini](https://togithub.com/kevincianfarini)!
- `Dispatchers.Default` and the default thread for background work are
guaranteed to use the same context classloader as the object containing
it them
([#&#8203;3832](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3832)).
- It is guaranteed that by the time `SharedFlow.collect` suspends for
the first time, it's registered as a subscriber for that `SharedFlow`
([#&#8203;3885](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3885)).
Before, it was also true, but not documented.
- Atomicfu version is updated to 0.23.1, and Kotlin/Native atomic
transformations are enabled, reducing the footprint of coroutine-heavy
code
([#&#8203;3954](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3954)).
- Added a workaround for miscompilation of `withLock` on JS
([#&#8203;3881](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3881)).
Thanks [@&#8203;CLOVIS-AI](https://togithub.com/CLOVIS-AI)!
-   Small tweaks and documentation fixes.

##### Changelog relative to version 1.8.0-RC2

- `kotlinx-coroutines-debug` no longer requires manually setting
`DebugProbes.enableCoroutineCreationStackTraces` to `false`, it's the
default
([#&#8203;3783](https://togithub.com/Kotlin/kotlinx.coroutines/issues/3783)).
- Fixed a bug that caused `Flow` operators that limit cancel the
upstream flow to forget that they were already finished if there is
another such operator upstream
([#&#8203;4035](https://togithub.com/Kotlin/kotlinx.coroutines/issues/4035),
[#&#8203;4038](https://togithub.com/Kotlin/kotlinx.coroutines/issues/4038))
-   Small documentation fixes.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNzMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 20:35:05 +01:00
Juan M Sevilla a8dc83a63c fix(l10n): Update Spanish translations
Currently translated at 100.0% (61 of 61 strings)

Translation: Pachli/Feature/About : Main
Translate-URL: https://hosted.weblate.org/projects/pachli/featureabout-main/es/
2024-03-04 20:33:08 +01:00
Juan M Sevilla 92eb9f32b7 fix(l10n): Update Spanish translations
Currently translated at 100.0% (623 of 623 strings)

Translation: Pachli/App : Main
Translate-URL: https://hosted.weblate.org/projects/pachli/app-main/es/
2024-03-04 20:33:08 +01:00
Juan M Sevilla f9e2c7a47c fix(l10n): Update Spanish translations
Currently translated at 100.0% (4 of 4 strings)

Translation: Pachli/Core/Network : Main
Translate-URL: https://hosted.weblate.org/projects/pachli/corenetwork-main/es/
2024-03-04 20:33:08 +01:00
Juan M Sevilla 5ba2dfb091 fix(l10n): Update Spanish translations
Currently translated at 40.0% (6 of 15 strings)

Translation: Pachli/Fastlane Metadata
Translate-URL: https://hosted.weblate.org/projects/pachli/fastlane-metadata/es/
2024-03-04 20:33:08 +01:00
renovate[bot] f8fed14ba1
fix(deps): update dependency ch.qos.logback:logback-classic to v1.5.3 (#294)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [ch.qos.logback:logback-classic](http://logback.qos.ch)
([source](https://togithub.com/qos-ch/logback),
[changelog](https://logback.qos.ch/news.html)) | `1.4.11` -> `1.5.3` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/ch.qos.logback:logback-classic/1.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/ch.qos.logback:logback-classic/1.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/ch.qos.logback:logback-classic/1.4.11/1.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/ch.qos.logback:logback-classic/1.4.11/1.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuMjIwLjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 20:18:13 +01:00
renovate[bot] dcfdfb8aec
fix(deps): update androidx.lifecycle to v2.7.0 (#361)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[androidx.lifecycle:lifecycle-viewmodel-ktx](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.7.0)
([source](https://cs.android.com/androidx/platform/frameworks/support))
| `2.6.2` -> `2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/androidx.lifecycle:lifecycle-viewmodel-ktx/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/androidx.lifecycle:lifecycle-viewmodel-ktx/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/androidx.lifecycle:lifecycle-viewmodel-ktx/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/androidx.lifecycle:lifecycle-viewmodel-ktx/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[androidx.lifecycle:lifecycle-reactivestreams-ktx](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.7.0)
([source](https://cs.android.com/androidx/platform/frameworks/support))
| `2.6.2` -> `2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/androidx.lifecycle:lifecycle-reactivestreams-ktx/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/androidx.lifecycle:lifecycle-reactivestreams-ktx/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/androidx.lifecycle:lifecycle-reactivestreams-ktx/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/androidx.lifecycle:lifecycle-reactivestreams-ktx/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[androidx.lifecycle:lifecycle-livedata-ktx](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.7.0)
([source](https://cs.android.com/androidx/platform/frameworks/support))
| `2.6.2` -> `2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/androidx.lifecycle:lifecycle-livedata-ktx/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/androidx.lifecycle:lifecycle-livedata-ktx/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/androidx.lifecycle:lifecycle-livedata-ktx/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/androidx.lifecycle:lifecycle-livedata-ktx/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[androidx.lifecycle:lifecycle-common-java8](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.7.0)
([source](https://cs.android.com/androidx/platform/frameworks/support))
| `2.6.2` -> `2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/androidx.lifecycle:lifecycle-common-java8/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/androidx.lifecycle:lifecycle-common-java8/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/androidx.lifecycle:lifecycle-common-java8/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/androidx.lifecycle:lifecycle-common-java8/2.6.2/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMjcuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 18:09:10 +01:00
Nik Clayton 0f5207630b
chore(deps): Use Android Gradle Plugin from version catalog (#501) 2024-03-04 17:51:25 +01:00
Nik Clayton 83c46ad38d
ci: Experiment with daemon workers on CI 2024-03-04 17:24:50 +01:00
renovate[bot] 0d29a125d6
fix(deps): update kotlin.result to v1.1.20 (#497)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.michael-bull.kotlin-result:kotlin-result-coroutines](https://togithub.com/michaelbull/kotlin-result)
| `1.1.18` -> `1.1.20` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.michael-bull.kotlin-result:kotlin-result-coroutines/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.michael-bull.kotlin-result:kotlin-result-coroutines/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.michael-bull.kotlin-result:kotlin-result-coroutines/1.1.18/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.michael-bull.kotlin-result:kotlin-result-coroutines/1.1.18/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.michael-bull.kotlin-result:kotlin-result](https://togithub.com/michaelbull/kotlin-result)
| `1.1.18` -> `1.1.20` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.michael-bull.kotlin-result:kotlin-result/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.michael-bull.kotlin-result:kotlin-result/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.michael-bull.kotlin-result:kotlin-result/1.1.18/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.michael-bull.kotlin-result:kotlin-result/1.1.18/1.1.20?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>michaelbull/kotlin-result
(com.michael-bull.kotlin-result:kotlin-result-coroutines)</summary>

###
[`v1.1.20`](https://togithub.com/michaelbull/kotlin-result/releases/tag/1.1.20)

[Compare
Source](https://togithub.com/michaelbull/kotlin-result/compare/1.1.19...1.1.20)

- Pin GitHub actions by commit hash
([`8893187`](8893187a3a))
- See:
https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions
- Add more build targets for coroutines extensions
([`a522fbd`](a522fbd3e7))
- `kotlinx-coroutines` has since started publishing more native build
targets since we first became multiplatform. This release ensures we
also build native targets for the platforms that were previously
missing, namely:
        -   `androidNativeArm32`
        -   `androidNativeArm64`
        -   `androidNativeX64`
        -   `androidNativeX86`
        -   `linuxArm64`
        -   `wasmJs`
- This ensures that we are now supporting all three tiers of
[Kotlin/Native target
support](https://kotlinlang.org/docs/native-target-support.html).

###
[`v1.1.19`](https://togithub.com/michaelbull/kotlin-result/releases/tag/1.1.19)

[Compare
Source](https://togithub.com/michaelbull/kotlin-result/compare/1.1.18...1.1.19)

- Document the order of output lists in Iterable.kt by
[@&#8203;peter-cunderlik-kmed](https://togithub.com/peter-cunderlik-kmed)
([`e81f581`](e81f581436))
- Add `zipOrAccumulate` by
[@&#8203;YuitoSato](https://togithub.com/YuitoSato)
([`27f0a63`](27f0a63847))
- Update Kotlin to 1.9.20
([`05a1e91`](05a1e91298))
- ***"In Kotlin 1.9.20, we've also removed a number of previously
deprecated targets, namely:"***
        -   iosArm32
        -   watchosX86
        -   wasm32
        -   mingwX86
        -   linuxMips32
        -   linuxMipsel32
    -   See: https://kotl.in/native-targets-tiers
- Add `andThen{Recover,RecoverIf,RecoverUnless}` by
[@&#8203;Jhabkin](https://togithub.com/Jhabkin)
([`d4414b1`](d4414b1a08))
- Facilitate mapping to arbitrary types in `and`/`or` functions
([`05d50b7`](05d50b7fec))
- See
[#&#8203;95](https://togithub.com/michaelbull/kotlin-result/issues/95)
- Extract shared build logic to convention plugins
([`88e31cd`](88e31cd1ac))
- See:
https://docs.gradle.org/current/userguide/sharing_build_logic_between_subprojects.html#sec:convention_plugins

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 17:23:37 +01:00
renovate[bot] 84bb67531a
chore(deps): update actions/github-script action to v7 (#499)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/github-script](https://togithub.com/actions/github-script) |
action | major | `v6` -> `v7` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>actions/github-script (actions/github-script)</summary>

### [`v7`](https://togithub.com/actions/github-script/compare/v6...v7)

[Compare
Source](https://togithub.com/actions/github-script/compare/v6...v7)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 17:22:55 +01:00
renovate[bot] 3fe57690ec
chore(deps): update xt0rted/pull-request-comment-branch action to v2 (#500)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[xt0rted/pull-request-comment-branch](https://togithub.com/xt0rted/pull-request-comment-branch)
| action | major | `v1` -> `v2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>xt0rted/pull-request-comment-branch
(xt0rted/pull-request-comment-branch)</summary>

###
[`v2`](https://togithub.com/xt0rted/pull-request-comment-branch/compare/v1...v2)

[Compare
Source](https://togithub.com/xt0rted/pull-request-comment-branch/compare/v1...v2)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 17:21:41 +01:00
Nik Clayton 4067e63dd4
ci: Don't compress APK files when uploading release artifacts (#496)
They're already compressed, and it slows down the workflow step.
2024-03-04 14:53:34 +01:00
renovate[bot] e5d0147fba
fix(deps): update dependency io.github.oshai:kotlin-logging-jvm to v6.0.3 (#362)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[io.github.oshai:kotlin-logging-jvm](https://togithub.com/oshai/kotlin-logging)
| `5.1.4` -> `6.0.3` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.oshai:kotlin-logging-jvm/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.oshai:kotlin-logging-jvm/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.oshai:kotlin-logging-jvm/5.1.4/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.oshai:kotlin-logging-jvm/5.1.4/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[io.github.oshai:kotlin-logging-jvm](https://togithub.com/oshai/kotlin-logging)
| `6.0.1` -> `6.0.3` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.oshai:kotlin-logging-jvm/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.oshai:kotlin-logging-jvm/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.oshai:kotlin-logging-jvm/6.0.1/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.oshai:kotlin-logging-jvm/6.0.1/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>oshai/kotlin-logging
(io.github.oshai:kotlin-logging-jvm)</summary>

###
[`v6.0.3`](https://togithub.com/oshai/kotlin-logging/releases/tag/6.0.3)

[Compare
Source](https://togithub.com/oshai/kotlin-logging/compare/6.0.2...6.0.3)

#### What's Changed

- Add Kotlin/Wasm (JS browser) support by
[@&#8203;AzimMuradov](https://togithub.com/AzimMuradov) in
[https://github.com/oshai/kotlin-logging/pull/388](https://togithub.com/oshai/kotlin-logging/pull/388)
- Bump com.diffplug.spotless from 6.23.3 to 6.24.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/390](https://togithub.com/oshai/kotlin-logging/pull/390)
- Bump actions/upload-pages-artifact from 2 to 3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/391](https://togithub.com/oshai/kotlin-logging/pull/391)
- Bump actions/deploy-pages from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/392](https://togithub.com/oshai/kotlin-logging/pull/392)
- Bump actions/cache from 3.3.2 to 3.3.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/393](https://togithub.com/oshai/kotlin-logging/pull/393)
- Log marker and stacktrace on Darwin by
[@&#8203;Gaming32](https://togithub.com/Gaming32) in
[https://github.com/oshai/kotlin-logging/pull/379](https://togithub.com/oshai/kotlin-logging/pull/379)

#### New Contributors

- [@&#8203;Gaming32](https://togithub.com/Gaming32) made their first
contribution in
[https://github.com/oshai/kotlin-logging/pull/379](https://togithub.com/oshai/kotlin-logging/pull/379)

**Full Changelog**:
https://github.com/oshai/kotlin-logging/compare/6.0.2...6.0.3

###
[`v6.0.2`](https://togithub.com/oshai/kotlin-logging/releases/tag/6.0.2)

[Compare
Source](https://togithub.com/oshai/kotlin-logging/compare/6.0.1...6.0.2)

#### What's Changed

- Bump multiplatform from 1.9.21 to 1.9.22 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/385](https://togithub.com/oshai/kotlin-logging/pull/385)
- Remove detekt by
[@&#8203;AzimMuradov](https://togithub.com/AzimMuradov) in
[https://github.com/oshai/kotlin-logging/pull/387](https://togithub.com/oshai/kotlin-logging/pull/387)
- Add workflow to publish Dokka HTML docs to project site by
[@&#8203;EdricChan03](https://togithub.com/EdricChan03) in
[https://github.com/oshai/kotlin-logging/pull/383](https://togithub.com/oshai/kotlin-logging/pull/383)

#### New Contributors

- [@&#8203;EdricChan03](https://togithub.com/EdricChan03) made their
first contribution in
[https://github.com/oshai/kotlin-logging/pull/383](https://togithub.com/oshai/kotlin-logging/pull/383)

**Full Changelog**:
https://github.com/oshai/kotlin-logging/compare/6.0.1...6.0.2

###
[`v6.0.1`](https://togithub.com/oshai/kotlin-logging/releases/tag/6.0.1)

[Compare
Source](https://togithub.com/oshai/kotlin-logging/compare/6.0.0...6.0.1)

#### What's Changed

- Bump com.diffplug.spotless from 6.22.0 to 6.23.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/377](https://togithub.com/oshai/kotlin-logging/pull/377)
- Bump actions/setup-java from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/376](https://togithub.com/oshai/kotlin-logging/pull/376)
- Bump org.jetbrains.dokka from 1.8.20 to 1.9.10 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/366](https://togithub.com/oshai/kotlin-logging/pull/366)

**Full Changelog**:
https://github.com/oshai/kotlin-logging/compare/6.0.0...6.0.1

###
[`v6.0.0`](https://togithub.com/oshai/kotlin-logging/releases/tag/6.0.0)

[Compare
Source](https://togithub.com/oshai/kotlin-logging/compare/5.1.4...6.0.0)

#### What's Changed

- Update Kotlin to 1.9.21 by
[@&#8203;AzimMuradov](https://togithub.com/AzimMuradov) in
[https://github.com/oshai/kotlin-logging/pull/380](https://togithub.com/oshai/kotlin-logging/pull/380)

#### New Contributors

- [@&#8203;AzimMuradov](https://togithub.com/AzimMuradov) made their
first contribution in
[https://github.com/oshai/kotlin-logging/pull/380](https://togithub.com/oshai/kotlin-logging/pull/380)

**Full Changelog**:
https://github.com/oshai/kotlin-logging/compare/5.1.2...6.0.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMjcuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 14:53:10 +01:00
renovate[bot] e6df78adf0
chore(deps): update hilt to v2.51 (#485)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [com.google.dagger.hilt.android](https://togithub.com/google/dagger) |
`2.50` -> `2.51` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.dagger.hilt.android/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.dagger.hilt.android/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.dagger.hilt.android/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.dagger.hilt.android/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.dagger:hilt-android-testing](https://togithub.com/google/dagger)
| `2.50` -> `2.51` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.dagger:hilt-android-testing/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.dagger:hilt-android-testing/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.dagger:hilt-android-testing/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.dagger:hilt-android-testing/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [com.google.dagger:hilt-compiler](https://togithub.com/google/dagger)
| `2.50` -> `2.51` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.dagger:hilt-compiler/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.dagger:hilt-compiler/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.dagger:hilt-compiler/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.dagger:hilt-compiler/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [com.google.dagger:hilt-android](https://togithub.com/google/dagger) |
`2.50` -> `2.51` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.dagger:hilt-android/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.dagger:hilt-android/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.dagger:hilt-android/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.dagger:hilt-android/2.50/2.51?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 14:50:08 +01:00
renovate[bot] 0f870d7425
chore(deps): update aboutlibraries to v11 (major) (#486)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| com.mikepenz.aboutlibraries.plugin | `10.10.0` -> `11.1.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz.aboutlibraries.plugin/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz.aboutlibraries.plugin/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz.aboutlibraries.plugin/10.10.0/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz.aboutlibraries.plugin/10.10.0/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.mikepenz:aboutlibraries](https://togithub.com/mikepenz/AboutLibraries)
| `10.10.0` -> `11.1.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz:aboutlibraries/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz:aboutlibraries/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz:aboutlibraries/10.10.0/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz:aboutlibraries/10.10.0/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.mikepenz:aboutlibraries-core](https://togithub.com/mikepenz/AboutLibraries)
| `10.10.0` -> `11.1.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz:aboutlibraries-core/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz:aboutlibraries-core/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz:aboutlibraries-core/10.10.0/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz:aboutlibraries-core/10.10.0/11.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>mikepenz/AboutLibraries (com.mikepenz:aboutlibraries)</summary>

###
[`v11.1.0`](https://togithub.com/mikepenz/AboutLibraries/releases/tag/v11.1.0)

##### 🚀 Features

-   Upgrade dependencies | Compose 1.6.0 | Compose Compiler | Lifecycle
- PR:
[#&#8203;950](https://togithub.com/mikepenz/AboutLibraries/issues/950)
- Make Library and Licenses data classes stable with KotlinX Collections
- PR:
[#&#8203;947](https://togithub.com/mikepenz/AboutLibraries/issues/947)
-   Compose 1.6 | KotlinX Updates
- PR:
[#&#8203;958](https://togithub.com/mikepenz/AboutLibraries/issues/958)
-   Update to compose-multiplatform 1.6.0 / compose-android 1.6.2
- PR:
[#&#8203;961](https://togithub.com/mikepenz/AboutLibraries/issues/961)

##### 🐛 Fixes

-   Fix wasm sample app no longer loading
- PR:
[#&#8203;951](https://togithub.com/mikepenz/AboutLibraries/issues/951)

##### 💬 Other

-   Update README with warning on configPath
- PR:
[#&#8203;948](https://togithub.com/mikepenz/AboutLibraries/issues/948)
-   Module specific names
- PR:
[#&#8203;952](https://togithub.com/mikepenz/AboutLibraries/issues/952)
-   Lower noise of log
- PR:
[#&#8203;956](https://togithub.com/mikepenz/AboutLibraries/issues/956)
-   Update CI gradle action
- PR:
[#&#8203;957](https://togithub.com/mikepenz/AboutLibraries/issues/957)
-   Fix CI for releases on macOS-14 runner
- PR:
[#&#8203;960](https://togithub.com/mikepenz/AboutLibraries/issues/960)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 14:16:20 +01:00
renovate[bot] 126491aecc
fix(deps): update dependency io.github.oshai:kotlin-logging-jvm to v5.1.4 (#385)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[io.github.oshai:kotlin-logging-jvm](https://togithub.com/oshai/kotlin-logging)
| `5.1.0` -> `5.1.4` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.oshai:kotlin-logging-jvm/5.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.oshai:kotlin-logging-jvm/5.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.oshai:kotlin-logging-jvm/5.1.0/5.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.oshai:kotlin-logging-jvm/5.1.0/5.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>oshai/kotlin-logging
(io.github.oshai:kotlin-logging-jvm)</summary>

###
[`v5.1.4`](https://togithub.com/oshai/kotlin-logging/releases/tag/5.1.4)

[Compare
Source](https://togithub.com/oshai/kotlin-logging/compare/5.1.1...5.1.4)

#### What's Changed

- fix - protect from uncontrolled format string by
[@&#8203;oshai](https://togithub.com/oshai) in
[https://github.com/oshai/kotlin-logging/pull/381](https://togithub.com/oshai/kotlin-logging/pull/381)

**Full Changelog**:
https://github.com/oshai/kotlin-logging/compare/5.1.1...5.1.4

###
[`v5.1.1`](https://togithub.com/oshai/kotlin-logging/releases/tag/5.1.1)

[Compare
Source](https://togithub.com/oshai/kotlin-logging/compare/5.1.0...5.1.1)

#### What's Changed

- Bump actions/checkout from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/357](https://togithub.com/oshai/kotlin-logging/pull/357)
- Bump actions/cache from 3.3.1 to 3.3.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/358](https://togithub.com/oshai/kotlin-logging/pull/358)
- Bump com.diffplug.spotless from 6.20.0 to 6.22.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/oshai/kotlin-logging/pull/362](https://togithub.com/oshai/kotlin-logging/pull/362)
- add payload to LocationAwareKLogger by
[@&#8203;oshai](https://togithub.com/oshai) in
[https://github.com/oshai/kotlin-logging/pull/332](https://togithub.com/oshai/kotlin-logging/pull/332)

**Full Changelog**:
https://github.com/oshai/kotlin-logging/compare/5.1.0...5.1.1

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMzUuMCIsInVwZGF0ZWRJblZlciI6IjM3LjEzNS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-04 13:51:01 +01:00
Nik Clayton cecbf39fbc
ci: Update release directory 2024-03-03 20:01:00 +01:00
Nik Clayton 22bb442baa
ci: Use correct release directory for variant (#495) 2024-03-03 19:41:21 +01:00
Nik Clayton 69c258365b
ci: Add workflow to build APK from PR (#493)
Debugging sometimes requires shipping APKs that have additional
instrumentation to users.

It's bad practice to encourage users to install APKs that they have been
given by a stranger on the Internet.

This new workflow will build a properly signed APK from a PR when a
specific comment is added to the PR. After building a comment is added
with a link to the workflow run and the URL the user can use to download
the APK. This allows them to be sure that the APK contains only the code
in the PR.
2024-03-03 18:50:44 +01:00
Nik Clayton dc23ea23d1
refactor: Remove last vestiges of rxJava (#492) 2024-03-03 17:38:32 +01:00
Nik Clayton da6e026cc6
refactor: Implement updateShortcut as a suspending function (#491)
Previously a regular function that created and subscribed to an rxJava
callable, now it's a suspending function that enforces Dispatchers.IO as
the context, launched in its own coroutine.
2024-03-03 17:21:04 +01:00
Nik Clayton 900b1728bf
refactor: Implement deleteStaleCachedMedia as a suspending function (#490)
Previously a regular function launched with an rxJava scheduler, now
it's a suspending function that enforces Dispatchers.IO as the context,
launched in its own coroutine.
2024-03-03 17:02:23 +01:00
Nik Clayton 1026fccc40
refactor: Restructure ViewMediaActivity and related fragments (#489)
Highlights:

- Implement fragment transitions for video to improve the UX, video
won't start playing until the transition completes
- Remove rxJava
- Move duplicate code in to base classes

Details:

`MediaActionsListener`:

- Move to `ViewMediaFragment` as it's used by both subclasses
- Remove need for separate `VideoActionsListener`
- Rename methods to better reflect their purpose and improve readability

`ViewMediaFragment`:

- Move duplicated code from `ViewImageFragment` and `ViewVideoFragment`
- Rewrite code that handles fragment transitions to use a
`CompleteableDeferred` instead of `BehaviorSubject` (removes rxJava).
- Rename methods and properties to better reflect their purpose and
improve readability
- Add extra comments

`ViewImageFragment`:
- Rewrite code that handles fragment transitions to use a
`CompleteableDeferred` instead of `BehaviorSubject` (removes rxJava).

`ViewVideoFragment`:

- Implement fragment transitions for video to improve the UX, video
won't start playing until the transition completes
- Manage toolbar visibility with a coroutine instead of a handler
- Add extra comments

`ViewMediaActivity`:
- Rename properties to better reflect their purpose and improve
readability
- Add extra comments

`ImagePagerAdapter`:
- Rename properties to better reflect their purpose and improve
readability
- Add extra comments
2024-03-03 16:07:39 +01:00
renovate[bot] 72ef8cfe4a
fix(deps): update dependency com.google.truth:truth to v1.4.2 (#484)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [com.google.truth:truth](https://togithub.com/google/truth) | `1.4.1`
-> `1.4.2` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.truth:truth/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.truth:truth/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.truth:truth/1.4.1/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.truth:truth/1.4.1/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>google/truth (com.google.truth:truth)</summary>

### [`v1.4.2`](https://togithub.com/google/truth/releases/tag/v1.4.2):
1.4.2

[Compare
Source](https://togithub.com/google/truth/compare/v1.4.1...v1.4.2)

This release is the final step of copying all our methods from `Truth8`
to `Truth`. If you have not already migrated your usages from `Truth8`
to `Truth`, you may see build errors:

OptionalSubjectTest.java:39: error: reference to assertThat is ambiguous
        assertThat(Optional.of("foo")).isPresent();
        ^
both method
assertThat(@&#8203;org.checkerframework.checker.nullness.qual.Nullable
Optional<?>) in Truth8 and method
assertThat(@&#8203;org.checkerframework.checker.nullness.qual.Nullable
Optional<?>) in Truth match

In most cases, you can migrate your whole project mechanically: `git
grep -l Truth8 | xargs perl -pi -e 's/\bTruth8\b/Truth/g;'`. (You can
make that change before upgrading to Truth 1.4.2 or as part of the same
commit.)

If you instead need to migrate your project incrementally (for example,
because it is very large), you may want to upgrade your version of Truth
incrementally, too, following our instructions for
[1.3.0](https://togithub.com/google/truth/releases/tag/v1.3.0) and
[1.4.0](https://togithub.com/google/truth/releases/tag/v1.4.0).

#### For help

Please feel welcome to [open an
issue](https://togithub.com/google/truth/issues/new) to report problems
or request help.

#### Changelog

- Removed temporary type parameters from `Truth.assertThat(Stream)` and
`Truth.assertThat(Optional)`. This can create build errors, which you
can fix by replacing all your references to `Truth8` with references to
`Truth`.
([`45782bd`](https://togithub.com/google/truth/commit/45782bd0e))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-01 23:08:02 +01:00
Nik Clayton 72e5ca887d
fix(deps): update agp to v8.3.0, lint to 31.3.0 (#483)
New lint rules highlighted a potential crash; the use of named match
groups (used here when extracting server versions) requires API >= 26 or
throws an exception.

Use the group numbers instead of names when extracting the value, but
keep the group names in the regular expressions for readability.
2024-03-01 23:07:14 +01:00
Nik Clayton b9512e49b4
fix: Ensure files are fully downloaded before sharing (#482)
The previous code would share media by either:

a. If it was an image, downloading the image using Glide in to a bitmap,
then recompressing as a PNG, saving, and sharing the resulting file.

b. Otherwise, create a temporary file, enqueue a DownloadManager request
to download the media in to the file, and immediately start sharing,
hoping that the download had completed in time.

Both approaches have problems:

In the "image" case the image was being downloaded (or retrieved from
the Glide cache), decompressed to a bitmap, then recompressed as a PNG.
This uses more memory, and doesn't share the original contents of the
file. E.g., if the original file was a JPEG that's lost (and the PNG
might well be larger than the source image).

In the second case the DownloadManager download is not guaranteed to
have completed (or even started) before the user chooses the share
destination. The destination could receive a partial or even empty file.

Fix both of those cases by always fully downloading the file before
sending the share intent. This guarantees the file is available to
share, and in its original format. Since this uses the same OkHttpClient
as the rest of the app the content is highly likely to be in the OkHttp
cache, so there will no extra network traffic because of this.
2024-03-01 21:54:30 +01:00
Nik Clayton fcae44110b
refactor: Remove synchronous search functions (#481)
The previous code used synchronous (i.e., non-suspending) functions to
call the /api/v2/search and /api/v2/accounts/search endpoints.

This is not necessary as the search was always performed in a separate
thread.

Remove, and replace their usage with the equivalent functions that
suspend.
2024-03-01 18:55:59 +01:00
Nik Clayton fb66293713
refactor: Remove duplicate strings from Filter.Action (#479)
Simplify code that users `Filter.Action` by deserialising directly into
the type instead of storing / using strings throughout the API.
2024-02-29 09:49:17 +01:00
Nik Clayton af58de5a8f
refactor: Enable core library desugaring as build convention logic (#480)
Once desugaring is enabled it needs to be enabled for up/down the
dependency chain, so enable it in the shared configuration defined by
the build convention code.

Highlighted a failing test that wasn't being run, so fix that too.
2024-02-29 09:43:44 +01:00