Skip to content

Releases: jeluchu/jchucomponents

3.0.0-alpha07

3.0.0-alpha07 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 04 Jul 17:13

3.0.0-alpha07

Breaking change: Navigation 3 back-stack helpers moved from the Android KTX
artifact into jchucomponents-ui, and applications should replace local
copies of the newly shared extensions with the library APIs.

Breaking changes

  • Moved the Navigation 3 back-stack extensions from
    com.jeluchu.jchucomponents.ktx.navigation to
    com.jeluchu.jchucomponents.ui.extensions.navigation.
  • Removed duplicate navigation helpers from the Android catalog in favor of
    the public jchucomponents-ui implementation.

What's new

  • Added Kotlin Multiplatform nullable Boolean, number and String extensions to
    jchucomponents-foundation.
  • Added Kotlin date and instant bridges to NSDate for iOS consumers.
  • Added native Swift extensions for concurrency, data URIs, image formats,
    collections, dates, numbers and URLs.
  • Added SwiftUI helpers for conditional modifiers, snapshots, rounded corners,
    optimized images and remote image loading.
  • Added reusable Android and SwiftUI scaffold, progress, theme and text-field
    components, with corresponding catalog scenarios.
  • Added a Bill of Materials artifact for aligned Android dependency versions.
  • Added aggregated Dokka API documentation with automatic GitHub Pages
    deployment.

Improvements

  • Applied a custom Jeluchu Dokka theme using the Visby typeface, pastel green
    palette, project logo and copyright branding.
  • Migrated iNook to consume shared nullable, number, String, network-flow and
    navigation extensions from JchuComponents instead of maintaining local
    duplicates.
  • Aggregated documentation for every public Android and KMP module.
  • Expanded API and visual-readiness coverage for the new Android, KMP and
    native Swift surfaces.
  • Declared the Swift package macOS deployment target explicitly while retaining
    iOS 26 as the supported Apple mobile baseline.
  • Documented the split distribution coordinates: Android artifacts through
    JitPack under com.github.jeluchu.jchucomponents, KMP artifacts through
    Maven Central under io.github.jeluchu, and Swift releases through
    Jeluchu/jchucomponents-spm.

Fixes

  • Corrected Swift 6 actor-isolation issues in purchase themes and removed the
    main-actor screen scale lookup from a default image initializer.
  • Corrected invalid KDoc links and parameter references so the aggregated
    Dokka publication builds cleanly.
  • Validated the release with Gradle checks, Android debug/release assembly,
    Maven local publication, XCFramework packaging, Swift package parsing,
    SwiftPM compilation and a generic iOS Simulator catalog build.

3.0.0-alpha06

3.0.0-alpha06 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Jul 14:43

Breaking change: payments and QR utilities moved to Kotlin Multiplatform
source sets, network flow helpers moved into jchucomponents-network, and
the legacy Android system-bar controller was removed from jchucomponents-ui.

Breaking changes

  • Migrated jchucomponents-pay to KMP source sets, moving shared payment
    models and price utilities into common code while keeping RevenueCat-backed
    Android integration platform-specific.
  • Migrated jchucomponents-qr to KMP source sets, moving QR reader/writer
    types and common matrix/encoding utilities out of Android-only source.
  • Removed the legacy SystemUiController and SystemBarsColors APIs from
    jchucomponents-ui; consumers should own system-bar styling from their app
    shell.
  • Removed obsolete core Failure, FailureHandle, Resource and flow helper
    APIs after consolidating network resource and flow behavior in
    jchucomponents-network.
  • Expanded direct native Swift String APIs in JchuComponentsExtensions,
    while keeping .jchu delegates for the migrated helpers.

What's new

  • Added Compose JchuExpandableSearch and JchuGrowingTextField text fields
    with Android catalog examples.
  • Added native SwiftUI JchuExpandableSearch and JchuGrowingTextField
    counterparts with Swift package test coverage.
  • Added the native SwiftPM JchuComponentsPay product for RevenueCat-backed
    payment integrations.
  • Added shared foundation date/time providers, JchuDateTime, YearMonth,
    local-date helpers and version comparison utilities.
  • Added native Android/iOS QR encoding helpers and common QR matrix tests.
  • Added list conditional item helpers for Compose lazy content.

Improvements

  • Published all KMP modules through the release workflow, including
    foundation, network, pay, preferences and QR Android/Apple variants.
  • Updated Swift release packaging so the generated SwiftPM payload includes
    JchuComponentsPay.
  • Centralized Android SDK and Java toolchain configuration across Gradle
    modules.
  • Added the canonical Apache License 2.0 file and refreshed consumer
    documentation for the expanded alpha06 surface.
  • Expanded native Swift String conveniences for nil/blank handling, cleanup,
    validation, URL/path handling, Base64 and capitalization use cases.

Fixes

  • Replaced a JVM-only price formatting regex with portable Kotlin character
    handling for pay common code.
  • Added pay, QR, foundation, network flow and SwiftUI tests covering the new
    common and native APIs.
  • Validated the alpha06 release dry run with Gradle apiCheck, check,
    Android release assembly, Maven local publication for all modules, generated
    SwiftPM manifest parsing and a clean generic iOS Simulator build.

3.0.0-alpha05

3.0.0-alpha05 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Jul 07:34

What's new

  • Added signed Maven Central publication for the KMP network and preferences
    artifacts under io.github.jeluchu.
  • Added automatic Central Portal release to the macOS release workflow.

Improvements

  • Kept JitPack for Android artifacts while documenting Maven Central as the
    source of complete Apple KLIB variants.
  • Added publication metadata and in-memory signing configuration for network
    and preferences.
  • Updated dependency coordinates and consumer documentation for the new
    distribution path.

3.0.0-alpha04

3.0.0-alpha04 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 22:49

Breaking change: legacy Android DataStore/SharedPreferences helpers were
replaced by the multiplatform preferences API.

What's new

  • Added KMP JchuPreferences implementations backed by DataStore on Android
    and UserDefaults on iOS.
  • Added typed preference keys, tests and dedicated preferences documentation.
  • Added a shared network Failure model and throwable-to-failure mapping.

Improvements

  • Unified network resources and failures under stable models packages.
  • Improved HTTP status classification and network error conversion.
  • Simplified the preferences artifact and its platform-specific setup.

Fixes

  • Corrected network failure propagation in NetworkBoundResource.
  • Removed obsolete preference manifests, ProGuard rules and legacy helpers
    that could conflict with the KMP implementation.

3.0.0-alpha03

3.0.0-alpha03 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 15:03

Breaking change: network resource and failure APIs were moved into the
jchucomponents-network artifact.

What's new

  • Added shared Resource and NetworkFailure models to the network module.
  • Expanded HttpStatusCode coverage for typed HTTP error handling.

Improvements

  • Moved NetworkBoundResource to the network module and aligned it with the
    new shared resource model.
  • Simplified the root Gradle configuration and API-readiness validation.
  • Refined Android input components and progress-button behavior.

Fixes

  • Corrected text-field counting/search behavior and progress-button state
    handling.
  • Removed stale checked-in API snapshots that no longer represented the v3
    publication layout.

3.0.0-alpha01

3.0.0-alpha01 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 09:08

First v3 preview. This release starts the multiplatform migration and
contains intentional API changes from 2.x.

What's new

  • Added the Kotlin Multiplatform jchucomponents-foundation module with shared
    progress state models and tests.
  • Added native SwiftUI components, Foundation extensions, a Swift package and
    an iOS catalog application.
  • Added JchuProgress, JchuProgressButton and JchuFloatingButton APIs for
    the refreshed Android component set.
  • Added Ktor request helpers, endpoint/version models and a configurable
    Android HTTP client.
  • Added CI, API-readiness checks, visual-readiness checks and automated
    XCFramework/GitHub release packaging.

Improvements

  • Migrated the Android catalog to Navigation 3 and reorganized its examples by
    component family.
  • Introduced synchronized Android/iOS versioning and public API inventories.
  • Updated the build, dependencies and Android modules for the v3 toolchain.

Fixes

  • Corrected Android notification permission handling and package/network
    compatibility helpers while moving to the new baseline.

2.0.0

Choose a tag to compare

@jeluchu jeluchu released this 06 Feb 11:52
Migrate coil to coil3

2.0.0-alpha09

2.0.0-alpha09 Pre-release
Pre-release

Choose a tag to compare

@jeluchu jeluchu released this 09 Apr 15:47

This is the new major version of jchucomponents, which will include new features (components, extensions, utilities, etc.), as well as a complete refactoring of all the code currently found in the library modules.

The previous alphas from 5 to 8, have been internal to test certain features that have been incorporated in alpha 9.

What has changed

  • Changed the payment module from scratch (RevenueCat is now used for the payment gateway)
  • Refactor components in UI
  • Update others dependencies
  • Extensions have been internalised in the modules so that there is no confusion with those of the jchucomponents-ktx module itself.

You can view the documentation for jchucomponents-pay methods from the following link: Jchucomponents-Pay. A README will soon be included in the payment module to give an example of how to use it.

If you have any problems, or suggestions for adding new components, don't hesitate to open an issue

2.0.0-alpha04

2.0.0-alpha04 Pre-release
Pre-release

Choose a tag to compare

@jeluchu jeluchu released this 29 Mar 15:18

This is the new minor version of jchucomponents, which will include new features (components, extensions, utilities, etc.), as well as a complete refactoring of all the code currently found in the library modules.

What has changed

  • Update dependencies

If you have any problems, or suggestions for adding new components, don't hesitate to open an issue

2.0.0-alpha03

2.0.0-alpha03 Pre-release
Pre-release

Choose a tag to compare

@jeluchu jeluchu released this 30 Jan 12:16

This is the new major version of jchucomponents, which will include new features (components, extensions, utilities, etc.), as well as a complete refactoring of all the code currently found in the library modules.

What has changed

  • Improve PreferenceSingleChoiceItem component
  • Update Material 3 to new Release Candidate

If you have any problems, or suggestions for adding new components, don't hesitate to open an issue