Releases: PokeAPI/pokekotlin
v3.0.0-pre4
What's Changed
- Breaking: rename Pokemon to PokemonVariety
- Add a bunch of documentation comments
- Breaking: Replace ApiResource with generic Handle; ditto for ApiResourceList -> PaginatedList
- Publish an experimental JS build to npmjs.com
Full Changelog: v3.0.0-pre3...v3.0.0-pre4
v3.0.0-pre3
What's Changed
- Breaking: Changed the custom PokeApi instance initialization method from
PokeApi(...)
toPokeApi.Custom(...)
to play nicely with some restrictions on APIs exposed to JS and Java - Breaking: Reverted the
Result<T>
response typing back to exceptions, becauseResult
wasn't well supported by https://github.com/ForteScarlet/kotlin-suspend-transform-compiler-plugin - Added Java-friendly and JS-friendly APIs using that compiler plugin. For example,
suspend fun getBerry(id: Int): Berry
now also has corresponding methods:fun getBerryAsync(id: Int): CompletableFuture<Berry>
on Javafun getBerryBlocking(id: Int): Berry
on Javafun getBerryAsync(id: Int): Promise<Berry>
on JS
- Update API models to the latest schema
- Revise the demo app to display pokemon images
Full Changelog: v3.0.0-pre2...v3.0.0-pre3
v3.0.0-pre2
v3.0.0-pre1
- Rebuilt the library for Kotlin Multiplatform, with a
suspend fun
interface instead of synchronous calls or RxJava observables. - In addition to JVM, added support for Kotlin/Native, Kotlin/JS, and Kotlin/WASM
- Updated the package coordinates again, replacing
dev.sargunv
withco.pokeapi
:- Add to Gradle with
implementation("co.pokeapi.pokekotlin:pokekotlin:3.0.0-pre1")
- Add to Gradle with
- Updated all package names accordingly
- Published a new documentation site at https://pokeapi.github.io/pokekotlin/.
- Added in-memory caching by default, with optional persistent caching by passing a
CacheStorage
implementation. - Updated to pass tests on the latest PokeAPI data.
v2.5.0
We're now on Maven Central; see https://central.sonatype.com/artifact/dev.sargunv.pokekotlin/pokekotlin.
implementation("dev.sargunv.pokekotlin:pokekotlin:2.5.0")
NOTE: This release changes the publishing group id in order to publish to Maven Central. The package names have been changed to match. This is technically a breaking change, but not a semver major bump because the package coordinates themselves have changed; so in semver you can consider v2.5.0 the initial release of a new library.
What's Changed
- Add flavorTextEntries into Move by @eurekaffeine in #91
- Modernize project setup and publish to Maven Central by @sargunv in #94
Full Changelog: v2.4.0...v2.5.0
v2.4.0
v2.3.1
Bintray proved to be unreliable, so the package is now published on GitHub packages. It's also updated to the latest dependencies (kotlin and retrofit) and updated to pass tests on the latest pokeapi data.
EDIT: Turns out GH Packages requires auth even for public packages, so use Jitpack:
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
dependencies {
implementation 'com.github.PokeAPI:pokekotlin:<VERSION>'
}