Commit Graph

75 Commits

Author SHA1 Message Date
renovate[bot]
d849e66ae0 Update dependency io.mockk:mockk to v1.13.11 (#259)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-22 09:12:19 +00:00
renovate[bot]
47605b9da7 Update datastore to v1.1.1 (#247)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-22 09:05:30 +00:00
renovate[bot]
bd1bd2109c Update dependency androidx.core:core-ktx to v1.13.1 (#248)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-22 08:58:26 +00:00
renovate[bot]
a227677614 Update dependency androidx.compose.material:material to v1.6.8 (#243)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-22 08:51:57 +00:00
Kirill Kamakin
67fc2dc393 Fix flaky UI test (#253)
* Update Kotlin and KSP

* Downgrade Kaspresso to last released

* Update Compose compiler extension

* Fix flaky UI test

* Update AGP version

* Fix flakySafely scope

* Fix missing system image for UI tests

* Use Intel MacOS to run UI tests

* Revert "Fix missing system image for UI tests"

This reverts commit 9003c37315f253835f3788ab2fecd402fa5522be.

* Update test device API level to 34

* Use google-atd system image source

* Update managed devices declaration syntax

* Use device and syntax from now in android app

* Try ubuntu agent for UI tests

* Use an actual emulator instead of GMD

* Use only one API level 30

* Remove Android SDK setup action

* Setup Gradle before AVD

* Use x86_64 architecture

* Replace deprecated gradle setup action

* Downgrade all dependencies again

* Run only app android tests

* Remove managed devices
2024-06-22 10:35:04 +02:00
renovate[bot]
12ff7649bb Update dependency com.squareup.leakcanary:leakcanary-android to v2.14 (#249)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-05 10:53:39 +02:00
renovate[bot]
13a73812a1 Update dependency com.android.tools.build:gradle to v8.3.2 (#246)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-10 20:07:50 +02:00
renovate[bot]
8ef10040a3 Update ktor to v2.3.10 (#245)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 10:52:06 +00:00
renovate[bot]
6f8a9520f3 Update dependency org.robolectric:robolectric to v4.12.1 (#242)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-03 07:04:59 +02:00
Kirill Kamakin
59bcf0d330 Delete AppSweep plugin (#241) 2024-04-01 14:00:27 +00:00
renovate[bot]
6b96cb0a63 Update hilt to v2.51.1 (#239)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 09:48:06 +00:00
renovate[bot]
7818ca5b00 Update dependency org.robolectric:robolectric to v4.12 (#240)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 12:25:40 +03:00
renovate[bot]
85d0312420 Update dependency org.sonarqube to v5 (#238)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-26 18:35:30 +01:00
renovate[bot]
7df4a4da8f Update dependency gradle to v8.7 (#237)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 20:03:40 +00:00
renovate[bot]
fa4e903b04 Update dependency androidx.compose:compose-bom to v2024.03.00 (#236)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 19:37:13 +00:00
renovate[bot]
b19b5831db Update dependency androidx.compose.material:material to v1.6.4 (#235)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 19:24:23 +00:00
renovate[bot]
45267597ec Update dependency com.android.tools.build:gradle to v8.3.1 (#234)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 19:56:59 +01:00
renovate[bot]
f1e200be1b Update dependency androidx.compose:compose-bom to v2024.02.02 (#230)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-06 19:52:35 +00:00
renovate[bot]
3f98b92330 Update dependency androidx.compose.material:material to v1.6.3 (#229)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-06 20:32:12 +01:00
renovate[bot]
4c1c04eca4 Update composeDestinations to v1.10.2 (#228)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 18:36:57 +00:00
renovate[bot]
3e730b0530 Update ktor to v2.3.9 (#227)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 19:24:02 +01:00
renovate[bot]
1b22ae165e Update dependency com.android.tools.build:gradle to v8.3.0 (#225)
* Update dependency com.android.tools.build:gradle to v8.3.0

* Fix plugin compilation after AGP update

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Kirill Kamakin <k.kamakin@protonmail.ch>
2024-03-03 11:41:32 +00:00
renovate[bot]
d07954f7f0 Update dependency com.google.truth:truth to v1.4.2 (#226)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-01 07:47:05 +01:00
renovate[bot]
725f4bc1ea Update dependency io.mockk:mockk to v1.13.10 (#223)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-28 19:07:07 +00:00
renovate[bot]
cf192fa939 Update hilt to v2.51 (#222)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-28 19:54:16 +01:00
renovate[bot]
fba600d600 Update composeDestinations to v1.10.1 (#219)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 19:09:20 +00:00
renovate[bot]
b3460f164c Update dependency androidx.hilt:hilt-navigation-compose to v1.2.0 (#220)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 18:54:53 +00:00
renovate[bot]
237951843a Update kaspresso to v1.5.5 (#217)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 18:30:48 +00:00
renovate[bot]
0d6ff9b914 Update dependency com.google.truth:truth to v1.4.1 (#215)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 18:14:51 +00:00
renovate[bot]
64bf96e036 Update dependency org.jetbrains.kotlinx.kover to v0.7.6 (#216)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 18:01:15 +00:00
renovate[bot]
68cd5f8500 Update coil to v2.6.0 (#218)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 17:44:42 +00:00
renovate[bot]
2955a347b5 Update dependency androidx.compose:compose-bom to v2024.02.01 (#213)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 17:32:39 +00:00
renovate[bot]
82648b6950 Update dependency androidx.compose.material:material to v1.6.2 (#212)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-24 17:20:13 +00:00
Kirill Kamakin
7461decd73 Update dependencies versions (#203) 2024-02-17 10:22:34 +00:00
Kirill Kamakin
c03c65a96b Add Kotlinx Kover test coverage calculator (#199)
* Add Kotlin Kover

* Add AuthKtorConfiguration tests

* Ensure at least 25% code coverage

* Exclude Previews from code coverage

* Specify Kover report path for SonarQube

* Add Kover xml report task

* Extract sonar to a separate step

* Add some exclusions and minimum coverage

* Exclude Hilt-generated classes

* Add shopping list view model tests

* Reduce the coverage requirement
2024-02-17 10:43:36 +01:00
Kirill Kamakin
80baf11ec4 Fix signed release build issues (#198)
* Update Gradle to 8.5

* Disable view binding generation

* Downgrade AGP to 8.1
2024-01-14 15:39:19 +00:00
Kirill Kamakin
7c02a8341d Fix displaying recipe ingredient note twice (#197)
* Update README.md

* Bump version to 35

* Cleanup dependencies

* Bump versions of dependencies

* Save isFood/disableAmount flags to db

* Fix displaying ingredient note twice

* Remove whitespace after note is extracted
2024-01-14 10:44:21 +00:00
Kirill Kamakin
de4df95a0e Complete migration to Compose (#194)
* Migrate disclaimer screen to Compose

* Migrate base URL screen to Compose

* Migrate base URL screen to Compose

* Migrate authentication screen to Compose

* Initialize add recipe screen

* Remove unused resources

* Display add recipe operation result

* Add delete icon to ingredients and instructions

* Allow navigating between fields on add recipe

* Allow navigating between fields on authentication screen

* Allow to proceed from keyboard on base url screen

* Use material icons for recipe item

* Expose base URL as flow

* Initialize Compose navigation

* Allow sending logs again

* Allow to override navigation and top bar per screen

* Add additional logs

* Migrate share recipe screen to Compose

* Fix unit tests

* Restore recipe list tests

* Ensure authentication is shown after URL input

* Add autofill to authentication

* Complete first set up test

* Use image vector from Icons instead of drawable

* Add transition animations

* Fix logging host in Host header

* Do not fail test if login token is used
2024-01-13 10:28:10 +00:00
Kirill Kamakin
f6f44c7592 Use Compose to draw the list of recipes (#187)
* Add paging-compose dependency

* Move progress indicator to separate module

* Introduce color scheme preview

* Move loading helper to UI module

* Move helper composables to UI module

* Rearrange shopping lists module

* Add LazyPagingColumnPullRefresh Composable

* Add BaseComposeFragment

* Add pagingDataRecipeState

* Add showFavoriteIcon to recipe state

* Disable unused placeholders

* Make "Try again" button optional

* Fix example email

* Wrap recipe info into a Scaffold

* Add dialog to confirm deletion

* Add RecipeItem Composable

* Add RecipeListError Composable

* Add RecipeList Composable

* Replace recipes list Views with Compose

* Update UI test

* Remove application from ViewModel
2023-11-23 06:23:30 +00:00
Kirill Kamakin
2b15e230ad Revert "Add ACRA for crash reports (#180)" (#185)
This reverts commit 3d0cf8b902.
2023-11-15 18:07:44 +00:00
Kirill Kamakin
3d0cf8b902 Add ACRA for crash reports (#180) 2023-11-11 20:53:04 +00:00
Kirill Kamakin
941d45328e Add linked ingredients to recipe step (#177)
* Add Compose to app module

* Move Theme to ui module

* Add Coil image loader

* Use Compose for recipe screen

* Save instruction to ingredient relation to DB

* Display ingredients as server formats them

* Display linked ingredients under each step

* Fix ingredients padding

* Show recipe full screen

* Fix recipe screen UI issues

* Hide keyboard on recipe navigation

* Fix loading recipes from DB with no instructions or ingredients

* Add instructions section title

* Add ingredients section title

* Remove unused view holders
2023-11-07 20:47:01 +01:00
Kirill Kamakin
5ed1acb678 Simplify network layer (#175)
* Use Ktor for network requests

* Remove V0 version

* Remove Retrofit dependency

* Fix url

* Update versions of dependencies

* Revert kotlinx-datetime

Due to https://github.com/Kotlin/kotlinx-datetime/issues/304

* Rename leftovers

* Remove OkHttp

* Remove unused manifest

* Remove unused Hilt module

* Fix building empty image URLs

* Use OkHttp as engine for Ktor

* Reduce visibility of internal classes

* Fix first set up test

* Store only auth token, not header

* Remove UnitInfo/FoodInfo/VersionInfo/NewShoppingListItemInfo

* Remove RecipeSummaryInfo and ShoppingListsInfo

* Remove FullShoppingListInfo

* Remove ParseRecipeURLInfo

* Remove FullRecipeInfo

* Sign out if access token does not work

* Rename getVersionInfo method

* Update version name
2023-11-05 15:01:19 +01:00
Kirill Kamakin
888783bf14 Update dependencies (#172)
* Remove rootCoverage

* Bump versions of dependencies

* Update GitHub Actions dependencies
2023-10-15 22:08:31 +02:00
Kirill Kamakin
be51a5c00a Implement adding and modifying shopping list items (#165)
* Add dismissed shopping list item preview

* Implement editing of note and quantity

* Add new editor row for food

* Implement loading units and foods

* Display dropdown for foods

* Display dropdown for units

* Implement updating food and units

* Create secondary editor state constructor

* Display "Add" button

* Combine editing state to an object

* Implement showing editor for new items

* Implement saving new items

* Log final screen state

* Fix ordering of foods

* Show keyboard when editing starts

* Add bottom padding to the list

* Show new items above checked
2023-07-22 18:02:45 +02:00
Kirill Kamakin
1e5e727e92 Implement shopping lists screen (#129)
* Initialize shopping lists feature

* Start shopping lists screen with Compose

* Add icon to shopping list name

* Add shopping lists to menu

* Set max size for the list

* Replace compose-adapter with accompanist

* Remove unused fields from shopping lists response

* Show list of shopping lists from BE

* Hide shopping lists if Mealie is 0.5.6

* Add shopping list item click listener

* Create material app theme for Compose

* Use shorter names

* Load shopping lists by pages and save to db

* Make page handling logic match recipes

* Add swipe to refresh to shopping lists

* Extract SwipeToRefresh Composable

* Make LazyPagingColumn generic

* Show refresh only when mediator is refreshing

* Do not refresh automatically

* Allow controlling Activity state from modules

* Implement navigating to shopping list screen

* Move Compose libraries setup to a plugin

* Implement loading full shopping list info

* Move Storage classes to database module

* Save shopping list items to DB

* Use separate names for separate ids

* Do only one DB version update

* Use unique names for all columns

* Display shopping list items

* Move OperationUiState to ui module

* Subscribe to shopping lists updates

* Indicate progress with progress bar

* Use strings from resources

* Format shopping list item quantities

* Hide unit/food/note/quantity if they are not set

* Implement updating shopping list item checked state

* Remove unnecessary null checks

* Disable checkbox when it is being updated

* Split shopping list screen into composables

* Show items immediately if they are saved

* Fix showing "list is empty" before the items

* Show Snackbar when error happens

* Reduce shopping list items paddings

* Remove shopping lists when URL is changed

* Add error/empty state handling to shopping lists

* Fix empty error state

* Fix tests compilation

* Add margin between text and button

* Add divider between checked and unchecked items

* Move divider to the item

* Refresh the shopping lists on authentication

* Use retry when necessary

* Remove excessive logging

* Fix pages bounds check

* Move FlowExtensionsTest

* Update Compose version

* Fix showing loading indicator for shopping lists

* Add Russian translation

* Fix SDK version lint check

* Rename parameter to match interface

* Add DB migration TODO

* Get rid of DB migrations

* Do not use pagination with shopping lists

* Cleanup after the pagination removal

* Load shopping list items

* Remove shopping lists storage

* Rethrow CancellationException in LoadingHelper

* Add pull-to-refresh on shopping list screen

* Extract LazyColumnWithLoadingState

* Split refresh errors and loading state

* Reuse LazyColumnWithLoadingState for shopping list items

* Remove paging-compose dependency

* Refresh shopping list items on authentication

* Disable missing translation lint check

* Update Compose and Kotlin versions

* Fix order of checked items

* Hide useless information from a shopping list item
2023-07-03 15:07:19 +02:00
Kirill Kamakin
d6a4fbb365 Bump versions of dependencies 2023-04-07 14:52:31 +02:00
Kirill Kamakin
717d4a9e9c Update the gradle binaries 2023-02-01 16:37:13 +01:00
Kirill Kamakin
77395a07f4 Add base url setup to sign in test 2022-12-16 21:43:35 +01:00
Kirill Kamakin
8c3ec9a40d Enable AndroidX test orchestrator 2022-12-16 21:43:34 +01:00