A Simple Expense Tracker App πŸ“± built to demonstrate the use of modern android architecture component with MVVM Architecture

Related tags

App Expense
Overview

GitHub Cards Preview

Expenso πŸ“Š

A Simple Expense Tracker App πŸ“± built to demonstrate the use of modern android architecture component with MVVM Architecture πŸ— . Made with love ❀️ by Spikeysanju


Try latest Expenso app apk from below πŸ‘‡

Expenso


UI Design 🎨

Click to View Expenso app Design from below πŸ‘‡

Expenso


Day Mode 🌞

Dashboard All Income All Expense Details Add Transaction

We Support Dark Mode Too 🌚

Dashboard All Income All Expense Details Add Transaction

Built With πŸ› 

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more..
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • Stateflow - StateFlow is a state-holder observable flow that emits the current and new state updates to its collectors.
    • Flow - A flow is an asynchronous version of a Sequence, a type of collection whose values are lazily produced.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • Room - SQLite object mapping library.
    • Jetpack Navigation - Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app
    • DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers. DataStore uses Kotlin coroutines and Flow to store data asynchronously, consistently, and transactionally.
  • Material Components for Android - Modular and customizable Material Design UI components for Android.
  • Figma - Figma is a vector graphics editor and prototyping tool which is primarily web-based.

Package Structure πŸ“¦

dev.spikeysanju.expenso # Root Package
β”œβ”€β”€ di                  # Hilt DI Modules 
β”œβ”€β”€ data                # For data handling.
β”‚   β”œβ”€β”€ local           # Local Persistence Database. Room (SQLite) database
|   β”‚   β”œβ”€β”€ dao         # Data Access Object for Room   
|   |   |── database    # Database Instance
|
β”œβ”€β”€ model               # Model classes [Transaction]
|
|-- repo                # Used to handle all data operations
|
β”œβ”€β”€ view                # Activity/Fragment View layer
β”‚   β”œβ”€β”€ main            # Main root folder
|   β”‚   β”œβ”€β”€ main        # Main Activity for RecyclerView
|   β”‚   └── viewmodel   # Transaction ViewModel
|   β”‚   β”œβ”€β”€ adapter     # Adapter for RecyclerView
β”‚   β”œβ”€β”€ Dashboard       # Dashboard root folder
|   |   |__ dashboard   # Dashboard 
β”‚   β”œβ”€β”€ Add             # Add Transaction root folder
|   |   |__ add         # Add Transaction 
β”‚   β”œβ”€β”€ Edit            # Edit Transaction root folder
|   |   |__ edit        # Edit Transaction
β”‚   β”œβ”€β”€ Details         # Add Transaction root folder
|   |   |__ details     # Transaction Details
β”‚   β”œβ”€β”€ About           # About root folder
|   |   |__ about       # About 
β”‚   β”œβ”€β”€ Dialog          # All Dialogs root folder
|   |   |__ dialog      # Error Dialog 
β”œβ”€β”€ utils               # All extension functions

Architecture πŸ—Ό

This app uses MVVM (Model View View-Model) architecture.

Build-tool 🧰

You need to have Android Studio Beta 3 or above to build this project.
Beta-studio


Ohh You want iOS App Too? πŸ“±

Well, we've iOS version here, Checkout the iOS version of this app Expenso


Contribute 🀝

If you want to contribute to this app, you're always welcome! See Contributing Guidelines.


Contact πŸ“©

Have an project? DM us at πŸ‘‡

Drop a mail to:- [email protected]


Donation πŸ’°

If this project help you reduce time to develop, you can give me a cup of coffee :)

Buy Me A Coffee


Credits πŸ€—


License πŸ”–

    Apache 2.0 License


    Copyright 2021 Spikey sanju

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

Comments
  • Bump kotlin-stdlib from 1.5.31 to 1.6.10

    Bump kotlin-stdlib from 1.5.31 to 1.6.10

    Bumps kotlin-stdlib from 1.5.31 to 1.6.10.

    Release notes

    Sourced from kotlin-stdlib's releases.

    Kotlin 1.6.10

    Changelog

    Android

    • KT-49798 [MPP] [Android] AGP 7.1.0+ android target publications leak 'AgpVersionAttr' attribute

    Compiler

    Performance Improvements

    • KT-49821 Optimize LazyClassMemberScope#getContributedDescriptors: use nameFilter

    Fixes

    • KT-49833 java.lang.NullPointerException caused by accidental newline in package directive
    • KT-49838 Type inference fails on 1.6.0: Cannot use 'CapturedType(*)' as reified type parameter
    • KT-49752 Regression in method return type inference: "IllegalStateException: Expected some types"
    • KT-49876 Kotlin/Native: cross-compilation of Linux static library is broken in Windows in 1.6.0
    • KT-49792 Atomicfu: "standalone invocation of kotlinx.atomicfu.AtomicInt::compareAndSet that was not traced to previous field load" with suspend function
    • KT-49834 Coroutine method transformer generates invalid locals table.
    • KT-49441 Support friend modules in Kotlin Native
    • KT-49248 K/N: Symbol with IrSimpleFunctionSymbolImpl is unbound after 1.5.30
    • KT-49651 Inconsistent compiler APIs for repeatable annotations
    • KT-49168 JVM IR: IndexOutOfBoundsException with fun interface + suspend function as SAM method
    • KT-49573 No annotated types, compiler emits "Annotated types are not supported in typeOf"
    • KT-47192 Build Fake Overrides for internal members of classes from friend module
    • KT-48673 IR: IllegalStateException for usage of internal member declared in a superclass in another module

    JavaScript

    • KT-47811 KJS / IR: "ClassCastException" when using suspend function in console.log

    Language Design

    • KT-49868 Support language version 1.3 in Kotlin 1.6.10

    Libraries

    • KT-50173 Different behavior of Regex escapeReplacement function in JVM and JS

    Tools. Android Extensions

    • KT-49799 NullPointerException when using kotlin-android-extensions synthetic after update to Kotlin 1.6.0

    Tools. Compiler Plugins

    • KT-50005 jvm-abi-gen plugin: do not change the declaration order in generated jars
    • KT-49726 JVM/IR: "IllegalArgumentException: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER": Serialization with sealed class as type parameter

    ... (truncated)

    Changelog

    Sourced from kotlin-stdlib's changelog.

    1.6.10

    Android

    • KT-49798 [MPP] [Android] AGP 7.1.0+ android target publications leak 'AgpVersionAttr' attribute

    Compiler

    Performance Improvements

    • KT-49821 Optimize LazyClassMemberScope#getContributedDescriptors: use nameFilter

    Fixes

    • KT-49833 java.lang.NullPointerException caused by accidental newline in package directive
    • KT-49838 Type inference fails on 1.6.0: Cannot use 'CapturedType(*)' as reified type parameter
    • KT-49752 Regression in method return type inference: "IllegalStateException: Expected some types"
    • KT-49876 Kotlin/Native: cross-compilation of Linux static library is broken in Windows in 1.6.0
    • KT-49792 Atomicfu: "standalone invocation of kotlinx.atomicfu.AtomicInt::compareAndSet that was not traced to previous field load" with suspend function
    • KT-49834 Coroutine method transformer generates invalid locals table.
    • KT-49441 Support friend modules in Kotlin Native
    • KT-49248 K/N: Symbol with IrSimpleFunctionSymbolImpl is unbound after 1.5.30
    • KT-49651 Inconsistent compiler APIs for repeatable annotations
    • KT-49168 JVM IR: IndexOutOfBoundsException with fun interface + suspend function as SAM method
    • KT-49573 No annotated types, compiler emits "Annotated types are not supported in typeOf"
    • KT-47192 Build Fake Overrides for internal members of classes from friend module
    • KT-48673 IR: IllegalStateException for usage of internal member declared in a superclass in another module

    JavaScript

    • KT-47811 KJS / IR: "ClassCastException" when using suspend function in console.log

    Language Design

    • KT-49868 Support language version 1.3 in Kotlin 1.6.10

    Libraries

    • KT-50173 Different behavior of Regex escapeReplacement function in JVM and JS

    Tools. Android Extensions

    • KT-49799 NullPointerException when using kotlin-android-extensions synthetic after update to Kotlin 1.6.0

    Tools. Compiler Plugins

    • KT-50005 jvm-abi-gen plugin: do not change the declaration order in generated jars
    • KT-49726 JVM/IR: "IllegalArgumentException: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER": Serialization with sealed class as type parameter

    Tools. Gradle

    ... (truncated)

    Commits
    • 1b49105 Add changelog for 1.6.10
    • 72551e4 KT-50173 Fix Regex.escapeReplacement function in JS
    • c71e090 KGP - Fix flaky tests invoking javac through JDK APIs
    • 73120b9 [Gradle, JS] Add tests for windows ignore-scripts
    • 9bffcfa [Gradle, JS] Fix path setting in Windows
    • 06a205f Fix 'debug.keystore' location also for 'com.android.test' plugin.
    • a043f77 Disable publishing 'android-test-fixes' plugin to Gradle portal.
    • 1dcbd28 Kotlin Gradle plugin - Remove assertions from integration tests
    • 43df58a Pin AGP 'debug.keystore' in the repo.
    • e705a36 Apply default pluginManagement in settings for old test setup.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha09

    Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha09

    Bumps gradle from 7.2.0-alpha03 to 8.0.0-alpha09.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump kotlin-stdlib from 1.5.31 to 1.7.22

    Bump kotlin-stdlib from 1.5.31 to 1.7.22

    Bumps kotlin-stdlib from 1.5.31 to 1.7.22.

    Release notes

    Sourced from kotlin-stdlib's releases.

    Kotlin 1.7.22

    This is a technical release. It doesn't contain any fixes that aren't included in Kotlin 1.7.21. Version 1.7.22 of the Kotlin plugin will not be available for downloading or installing in any IDEs.

    Checksums

    File Sha256
    kotlin-compiler-1.7.22.zip 9db4b467743c1aea8a21c08e1c286bc2aeb93f14c7ba2037dbd8f48adc357d83
    kotlin-native-linux-x86_64-1.7.22.tar.gz dd004d520056aba67f2955a3bec5af75f8f2d78b179d4b5f733a77e3eef57aff
    kotlin-native-macos-x86_64-1.7.22.tar.gz 153fa411fa8c993ce2635e2504e9b102cb05362cc794b66ef9def26a78b427b5
    kotlin-native-macos-aarch64-1.7.22.tar.gz 4ffcd76c77cc824eff8addd5e2a73da4f3bbd3584fa9ef282b3f669c45426b1e
    kotlin-native-windows-x86_64-1.7.22.zip 3bccd23479848ec61c56ed5760010456d17acbe88a00a1f10fb38eae256f2e92

    Kotlin 1.7.21

    Changelog

    Compiler

    • KT-54463 Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegate
    • KT-54509 Ir Interpreter: unable to evaluate string concatenation with "this" as argument
    • KT-54004 Builder type inference does not work correctly with variable assignment and breaks run-time
    • KT-54393 Change in behavior from 1.7.10 to 1.7.20 for java field override.
    • KT-54615 JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expression
    • KT-54581 JVM: "VerifyError: Bad type on operand stack" with generic inline function and when inside try-catch block
    • KT-53146 JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtime
    • KT-54600 NPE on passing nullable Kotlin lambda as Java's generic SAM interface with super type bound
    • KT-54707 "VerifyError: Bad type on operand stack" in inline call chain on a nullable array value
    • KT-54650 Binary incompatible ABI change in Kotlin 1.7.20
    • KT-54802 "VerifyError: Bad type on operand stack" for inline functions on arrays

    Native. Runtime. Memory

    • KT-54498 Deprecation message of 'FreezingIsDeprecated' is not really helpful

    Tools. Gradle. Multiplatform

    • KT-54387 Remove MPP alpha stability warning
    • KT-48436 False positive "The Kotlin source set androidAndroidTestRelease was configured but not added to any Kotlin compilation"

    Tools. JPS

    • KT-45474 False positive NO_ELSE_IN_WHEN on sealed class with incremental compilation

    Checksums

    File Sha256

    ... (truncated)

    Changelog

    Sourced from kotlin-stdlib's changelog.

    1.7.21

    Compiler

    • KT-54463 Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegate
    • KT-54509 Ir Interpreter: unable to evaluate string concatenation with "this" as argument
    • KT-54004 Builder type inference does not work correctly with variable assignment and breaks run-time
    • KT-54393 Change in behavior from 1.7.10 to 1.7.20 for java field override.
    • KT-54615 JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expression
    • KT-54581 JVM: "VerifyError: Bad type on operand stack" with generic inline function and when inside try-catch block
    • KT-53146 JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtime
    • KT-54600 NPE on passing nullable Kotlin lambda as Java's generic SAM interface with super type bound
    • KT-54707 "VerifyError: Bad type on operand stack" in inline call chain on a nullable array value
    • KT-54650 Binary incompatible ABI change in Kotlin 1.7.20
    • KT-54802 "VerifyError: Bad type on operand stack" for inline functions on arrays

    Native. Runtime. Memory

    • KT-54498 Deprecation message of 'FreezingIsDeprecated' is not really helpful

    Tools. Gradle. Multiplatform

    • KT-54387 Remove MPP alpha stability warning
    • KT-48436 False positive "The Kotlin source set androidAndroidTestRelease was configured but not added to any Kotlin compilation"

    Tools. JPS

    • KT-45474 False positive NO_ELSE_IN_WHEN on sealed class with incremental compilation

    1.7.20

    Analysis API

    • KT-52667 FIR IDE: fun interfaces (SAM interfaces) are not properly resolved
    • KT-52136 FIR: Implicit type declaration from the other module cannot be used for overloading

    Analysis API. FE1.0

    • KT-51962 Analysis API: Finish Analysis API for FE1.0

    Analysis API. FIR

    • KT-52779 FIR IDE: Import Optimizer cannot handle generic type qualifiers
    • KT-50236 Fix OOB modification trackers for non-Kotlin code
    • KT-51240 Analysis API: KtAnalysisSession for a specific module cannot create a symbol for PSI that cannot be seen from that module.
    • KT-50868 Analysis API: decompiled type aliases are not resolved

    Compiler

    ... (truncated)

    Commits
    • be3c5a5 Instruction for building 1.7.21 release
    • 80eb82a Instructions for building 1.7.20 release
    • cb51803 Scripts for building Kotlin repository
    • 7784d10 Change bootstrap to 1.7.21-release-254
    • e7f77e9 Keep track of array types in OptimizationBasicInterpreter
    • 7deaab9 Edit changelog for 1.7.21
    • 0b49dc2 Fix binary compatibility for inlined local delegated properies
    • 90b3e21 Advance bootstrap to 1.7.21
    • c55a197 Edit changelog for 1.7.21
    • b1b18c2 Add regression test for KT-54707
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump hilt-android from 2.39.1 to 2.44.1

    Bump hilt-android from 2.39.1 to 2.44.1

    Bumps hilt-android from 2.39.1 to 2.44.1.

    Release notes

    Sourced from hilt-android's releases.

    Dagger 2.44.1

    What’s new in Dagger

    Bug fixes

    • Fixes #3619: Upgrades XProcessing jars to get upstream fix for enums in annotations in generated code by .

    Dagger 2.44

    What’s new In Dagger

    Potentially breaking changes

    • Fixes #3531: Removed formatting from dagger.android generated source could be a breaking change for anyone relying on golden files for Dagger’s generated code. (d123efdf0)

    Bug Fixes

    • Fixes #3522: Avoids pre-validating the nearest enclosing type in the InjectProcessingStep. (1d74d1fd3)

    What’s new in Hilt

    Potentially breaking changes

    • Added ViewModelLifecycle. This can be injected in the ViewModelComponent and used to register listeners for when ViewModel#onCleared() is called. This change also includes a breaking change for anyone who implemented the ActivityRetainedLifecycle interface themselves. This should be rare though as this interface was not meant to be implemented by users. (55aa4c60a)

    Bug Fixes

    • Fixes #3478: Fixes an issue in Hilt's Gradle Plugin not configuring the aggregating task correctly on a com.android.test Gradle module. (ea39850c7)

    Dagger 2.43.2

    What’s New In Dagger

    Bug Fixes

    • Fixes #3495: Updates the XProcessing jars, which should again be compatible with java 8. (62b7f4592)
    • Adds support reading metadata from Kotlin 1.8 by updating kotlin-metadata-jvm to 5.0. (353a50b1e)
    • Fixes an issue where the Hilt Gradle Plugin artifact was being bloated with additional classes causing its size to be way bigger than its suppose to be. (8235bebe9)

    Dagger 2.43.1

    What’s New In Dagger

    Bug Fixes

    • Fixes #3480. Replace dependency on javax.annotation:jsr250-api:1.0 with javax.annotation:javax.annotation-api:1.3.2. (e9dc377d1)
    • Fixes #3483: Add onPluginEnd to BindingGraphPlugin, which will be called after all BindingGraphPlugins have been visited (34452751e)
    • Fixes #3476: Fix issue with Dagger generating mismatching parameter names in component inject functions. (90300d992)

    Dagger 2.43

    What’s New In Dagger

    Potentially Breaking Changes

    ... (truncated)

    Commits
    • 7ec8651 2.44.1 release
    • 776f877 Update Dagger's XProcessing jars.
    • 127df43 Remove AGP 4.2 from Hilt Gradle Plugin
    • 81887cc Internal changes
    • 1fece08 Add BUILD files to all subdirectories of javatests/dagger/functional packages
    • e52f7af Internal changes
    • ff66535 Internal changes
    • 6866d93 Internal changes
    • 72ec3da Upgrade com.google.guava:guava to 30.0-jre in the maven example.
    • ae1e4f3 Fix broken member injection for experimental mode.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump hilt-android-gradle-plugin from 2.38.1 to 2.44.1

    Bump hilt-android-gradle-plugin from 2.38.1 to 2.44.1

    Bumps hilt-android-gradle-plugin from 2.38.1 to 2.44.1.

    Release notes

    Sourced from hilt-android-gradle-plugin's releases.

    Dagger 2.44.1

    What’s new in Dagger

    Bug fixes

    • Fixes #3619: Upgrades XProcessing jars to get upstream fix for enums in annotations in generated code by .

    Dagger 2.44

    What’s new In Dagger

    Potentially breaking changes

    • Fixes #3531: Removed formatting from dagger.android generated source could be a breaking change for anyone relying on golden files for Dagger’s generated code. (d123efdf0)

    Bug Fixes

    • Fixes #3522: Avoids pre-validating the nearest enclosing type in the InjectProcessingStep. (1d74d1fd3)

    What’s new in Hilt

    Potentially breaking changes

    • Added ViewModelLifecycle. This can be injected in the ViewModelComponent and used to register listeners for when ViewModel#onCleared() is called. This change also includes a breaking change for anyone who implemented the ActivityRetainedLifecycle interface themselves. This should be rare though as this interface was not meant to be implemented by users. (55aa4c60a)

    Bug Fixes

    • Fixes #3478: Fixes an issue in Hilt's Gradle Plugin not configuring the aggregating task correctly on a com.android.test Gradle module. (ea39850c7)

    Dagger 2.43.2

    What’s New In Dagger

    Bug Fixes

    • Fixes #3495: Updates the XProcessing jars, which should again be compatible with java 8. (62b7f4592)
    • Adds support reading metadata from Kotlin 1.8 by updating kotlin-metadata-jvm to 5.0. (353a50b1e)
    • Fixes an issue where the Hilt Gradle Plugin artifact was being bloated with additional classes causing its size to be way bigger than its suppose to be. (8235bebe9)

    Dagger 2.43.1

    What’s New In Dagger

    Bug Fixes

    • Fixes #3480. Replace dependency on javax.annotation:jsr250-api:1.0 with javax.annotation:javax.annotation-api:1.3.2. (e9dc377d1)
    • Fixes #3483: Add onPluginEnd to BindingGraphPlugin, which will be called after all BindingGraphPlugins have been visited (34452751e)
    • Fixes #3476: Fix issue with Dagger generating mismatching parameter names in component inject functions. (90300d992)

    Dagger 2.43

    What’s New In Dagger

    Potentially Breaking Changes

    ... (truncated)

    Commits
    • 7ec8651 2.44.1 release
    • 776f877 Update Dagger's XProcessing jars.
    • 127df43 Remove AGP 4.2 from Hilt Gradle Plugin
    • 81887cc Internal changes
    • 1fece08 Add BUILD files to all subdirectories of javatests/dagger/functional packages
    • e52f7af Internal changes
    • ff66535 Internal changes
    • 6866d93 Internal changes
    • 72ec3da Upgrade com.google.guava:guava to 30.0-jre in the maven example.
    • ae1e4f3 Fix broken member injection for experimental mode.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump hilt-android-compiler from 2.39.1 to 2.44.1

    Bump hilt-android-compiler from 2.39.1 to 2.44.1

    Bumps hilt-android-compiler from 2.39.1 to 2.44.1.

    Release notes

    Sourced from hilt-android-compiler's releases.

    Dagger 2.44.1

    What’s new in Dagger

    Bug fixes

    • Fixes #3619: Upgrades XProcessing jars to get upstream fix for enums in annotations in generated code by .

    Dagger 2.44

    What’s new In Dagger

    Potentially breaking changes

    • Fixes #3531: Removed formatting from dagger.android generated source could be a breaking change for anyone relying on golden files for Dagger’s generated code. (d123efdf0)

    Bug Fixes

    • Fixes #3522: Avoids pre-validating the nearest enclosing type in the InjectProcessingStep. (1d74d1fd3)

    What’s new in Hilt

    Potentially breaking changes

    • Added ViewModelLifecycle. This can be injected in the ViewModelComponent and used to register listeners for when ViewModel#onCleared() is called. This change also includes a breaking change for anyone who implemented the ActivityRetainedLifecycle interface themselves. This should be rare though as this interface was not meant to be implemented by users. (55aa4c60a)

    Bug Fixes

    • Fixes #3478: Fixes an issue in Hilt's Gradle Plugin not configuring the aggregating task correctly on a com.android.test Gradle module. (ea39850c7)

    Dagger 2.43.2

    What’s New In Dagger

    Bug Fixes

    • Fixes #3495: Updates the XProcessing jars, which should again be compatible with java 8. (62b7f4592)
    • Adds support reading metadata from Kotlin 1.8 by updating kotlin-metadata-jvm to 5.0. (353a50b1e)
    • Fixes an issue where the Hilt Gradle Plugin artifact was being bloated with additional classes causing its size to be way bigger than its suppose to be. (8235bebe9)

    Dagger 2.43.1

    What’s New In Dagger

    Bug Fixes

    • Fixes #3480. Replace dependency on javax.annotation:jsr250-api:1.0 with javax.annotation:javax.annotation-api:1.3.2. (e9dc377d1)
    • Fixes #3483: Add onPluginEnd to BindingGraphPlugin, which will be called after all BindingGraphPlugins have been visited (34452751e)
    • Fixes #3476: Fix issue with Dagger generating mismatching parameter names in component inject functions. (90300d992)

    Dagger 2.43

    What’s New In Dagger

    Potentially Breaking Changes

    ... (truncated)

    Commits
    • 7ec8651 2.44.1 release
    • 776f877 Update Dagger's XProcessing jars.
    • 127df43 Remove AGP 4.2 from Hilt Gradle Plugin
    • 81887cc Internal changes
    • 1fece08 Add BUILD files to all subdirectories of javatests/dagger/functional packages
    • e52f7af Internal changes
    • ff66535 Internal changes
    • 6866d93 Internal changes
    • 72ec3da Upgrade com.google.guava:guava to 30.0-jre in the maven example.
    • ae1e4f3 Fix broken member injection for experimental mode.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump kotlin-stdlib from 1.5.31 to 1.7.21

    Bump kotlin-stdlib from 1.5.31 to 1.7.21

    Bumps kotlin-stdlib from 1.5.31 to 1.7.21.

    Release notes

    Sourced from kotlin-stdlib's releases.

    Kotlin 1.7.20

    1.7.20

    Analysis API

    • KT-52667 FIR IDE: fun interfaces (SAM interfaces) are not properly resolved
    • KT-52136 FIR: Implicit type declaration from the other module cannot be used for overloading

    Analysis API. FE1.0

    • KT-51962 Analysis API: Finish Analysis API for FE1.0

    Analysis API. FIR

    • KT-52779 FIR IDE: Import Optimizer cannot handle generic type qualifiers
    • KT-50236 Fix OOB modification trackers for non-Kotlin code
    • KT-51240 Analysis API: KtAnalysisSession for a specific module cannot create a symbol for PSI that cannot be seen from that module.
    • KT-50868 Analysis API: decompiled type aliases are not resolved

    Compiler

    • KT-53739 Builder inference, extension hides members
    • KT-53733 Kotlin/Native: update source documentation for the new default memory manager
    • KT-53667 Compiler crashes on attempt to alloc a string on the stack in new MM
    • KT-53480 Internal error in file lowering: java.lang.ClassNotFoundException: com.android.systemui.R$string
    • KT-52843 Compose: NPE at Parameters.getParameterByDeclarationSlot if inline function with default arguments takes a lambda which captures value class represented by Long
    • KT-53475 Kotlin/Native for iOS: "IllegalArgumentException: Sequence has more than one element"

    New Features

    • KT-52495 Support until operator in back-ends
    • KT-52420 Implement resolve of until operator
    • KT-52419 Implement until operator in the parser
    • KT-33755 Kotlin/Native: Provide a way to customize a bundle Identifier of a generated framework
    • KT-51665 FIR: implement label resolve for "typed this" case
    • KT-52361 Report warning on potentially empty intersection types

    Performance Improvements

    • KT-47816 Disable script discovery for non-script environments
    • KT-48635 JVM IR: Double/Float values are boxed when comparing for equality in equals method of data/value classes
    • KT-23397 Optimize out field for property delegate when it's safe (JVM)

    Fixes

    • KT-53272 Backend Internal error: Exception during IR lowering / No such value argument slot: 2
    • KT-53124 Receiver type mismatch when combining extension properties, type projections, Java sources, and F-bounded type-variables
    • KT-51868 JVM / IR: Inconsistent behaviour between lambda expression and SAM interface conversion for the same interface
    • KT-36770 Prohibit unsafe calls with expected @NotNull T and given Kotlin generic parameter with nullable bound
    • KT-52974 "IllegalStateException: Symbol with IrSimpleFunctionSymbolImpl is unbound" compiling native targets of MPP project
    • KT-53007 JVM: "Bad invokespecial instruction: current class isn't assignable to reference class" when call superclass of outer class method from inner class

    ... (truncated)

    Changelog

    Sourced from kotlin-stdlib's changelog.

    1.7.20

    Analysis API

    • KT-52667 FIR IDE: fun interfaces (SAM interfaces) are not properly resolved
    • KT-52136 FIR: Implicit type declaration from the other module cannot be used for overloading

    Analysis API. FE1.0

    • KT-51962 Analysis API: Finish Analysis API for FE1.0

    Analysis API. FIR

    • KT-52779 FIR IDE: Import Optimizer cannot handle generic type qualifiers
    • KT-50236 Fix OOB modification trackers for non-Kotlin code
    • KT-51240 Analysis API: KtAnalysisSession for a specific module cannot create a symbol for PSI that cannot be seen from that module.
    • KT-50868 Analysis API: decompiled type aliases are not resolved

    Compiler

    • KT-53739 Builder inference, extension hides members
    • KT-53733 Kotlin/Native: update source documentation for the new default memory manager
    • KT-53667 Compiler crashes on attempt to alloc a string on the stack in new MM
    • KT-53480 Internal error in file lowering: java.lang.ClassNotFoundException: com.android.systemui.R$string
    • KT-52843 Compose: NPE at Parameters.getParameterByDeclarationSlot if inline function with default arguments takes a lambda which captures value class represented by Long
    • KT-53475 Kotlin/Native for iOS: "IllegalArgumentException: Sequence has more than one element"

    New Features

    • KT-52495 Support until operator in back-ends
    • KT-52420 Implement resolve of until operator
    • KT-52419 Implement until operator in the parser
    • KT-33755 Kotlin/Native: Provide a way to customize a bundle Identifier of a generated framework
    • KT-51665 FIR: implement label resolve for "typed this" case
    • KT-52361 Report warning on potentially empty intersection types

    Performance Improvements

    • KT-47816 Disable script discovery for non-script environments
    • KT-48635 JVM IR: Double/Float values are boxed when comparing for equality in equals method of data/value classes
    • KT-23397 Optimize out field for property delegate when it's safe (JVM)

    Fixes

    • KT-53272 Backend Internal error: Exception during IR lowering / No such value argument slot: 2
    • KT-53124 Receiver type mismatch when combining extension properties, type projections, Java sources, and F-bounded type-variables
    • KT-51868 JVM / IR: Inconsistent behaviour between lambda expression and SAM interface conversion for the same interface
    • KT-36770 Prohibit unsafe calls with expected @NotNull T and given Kotlin generic parameter with nullable bound
    • KT-52974 "IllegalStateException: Symbol with IrSimpleFunctionSymbolImpl is unbound" compiling native targets of MPP project
    • KT-53007 JVM: "Bad invokespecial instruction: current class isn't assignable to reference class" when call superclass of outer class method from inner class
    • KT-53019 K2: cannot cast callable reference to Function1 in runtime

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha08

    Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha08

    Bumps gradle from 7.2.0-alpha03 to 8.0.0-alpha08.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha07

    Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha07

    Bumps gradle from 7.2.0-alpha03 to 8.0.0-alpha07.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump fragment-ktx from 1.3.6 to 1.5.4

    Bump fragment-ktx from 1.3.6 to 1.5.4

    Bumps fragment-ktx from 1.3.6 to 1.5.4.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha06

    Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha06

    Bumps gradle from 7.2.0-alpha03 to 8.0.0-alpha06.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump kotlin-stdlib from 1.5.31 to 1.8.0

    Bump kotlin-stdlib from 1.5.31 to 1.8.0

    Bumps kotlin-stdlib from 1.5.31 to 1.8.0.

    Release notes

    Sourced from kotlin-stdlib's releases.

    Kotlin 1.8.0

    Changelog

    Analysis API

    • KT-50255 Analysis API: Implement standalone mode for the Analysis API

    Analysis API. FIR

    • KT-54292 Symbol Light classes: implement PsiVariable.computeConstantValue for light field
    • KT-54293 Analysis API: fix constructor symbol creation when its accessed via type alias

    Android

    • KT-53342 TCS: New AndroidSourceSet layout for multiplatform
    • KT-53013 Increase AGP compile version in KGP to 4.1.3
    • KT-54013 Report error when using deprecated Kotlin Android Extensions compiler plugin
    • KT-53709 MPP, Android SSL2: Conflicting warnings for androidTest/kotlin source set folder

    Backend. Native. Debug

    • KT-53561 Invalid LLVM module: "inlinable function call in a function with debug info must have a !dbg location"

    Compiler

    New Features

    • KT-52817 Add @JvmSerializableLambda annotation to keep old behavior of non-invokedynamic lambdas
    • KT-54460 Implementation of non-local break and continue
    • KT-53916 Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compiler
    • KT-32208 Generate method annotations into bytecode for suspend lambdas (on invokeSuspend)
    • KT-53438 Introduce a way to get SourceDebugExtension attribute value via JVMTI for profiler and coverage

    Performance Improvements

    • KT-53347 Get rid of excess allocations in parser
    • KT-53689 JVM: Optimize equality on class literals
    • KT-53119 Improve String Concatenation Lowering

    Fixes

    • KT-53465 Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20
    • KT-49658 NI: False negative TYPE_MISMATCH on nullable type with when
    • KT-48162 NON_VARARG_SPREAD isn't reported on *toTypedArray() call
    • KT-43493 NI: False negative: no compilation error "Operator '==' cannot be applied to 'Long' and 'Int'" is reported in builder inference lambdas
    • KT-54393 Change in behavior from 1.7.10 to 1.7.20 for java field override.
    • KT-55357 IllegalStateException when reading a class that delegates to a Java class with a definitely-not-null type with a flexible upper bound
    • KT-55068 Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backend
    • KT-51284 SAM conversion doesn't work if method has context receivers
    • KT-48532 Remove old JVM backend

    ... (truncated)

    Changelog

    Sourced from kotlin-stdlib's changelog.

    1.8.0

    Analysis API

    • KT-50255 Analysis API: Implement standalone mode for the Analysis API

    Analysis API. FIR

    • KT-54292 Symbol Light classes: implement PsiVariable.computeConstantValue for light field
    • KT-54293 Analysis API: fix constructor symbol creation when its accessed via type alias

    Android

    • KT-53342 TCS: New AndroidSourceSet layout for multiplatform
    • KT-53013 Increase AGP compile version in KGP to 4.1.3
    • KT-54013 Report error when using deprecated Kotlin Android Extensions compiler plugin
    • KT-53709 MPP, Android SSL2: Conflicting warnings for androidTest/kotlin source set folder

    Backend. Native. Debug

    • KT-53561 Invalid LLVM module: "inlinable function call in a function with debug info must have a !dbg location"

    Compiler

    New Features

    • KT-52817 Add @JvmSerializableLambda annotation to keep old behavior of non-invokedynamic lambdas
    • KT-54460 Implementation of non-local break and continue
    • KT-53916 Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compiler
    • KT-32208 Generate method annotations into bytecode for suspend lambdas (on invokeSuspend)
    • KT-53438 Introduce a way to get SourceDebugExtension attribute value via JVMTI for profiler and coverage

    Performance Improvements

    • KT-53347 Get rid of excess allocations in parser
    • KT-53689 JVM: Optimize equality on class literals
    • KT-53119 Improve String Concatenation Lowering

    Fixes

    • KT-53465 Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20
    • KT-49658 NI: False negative TYPE_MISMATCH on nullable type with when
    • KT-48162 NON_VARARG_SPREAD isn't reported on *toTypedArray() call
    • KT-43493 NI: False negative: no compilation error "Operator '==' cannot be applied to 'Long' and 'Int'" is reported in builder inference lambdas
    • KT-54393 Change in behavior from 1.7.10 to 1.7.20 for java field override.
    • KT-55357 IllegalStateException when reading a class that delegates to a Java class with a definitely-not-null type with a flexible upper bound
    • KT-55068 Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backend
    • KT-51284 SAM conversion doesn't work if method has context receivers
    • KT-48532 Remove old JVM backend
    • KT-55065 Kotlin Gradle DSL: Reflection cannot find class data for lambda, produced by JVM IR backend

    ... (truncated)

    Commits
    • da1a843 Add ChangeLog for 1.8.0-RC2
    • d325cf8 Call additional publishToMavenLocal in maven build scripts and enable info
    • 0403d70 Don't leave Gradle daemons after build scripts
    • 52b225d Fix task module-name is not propagated to compiler arguments
    • d40ebc3 Specify versions-maven-plugin version explicitly
    • 2e829ed Fix version parsing crash on Gradle rich version string
    • f603c0e Scripting, IR: fix capturing of implicit receiver
    • 06cbf8f Scripting, tests: enable custom script tests with IR
    • d61cef0 Fix deserialization exception for DNN types from Java
    • ea33e72 JVM IR: script is a valid container for local delegated properties
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha10

    Bump gradle from 7.2.0-alpha03 to 8.0.0-alpha10

    Bumps gradle from 7.2.0-alpha03 to 8.0.0-alpha10.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump fragment-ktx from 1.3.6 to 1.5.5

    Bump fragment-ktx from 1.3.6 to 1.5.5

    Bumps fragment-ktx from 1.3.6 to 1.5.5.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump hilt-android-gradle-plugin from 2.38.1 to 2.44.2

    Bump hilt-android-gradle-plugin from 2.38.1 to 2.44.2

    Bumps hilt-android-gradle-plugin from 2.38.1 to 2.44.2.

    Release notes

    Sourced from hilt-android-gradle-plugin's releases.

    Dagger 2.44.2

    What’s new in Dagger

    Bug fixes

    • Fixes #3633: Updated shading rules to include newly added classes in androidx.room.compiler to prevent class version conflicts with user dependency on Room.

    Dagger 2.44.1

    What’s new in Dagger

    Bug fixes

    • Fixes #3619: Upgrades XProcessing jars to get upstream fix for enums in annotations (which were missing fully qualified name or import in generated code).

    Dagger 2.44

    What’s new In Dagger

    Potentially breaking changes

    • Fixes #3531: Removed formatting from dagger.android generated source could be a breaking change for anyone relying on golden files for Dagger’s generated code. (d123efdf0)

    Bug Fixes

    • Fixes #3522: Avoids pre-validating the nearest enclosing type in the InjectProcessingStep. (1d74d1fd3)

    What’s new in Hilt

    Potentially breaking changes

    • Added ViewModelLifecycle. This can be injected in the ViewModelComponent and used to register listeners for when ViewModel#onCleared() is called. This change also includes a breaking change for anyone who implemented the ActivityRetainedLifecycle interface themselves. This should be rare though as this interface was not meant to be implemented by users. (55aa4c60a)

    Bug Fixes

    • Fixes #3478: Fixes an issue in Hilt's Gradle Plugin not configuring the aggregating task correctly on a com.android.test Gradle module. (ea39850c7)

    Dagger 2.43.2

    What’s New In Dagger

    Bug Fixes

    • Fixes #3495: Updates the XProcessing jars, which should again be compatible with java 8. (62b7f4592)
    • Adds support reading metadata from Kotlin 1.8 by updating kotlin-metadata-jvm to 5.0. (353a50b1e)
    • Fixes an issue where the Hilt Gradle Plugin artifact was being bloated with additional classes causing its size to be way bigger than its suppose to be. (8235bebe9)

    Dagger 2.43.1

    What’s New In Dagger

    Bug Fixes

    • Fixes #3480. Replace dependency on javax.annotation:jsr250-api:1.0 with javax.annotation:javax.annotation-api:1.3.2. (e9dc377d1)
    • Fixes #3483: Add onPluginEnd to BindingGraphPlugin, which will be called after all BindingGraphPlugins have been visited (34452751e)
    • Fixes #3476: Fix issue with Dagger generating mismatching parameter names in component inject functions. (90300d992)

    ... (truncated)

    Commits
    • 35a18c4 2.44.2 release
    • 94118a2 Shade androidx.room.compiler dependencies in Dagger.
    • 633059f Fix GitHub Actions deprecation warnings.
    • 3019090 Update Dagger yml and README with new latest version number.
    • 776f877 Update Dagger's XProcessing jars.
    • 127df43 Remove AGP 4.2 from Hilt Gradle Plugin
    • 81887cc Internal changes
    • 1fece08 Add BUILD files to all subdirectories of javatests/dagger/functional packages
    • e52f7af Internal changes
    • ff66535 Internal changes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump hilt-android from 2.39.1 to 2.44.2

    Bump hilt-android from 2.39.1 to 2.44.2

    Bumps hilt-android from 2.39.1 to 2.44.2.

    Release notes

    Sourced from hilt-android's releases.

    Dagger 2.44.2

    What’s new in Dagger

    Bug fixes

    • Fixes #3633: Updated shading rules to include newly added classes in androidx.room.compiler to prevent class version conflicts with user dependency on Room.

    Dagger 2.44.1

    What’s new in Dagger

    Bug fixes

    • Fixes #3619: Upgrades XProcessing jars to get upstream fix for enums in annotations (which were missing fully qualified name or import in generated code).

    Dagger 2.44

    What’s new In Dagger

    Potentially breaking changes

    • Fixes #3531: Removed formatting from dagger.android generated source could be a breaking change for anyone relying on golden files for Dagger’s generated code. (d123efdf0)

    Bug Fixes

    • Fixes #3522: Avoids pre-validating the nearest enclosing type in the InjectProcessingStep. (1d74d1fd3)

    What’s new in Hilt

    Potentially breaking changes

    • Added ViewModelLifecycle. This can be injected in the ViewModelComponent and used to register listeners for when ViewModel#onCleared() is called. This change also includes a breaking change for anyone who implemented the ActivityRetainedLifecycle interface themselves. This should be rare though as this interface was not meant to be implemented by users. (55aa4c60a)

    Bug Fixes

    • Fixes #3478: Fixes an issue in Hilt's Gradle Plugin not configuring the aggregating task correctly on a com.android.test Gradle module. (ea39850c7)

    Dagger 2.43.2

    What’s New In Dagger

    Bug Fixes

    • Fixes #3495: Updates the XProcessing jars, which should again be compatible with java 8. (62b7f4592)
    • Adds support reading metadata from Kotlin 1.8 by updating kotlin-metadata-jvm to 5.0. (353a50b1e)
    • Fixes an issue where the Hilt Gradle Plugin artifact was being bloated with additional classes causing its size to be way bigger than its suppose to be. (8235bebe9)

    Dagger 2.43.1

    What’s New In Dagger

    Bug Fixes

    • Fixes #3480. Replace dependency on javax.annotation:jsr250-api:1.0 with javax.annotation:javax.annotation-api:1.3.2. (e9dc377d1)
    • Fixes #3483: Add onPluginEnd to BindingGraphPlugin, which will be called after all BindingGraphPlugins have been visited (34452751e)
    • Fixes #3476: Fix issue with Dagger generating mismatching parameter names in component inject functions. (90300d992)

    ... (truncated)

    Commits
    • 35a18c4 2.44.2 release
    • 94118a2 Shade androidx.room.compiler dependencies in Dagger.
    • 633059f Fix GitHub Actions deprecation warnings.
    • 3019090 Update Dagger yml and README with new latest version number.
    • 776f877 Update Dagger's XProcessing jars.
    • 127df43 Remove AGP 4.2 from Hilt Gradle Plugin
    • 81887cc Internal changes
    • 1fece08 Add BUILD files to all subdirectories of javatests/dagger/functional packages
    • e52f7af Internal changes
    • ff66535 Internal changes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump hilt-android-compiler from 2.39.1 to 2.44.2

    Bump hilt-android-compiler from 2.39.1 to 2.44.2

    Bumps hilt-android-compiler from 2.39.1 to 2.44.2.

    Release notes

    Sourced from hilt-android-compiler's releases.

    Dagger 2.44.2

    What’s new in Dagger

    Bug fixes

    • Fixes #3633: Updated shading rules to include newly added classes in androidx.room.compiler to prevent class version conflicts with user dependency on Room.

    Dagger 2.44.1

    What’s new in Dagger

    Bug fixes

    • Fixes #3619: Upgrades XProcessing jars to get upstream fix for enums in annotations (which were missing fully qualified name or import in generated code).

    Dagger 2.44

    What’s new In Dagger

    Potentially breaking changes

    • Fixes #3531: Removed formatting from dagger.android generated source could be a breaking change for anyone relying on golden files for Dagger’s generated code. (d123efdf0)

    Bug Fixes

    • Fixes #3522: Avoids pre-validating the nearest enclosing type in the InjectProcessingStep. (1d74d1fd3)

    What’s new in Hilt

    Potentially breaking changes

    • Added ViewModelLifecycle. This can be injected in the ViewModelComponent and used to register listeners for when ViewModel#onCleared() is called. This change also includes a breaking change for anyone who implemented the ActivityRetainedLifecycle interface themselves. This should be rare though as this interface was not meant to be implemented by users. (55aa4c60a)

    Bug Fixes

    • Fixes #3478: Fixes an issue in Hilt's Gradle Plugin not configuring the aggregating task correctly on a com.android.test Gradle module. (ea39850c7)

    Dagger 2.43.2

    What’s New In Dagger

    Bug Fixes

    • Fixes #3495: Updates the XProcessing jars, which should again be compatible with java 8. (62b7f4592)
    • Adds support reading metadata from Kotlin 1.8 by updating kotlin-metadata-jvm to 5.0. (353a50b1e)
    • Fixes an issue where the Hilt Gradle Plugin artifact was being bloated with additional classes causing its size to be way bigger than its suppose to be. (8235bebe9)

    Dagger 2.43.1

    What’s New In Dagger

    Bug Fixes

    • Fixes #3480. Replace dependency on javax.annotation:jsr250-api:1.0 with javax.annotation:javax.annotation-api:1.3.2. (e9dc377d1)
    • Fixes #3483: Add onPluginEnd to BindingGraphPlugin, which will be called after all BindingGraphPlugins have been visited (34452751e)
    • Fixes #3476: Fix issue with Dagger generating mismatching parameter names in component inject functions. (90300d992)

    ... (truncated)

    Commits
    • 35a18c4 2.44.2 release
    • 94118a2 Shade androidx.room.compiler dependencies in Dagger.
    • 633059f Fix GitHub Actions deprecation warnings.
    • 3019090 Update Dagger yml and README with new latest version number.
    • 776f877 Update Dagger's XProcessing jars.
    • 127df43 Remove AGP 4.2 from Hilt Gradle Plugin
    • 81887cc Internal changes
    • 1fece08 Add BUILD files to all subdirectories of javatests/dagger/functional packages
    • e52f7af Internal changes
    • ff66535 Internal changes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
Owner
Michel Horacio
Michel Horacio
Shreyas Patil 2.1k Dec 30, 2022
πŸ’° Expense Manager is simple, intuitive, stable and modern app that is just designed for you.

Expense Manager is simple, intuitive, stable and modern app that is just designed for you. Everything you need at your fingertips to manage the expenditures and budgets.

Behzod Bozorboev 13 Oct 20, 2022
πŸ“’ NotyKT is a complete πŸ’ŽKotlin-stack (Backend + Android) πŸ“± application built to demonstrate the use of Modern development tools with best practices implementation🦸.

NotyKT ??️ NotyKT is the complete Kotlin-stack note taking ??️ application ?? built to demonstrate a use of Kotlin programming language in server-side

Shreyas Patil 1.4k Jan 8, 2023
NewsApp - Modern Minimalistic Design, MVVM, Pagination, Retrofit, Coroutines, Room, Glide, Navigation Component (Clean Architecture)

NewsApp is a modern news android application which features virtually ALL recent and recommended android development tech stack and tools used

Osama Sayed 4 Dec 6, 2021
To Do List App is built in Kotlin using Material 3, Data Binding, Navigation Component Graphs, Room persistence library, Kotlin coroutines, LiveData, Dagger Hilt, and Notifications following MVVM Architecture.

ToDoListApp ToDoList App demonstrates modern Android development with Hilt, Coroutines, LiveData, Jetpack (Room, ViewModel), and Material 3 Design bas

Naman Garg 10 Jan 8, 2023
A Simple and Minimal Quotes Android Application to demonstrate the Modern Android Development tools

Quotee Android ?? A Simple and Minimal Quotes Android Application to demonstrate the Modern Android Development tools. Developed with ❀️ by Aminullah

null 12 Aug 24, 2022
πŸŽ₯ A Simple and Minimal Movies Android Application to demonstrate the Modern Android Development and Jetpack Compose.

ComposeMovie Android ?? A Simple and Minimal Movies Android Application to demonstrate the Modern Android Development and Jetpack Compose. Built with

null 13 Oct 1, 2022
The JeTrivia is built on a modern Android Development tech stack with MVVM architecture. Kotlin, Coroutine, Flow, StateFlow, Jetpack Compose, Navigation, Room, Hilt, Retrofit2, OkHttp3, kotlinx.serialization, MockK, Truth

JeTrivia ?? In Progress ?? The JeTrivia application is sample based on MVVM architecture. Fetching data from the network via repository pattern and sa

Tolga Bolatcan 5 Mar 31, 2022
AudioNotes πŸ“™ An open source simple audio note taking app built to demonstrate android development best practices.

AudioNotes ?? A simple open source audio note-taking ?? Android application built to describe the use of Modern Android development tools. ?? . Made w

Samson Achiaga 47 Dec 15, 2022
A quiz app built with trivia api. This app was built with mvvm architecture, dagger-hilt, retrofit, room database, and navigation components.

A quiz app built with trivia api. This app was built with mvvm architecture, dagger-hilt, retrofit, room database, and navigation components.

Stephen Odumirin 3 Dec 19, 2022
A simple Android app to demonstrate the use of Hover SDK for M-PESA Send Money while offline. This SDK does not require an internet connection, it automates USSD sessions in the background of an android application.

HoverSDKDemo Hover SDK is an Android SDK that lets mobile developers to add money features to the applications. This SDK does not require an internet

Joel Kanyi 9 Dec 21, 2022
An simple image gallery app utilizing Unsplash API to showcase modern Android development architecture (MVVM + Kotlin + Retrofit2 + Hilt + Coroutines + Kotlin Flow + mockK + Espresso + Junit)

Imagine App An simple image gallery app utilizing Unsplash API. Built with ❀︎ by Wajahat Karim and contributors Features Popular photos with paginatio

Wajahat Karim 313 Jan 4, 2023
Simple Notes app demonstrates modern Android development with Hilt, Material Motion, Coroutines, Flow, Jetpack (Room, ViewModel) based on MVVM architecture.

Simple Notes app demonstrates modern Android development with Hilt, Material Motion, Coroutines, Flow, Jetpack (Room, ViewModel) based on MVVM architecture.

Aravind Chowdary 2 Sep 3, 2022
A minimalistic Android application Built with Clean architecture and Jetpack component

MovieMania A minimalistic Android application Built with Clean architecture and Jetpack component (Jetpack Compose, MVVM , Paging 3.0, HILT, ROOM DB,

Farhan Tanvir 196 Jan 1, 2023
Episodie is a TV show time tracker app with unusual design written in kotlin and clean architecture approach. Get to know how much time you spent watching tv shows.

Episodie Episodie is a TV show time tracker app with unusual design. Get to know how much time you spent watching tv shows. Track easily overall progr

Przemek 126 Dec 7, 2022
This project demonstrate the use of CameraX API for in-app face time.

CameraApp This project demonstrate the use of CameraX API for in-app face time. You can click picture using main or front. I have also used yalantis.u

Shamshad Reyaz(Arman) 1 Oct 22, 2021
Small app to demonstrate app modularization combined with clean architecture

Football Hightlights Sample Sample project, exploring the app Modularization in combination with some concepts of the clean architecture, in particula

null 1 Oct 31, 2021
CameraX- - CameraXbasic aims to demonstrate how to use CameraX APIs written in Kotlin

CameraXbasic CameraXbasic aims to demonstrate how to use CameraX APIs written in

null 0 Apr 21, 2022
NewsSpac-MVVM-CleanArch-TDD - The App uses MVVM architecture together with Clean architecture

Aplicativo NewsSpace Arquitetura O App utiliza a arquitetura MVVM em conjunto co

null 1 Feb 11, 2022