Releases: OneXeor/KDownloader
Releases · OneXeor/KDownloader
v1.0.0
v0.2.0 - API Redesign
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
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
compilerOptionsDSL - Requires JDK 17+
Installation
implementation("dev.onexeor.kdownloader:shared:0.1.0")