A set of Android-UI components to make it easier to request permission in a user friendly way.

Overview

Maven Central Crowdin

Permission UI

A set of Android-UI components to make it easier to request permission in a user friendly way.

Access background location

A jetpack compose module to easy request background location permission in a intuitive way.

happy case gif

How to include in your project

The library is available via MavenCentral:

allprojects {
    repositories {
        // ...
        mavenCentral()
    }
}

Add it to your module dependencies:

") } ">
dependencies {
    implementation("se.warting.permissionsui:permissionsui:
   
    ")
}

   
Snapshots of the development version are available in Sonatype's snapshots repository.

Sonatype Nexus (Snapshots)

allprojects {
    repositories {
        // ...
        maven {
            url 'https://oss.sonatype.org/content/repositories/snapshots/'
        }
    }
}

How to use

All you need to do is to call LocationInBackgroundTutorialView:

LocationInBackgroundTutorialView() {
    // Permissions granted 
}

Example:

import se.warting.permissionsui.backgroundlocation.LocationInBackgroundTutorialView

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            BackgroundLocationPermissionRationaleTheme {
                Surface(color = MaterialTheme.colors.background) {
                    LocationInBackgroundTutorialView() {
                        // Permissions granted 
                    }
                }
            }
        }
    }
}

For a full implementation see: Full sample

Notes

This Library adds the following permissions to your app:

  • android.permission.ACCESS_COARSE_LOCATION
  • android.permission.ACCESS_FINE_LOCATION
  • android.permission.ACCESS_BACKGROUND_LOCATION

Samples

SDK Happy case Rationale case Worst case
10 happy case gif rationale case gif worst case gif
12 happy case gif rationale case gif worst case gif
Comments
  • Bump kotlin-gradle-plugin from 1.6.10 to 1.6.20

    Bump kotlin-gradle-plugin from 1.6.10 to 1.6.20

    Bumps kotlin-gradle-plugin from 1.6.10 to 1.6.20.

    Release notes

    Sourced from kotlin-gradle-plugin's releases.

    Kotlin 1.6.20-RC2

    Changelog

    Compiler

    Fixes

    • KT-51352 "ClassCastException: class ScopeCoroutine cannot be cast to class Iterable" caused by coroutines and context receivers
    • KT-51271 "ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 3" with inlining of context function
    • KT-50520 "NPE: containingDeclaration.ac…lDeclarationType.REGULAR) must not be null" with implicit type on self-referencing lambda in a builder
    • KT-51471 Native: incorrect debug information when inheriting suspend fun invoke implementation
    • KT-51353 IncompatibleClassChangeError: Expected non-static field com.soywiz.korim.color.Colors.BLACK

    Native

    • KT-37368 Native compiler fails to compile big projects

    Native. Runtime

    Tools. JPS

    • KT-51434 Language version 1.7 is absent in Kotlin Compiler settings

    Tools. Gradle

    • KT-51588 Restoring from build cache breaks Kotlin incremental compilation

    Checksums

    File Sha256
    kotlin-compiler-1.6.20-RC2.zip 038da980d17432a44c41299b528b81040ca2578b634b0fd066661b45871711f2
    kotlin-native-linux-x86_64-1.6.20-RC2.tar.gz d8ada91551ad425697966c128725757d6c032eb25f0c58e737783d20914751c4
    kotlin-native-macos-x86_64-1.6.20-RC2.tar.gz a6e85afd0a920ab7d1c5dea6e5153515ecf98aafbbe60e6151e181455e6583d7
    kotlin-native-macos-aarch64-1.6.20-RC2.tar.gz 60d9b37177180997e2c42a26214b36242ccace62fa3af08091c8ed7df80410e0
    kotlin-native-windows-x86_64-1.6.20-RC2.zip 57da7b6e3438ffc44fe0e99846efa7fed1c458d74cf00d504f2583c4d99c41c8

    Kotlin 1.6.20-RC

    Changelog

    Compiler

    • KT-51302 Kotlin/Native 1.6.20-M1 compiler fails because of assertion in NativeAnnotationImplementationTransformer
    • KT-51148 "AssertionError: At this stage there should be no remaining variables with proper constraints" caused by two type parameters
    • KT-50970 Kotlin/Native: use arm instruction set instead of thumb-2 for iosArm32 and watchosArm32 targets
    • KT-50843 Kotlin/Native: LLVM constant merge pass does not work for Kotlin constants
    • KT-51157 JVM / IR: "IndexOutOfBoundsException: Index: 1, Size: 1" caused by interface hierarchy and UInt method parameter

    ... (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 java production 
    opened by dependabot[bot] 22
  • Bump kotlin-gradle-plugin from 1.6.10 to 1.6.21

    Bump kotlin-gradle-plugin from 1.6.10 to 1.6.21

    Bumps kotlin-gradle-plugin from 1.6.10 to 1.6.21.

    Release notes

    Sourced from kotlin-gradle-plugin's releases.

    Kotlin 1.6.20

    Changelog

    Compiler

    New Features

    • KT-48217 Add an annotation JvmDefaultWithCompatibility to allow generating DefaultImpls classes if -Xjvm-default=all option is used
    • KT-49929 [FIR] Support programmatic creation of annotation class instances
    • KT-49276 Warn about potential overload resolution change if Range/Progression starts implementing Collection
    • KT-47902 Do not propagate method deprecation through overrides
    • KT-49857 Require Xcode 13 for building Kotlin/Native compiler
    • KT-47701 Support instantiation of annotation classes on Native
    • KT-46085 Support experimental parallel compilation of a single module in the JVM backend
    • KT-46603 Generate SAM-conversions to Java interfaces extending 'java.io.Serializable' as serializable using java.lang.invoke.LambdaMetafactory

    Performance Improvements

    • KT-50156 HMPP: Slow frontend/ide performance in OKIO (ExpectActualDeclarationChecker)
    • KT-50073 Performance regression in adapted function references
    • KT-50076 Performance regression in super call to an interface member in $DefaultImpls
    • KT-50080 Performance regression in string template with generic property with primitive upper bound
    • KT-50084 Performance regression in concatenation with 'String?'
    • KT-50078 Performance regression in for-in-array loop
    • KT-50039 Performance regression in inner class constructor call with default parameters
    • KT-48784 An anonymous class has fields for variables that are only used in the constructor
    • KT-42010 Generate IINC instruction for postfix increment in JVM_IR
    • KT-48433 JVM_IR don't generate null check on 'this$0' parameter of inner class constructor
    • KT-48435 JVM_IR ConstForLoopBenchmark performance regression
    • KT-48507 JVM_IR ForLoopBenchmark regressions
    • KT-48640 Performance regression in 'longDownToLoop' benchmarks
    • KT-29822 Generate specialized bytecode for loops withIndex over unsigned arrays
    • KT-48669 Generate optimizable counter loop for loops over indices of unsigned arrays
    • KT-49444 Possible performance degradation with UInt downTo loop
    • KT-48944 Possible performance regression with comparison of local KFunctions
    • KT-17111 Eliminate redundant store/load instructions when the value stored is simple
    • KT-36837 Generate more compact code for for-in-range loop in JVM_IR
    • KT-48947 JVM / IR Possible performance regression with string templates
    • KT-48931 JVM / IR: Performance degradation with string concatenation
    • KT-36654 Generate more compact bytecode for safe call in JVM_IR

    Fixes

    • KT-24643 Prohibit using a type parameter declared for an extension property inside delegate
    • KT-51747 Make KtCallableDeclaration.getContextReceivers default to preserve compatibility
    • KT-49658 NI: False negative TYPE_MISMATCH on nullable type with when
    • KT-43493 NI: @​BuilderInference prevents compilation error of "Operator '==' cannot be applied to 'Long' and 'Int'"
    • KT-51649 Kotlin/Native: reduce binary size of watchosArm32 and iosArm32 targets by limiting inlining of runtime functions
    • KT-48626 JVM IR: incorrect behavior for captured for-loop parameter since 1.6.20-dev-723
    • KT-51036 JVM / IR: "NullPointerException: Parameter specified as non-null is null" with synchronized and companion object

    ... (truncated)

    Changelog

    Sourced from kotlin-gradle-plugin's changelog.

    1.6.20

    Compiler

    New Features

    • KT-48217 Add an annotation JvmDefaultWithCompatibility to allow generating DefaultImpls classes if -Xjvm-default=all option is used
    • KT-49929 [FIR] Support programmatic creation of annotation class instances
    • KT-49276 Warn about potential overload resolution change if Range/Progression starts implementing Collection
    • KT-47902 Do not propagate method deprecation through overrides
    • KT-49857 Require Xcode 13 for building Kotlin/Native compiler
    • KT-47701 Support instantiation of annotation classes on Native
    • KT-46085 Support experimental parallel compilation of a single module in the JVM backend
    • KT-46603 Generate SAM-conversions to Java interfaces extending 'java.io.Serializable' as serializable using java.lang.invoke.LambdaMetafactory

    Performance Improvements

    • KT-50156 HMPP: Slow frontend/ide performance in OKIO (ExpectActualDeclarationChecker)
    • KT-50073 Performance regression in adapted function references
    • KT-50076 Performance regression in super call to an interface member in $DefaultImpls
    • KT-50080 Performance regression in string template with generic property with primitive upper bound
    • KT-50084 Performance regression in concatenation with 'String?'
    • KT-50078 Performance regression in for-in-array loop
    • KT-50039 Performance regression in inner class constructor call with default parameters
    • KT-48784 An anonymous class has fields for variables that are only used in the constructor
    • KT-42010 Generate IINC instruction for postfix increment in JVM_IR
    • KT-48433 JVM_IR don't generate null check on 'this$0' parameter of inner class constructor
    • KT-48435 JVM_IR ConstForLoopBenchmark performance regression
    • KT-48507 JVM_IR ForLoopBenchmark regressions
    • KT-48640 Performance regression in 'longDownToLoop' benchmarks
    • KT-29822 Generate specialized bytecode for loops withIndex over unsigned arrays
    • KT-48669 Generate optimizable counter loop for loops over indices of unsigned arrays
    • KT-49444 Possible performance degradation with UInt downTo loop
    • KT-48944 Possible performance regression with comparison of local KFunctions
    • KT-17111 Eliminate redundant store/load instructions when the value stored is simple
    • KT-36837 Generate more compact code for for-in-range loop in JVM_IR
    • KT-48947 JVM / IR Possible performance regression with string templates
    • KT-48931 JVM / IR: Performance degradation with string concatenation
    • KT-36654 Generate more compact bytecode for safe call in JVM_IR

    Fixes

    • KT-24643 Prohibit using a type parameter declared for an extension property inside delegate
    • KT-51747 Make KtCallableDeclaration.getContextReceivers default to preserve compatibility
    • KT-49658 NI: False negative TYPE_MISMATCH on nullable type with when
    • KT-43493 NI: @​BuilderInference prevents compilation error of "Operator '==' cannot be applied to 'Long' and 'Int'"
    • KT-51649 Kotlin/Native: reduce binary size of watchosArm32 and iosArm32 targets by limiting inlining of runtime functions
    • KT-48626 JVM IR: incorrect behavior for captured for-loop parameter since 1.6.20-dev-723
    • KT-51036 JVM / IR: "NullPointerException: Parameter specified as non-null is null" with synchronized and companion object
    • KT-51471 Native: incorrect debug information when inheriting suspend fun invoke implementation

    ... (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 java production 
    opened by dependabot[bot] 21
  • Bump kotlinx-coroutines-android from 1.6.1 to 1.6.2

    Bump kotlinx-coroutines-android from 1.6.1 to 1.6.2

    Bumps kotlinx-coroutines-android from 1.6.1 to 1.6.2.

    Release notes

    Sourced from kotlinx-coroutines-android's releases.

    1.6.2

    • Fixed a bug with ThreadLocalElement not being correctly updated when the most outer suspend function was called directly without kotlinx.coroutines (#2930).
    • Fixed multiple data races: one that might have been affecting runBlocking event loop, and a benign data race in Mutex (#3250, #3251).
    • Obsolete TestCoroutineContext is removed, which fixes the kotlinx-coroutines-test JPMS package being split between kotlinx-coroutines-core and kotlinx-coroutines-test (#3218).
    • Updated the ProGuard rules to further shrink the size of the resulting DEX file with coroutines (#3111, #3263). Thanks, @​agrieve!
    • Atomicfu is updated to 0.17.2, which includes a more efficient and robust JS IR transformer (#3255).
    • Kotlin is updated to 1.6.21, Gradle version is updated to 7.4.2 (#3281). Thanks, @​wojtek-kalicinski!
    • Various documentation improvements.
    Changelog

    Sourced from kotlinx-coroutines-android's changelog.

    Version 1.6.2

    • Fixed a bug with ThreadLocalElement not being correctly updated when the most outer suspend function was called directly without kotlinx.coroutines (#2930).
    • Fixed multiple data races: one that might have been affecting runBlocking event loop, and a benign data race in Mutex (#3250, #3251).
    • Obsolete TestCoroutineContext is removed, which fixes the kotlinx-coroutines-test JPMS package being split between kotlinx-coroutines-core and kotlinx-coroutines-test (#3218).
    • Updated the ProGuard rules to further shrink the size of the resulting DEX file with coroutines (#3111, #3263). Thanks, @​agrieve!
    • Atomicfu is updated to 0.17.2, which includes a more efficient and robust JS IR transformer (#3255).
    • Kotlin is updated to 1.6.21, Gradle version is updated to 7.4.2 (#3281). Thanks, @​wojtek-kalicinski!
    • Various documentation improvements.
    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 java production 
    opened by dependabot[bot] 20
  • Bump composeVersion from 1.2.0-beta02 to 1.2.0-beta03

    Bump composeVersion from 1.2.0-beta02 to 1.2.0-beta03

    Bumps composeVersion from 1.2.0-beta02 to 1.2.0-beta03. Updates ui from 1.2.0-beta02 to 1.2.0-beta03

    Updates material from 1.2.0-beta02 to 1.2.0-beta03

    Updates ui-tooling-preview from 1.2.0-beta02 to 1.2.0-beta03

    Updates ui-test-junit4 from 1.2.0-beta02 to 1.2.0-beta03

    Updates ui-tooling from 1.2.0-beta02 to 1.2.0-beta03

    Updates runtime from 1.2.0-beta02 to 1.2.0-beta03

    Updates foundation-layout from 1.2.0-beta02 to 1.2.0-beta03

    Updates material-icons-extended from 1.2.0-beta02 to 1.2.0-beta03

    Updates animation from 1.2.0-beta02 to 1.2.0-beta03

    Updates runtime-livedata from 1.2.0-beta02 to 1.2.0-beta03

    Updates ui-text from 1.2.0-beta02 to 1.2.0-beta03

    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 java production 
    opened by dependabot[bot] 16
  • Bump composeVersion from 1.2.0-alpha07 to 1.2.0-alpha08

    Bump composeVersion from 1.2.0-alpha07 to 1.2.0-alpha08

    Bumps composeVersion from 1.2.0-alpha07 to 1.2.0-alpha08. Updates ui from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates material from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates ui-tooling-preview from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates ui-test-junit4 from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates ui-tooling from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates runtime from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates foundation-layout from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates material-icons-extended from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates animation from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates runtime-livedata from 1.2.0-alpha07 to 1.2.0-alpha08

    Updates ui-text from 1.2.0-alpha07 to 1.2.0-alpha08

    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 java production 
    opened by dependabot[bot] 16
  • Bump composeVersion from 1.2.0-alpha07 to 1.2.0-beta01

    Bump composeVersion from 1.2.0-alpha07 to 1.2.0-beta01

    Bumps composeVersion from 1.2.0-alpha07 to 1.2.0-beta01. Updates ui from 1.2.0-alpha07 to 1.2.0-beta01

    Updates material from 1.2.0-alpha07 to 1.2.0-beta01

    Updates ui-tooling-preview from 1.2.0-alpha07 to 1.2.0-beta01

    Updates ui-test-junit4 from 1.2.0-alpha07 to 1.2.0-beta01

    Updates ui-tooling from 1.2.0-alpha07 to 1.2.0-beta01

    Updates runtime from 1.2.0-alpha07 to 1.2.0-beta01

    Updates foundation-layout from 1.2.0-alpha07 to 1.2.0-beta01

    Updates material-icons-extended from 1.2.0-alpha07 to 1.2.0-beta01

    Updates animation from 1.2.0-alpha07 to 1.2.0-beta01

    Updates runtime-livedata from 1.2.0-alpha07 to 1.2.0-beta01

    Updates ui-text from 1.2.0-alpha07 to 1.2.0-beta01

    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 java production 
    opened by dependabot[bot] 11
  • Bump kotlin-gradle-plugin from 1.6.21 to 1.7.0

    Bump kotlin-gradle-plugin from 1.6.21 to 1.7.0

    Bumps kotlin-gradle-plugin from 1.6.21 to 1.7.0.

    Release notes

    Sourced from kotlin-gradle-plugin's releases.

    Kotlin 1.7.0-RC2

    Changelog

    Compiler

    • KT-52311 java.lang.VerifyError: Bad type on operand stack
    • KT-52503 New green code appeared at the callable reference resolution

    JavaScript

    • KT-52518 Kotlin/JS IR: project with 1.6.21 fails to consume library built with 1.7.0-RC: ISE "Unexpected IrType kind: KIND_NOT_SET" at IrDeclarationDeserializer.deserializeIrTypeData()

    Tools. CLI

    • KT-52409 Report error when use-k2 with Multiplatform

    Tools. Gradle

    • KT-52509 Main variant published to Gradle plugin portal uses unshadowed artifact
    • KT-52392 Gradle: 1.7.0 does not support custom gradle build configuration on Windows OS

    Tools. Kapt

    • KT-52284 FIR: add error in 1.7.0 branch if run with Kapt

    Checksums

    File Sha256
    kotlin-compiler-1.7.0-RC2.zip 264b86c9d91d15a6eba0b720d759861adaab886ce37ae2dc8081af634eefba71
    kotlin-native-linux-x86_64-1.7.0-RC2.tar.gz 650812727f1ce1c585d109e9435872ffa89316714ecde472cdf0927d5efc4a1c
    kotlin-native-macos-x86_64-1.7.0-RC2.tar.gz c4bfc7332ccd2ea952a201f489d1ff57fa0b2ae93dccac5a2459c545e5655cf3
    kotlin-native-macos-aarch64-1.7.0-RC2.tar.gz 753e0ea090bc190eb63f6caf4bacf69817253aaa0d2f4eb6e7e79267a3041cb6
    kotlin-native-windows-x86_64-1.7.0-RC2.zip 58c824f3e0fdbd358584b87745d918518513ab83b5e0c67ca072f5402477946e

    Kotlin 1.7.0-RC

    Changelog

    Compiler

    • KT-51640 FIR: remove warning about "far from being production ready"
    • KT-52404 Prolong deprecation cycle for errors at contravariant usages of star projected argument from Java
    • KT-51844 New errors in overload resolution involving vararg extension methods
    • KT-50877 Inconsistent flexible type
    • KT-51988 "NPE: getContainingDeclaration…lDeclarationType.REGULAR) must not be null" when using @BuilderInference with multiple type arguments
    • KT-51925 Native: "IllegalStateException: Symbol for kotlinx.cinterop/CStructVar|null[0] is unbound" caused by inline function
    • KT-52035 FIR: add error in 1.7.0 branch if run on JS / Native configuration
    • KT-52037 FIR: add error in 1.7.0 branch if run with non-compatible plugins

    JavaScript

    ... (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 java production 
    opened by dependabot[bot] 8
  • Bump kotlin-gradle-plugin from 1.5.21 to 1.5.31

    Bump kotlin-gradle-plugin from 1.5.21 to 1.5.31

    Bumps kotlin-gradle-plugin from 1.5.21 to 1.5.31.

    Release notes

    Sourced from kotlin-gradle-plugin's releases.

    Kotlin 1.5.30

    Changelog

    Backend. Native. Debug

    • KT-47405 Incorrect path from inlined method in stacktrace on iOS-simulator ARM64
    • KT-47408 Incorrect line number of inlined method on iOS-simulator ARM64

    Compiler

    New Features

    • KT-44261 Support RxJava 3 nullability annotations
    • KT-32443 Experimental declarations should be contagious even when they are not explicitly used
    • KT-45844 Forbid using experimental markers on override declarations
    • KT-45845 Forbid using experimental markers on getter
    • KT-46644 Resolve overrides for IrProperty on deserialization
    • KT-46967 Support class type parameters annotations in FIR
    • KT-47402 Native: optimize access to object declarations that have only const vals and no init blocks
    • KT-47709 Make when statements with enum, sealed, and Boolean subjects exhaustive by default
    • KT-47699 Support programmatic creation of class annotations and corresponding feature flag on JVM

    Performance Improvements

    • KT-45103 Direct invoke optimization
    • KT-47785 Compilation time increased when trying to compile AssertJ DB expression in 1.5.21

    Fixes

    • KT-48361 INTEGER_OPERATOR_RESOLVE_WILL_CHANGE is not reported in some positions
    • KT-48180 JVM / IR: AssertionError: "Lambda with offset already exists" caused by calling inline function with default lambda parameter
    • KT-47328 JVM / IR: NoSuchFieldError with missing CHECKCAST
    • KT-48172 "IllegalStateException: Cannot serialize error type: [ERROR : ]" in 1.5.21 with java kotlin interop
    • KT-48230 JVM IR: CCE for multiple receivers case
    • KT-48262 "Inconsistent type" with JSpecify @​NullMarked
    • KT-48167 JVM / IR: If Map#entrySet is implemented in an interface, Kotlin compiler generates incorrect code for its implementation
    • KT-47988 JVM / IR: "VerifyError: Bad type on operand stack" when invoking apply with a local method reference
    • KT-48163 JVM / IR: "VerifyError: Bad type on operand stack" when throwing result of smartcast
    • KT-47833 False positive "Type argument is not within its bounds " with upcasting in 1.5.30-M1
    • KT-47830 Some code doesn't compile with unrestricted builder inference
    • KT-39883 Deprecate computing constant values if complex boolean expressions in when condition branches and conditions of loops
    • KT-47037 Eliminate builder inference restrictions
    • KT-46726 IR + BuilderInference: AssertionError: Unbound private symbol on usage of this in a BuilderInference lambda
    • KT-43855 Support gradual introduction of new nullability annotations
    • KT-43142 FIR: Check UPPER_BOUND_VIOLATED for type alias constructors properly
    • KT-45228 Leaking builder inference type variables though callable references
    • KT-42270 NI: NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER for BuilderInference with extension functions
    • KT-46029 JVM / IR: "Unbound private symbol: " when trying to save SequenceScope in property
    • KT-45258 Wrong CST between types which contain stub type
    • KT-45224 Type safety problem through leaking of the builder inference scope

    ... (truncated)

    Changelog

    Sourced from kotlin-gradle-plugin's changelog.

    CHANGELOG

    1.5.30

    Backend. Native. Debug

    • KT-47405 Incorrect path from inlined method in stacktrace on iOS-simulator ARM64
    • KT-47408 Incorrect line number of inlined method on iOS-simulator ARM64

    Compiler

    New Features

    • KT-44261 Support RxJava 3 nullability annotations
    • KT-32443 Experimental declarations should be contagious even when they are not explicitly used
    • KT-45844 Forbid using experimental markers on override declarations
    • KT-45845 Forbid using experimental markers on getter
    • KT-46644 Resolve overrides for IrProperty on deserialization
    • KT-46967 Support class type parameters annotations in FIR
    • KT-47402 Native: optimize access to object declarations that have only const vals and no init blocks
    • KT-47709 Make when statements with enum, sealed, and Boolean subjects exhaustive by default
    • KT-47699 Support programmatic creation of class annotations and corresponding feature flag on JVM

    Performance Improvements

    • KT-45103 Direct invoke optimization
    • KT-47785 Compilation time increased when trying to compile AssertJ DB expression in 1.5.21

    Fixes

    • KT-48361 INTEGER_OPERATOR_RESOLVE_WILL_CHANGE is not reported in some positions
    • KT-48180 JVM / IR: AssertionError: "Lambda with offset already exists" caused by calling inline function with default lambda parameter
    • KT-47328 JVM / IR: NoSuchFieldError with missing CHECKCAST
    • KT-48172 "IllegalStateException: Cannot serialize error type: [ERROR : ]" in 1.5.21 with java kotlin interop
    • KT-48230 JVM IR: CCE for multiple receivers case
    • KT-48262 "Inconsistent type" with JSpecify @​NullMarked
    • KT-48167 JVM / IR: If Map#entrySet is implemented in an interface, Kotlin compiler generates incorrect code for its implementation
    • KT-47988 JVM / IR: "VerifyError: Bad type on operand stack" when invoking apply with a local method reference
    • KT-48163 JVM / IR: "VerifyError: Bad type on operand stack" when throwing result of smartcast
    • KT-47833 False positive "Type argument is not within its bounds " with upcasting in 1.5.30-M1
    • KT-47830 Some code doesn't compile with unrestricted builder inference
    • KT-39883 Deprecate computing constant values if complex boolean expressions in when condition branches and conditions of loops
    • KT-47037 Eliminate builder inference restrictions
    • KT-46726 IR + BuilderInference: AssertionError: Unbound private symbol on usage of this in a BuilderInference lambda
    • KT-43855 Support gradual introduction of new nullability annotations
    • KT-43142 FIR: Check UPPER_BOUND_VIOLATED for type alias constructors properly
    • KT-45228 Leaking builder inference type variables though callable references
    • KT-42270 NI: NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER for BuilderInference with extension functions
    • KT-46029 JVM / IR: "Unbound private symbol: " when trying to save SequenceScope in property
    • KT-45258 Wrong CST between types which contain stub type

    ... (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 java 
    opened by dependabot[bot] 8
  • Bump composeVersion from 1.2.0-beta02 to 1.3.0-alpha01

    Bump composeVersion from 1.2.0-beta02 to 1.3.0-alpha01

    Bumps composeVersion from 1.2.0-beta02 to 1.3.0-alpha01. Updates ui from 1.2.0-beta02 to 1.3.0-alpha01

    Updates material from 1.2.0-beta02 to 1.3.0-alpha01

    Updates ui-tooling-preview from 1.2.0-beta02 to 1.3.0-alpha01

    Updates ui-test-junit4 from 1.2.0-beta02 to 1.3.0-alpha01

    Updates ui-tooling from 1.2.0-beta02 to 1.3.0-alpha01

    Updates runtime from 1.2.0-beta02 to 1.3.0-alpha01

    Updates foundation-layout from 1.2.0-beta02 to 1.3.0-alpha01

    Updates material-icons-extended from 1.2.0-beta02 to 1.3.0-alpha01

    Updates animation from 1.2.0-beta02 to 1.3.0-alpha01

    Updates runtime-livedata from 1.2.0-beta02 to 1.3.0-alpha01

    Updates ui-text from 1.2.0-beta02 to 1.3.0-alpha01

    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 java production 
    opened by dependabot[bot] 5
  • Bump kotlinx-coroutines-android from 1.6.1 to 1.6.3

    Bump kotlinx-coroutines-android from 1.6.1 to 1.6.3

    Bumps kotlinx-coroutines-android from 1.6.1 to 1.6.3.

    Release notes

    Sourced from kotlinx-coroutines-android's releases.

    1.6.3

    • Updated atomicfu version to 0.17.3 (#3321), fixing the projects using this library with JS IR failing to build (#3305).

    1.6.2

    • Fixed a bug with ThreadLocalElement not being correctly updated when the most outer suspend function was called directly without kotlinx.coroutines (#2930).
    • Fixed multiple data races: one that might have been affecting runBlocking event loop, and a benign data race in Mutex (#3250, #3251).
    • Obsolete TestCoroutineContext is removed, which fixes the kotlinx-coroutines-test JPMS package being split between kotlinx-coroutines-core and kotlinx-coroutines-test (#3218).
    • Updated the ProGuard rules to further shrink the size of the resulting DEX file with coroutines (#3111, #3263). Thanks, @​agrieve!
    • Atomicfu is updated to 0.17.2, which includes a more efficient and robust JS IR transformer (#3255).
    • Kotlin is updated to 1.6.21, Gradle version is updated to 7.4.2 (#3281). Thanks, @​wojtek-kalicinski!
    • Various documentation improvements.
    Changelog

    Sourced from kotlinx-coroutines-android's changelog.

    Version 1.6.3

    • Updated atomicfu version to 0.17.3 (#3321), fixing the projects using this library with JS IR failing to build (#3305).

    Version 1.6.2

    • Fixed a bug with ThreadLocalElement not being correctly updated when the most outer suspend function was called directly without kotlinx.coroutines (#2930).
    • Fixed multiple data races: one that might have been affecting runBlocking event loop, and a benign data race in Mutex (#3250, #3251).
    • Obsolete TestCoroutineContext is removed, which fixes the kotlinx-coroutines-test JPMS package being split between kotlinx-coroutines-core and kotlinx-coroutines-test (#3218).
    • Updated the ProGuard rules to further shrink the size of the resulting DEX file with coroutines (#3111, #3263). Thanks, @​agrieve!
    • Atomicfu is updated to 0.17.2, which includes a more efficient and robust JS IR transformer (#3255).
    • Kotlin is updated to 1.6.21, Gradle version is updated to 7.4.2 (#3281). Thanks, @​wojtek-kalicinski!
    • Various documentation improvements.
    Commits
    • 2ee99e2 Mention Kotlin 1.6.21 in the README
    • 16c613d Version 1.6.3
    • e9e14c9 Merge remote-tracking branch 'origin/master' into develop
    • 923a037 Update atomicfu version to 0.17.3 (#3321)
    • f101f93 Integration test project (#3307)
    • 59994e2 Fix typos in Cancellation and Timeouts docs (#3317)
    • c4cd1fd Update withContext KDoc (#3309)
    • aedbcc7 Clarify implementation contract of ThreadContextElement and CopyableThreadCon...
    • cc5b86a Remove NPM validation (#3312)
    • 110ca3d Update docs about creating custom CoroutineScopes (#3306)
    • 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 java production 
    opened by dependabot[bot] 5
  • Bump io.gitlab.arturbosch.detekt from 1.19.0 to 1.20.0

    Bump io.gitlab.arturbosch.detekt from 1.19.0 to 1.20.0

    Bumps io.gitlab.arturbosch.detekt from 1.19.0 to 1.20.0.

    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 java production 
    opened by dependabot[bot] 5
  • Bump gradle from 8.0.0-alpha08 to 8.0.0-alpha11

    Bump gradle from 8.0.0-alpha08 to 8.0.0-alpha11

    Bumps gradle from 8.0.0-alpha08 to 8.0.0-alpha11.

    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 java production 
    opened by dependabot[bot] 0
  • Bump detekt-formatting from 1.21.0 to 1.22.0

    Bump detekt-formatting from 1.21.0 to 1.22.0

    Bumps detekt-formatting from 1.21.0 to 1.22.0.

    Release notes

    Sourced from detekt-formatting's releases.

    v1.22.0-RC3

    1.22.0-RC3 - 2022-11-06

    Notable Changes
    • We're introducing the Detekt Marketplace, a place where you can add your own 3rd party extension such as rule, plugins, custom reporter, etc. - #5191
    • Our website is now versioned. You can find the changes for each version using the dropdown menu on the top bar. Documentation for the upcoming version (next) can be found here.
    • We added 16 new Rules to Detekt
      • AlsoCouldBeApply - #5333
      • MultilineRawStringIndentation - #5058
      • TrimMultilineRawString - #5051
      • UnnecessaryNotNullCheck - #5218
      • UnnecessaryPartOfBinaryExpression - #5203
      • UseSumOfInsteadOfFlatMapSize - #5405
      • FunctionReturnTypeSpacing from KtLint - #5256
      • FunctionSignature from KtLint - #5256
      • FunctionStartOfBodySpacing from KtLint - #5256
      • NullableTypeSpacing from KtLint - #5256
      • ParameterListSpacing from KtLint - #5256
      • SpacingBetweenFunctionNameAndOpeningParenthesis from KtLint - #5256
      • TrailingCommaOnCallSite from KtLint - #5312
      • TrailingCommaOnDeclarationSite from KtLint - #5312
      • TypeParameterListSpacing from KtLint - #5256
    • We added a new ruleset called detekt-rules-ruleauthors containing rules for Rule Authors to enforce best practices on Detekt rules such as the new ViolatesTypeResolutionRequirements - #5129 #5182
    • We added a new ruleset called detekt-rules-libraries containing rules mostly useful for Library Authors - We moved the following rules inside ForbiddenPublicDataClass, LibraryCodeMustSpecifyReturnType, LibraryEntitiesShouldNotBePublic this new ruleset - See Migration below on how to migrate #5360
    • We added support for JVM toolchain. This means that Detekt will now respect the JDK toolchain you specify on your Gradle configuration. You will also be able to specify a custom JDK home with the --jdk-home CLI parameter - #5269
    • Improvement for Type Resolution
      • We will now skip rules annotated with @RequiresTypeResolution when without Type Resolution - #5176
      • We will warn users if they run rules requiring Type Resolution when Type Resolution is disabled, so they're not silently skipped - #5226
    • Improvement for Config Management
      • We added exhaustiveness check during config validation. You can enable it checkExhaustiveness: true in your config file. This is disabled by default. - #5089
      • We added support for generating custom configuration for rule authors - #5080
    • Deprecations & Removals
      • We deprecated the MultiRule class as it was overly complicated. The suggested approach is to just provide separated rules. - #5161
      • The --fail-fast CLI flag (and failFast Gradle property) has been removed. It was deprecated since 1.16.x - #5290
      • We deprecated the following rules DuplicateCaseInWhenExpression, MissingWhenCase, RedundantElseInWhen as the Kotlin Compiler is already reporting errors for those scenarios - #5309
      • We removed the --print-ast CLI flag as PsiViewer provides the same features - #5418
    • Notable changes to existing rules
      • ArrayPrimitive is now working only with Type Resolution - #5175
      • WildcardImport is now running also on tests by default - #5121
      • ForbiddenImport allows now to specify a reason for every forbidden import - #4909
      • IgnoredReturnValue: option restrictToAnnotatedMethods is now deprecated in favor of restrictToConfig - #4922
    • This version of Detekt is built with Gradle v7.5.1, AGP 7.3.1, Kotlin 1.7.20 and KtLint 0.47.1 (see #5363 #5189 #5411 #5312
    • The minimum supported Gradle version is now v6.7.1 - #4964
    Migration

    We deprecated a number of rules in this release.

    You should update your config file as follows:

    ... (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 java production 
    opened by dependabot[bot] 0
Releases(v0.1.16)
  • v0.1.16(Nov 2, 2022)

    Changes

    • Bump actions/cache from 3.0.4 to 3.0.11 @dependabot (#192)
    • Bump detekt-formatting from 1.20.0 to 1.21.0 @dependabot (#162)
    • Bump io.gitlab.arturbosch.detekt from 1.20.0 to 1.21.0 @dependabot (#163)
    • Bump com.gradle.enterprise from 3.10.2 to 3.11.3 @dependabot (#202)
    • Bump com.github.ben-manes.versions from 0.42.0 to 0.43.0 @dependabot (#195)
    • Bump gradle from 7.4.0-beta04 to 8.0.0-alpha06 @dependabot (#203)
    • Bump org.jetbrains.kotlinx.binary-compatibility-validator from 0.10.1 to 0.12.1 @dependabot (#200)
    • Bump release-drafter/release-drafter from 5.20.0 to 5.21.1 @dependabot (#194)
    • Update auto-merge.yml @warting (#201)
    • Bump dependabot/fetch-metadata from 1.3.1 to 1.3.2 @dependabot (#153)
    • Bump org.jetbrains.kotlinx.binary-compatibility-validator from 0.10.0 to 0.10.1 @dependabot (#144)
    • Bump com.gradle.enterprise from 3.10.1 to 3.10.2 @dependabot (#143)
    • Bump actions/cache from 3.0.3 to 3.0.4 @dependabot (#141)
    • Bump core-ktx from 1.7.0 to 1.8.0 @dependabot (#140)
    • Bump appcompat from 1.4.1 to 1.4.2 @dependabot (#139)
    • Bump material from 1.6.0 to 1.6.1 @dependabot (#136)
    • Bump actions/cache from 3.0.2 to 3.0.3 @dependabot (#137)
    • Bump gradle from 7.2.0 to 7.2.1 @dependabot (#134)
    • Bump constraintlayout from 2.1.3 to 2.1.4 @dependabot (#133)
    • Bump com.gradle.enterprise from 3.10 to 3.10.1 @dependabot (#132)
    • Bump org.jetbrains.kotlinx.binary-compatibility-validator from 0.9.0 to 0.10.0 @dependabot (#131)
    • Bump composeVersion from 1.2.0-beta01 to 1.2.0-beta02 @dependabot (#130)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.15(May 14, 2022)

    Changes

    • Bump all @warting (#129)
    • bump gradle @warting (#128)
    • Bump detekt-gradle-plugin from 1.19.0 to 1.20.0 @dependabot (#116)
    • Bump org.jetbrains.kotlinx.binary-compatibility-validator from 0.8.0 to 0.9.0 @dependabot (#117)
    • Bump release-drafter/release-drafter from 5.19.0 to 5.20.0 @dependabot (#126)
    • Bump com.gradle.enterprise from 3.9 to 3.10 @dependabot (#119)
    • Bump github/codeql-action from 1 to 2 @dependabot (#122)
    • Bump material from 1.5.0 to 1.6.0 @dependabot (#124)
    • Bump org.jetbrains.dokka from 1.6.20 to 1.6.21 @dependabot (#123)
    • Bump dependabot/fetch-metadata from 1.3.0 to 1.3.1 @dependabot (#120)
    • Bump org.jetbrains.dokka from 1.6.10 to 1.6.20 @dependabot (#114)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.14(Apr 14, 2022)

    Changes

    • Bump actions/setup-java from 2 to 3 @dependabot (#110)
    • Bump actions/upload-artifact from 2 to 3 @dependabot (#111)
    • Bump actions/cache from 3.0.1 to 3.0.2 @dependabot (#112)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.13(Apr 8, 2022)

    Changes

    • Composable content callbacks when permissions is approved @warting (#109)
    • Bump gradle from 7.1.2 to 7.1.3 @dependabot (#108)
    • Bump composeVersion from 1.2.0-alpha06 to 1.2.0-alpha07 @dependabot (#107)
    • Bump kotlinx-coroutines-android from 1.6.0 to 1.6.1 @dependabot (#106)
    • Bump actions/cache from 2 to 3.0.1 @dependabot (#104)
    • Bump composeVersion from 1.2.0-alpha05 to 1.2.0-alpha06 @dependabot (#103)
    • Bump com.gradle.enterprise from 3.8.1 to 3.9 @dependabot (#101)
    • Bump composeVersion from 1.2.0-alpha04 to 1.2.0-alpha05 @dependabot (#100)
    • Bump release-drafter/release-drafter from 5.18.1 to 5.19.0 @dependabot (#99)
    • Bump composeVersion from 1.1.0-rc03 to 1.2.0-alpha04 @dependabot (#95)
    • Bump dependabot/fetch-metadata from 1.2.1 to 1.3.0 @dependabot (#97)
    • Bump actions/checkout from 2 to 3 @dependabot (#98)
    • Bump gradle from 7.1.1 to 7.1.2 @dependabot (#96)
    • Bump dependabot/fetch-metadata from 1.2.0 to 1.2.1 @dependabot (#94)
    • Bump dependabot/fetch-metadata from 1.1.1 to 1.2.0 @dependabot (#93)
    • Bump lifecycle-runtime-ktx from 2.4.0 to 2.4.1 @dependabot (#92)
    • Bump startup-runtime from 1.1.0 to 1.1.1 @dependabot (#90)
    • Bump lifecycle-viewmodel-compose from 2.4.0 to 2.4.1 @dependabot (#91)
    • Bump release-drafter/release-drafter from 5.17.6 to 5.18.1 @dependabot (#86)
    • Bump com.github.ben-manes.versions from 0.41.0 to 0.42.0 @dependabot (#87)
    • Bump gradle from 7.1.0 to 7.1.1 @dependabot (#88)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.12(Jan 27, 2022)

    Changes

    • Bump agp @warting (#84)
    • Java sample app @warting (#81)
    • Bump gradle + agp @warting (#80)
    • Bump release-drafter/release-drafter from 5.17.5 to 5.17.6 @dependabot (#77)
    • Bump release-drafter/release-drafter from 5.16.1 to 5.17.5 @dependabot (#76)

    🧰 Maintenance

    • Update README.md with activity result information @warting (#82)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.11(Jan 14, 2022)

    Changes

    • Update publish-module.gradle @warting (#75)
    • Bump release-drafter/release-drafter from 5.15.0 to 5.16.1 @dependabot (#69)
    • Bump material from 1.4.0 to 1.5.0 @dependabot (#73)
    • Bump constraintlayout from 2.1.2 to 2.1.3 @dependabot (#74)
    • Bump appcompat from 1.4.0 to 1.4.1 @dependabot (#72)
    • Bump com.gradle.enterprise from 3.8 to 3.8.1 @dependabot (#70)
    • Bump com.github.ben-manes.versions from 0.40.0 to 0.41.0 @dependabot (#67)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.10(Jan 5, 2022)

    Changes

    • Bump com.gradle.enterprise from 3.7.2 to 3.8 @dependabot (#63)
    • Bump com.github.ben-manes.versions from 0.39.0 to 0.40.0 @dependabot (#66)
    • Bump kotlinx-coroutines-android from 1.5.2 to 1.6.0 @dependabot (#64)
    • Bump org.jetbrains.dokka from 1.6.0 to 1.6.10 @dependabot (#65)
    • Bump composeVersion from 1.1.0-beta04 to 1.1.0-rc01 @dependabot (#62)
    • Bump gradle from 7.0.3 to 7.0.4 @dependabot (#59)
    • Update auto-merge.yml @warting (#60)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.9(Dec 3, 2021)

    Changes

    • Bump kotlin-gradle-plugin from 1.5.31 to 1.6.0 @dependabot (#51)
    • Bump detekt-formatting from 1.18.1 to 1.19.0 @dependabot (#56)
    • Bump io.gitlab.arturbosch.detekt from 1.18.1 to 1.19.0 @dependabot (#57)
    • Bump detekt-gradle-plugin from 1.18.1 to 1.19.0 @dependabot (#58)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.8(Nov 26, 2021)

  • v0.1.7(Nov 2, 2021)

    Changes

    • set version on project @warting (#47)
    • Bump lifecycle-viewmodel-compose from 2.4.0-rc01 to 2.4.0 @dependabot (#43)
    • Bump activity-compose from 1.3.1 to 1.4.0 @dependabot (#42)
    • Bump core-ktx from 1.6.0 to 1.7.0 @dependabot (#44)
    • Bump lifecycle-runtime-ktx from 2.3.1 to 2.4.0 @dependabot (#45)
    • Lint fixes @warting (#46)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.6(Oct 26, 2021)

  • v0.1.5(Oct 14, 2021)

  • v0.1.4(Oct 8, 2021)

    Changes

    • change License URL @warting (#33)
    • Enable build cache @warting (#32)
    • Bump org.jetbrains.dokka from 1.5.30 to 1.5.31 @dependabot (#31)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.3(Sep 30, 2021)

  • v0.1.2(Sep 30, 2021)

    Changes

    • Create FUNDING.yml @warting (#28)
    • update kotlinCompilerExtensionVersion @warting (#25)
    • Update issue templates @warting (#19)
    • Create pull_request_template.md @warting (#20)
    • Create CODE_OF_CONDUCT.md @warting (#17)
    • Create CONTRIBUTING.md @warting (#18)
    • Bump compose_version from 1.0.1 to 1.0.3 @dependabot (#27)
    • Update dependabot.yml @warting (#21)
    • Bump lifecycle-viewmodel-compose from 2.4.0-beta01 to 2.4.0-rc01 @dependabot (#24)
    • Update README.md @warting (#16)

    🐛 Bug Fixes

    • workaround for fixing maven repositories @warting (#22)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.1(Sep 22, 2021)

  • v0.1.0(Sep 21, 2021)

    Changes

    • add release scripts @warting (#12)
    • Rename to Permissions UI @warting (#11)
    • Rename @warting (#10)
    • Inline rationale dialog @warting (#9)
    • Bump permissions-compose-ktx @warting (#8)
    Source code(tar.gz)
    Source code(zip)
Owner
Stefan Wärting
Android developer since Nexus 1
Stefan Wärting
GreenDroid is a development library for the Android platform. It makes UI developments easier and consistent through your applications.

#GreenDroid Foreword : This project, initially initiated by me, Cyril Mottier, is not maintained anymore and can be considered as deprecated. As a con

Cyril Mottier 2.6k Jan 4, 2023
Set custom font in Android application

MagicViews Provides a simple way to set custom font in Android application. Adding to your project Add the library as a dependency to your build.gradl

Ivan Kocijan 225 Nov 20, 2022
A set of widgets to create smooth slideshows with ease.

Android SlideShow Widget A set of widgets to create smooth slide shows with ease. The slide show components are fully customizable and are not limited

MarvinLabs 211 Nov 20, 2022
Make your native android Toasts Fancy. A library that takes the standard Android toast to the next level with a variety of styling options. Style your toast from code.

FancyToast-Android Prerequisites Add this in your root build.gradle file (not your module build.gradle file): allprojects { repositories { ... ma

Shashank Singhal 1.2k Dec 26, 2022
Make your native android Dialog Fancy. A library that takes the standard Android Dialog to the next level with a variety of styling options. Style your dialog from code.

FancyAlertDialog-Android Prerequisites Add this in your root build.gradle file (not your module build.gradle file): allprojects { repositories { ..

Shashank Singhal 350 Dec 9, 2022
Make a cool intro for your Android app.

AppIntro AppIntro is an Android Library that helps you build a cool carousel intro for your App. AppIntro has support for requesting permissions and h

AppIntro Team 10.3k Dec 30, 2022
:bread: Make your native android Toasts Tasty

TastyToast Make your native android toast look beautiful. Preview About Refer Here Wiki Grab the above demo app from here : Dependency Add dependency

Rahul Yadav 2k Dec 29, 2022
Make a cool intro for your Android app.

AppIntro AppIntro is an Android Library that helps you build a cool carousel intro for your App. AppIntro has support for requesting permissions and h

AppIntro Team 40 Jan 3, 2023
Helper class to make any view rotatable

Rotatable This is a helper class actually, it simplifies having a view as rotatable by setting touch events and handling a lot of boilerplate works! S

Yahya Bayramoğlu 300 Nov 11, 2022
FloatingView can make the target view floating above the anchor view with cool animation

FloatingView FloatingView can make the target view floating above the anchor view with cool animation Links 中文版 README Blog about FloatingView demo.ap

UFreedom 1.8k Dec 27, 2022
A simple use of canvas to make real life clock

ClockView A simple use of canvas to make real life clock PR-viewer

Kishan Kumar 0 Dec 18, 2021
TourGuide is an Android library that aims to provide an easy way to add pointers with animations over a desired Android View

TourGuide TourGuide is an Android library. It lets you add pointer, overlay and tooltip easily, guiding users on how to use your app. Refer to the exa

Tan Jun Rong 2.6k Jan 5, 2023
Bubbles for Android is an Android library to provide chat heads capabilities on your apps. With a fast way to integrate with your development.

Bubbles for Android Bubbles for Android is an Android library to provide chat heads capabilities on your apps. With a fast way to integrate with your

Txus Ballesteros 1.5k Jan 2, 2023
SwipeBack for Android Activities to do pretty the same as the android "back-button" will do, but in a really intuitive way by using a swipe gesture

SwipeBack SwipeBack is for Android Activities to do pretty the same as the android "back-button" will do, but in a really intuitive way by using a swi

Hannes Dorfmann 697 Dec 14, 2022
This library provides a simple way to add a draggable sliding up panel (popularized by Google Music and Google Maps) to your Android application. Brought to you by Umano.

Note: we are not actively responding to issues right now. If you find a bug, please submit a PR. Android Sliding Up Panel This library provides a simp

Umano: News Read To You 9.4k Dec 31, 2022
[] A simple way to "badge" any given Android view at runtime without having to cater for it in layout

Android ViewBadger A simple way to "badge" any given Android view at runtime without having to cater for it in layout. Note: If your aim is to replica

Jeff Gilfelt 3k Nov 28, 2022
An elegant way to show your menu or messages.

Android View Hover In my opinion, jumping to a new activity to show your menu is a kind of wasting time and life. So, I think, we need a hover view, t

代码家 3.2k Jan 2, 2023
Just a Wheel——A easy way to setEmptyView to ListView、GridView or RecyclerView etc..

中文说明在这里 TEmptyView Just a Wheel—— A easier way to setEmptyView. Without having to write xml file every time. It supports AdapterView(ListView,GridView

Barry 454 Jan 9, 2023
Display code with syntax highlighting :sparkles: in native way.

CodeView (Android) CodeView helps to show code content with syntax highlighting in native way. Description CodeView contains 3 core parts to implement

Kirill Biakov 827 Dec 22, 2022