Skip to content

Releases: OneXeor/KDownloader

v1.0.0

14 Jan 18:21
15aae9e

Choose a tag to compare

What's Changed

  • Add unit tests for common module by @OneXeor in #7
  • feat!: Rename artifact to dev.onexeor:kdownloader by @OneXeor in #8
  • Add Maven Central publishing by @OneXeor in #9
  • Update CI for Maven Central publishing by @OneXeor in #10

Full Changelog: v0.2.0...v1.0.0

v0.2.0 - API Redesign

13 Jan 22:26
cf6bc7f

Choose a tag to compare

Breaking Changes

Complete API redesign with Kotlin DSL. The old API has been replaced.

New Features

  • Kotlin DSL - Fluent builder pattern for configuring downloads
  • Authentication - Bearer token and Basic auth support
  • Custom headers - Add any HTTP headers to requests
  • Network restrictions - WiFi-only download option
  • State management - Typed sealed classes for download states
  • Error handling - Typed error classes (Network, Http, Storage, etc.)
  • Fluent listeners - Chain multiple listeners with fluent API

Usage

val downloader = KDownloader()

downloader.download("https://example.com/file.pdf") {
    fileName = "document.pdf"
    
    auth {
        bearer("token")
    }
    
    onProgress { println("${it.percentage}%") }
    onComplete { println("Done: $it") }
    onError { println("Error: ${it.message}") }
}

Installation

implementation("dev.onexeor.kdownloader:shared:0.2.0")

See README for full documentation.

v0.1.0

12 Jan 23:27
606787d

Choose a tag to compare

What's New

Major upgrade to Kotlin 2.3.0 and modernized build configuration.

Changes

  • Kotlin 1.9.21 → 2.3.0
  • AGP 8.2.2 → 8.7.3
  • Gradle 8.2 → 8.11.1
  • Compose BOM 2024.12.01
  • Core KTX 1.12.0 → 1.15.0
  • Activity Compose 1.8.2 → 1.9.3
  • JVM target 1.8 → 17
  • compileSdk 34 → 35

New

  • Added LICENSE (Apache 2.0)
  • Added README with installation and usage docs
  • Added CONTRIBUTING guidelines
  • Added example app module
  • Updated CI workflow (macos-26, tag-based publishing)

Migration Notes

  • Uses new Kotlin compose compiler plugin (bundled with Kotlin 2.x)
  • Updated to compilerOptions DSL
  • Requires JDK 17+

Installation

implementation("dev.onexeor.kdownloader:shared:0.1.0")