Releases: EdricChan03/androidx-ktx-extras
Kotest Common Enums 0.1.1
This is version 0.1.0 but with fixed publishing.
Warning
Note that this module is built with Kotlin 2.0.0+ and may require the K2 compiler.
GPG Signatures
This release's artifacts on Maven Central are signed with the E4052598808C27E9C6117FEB97DE4F9C9745338F
root GPG key using the 752F70D74BE46BEB12ED1D53EB00F7B8F4C71F3B
sub-key. Attached in this release is a GPG armour export of the key that can be used to verify the files.
An example of verifying the signed files (to be run in the shell) is as follows (you will need to install GnuPG if you have not already done so):
gpg --import androidx-ktx-extras-key.pgp
gpg --verify <asc file> <actual file>
Expected output:
❯ gpg --verify kotest-common-enums-0.1.1-javadoc.jar.asc kotest-common-enums-0.1.1-javadoc.jar
gpg: Signature made Thu 21 Aug 21:04:50 2025 +08
gpg: using RSA key 752F70D74BE46BEB12ED1D53EB00F7B8F4C71F3B
gpg: Good signature from "Edric Chan (Key used for Github commit signing) <email>" [ultimate]
Caution
Note that this specific sub-key will expire in 1 Jan 2026!
Below are the original release notes for 0.1.0:
0.1.0 (29 May 2024)
This is the initial release of this artifact, which provides common utilities for testing
code that uses EnumFromValue
or similar methods:
// Enum
enum class Example {
One,
Two,
Three;
companion object {
fun fromValue(value: String) = when (value.lowercase()) {
"one" -> One
"example", "two" -> Two
else -> Three
}
}
}
// Test code
val valuesMap = mapOf(
"one" to Example.One,
"two" to Example.Two,
"example" to Example.Two,
"other value" to Example.Three
)
class ExampleEnumTest : DescribeSpec({
include(
enumTests(
describeName = "fromValue",
enumValuesMap = valuesMap,
fromValueOrNullFn = Example.Companion::fromValue,
invalidArb = Arb.string()
.filterNot { output -> output in enumValuesMap.map { it.key.value } }
)
)
})
Common Enums 0.3.0
Released on 21 Aug 2025
Notable changes
- This release adds actual support for KMP targets (#29), with the following added targets being supported:
- wasmJs
- macosX64
- macosArm64
- iosX64
- iosArm64
- iosSimulatorArm64
- watchosArm32
- watchosArm64
- watchosX64
- watchosSimulatorArm64
- watchosDeviceArm64
- tvosArm64
- tvosX64
- tvosSimulatorArm64
- mingwX64
- linuxX64
- linuxArm64
All targets
kotlin {
jvm { ... }
androidLibrary { ... }
wasmJs {
d8()
}
macosX64()
macosArm64()
iosX64()
iosArm64()
iosSimulatorArm64()
watchosArm32()
watchosArm64()
watchosX64()
watchosSimulatorArm64()
watchosDeviceArm64()
tvosArm64()
tvosX64()
tvosSimulatorArm64()
mingwX64()
linuxX64()
linuxArm64()
}
See the build script for an up-to-date list
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.9.23 |
2.2.10 |
RecyclerView KTX 0.2.0
Published on 21 Mar 2025
Links
Usage
0.2.0 is published on Maven Central as io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.2.0
.
settings.gradle.kts
:
dependencyResolutionManagement {
// ...
repositories {
mavenCentral()
}
}
Kotlin/Groovy
implementation("io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.2.0")
TOML
gradle/libs.versions.toml
:
[libaries]
androidxtra-recyclerview-ktx = "io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.2.0"
build.gradle.kts
:
implementation(libs.androidxtra.recyclerview.ktx)
Notable changes
Warning
Note that this module is built with Kotlin 2.0.0+ and may require the K2 compiler.
- Top-level
itemCallback
andcallback
methods are added to create aDiffUtil.ItemCallback
andDiffUtil.Callback
respectively.
Added functions
API dependencies
These are the dependencies marked with the api
configuration that the library uses:
Artifact | Version |
---|---|
androidx.annotation:annotation |
1.9.1 |
androidx.recyclerview:recyclerview |
1.4.0 |
RecyclerView KTX 0.1.0
Tag created on 20 Mar 2025, published on Maven Central on 21 Mar 2025
Links
This module adds Kotlin extensions and additional utilities for version 1.4.0 of the androidx.recyclerview:recyclerview
artifact.
Usage
0.1.0 is published on Maven Central as io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.1.0
.
androidxtra-recyclerview-ktx = "io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.1.0"
settings.gradle.kts
:
dependencyResolutionManagement {
// ...
repositories {
mavenCentral()
}
}
Kotlin/Groovy
implementation("io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.1.0")
TOML
gradle/libs.versions.toml
:
[libaries]
androidxtra-recyclerview-ktx = "io.github.edricchan03.androidx.recyclerview:recyclerview-ktx:0.1.0"
build.gradle.kts
:
implementation(libs.androidxtra.recyclerview.ktx)
Notable changes
Warning
Note that this module is built with Kotlin 2.0.0+ and may require the K2 compiler.
- Initial release. See below for the added list of methods/functions:
Added extension functions
- Mutable property
RecyclerView.ViewHolder.canRecycle
- Mutable property
RecyclerView.hasFixedSize
- Mutable property
RecyclerView.Adapter<*>.hasStableIds
Experimental functions
Warning
These functions may change or have incompatible behaviour when upgrading versions. You have been
warned!
API dependencies
These are the dependencies marked with the api
configuration that the library uses:
Artifact | Version |
---|---|
androidx.annotation:annotation |
1.9.1 |
androidx.recyclerview:recyclerview |
1.4.0 |
Common Enums 0.2.0
Published on 11 May 2024
Links
Usage
0.2.0 is published on Maven Central as io.github.edricchan03.androidx.common:common-enums:0.2.0
.
androidxtra-browser-ktx = "io.github.edricchan03.androidx.common:common-enums:0.2.0"
Artifacts
As this library is a Kotlin Multiplatform library, the following additional artifacts were published:
Target | Link |
---|---|
common |
N.A. |
jvm |
common-enums-jvm |
Notable changes
- A new interface (
ValueEnum
) has been added which enums can implement to provide an abstraction over enums which provide an internal value representation. This allows for operations to be done on generic value-based enums. (5973982
) ValueEnumFromValue
(currently experimental!) has been added which provides aValueEnum
implementation of theEnumFromValue
abstract class. (0abf688
)
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.9.0 |
1.9.23 |
Browser KTX 0.2.0
Published on 6 May 2024
Usage
0.2.0 is published on Maven Central as io.github.edricchan03.androidx.browser:browser-ktx:0.2.0
.
androidxtra-browser-ktx = "io.github.edricchan03.androidx.browser:browser-ktx:0.2.0"
Links
Notable changes
- The API surface has been brought up-to-date with Jetpack Browser 1.7.0 (
e52fb42
).
API updates
New extension properties
Property | Docs |
---|---|
Intent.isBookmarksButtonEnabled |
Documentation |
Intent.isDownloadButtonEnabled |
Documentation |
Intent.isSendToExternalDefaultHandlerEnabled |
Documentation |
Intent.translateLocale |
Documentation |
Intent.isBackgroundInteractionEnabled |
Documentation |
Intent.secondaryToolbarSwipeUpGesture |
Documentation |
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.9.0 |
1.9.23 |
Android Gradle Plugin | 8.1.1 |
8.4.0 |
androidx.browser:browser |
1.6.0 |
1.7.0 |
Common Enums 0.1.0
🚨 Breaking changes
The relocation POM is no longer published starting from this version. If you are still using the old Maven coordinates, please consider migrating:
-io.github.edricchan03.androidx.common.enums:common-enums:<version>
+io.github.edricchan03.androidx.common:common-enums:<version>
Notable changes
- This artifact has moved to Kotlin Multiplatform, allowing for use in non-Android modules. (
f070235
, #14) - Kotlin has been bumped to Kotlin 1.9.0. For more info, consult the corresponding JetBrains blog post. (
69efc43
)
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.8.22 |
1.9.0 |
Full Changelog: https://github.com/EdricChan03/androidx-ktx-extras/compare/common-enums@0.0.2...common-enums@0.1.0
Browser KTX 0.1.0
Notable changes
- Kotlin has been bumped to Kotlin 1.9.0. For more info, consult the corresponding JetBrains blog post. (
69efc43
) - Setters for Jetpack Browser's
Intent
extras (407ce70
) were added. See the API updates section for a list. - Annotations used in the Jetpack Browser library for representing a list of integer enums were added to the internal
value
property for the corresponding enums. (e1cdeb7
)
API updates
New extension properties
Property | Docs |
---|---|
Intent.colorScheme |
Documentation |
Intent.urlBarHidingEnabled |
Documentation |
Intent.closeButtonIcon |
Documentation |
Intent.showTitle |
Documentation |
Intent.shareState |
Documentation |
Intent.instantAppsEnabled |
Documentation |
New setters for existing extension properties
Property | Docs |
---|---|
Intent.activityResizeBehavior |
Documentation |
Intent.initialActivityHeightPx |
Documentation |
Intent.toolbarCornerRadiusDp |
Documentation |
Intent.closeButtonPosition |
Documentation |
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.8.22 |
1.9.0 |
androidx.browser:browser |
1.5.0 |
1.6.0 |
io.github.edricchan03.androidx.common:common-enums |
0.0.2 |
0.1.0 |
Full Changelog: https://github.com/EdricChan03/androidx-ktx-extras/compare/browser-ktx@0.0.2...browser-ktx@0.1.0
Common Enums 0.0.2
This release does not contain any new features, and should be backwards-compatible with 0.0.1.
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.8.21 |
1.8.22 |
Relocation notice
The artifact is now published under the io.github.edricchan03.androidx.common:common-enums
artifact:
Old artifact coordinates | New artifact coordinates |
---|---|
io.github.edricchan03.androidx.common.enums:common-enums |
io.github.edricchan03.androidx.common:common-enums |
Your build scripts must be updated to the following:
Kotlin/Groovy
-implementation("io.github.edricchan03.androidx.common.enums:common-enums:<version>")
+implementation("io.github.edricchan03.androidx.common:common-enums:<version>")
Version Catalogs (TOML)
[libraries]
-androidxtra-common-enums = "io.github.edricchan03.androidx.common.enums:common-enums:<version>
+androidxtra-common-enums = "io.github.edricchan03.androidx.common:common-enums:<version>
New versions of the common-enums
artifact will still be published to the old artifact (io.github.edricchan.androidx.common.enums:common-enums
) until the next minor SemVer release, 0.1.0.
See the CHANGELOG.md
file for more information.
Full Changelog: https://github.com/EdricChan03/androidx-ktx-extras/compare/browser-ktx@0.0.1...common-enums@0.0.2
Browser KTX 0.0.2
This release updates the transitive common-enums
dependency to 0.0.2
. No other
changes are included, and should be backwards-compatible with 0.0.1.
Note
If you are using thecommon-enums
artifact in your own library code, do note the changes in0.0.2
's release notes, particularly the artifact relocation.
Dependency updates
Artifact | Old version | New version |
---|---|---|
Kotlin | 1.8.21 |
1.8.22 |
Transitive dependency updates
Old artifact | New artifact |
---|---|
io.github.edricchan03.androidx.common.enums:common-enums:0.0.1 |
io.github.edricchan03.androidx.common:common-enums:0.0.2 |
Visual diff
-io.github.edricchan03.androidx.common.enums:common-enums:0.0.1
+io.github.edricchan03.androidx.common:common-enums:0.0.2
See the CHANGELOG.md
file for more information.
Full Changelog: https://github.com/EdricChan03/androidx-ktx-extras/compare/browser-ktx@0.0.1...browser-ktx@0.0.2