3.10.2 (2023-04-06)
3.10.1 (2023-03-31)
- add status_code prop in AnnotationResponse (17af32c), closes #4896
- getImageUrl (2626919)
- Product search recycler view data (#4918) (0c0dca1), closes #4913
- ProductCompareViewModelTest (4879d20), closes #4923
- removed useless RequiresApi annotation as minSdk is 21 (7ccfabf)
- use setDataAndType instead of data and type in Intent creations (bfe78a9)
- wrong mapping causing json deserialization issue (770d9c2)
3.10.0 (2023-02-01)
- new icons (ba85327)
- check for null before using an input stream (54691ae)
- labeler action not working (1089c17)
- show barcode value instead of class when displaying the product not found (66bedd3), closes #4889
3.9.0 (2022-12-10)
- add In-App Review Functionality for playstore flavor (#4860) (eb967ad)
- Automatically label issues (#4524) (c46bc42)
- export DB (#4719) (694b56f)
- Monitor barcode scanning performance (#4651) (80770c8)
- The Activity now notifies when the drawer status has changed (#4560) (ef12188)
- update to minSdk 21 (#4769) (c508b43)
- use default locale for dateTime format in ContributorsFragment.kt (dbdb089)
- Use new SplashScreen API on Android 12 and newer (API level 31 and up) (#4871) (1be5da9)
- use system PowerManager API to query for low battery status (#4874) (3ff8481)
- add check to MLKitCameraView.kt in FDroid so we're sure to not instantiating it (8d97da6)
- Barcode usage in ContinuousScanActivity (220021c)
- change default name for lists (#4616) (7b56644)
- environment picture issues (#4655) (7bf62d8)
- exhaustive use of when in ProductEditActivity.kt (c7cafae)
- filter before mapping in ImageNameParser.kt (9d43faa)
- Fix crashes by ensuring layout ID is set before inflating Camera View stub + raise AGP for Kotlin 1.7.0 compatibility (#4794) (a39d366)
- ImageKeyHelper.kt tests were wrong after last refactor (fe8f54f)
- initialize camera before use in SimpleScanActivity.kt (6233fa3)
- Made "image upload" message more descriptive on Product Addition (#4852) (9bde0f8)
- ModifierTest.kt (1785cff)
- NPE (d54533f)
- NPE crash on SearchByCodeFragment (#4652) (53f79aa)
- NPE for null binding (#4629) (c4eaba8)
- NPE in ProductCompareAdapter (#4631) (7ef7b94)
- Revent to Eaten products (#4702) (cfca5f4)
- upload comment (b394bef)
- use Date instead of Instant.fromEpoch for older android versions (6744a25)
- use the .net server for testing (054dd8e)
- Useless swipe to refresh with an empty product (#4608) (4befba4)
- When nutriscore is not (yet) computed, hide the "Learn more" button (#4657) (a17ddb9)
- wrong number of products for lists + analytics events (#4648) (c7438bb)
3.8.0 (2022-02-09)
- use JDK 11 in detekt workflow (7787aef)
- NPE in ProductListAdapter (#4469) (3af2973)
- robotoff should not make the app crash if unavailable (#4464) (70d4e09)
3.7.0 (2021-12-26)
- add analytics opt in in welcome screen (94ae339)
- add dokka to build.gradle.kts (8253e3a)
- Add history refreshing [#3162] (#3840) (4740512)
- Add simple scan feature (#4236) (dd59827)
- added attribute fragment to OBF product view (8665bc6)
- added share button to list activity (ceaf143)
- brand autosuggest added (#3883) (c558f1b)
- confirmation added when setting a photo from photos tab (#3870) (ae3498f)
- disable sentry if user does not grant anonymous metric collection (#4339) (0ab43cd)
- do not show the changelogtranslation prompt in English (#3862) (b9d5fd1)
- implemented SearchComplete (b33dadb)
- matomo analytics (#3888) (0952459)
- use basic auth for dev OFF server (4b404de)
- use lc when querying server. (2d9add6)
- add @ExperimentalTime (89713c1)
- add custom tab query to AndroidManifest.xml (211c96e)
- add exception to per100gInUnit and perServingInUnit in ProductNutriment (783ba34)
- add product to history correctly (0191fe7)
- add product to history correctly (354adbf)
- add sentry reporting if URI in null when saving file in ScanHistoryActivity (d1d0f81)
- added contrast to matomo slide (5825414)
- additive visibility issue solved (#3871) (287435b)
- allergens alerts (8c40df2)
- AllergenTest (#4146) (ccd5da9)
- ANR caused by sync call to isEmpty() (32d69fc)
- bad clipping for questions #2525 (#3939) (fd51979)
- bad clipping in "too bad" button in fragment_add_product_ingredients.xml (6b5407d)
- bold allergens in ingredients list (b11db2c)
- bold labels in SummaryProductFragment.kt, (b11db2c)
- bug with spinner for vitamin_a in ProductEditNutritionFactsFragment (#3821) (c0c11ce)
- categories activity crash (8034ee0)
- categories did not have a link in CategoryProductHelper.kt (84bfb42)
- changing the OS locale doesn't change the app locale (#4323) (965b4ba)
- check for nullability in SummaryProductFragment#resetScroll (ff86941)
- compare button click (#4147) (15d1498)
- disable CSV import for older android versions (c06c049)
- disable serving size field if fetched value is wrong (43b933f)
- display additive name (87c8c2f)
- display analysis tags always in the same order in Summary Product Fragment (7cdea9c)
- do not access binding if cancelled (185b559)
- do not concatenate labels without separators (d24907c)
- do not save null values in DB. (5b22cc2)
- do not try to refresh if activity is not ProductViewActivity (32e9f0d)
- do not update products when history is empty (20f8a03)
- do not use ChangelogDialog sharedPrefs before fragment attach (7f637bc)
- don't replace fragment on another fragment if they are the same (#3835) (97624bd)
- editing in allergens alert screen (#4215) (9ae13b6)
- error in value per 100g parsing (f0e4a28)
- fix develop branch (#3899) (88e3d18)
- fixed historyproduct not being added (1b39563)
- fixed isBarcodeValid method in ProductUtilsTest.kt (5025f55)
- fixed long text layout issue (#3727) (101989f)
- fixed matomo tracking opted-out users (2dcc1c8)
- fixed NPE in ProductEditNutritionFactsFragment.kt (ecc5047)
- fixed ProductsAPITest.kt (97653bd)
- fixed tagline request (1b39563)
- fixed Unit Tests using robolectric (2d9add6)
- fixes #3887 (#3968) (60dd8d6)
- labels are not rendered as links in SummaryProductFragment.kt (c4a5314)
- LoginActivity with null arg (1b39563)
- made tag-line method suspend (462397f)
- make toast in main context (03f504f)
- minors (40757e6)
- not working language selection (#4192) (7caa086)
- NPE in EditOverviewFragment (#4298) (94df3cc)
- NPE in PhotoReceiverHandler.kt (1783857)
- NPE in ProductEditNutritionFactsFragment (#3861) (43b9850)
- NPE in refreshProductCount on HomeFragment (#4237) (40a8f2d)
- NPE in WikidataAPIClient (ec8a0da)
- NPE on ProductEditNutritionFactsFragment.kt init (78ac2b3)
- NPE on user search (bbdb6a3)
- NPE when image url is not given (#3863) (87b4bd7)
- product сomparison (#4177) (76e189e)
- properties order in AnalysisTag Entity (1111c73)
- query attribute_groups only for the actual UI language. (6b7cb63)
- refactored measurements inner working (#4171) (ba334af)
- remove deprecated _instance (e738e54)
- remove runBlocking in ProductListAdapter.kt (bc2d218)
- remove runBlocking in ProductListAdapter.kt (7c195cf)
- removed nutriscore icon in obf (e3e0ee3)
- replace custom OK with android default resource (87ebf0f)
- replace NPE with ISE (b8c0d5c)
- replaced launch with launchWhenResumed in SummaryProductFragment (a6b3161)
- resources for other flavors in WelcomeScreen (9ac2dbc)
- show language name in picker for product edit screen (#4149) (1717394)
- show product not found in main thread (1682f89)
- show tagline in HomeFragment (ad45456)
- temporary fix for URI blocking issue. (5e3322f)
- thread errors when modifying view (7cf2bf6)
- type errors with new deps (d8f8a30)
- typo in variable usage in EditIngredientsFragment.kt (389bf33)
- use @string resource in welcome_slide4.xml (6aecf7f)
- use coroutines and livedata for SplashActivity.kt. Fixes ANR. (f7d6854)
- use resource for "State" subtitle in ProductSearchActivity.kt (32add9a)
- use runBlocking in retrieveAll_Success (32dd869)
- user not prompted to login when trying to edit a product (732777e)
- When no further fragment is visible, the app should close itself (#4322) (8ae0954), closes #4320
- workaround for NPE in ImagesManageActivity.kt (fed1f54)