Releases: Foso/Ktorfit
v1.4.3
v1.4.2
v1.4.1
v1.4.0
1.4.0 - 2023-05-27
Added
- #85 Added a Response class that can be used as a wrapper around the API Response, the converter for it is automatically applied. thx to @vovahost, @DatL4g
e.g.
interface ExampleApi{
suspend fun getUser(): Response<User>
}
val user = userKtorfit.create<ExampleApi>().getUser()
if(user.isSuccessful){
user.body()
}else{
user.errorBody()
}
-
Ktorfit is now using converters factories to apply the converters, similar to Retrofit
see more here https://foso.github.io/Ktorfit/converters/converters/ -
TypeData now has a field "typeInfo" can be used to convert the Ktor HttpResponse body to the wanted type
-
CallConverterFactory for replacement of CallResponseConverter
-
FlowConverterFactory for replacement of FlowResponseConverter
-
Added support for targets:
macosArm64, tvosArm64, tvosX64, tvosSimulatorArm64, watchosSimulatorArm64 #315
Changed
- Upgrade dependencies: Kotlin 1.8.21
Deprecated
- ResponseConverter, use Converter.ResponseConverter instead
- SuspendResponseConverter, use Converter.SuspendResponseConverter instead
- RequestConverter, use Converter.RequestParameterConverter instead
- See also: https://foso.github.io/Ktorfit/converters/migration/
Removed
Fixed
Security
v1.3.0
1.3.0 - 2023-05-14
Added
Changed
-
Optimized generated code, the generated code that is used for a request will
now directly set the Ktor code instead of delegating it to a Ktorfit class. This will
make the code easier to understand. -
KSP version 1.0.11 is now needed
Deprecated
Removed
Fixed
[Bug]: IllegalArgumentException with Custom Http Annotation #274
Security
Bumped
KSP version to 1.0.11
v1.2.0
v1.1.0
1.1.0 - 2023-04-15
Added
From now on there are two versions of the ktorfit-lib.
"de.jensklingenberg.ktorfit:ktorfit-lib"
will stay like before and add the platform Ktor client dependencies for the clients.
"de.jensklingenberg.ktorfit:ktorfit-lib-light"
this will only add the Ktor client core dependency and not the platform dependencies for the clients.
This will give you more control over the used clients, but you have to add them yourself. https://ktor.io/docs/http-client-engines.html
Everything else is the same as "ktorfit-lib"
Changed
Kotlin version 1.8.20 is now needed
KSP version 1.8.20-1.0.10 is now needed
Deprecated
Removed
Fixed
Security
Bumped
Kotlin to 1.8.20
KSP version to 1.8.20-1.0.10
v1.0.1
1.0.1 - 2023-03-20
Added
From now on there are two versions of the ktorfit-lib :
de.jensklingenberg.ktorfit:ktorfit-lib
will stay like before and already includes the platform client dependencies for the clients.
de.jensklingenberg.ktorfit:ktorfit-lib-light
this includes only the client core dependency and not the platform dependencies for the clients. This will give you more control over the used clients, but you have to add them yourself. https://ktor.io/docs/http-client-engines.html
Everything else is the same as "ktorfit-lib"
Changed
Deprecated
Removed
Fixed
[Bug]: Post request body serialization doesn't work #202
Security
Bumped
New Contributors
- @AndrewKolubov made their first contribution in #203
Full Changelog: v1.0.0...v1.0.1
v1.0.0
v1.0.0 (02-03-2023)
This project is now following semver
NEW:
- internal optimizations
- throw compile error when generated class can not be found
🐛 Bugs fixed
- Timeout throws exception outside of scope of SuspendResponseConverter #127
- Fix broken/outdated docs link (#140) by @T-Spoon
⬆️ Deps updates
- based on Ktor 2.2.4
v1.0.0-beta18
NEW:
- You can now disable the check if the baseUrl ends with a /
Ktorfit.Builder().baseUrl(testBaseUrl, checkUrl = false).build()
🐛 Bugs fixed
- Fixed Ktorfit breaking incremental compilation #110
⬆️ Deps updates
- based on Ktor 2.2.3