Releases: jellyfin/jellyfin-sdk-kotlin
v0.7.6
Another maintenance release to fix an issue with server discovery on some privacy-focused Android versions.
Changelog
🔥 Crash fixes
- Catch IO exceptions when sending discovery messages #119, by @nielsvanvelzen
v0.7.5
This is another small release that adds an additional ProGuard rule to the Android module to fix crashes when using the discovery functions with ProGuard enabled.
Changelog
🔥 Crash fixes
- Add discovery models to ProGuard rules #114, by @nielsvanvelzen
v0.7.4
This is a small release that adds a ProGuard configuration to the Android module to fix crashes when using the API with ProGuard enabled.
Changelog
🔥 Crash fixes
- Add proguard configuration to android module #103, by @nielsvanvelzen
🔧 Build changes
- Fix GitHub release assets again #91, by @nielsvanvelzen
v0.7.3
v0.7.2
This release fixes some more build issues so we can publish the package to JCenter.
🔧 Build changes
- Add sources to published android module #87, by @nielsvanvelzen
- Fix assets not uploaded on release #88, by @nielsvanvelzen
v0.7.1
Unfortunately our previous release did not go as expected. Some major issues caused the Android library to cause crashes because of some missing classes. And nothing was published to Bintray because of a misconfiguration. This release fixes both of these issues.
🔧 Build changes
- Fix Java files not being included in the Android build #84, by @nielsvanvelzen
- Fix incorrect Bintray repository URL #85, by @nielsvanvelzen
v0.7.0
This release was not published to Bintray due too a failure in packaging the Android library and in the publishing configuration. A new version was released to fix this issue.
A few months ago we made the decision to drastically change the apiclient to be more robust and future proof. To achieve this goal the primary language of the code changed from Java to Kotlin and a bunch of features were removed because they were badly implemented or did not fit in the library. Some of those features might come back in the future based on our needs in the Android apps and feedback we receive from our users.
Our plan is to release the next version with a brand new HTTP API. This new API will be automatically adapt to the OpenAPI specification that Jellyfin 10.7.0 and up will generate. The code will change a lot: functions will use camel case instead of pascal case, the package will change, callback are replaced with coroutines and much more. Because of these drastic changes we decided to release version 0.7.0 (this one!) first to make it easier to migration applications. Allowing developers to upgrade the apiclient in two separate steps.
💜 Highlights
- The library is now published on Bintray making it easier to install
- New
Jellyfin
class that helps using all library features- The README samples use this class
- Removed the credential manager
- The implementation was bad and it made the code unmaintainable
- Applications should store their credentials themselves
- Rewritten server discovery
- It now uses Kotlin coroutines and works on the JVM (previously Android only)
- Added the "Kotlin Console Example", a command line interface for Jellyfin
- See the README for more information
🔍 Pull requests
✨ New features
- Refactor logging #55, by @nielsvanvelzen
- Simplify Android module #63, by @nielsvanvelzen
- Rewrite server discovery #61, by @nielsvanvelzen
- Add Jellyfin class which should be used when using the library #69, by @nielsvanvelzen
- Add kotlin-console example using kotlinx.cli and the library #70, by @nielsvanvelzen
- Add listing users to cli #75, by @thornbill
🥀 Removals
- Remove image loading utilities #45, by @nielsvanvelzen
- Remove upload and local video/photo support from android module #51, by @nielsvanvelzen
- Remove ICredentialProvider #62, by @nielsvanvelzen
- Remove connection manager #72, by @nielsvanvelzen
- Remove UploadFile function from ApiClient #73, by @nielsvanvelzen
- Remove more sync code and remove unused models #74, by @nielsvanvelzen
🔥 Crash fixes
- Declare used permissions in AndroidManifest #50, by @nielsvanvelzen
- Fix crash when person type is null #66, by @nielsvanvelzen
🐛 Bug fixes
- Fix discovery duplicates #71, by @nielsvanvelzen
- Use JSON instead of forms (master branch) #76, by @nielsvanvelzen
- Make server address optional #77, by @nielsvanvelzen
🎨 Code quality
- Add .editorconfig #43, by @nielsvanvelzen
- Remove appcompat #48, by @nielsvanvelzen
- Add Detekt #64, by @nielsvanvelzen
⬆️ Dependency upgrades
- Upgrade gradle wrapper to 6.3 #44, by @nielsvanvelzen
- Upgrade dependencies #46, by @nielsvanvelzen
- Upgrade Android compile/target version #47, by @nielsvanvelzen
🔧 Build changes
- Use Kotlin in Gradle build scripts #42, by @nielsvanvelzen
- Add "model" package to it's own module #49, by @nielsvanvelzen
- Publish to Bintray #54, by @nielsvanvelzen
- Enable Kotlin support for all modules #60, by @nielsvanvelzen
- Rewrite Azure pipeline based on ATV app pipeline #78, by @nielsvanvelzen
- Generate Android version code #79, by @nielsvanvelzen
- Rename sources folder for android to "kotlin" instead of "java". #80, by @nielsvanvelzen
- Add buildSrc gradle project #81, by @nielsvanvelzen
- Fix release assets uploading the wrong files #83, by @nielsvanvelzen
- Add env variable mapping #82, by @anthonylavado
📚 Documentation
- Remove information about (removed feature) sync from README #41, by @nielsvanvelzen
- Update header of README #52, by @nielsvanvelzen
- Remove reference to tangible in README #58, by @thornbill
v0.6.4
This release adds a fix for compatibility with Jellyfin 10.7.x.
🐛 Bug fixes
- Use JSON instead of forms #76, by @nielsvanvelzen
v0.6.3
v0.6.2
🔥 Crash fixes
- Fix crash when person type is null #65, by @nielsvanvelzen