Skip to content

Latest commit

Β 

History

History
676 lines (424 loc) Β· 26.9 KB

CHANGELOG.md

File metadata and controls

676 lines (424 loc) Β· 26.9 KB

Changelog

3.4.2

Fixes

  • Add new Anime media types #421 (@Katsute)

    • Commercial
    • PromotionalVideo
    • TVSpecial

Dependencies

  • Bump org.apache.maven.plugins:maven-surefire-plugin from 3.1.2 to 3.2.1 #407 (@dependabot)
  • Bump the junit group with 2 updates #409 (@dependabot)
  • Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.1 to 3.2.2 #411 (@dependabot)
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.0 to 3.6.2 #410 (@dependabot)
  • Bump actions/github-script from 6 to 7 #414 (@dependabot)
  • Bump actions/setup-java from 3 to 4 #416 (@dependabot)
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.2 to 3.6.3 #417 (@dependabot)
  • Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.2 to 3.2.3 #418 (@dependabot)
  • Bump org.apache.maven.plugins:maven-compiler-plugin from 3.11.0 to 3.12.1 #419 (@dependabot)

Full Changelog: 3.4.1...3.4.2

3.4.1

Fixes

  • Fix IndexOutOfBoundsException when using an iterator #405 (@Katsute)

Dependencies

Full Changelog: 3.4.0...3.4.1

3.4.0

New Features

  • Add missing character and people fields #393 (@Katsute)

    These are from undocumented features, you must use MyAnimeList.enableExperimentalFeature(ExperimentalFeature.CHARACTERS) and MyAnimeList.enableExperimentalFeature(ExperimentalFeature.PEOPLE) to enable them.

    • Add favorites count to character and people
    • Add alternative names and 'more' field to people
    • Add method to retrieve character biography details as a map

Full Changelog: 3.3.0...3.4.0

3.3.0

New Features

  • Add character pictures #391 (@Katsute)

    This is an undocumented feature, you must use MyAnimeList.enableExperimentalFeature(ExperimentalFeature.CHARACTERS) to enable it.

Full Changelog: 3.2.0...3.3.0

3.2.0

New Features

  • Add people support #389 (@Katsute)

    This is an undocumented feature, you must use MyAnimeList.enableExperimentalFeature(ExperimentalFeature.PEOPLE) to enable it.

    Retrieve people using MyAnimeList.getPerson(id).

    Person information currently includes:

    • Name
    • Birthday
    • Picture

Full Changelog: 3.1.0...3.2.0

3.1.0

New Features

  • Add character support #381 (@Katsute)

    This is an undocumented feature, you must use MyAnimeList.enableExperimentalFeature(ExperimentalFeature.CHARACTERS) to enable it.

    Retrieve characters using MyAnimeList.getCharacter(id).

    Character information currently includes:

    • Name
    • Alternative names
    • Picture
    • Biography
    • Animeography
  • Add ability to retrieve characters from Anime #385 (@Katsute)

    This is an undocumented feature, you must use MyAnimeList.enableExperimentalFeature(ExperimentalFeature.CHARACTERS) to enable it.

    Retrieve characters using MyAnimeList.getAnimeCharacters(anime id) or Anime.getCharacters().

    Character information currently includes:

    • Name
    • Alternative names
    • Picture
    • Biography
    • Animeography

Fixes

  • Fix incomplete Anime/Manga listings #386 (@Katsute)
    • Anime/Manga recommendation
    • Related Anime/Manga

Dependencies

Full Changelog: 3.0.3...3.1.0

3.0.3

πŸ“˜ Dependencies

Full Changelog: 3.0.2...3.0.3

3.0.2

πŸ”§ Optimizations

  • Schema parsing optimizations #363 (@Katsute)

  • JSON parsing optimizations #364 (@Katsute)

    This library is now 70% faster after this change.

πŸ“˜ Dependencies

Full Changelog: 3.0.1...3.0.2

3.0.1

🐞 Bug Fixes

πŸ“˜ Dependencies

Full Changelog: 3.0.0...3.0.1

3.0.0

⚠️ Breaking Change

  • Change groupid #355 (@Katsute)

    πŸ›‘ This major update includes breaking changes πŸ›‘

    • Changed groupid from com.kttdevelopment to dev.katsute
    • Changed package from com.kttdevelopment to dev.katsute
    • Moved exceptions from com.kttdevelopment.mal4j to dev.katsute.mal4j.exceptions
    • Anime/Manga start/end dates now return NullableDate instead of a Date

    To bring your code up to date:

    • Change the dependency groupid from com.kttdevelopment to dev.katsute
    • Replace all import com.kttdevelopment.mal4j with import dev.katsute.mal4j
    • Exceptions are now imported from dev.katsute.mal4j.exceptions, fix this import manually

πŸ“˜ Dependencies

Full Changelog: 2.12.0...3.0.0

2.12.0

⚠️ Breaking Change

  • Drop use of 'Preview' classes #353 (@Katsute) Any methods that previously returned AnimePreview and MangaPreview now instead returns Anime and Manga. There is no need to call getAnime and getManga to get all details, all details are now returned by default.

    Simply change any usage of AnimePreview to Anime and MangaPreview to Manga.

    • Removed getAnimePreview and getMangaPreview
    • Removed redundant getAnime and getManga on certain classes

Full Changelog: 2.11.0...2.12.0

2.11.0

⚠️ Breaking Change

  • Using experimental features without enabling them will now throw an exception #346 (@Katsute)
    • Using an experimental feature without enabling it will throw a ExperimentalFeatureException, previously would only print a warning

❌ Removed

  • Remove deprecated authentication methods #345 (@Katsute)
    • Removed withOAuthToken, use withToken
    • Removed refreshOAuthToken, use refreshToken
    • Removed withAuthorization, use withOAuth2
    • The deprecated String parameter has been replaced with the Authorization parameter. Previously:
      new MyAnimeListAuthenticator("client_id", "client_secret", "authorization_code", "PKCE_code_challenge");
      Should be replaced with:
      new MyAnimeListAuthenticator(new Authorization("client_id", "client_secret", "authorization_code", "PKCE_code_challenge"));
      If you were not already using this new object before, an access token can be passed to this method to use an existing token, rather than generating a new one:
      new MyAnimeListAuthenticator(new Authorization(...), new AccessToken("access_token");
      new MyAnimeListAuthenticator(new Authorization(...), new AccessToken("access_token", "refresh_token");
      new MyAnimeListAuthenticator(new Authorization(...), new AccessToken("access_token", "refresh_token", 1640995200);

πŸ“˜ Dependencies

Full Changelog: 2.10.0...2.11.0

2.10.0

This update adds support for Anime promotional videos (PVs) and trailers. Use Anime.getVideos() to retrieve all PVs.

❌ Removed

  • Removed deprecated enums #338 (@Katsute)
    • Removed AnimeSource.Web_Manga, use AnimeSource.WebManga
    • Removed AnimeSource.Digital_Manga, use AnimeSource.DigitalManga
    • Removed MangaType.Novel, use MangaType.LightNovel
  • Removed deprecated method MyAnimeList.getMyself #339 (@Katsute) Use MyAnimeList.getAuthenticatedUser
  • Removed deprecated AndroidCompatibilityException #340 (@Katsute)

⭐ New Features

  • Added Anime PV/Trailers #341 (@Katsute)
    • Retrieve Anime PVs/Trailers using Anime.getVideos(), returns an array
    • Added corresponding field variable videos or Fields.Anime.videos
    • Added corresponding experimental field ExperimentalFeature.VIDEOS
  • Paginated iterator now returns a modifiable list instead of an unmodifiable one #337 (@Katsute)
  • Added All option for experimental features #342 (@Katsute)
    • Enable all experimental features using MyAnimeList.enableExperimentalFeature(ExperimentalFeature.ALL)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.9.1...2.10.0

2.9.1

🐞 Bug Fixes

  • Add missing Manga publishing status discontinued #334 (@Katsute)

πŸ“˜ Dependencies

  • Bump maven-javadoc-plugin from 3.4.0 to 3.4.1 #330 (@dependabot)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.9.0...2.9.1

2.9.0

⭐ New Features

  • Enum changes and fixes #329 (@Katsute)
    • Methods that have an enum parameter can now also accept string field parameters
    • Methods that return enums can now also return as a string
    • Fix asEnum throwing a NullPointerException

πŸ“˜ Dependencies

  • Bump junit-jupiter-params and junit-jupiter-api from 5.8.2 to 5.9.0 #328 (@mashiro-san)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.8.2...2.9.0

2.8.2

🐞 Bug Fixes

  • Add missing relation types #320 (@Katsute)
    • Add missing relation type Spin off
    • Add missing relation type Character
    • For unknown relation type return Unknown rather than null

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.8.1...2.8.2

2.8.1

🐞 Bug Fixes

  • Fix visual novel Anime source #315 (@Katsute)

πŸ“˜ Dependencies

  • Bump maven-surefire-plugin from 3.0.0-M6 to 3.0.0-M7 #313 (@dependabot)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.8.0...2.8.1

2.8.0

⚠️ Breaking Change

  • Rename Anime source Digital_Manga to DigitalManga #312 (@Katsute)
  • Rename Anime source Web_Manga to WebManga #312 (@Katsute)
  • All Anime/Manga enums now fallback to Unknown rather than null when field is unknown #312 (@Katsute)

🐞 Bug Fixes

  • Add missing Manga status Hiatus #312 (@Katsute)
  • Add missing Anime source Mixed Media & Web Novel #312 (@Katsute)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.7.4...2.8.0

2.7.4

🐞 Bug Fixes

  • Fix modularity for Java 9-10 #310 (@Katsute)

πŸ“˜ Dependencies

  • Bump jcore from 2.0.0 to 2.0.1 #308 (@dependabot)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.7.3...2.7.4

2.7.3

πŸ“˜ Dependencies

  • Bump maven-javadoc-plugin from 3.3.1 to 3.3.2 #293 (@dependabot)
  • Bump maven-compiler-plugin from 3.9.0 to 3.10.0 #294 (@dependabot)
  • Bump actions/setup-java from 2.5.0 to 3 #298 (@dependabot)
  • Bump actions/checkout from 2.4.0 to 3 #299 (@dependabot)
  • Bump maven-compiler-plugin from 3.10.0 to 3.10.1 #300 (@dependabot)
  • Bump maven-surefire-plugin from 3.0.0-M5 to 3.0.0-M6 #301 (@dependabot)
  • Bump maven-javadoc-plugin from 3.3.2 to 3.4.0 #306 (@dependabot)
  • Bump nexus-staging-maven-plugin from 1.6.8 to 1.6.13 #307 (@dependabot)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.7.2...2.7.3

2.7.2

🧰 Internal

  • Removed unused code #284 (@Katsute)
  • Relocate and remove Java 9 methods #288 (@Katsute)

πŸ“˜ Dependencies

  • Bump actions/setup-java from 2.4.0 to 2.5.0 #280 (@dependabot)
  • Bump maven-jar-plugin from 3.2.0 to 3.2.1 #285 (@dependabot)
  • Bump maven-jar-plugin from 3.2.1 to 3.2.2 #286 (@dependabot)
  • Bump maven-compiler-plugin from 3.8.1 to 3.9.0 #287 (@dependabot)
  • Bump jcore from 1.3.0 to 2.0.0 #290 (@Katsute)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.7.1...2.7.2

2.7.1

🐞 Bug Fixes

  • Fix random newlines appearing in log #278 (@Katsute)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.7.0...2.7.1

2.7.0

⭐ New Features

  • Search for public Anime/Manga lists using only client id #266 (@Katsute)
  • Add additional authentication methods #270 (@Katsute)
    • Rename MyAnimeList.withAuthorization(...) to MyAnimeList.withOAuth2(...).
    • Replace MyAnimeListAuthenticator parameters with a single Authorization class.
      new MyAnimeListAuthenticator("client_id", "client_secret", "authorization_code", "PKCE_code_challenge");
      new MyAnimeListAuthenticator(new Authorization("client_id", "client_secret", "authorization_code", "PKCE_code_challenge"));
    • Fix #269 - Incorrect expiry date for AccessToken.
    • Add optional AccessToken parameter for MyAnimeListAuthenticator.
      new MyAnimeListAuthenticator(new Authorization(...), new AccessToken("access_token");
      
      new MyAnimeListAuthenticator(new Authorization(...), new AccessToken("access_token", "refresh_token");
      
      new MyAnimeListAuthenticator(new Authorization(...), new AccessToken("access_token", "refresh_token", 1640995200);
    • Add method to retrieve expiry as seconds since epoch.
      new AccessToken("access_token", "refresh_token", 1640995200).getExpiryEpochSeconds();
    • Deprecate old authenticator constructors.
    • Add warning when using authorization URL in place of the authorization code.
    • Add method to generate PKCE.
      MyAnimeListAuthenticator.generatePKCE(128);
  • Add warning when using deprecated classes/methods #276 (@Katsute)

🐞 Bug Fixes

  • Fix Anime/Manga list ID sometimes being null #268 (@Katsute)

πŸ“„ Documentation

  • Remove rare exceptions from documentation #277 (@Katsute)

🧰 Internal

  • Adjust warning messages #263 (@Katsute)
  • Code quality fixes #264 (@Katsute)
  • Add debug mode #265 (@Katsute)

πŸ“˜ Dependencies

  • Bump junit-jupiter from 5.8.1 to 5.8.2 #274
  • Bump actions/setup-java from 2.3.1 to 2.4.0 #271 (@dependabot)

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.6.0...2.7.0

2.6.0

⚠️ Breaking Change

  • Transfer repository to @KatsuteDev #258 (@Katsute)

    This repository has moved from Katsute/Mal4J to KatsuteDev/Mal4J, see this discussion post for more details: https://github.com/KatsuteDev/Mal4J/discussions/230

  • Rename token methods #257 (@Katsute)

    Some token auth methods have been renamed for simplicity, the old methods have been deprecated.

    MyAnimeList.withOAuthToken(String) is now MyAnimeList.withToken(String)

    MyAnimeList.refreshOAuthToken() is now MyAnimeList.refreshToken()

⭐ New Features

  • Ability to authenticate using client ID #257 (@Katsute)

    The MyAnimeList API now support authentication using only the client ID, see this forum post.

  • Deploy to GitHub Packages #231 (@Katsute)

    This project is now available on GitHub Packages!

Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.5.1...2.6.0

2.5.1

🐞 Bug Fixes

  • Fix issue with null priority and rewatch/reread value #255 (@Katsute)

πŸ“˜ Dependencies

  • Bump actions/checkout from 2.3.5 to 2.4.0 #253 (@dependabot)

Full Changelog: https://github.com/Katsute/Mal4J/compare/2.5.0...2.5.1

2.5.0

🐞 Bug Fixes

  • Fix PKCE accepting disallowed characters #250 (@Katsute)
  • Fix token generation when using redirect_uri #251 (@Katsute)
  • Fix token generation sometimes having empty error message #252 (@Katsute)

🧰 Internal

  • Update CI to Java 17 (LTS) #237 (@Katsute)
  • Enforce timeouts on workflows #240 (@Katsute)
  • Migrate to reusable workflows #243 (@Katsute)

πŸ“˜ Dependencies

  • Bump junit-jupiter-params from 5.8.0 to 5.8.1 #239 (@dependabot)
  • Bump junit-jupiter-api from 5.8.0 to 5.8.1 #238 (@dependabot)
  • Bump actions/setup-java from 2.3.0 to 2.3.1 #241 (@dependabot)
  • Bump jcore from 1.2.0 to 1.3.0 #242 (@dependabot)
  • Bump actions/checkout from 2.3.4 to 2.3.5 #247 (@dependabot)

Full Changelog: https://github.com/Katsute/Mal4J/compare/2.4.0...2.5.0

2.4.0

⚠️ Breaking Change

MyAnimeList has changed genres, see this forum post: https://myanimelist.net/forum/?topicid=1956762.

  • Fix MyAnimeList genre changes β†’ Genre has been changed from an enum to a class #236 (@Katsute)

⭐ New Features

  • Multiple exception changes (see pull) #224 (@Katsute)
  • (android) Use X-HTTP-Method-Override when PATCH is not available #220 (@Katsute)

🐞 Bug Fixes

  • Fix MyAnimeList genre changes β†’ Genre has been changed from an enum to a class #236 (@Katsute)
  • Fix RelationType.toString() #215 (@Katsute)

πŸ“˜ Dependencies

  • Bump junit-jupiter-api and junit-jupiter-params from 5.7.2 to 5.8.0 #234 (@Katsute)
  • Bump jcore from 1.1.0 to 1.2.0 #229 (@dependabot[bot])
  • Bump maven-javadoc-plugin from 3.3.0 to 3.3.1 #227 (@dependabot[bot])
  • Migrate to actions/setup-java #219 (@Katsute)
  • Bump jcore from 1.0.0 to 1.1.0 #217 (@dependabot[bot])

2.3.0

⭐ New Features

  • Add User Anime/Manga affinity #180 (@Katsute)
  • Add callback methods to Anime/Manga affinity #211 (@Katsute)
  • Add exception for invalid or expired token #209 (@Katsute)
  • Experimental features must now be enabled manually #206 (@Katsute)
  • Add support for all Android versions; disabled only PATCH methods on unsupported #205 (@Katsute)

πŸ“„ Documentation

  • Migrate documentation #204 (@Katsute)

πŸ“˜ Dependencies

  • Bump crazy-max/ghaction-import-gpg from 3.1.0 to 3.2.0 #212 (@dependabot[bot])
  • Update jcore test dependency #208 (@Katsute)

2.2.1

Breaking Change: This update changes query return type from full to preview. Anime β†’ AnimePreview and Manga β†’ MangaPreview.

🐞 Bug Fixes

  • Fix queries not returning preview type #197 (@Katsute)
  • Fix Android compatibility issues #194 (@Katsute)

πŸ“˜ Dependencies

  • Add jCore to test cases #190 (@Katsute)
  • Bump org.junit.jupiter from 5.7.1 to 5.7.2 #188 (@Katsute)

2.2.0

⭐ New Features

  • Replace MyAnimeList#getMyself with MyAnimeList#getAuthenticatedUser #179 (@Katsute)
  • Add inverted fields #173 (@Katsute)
  • Improve JsonSyntaxException #165 (@Katsute)

πŸ”§ Optimizations

  • Backend improvements & optimizations #178 (@Katsute)

πŸ“„ Documentation

  • Improve documentation #164 (@Katsute)

🐞 Bug Fixes

  • Fix compatibility issue with Android API 28+ (9+) #185 (@Katsute)
  • Fix array manipulation issue #172 (@Katsute)

πŸ“˜ Dependencies

  • Bump maven-gpg-plugin from 1.6 to 3.0.1 #174 (@dependabot)
  • Bump crazy-max/ghaction-import-gpg from 3 to 3.1.0 #182 (@Katsute)
  • Bump maven-javadoc-plugin from 3.2.0 to 3.3.0 #181 (@dependabot)
  • Bump AdoptOpenJDK/install-jdk from 1 to 1.1.1 #175 (@dependabot)
  • Bump actions/checkout from 2 to 2.3.4 #177 (@dependabot)

2.1.0

🐞 Bug Fixes

  • Fix Genre #161 (@Katsute)

2.0.1

🐞 Bug Fixes

  • Fix Android reflection issue. #155 (@Katsute)

2.0.0

This update brings support to Java 8+

Please check the FAQ for new issues that may occur.

⭐ New Features

  • Add post iterator for ForumTopicDetail; Added additional ID methods to forum objects. #151 (@Katsute)
  • Add URL callback to LocalServerBuilder #148 (@Katsute)
  • Add support for JDK 8 #138 (@Katsute)

πŸ“„ Documentation

  • Cleanup documentation. #152 (@Katsute)

❌ Removed

  • Remove deprecated server constructors. #147 (@Katsute)
  • Remove deprecated fields. #146 (@Katsute)

🐞 Bug Fixes

  • Fix toString methods #149 (@Katsute)

1.2.0

⭐ New Features

  • Retrieve User Anime/Manga listings from User object. #128 (@Katsute)

1.1.2

🐞 Bug Fixes

  • Fix issue where android would not parse regex correctly #134 (@Katsute)

1.1.1

🐞 Bug Fixes

  • Fixed issue where PaginatedIterator randomly skipped items #132 (@Katsute)
  • Fixed HttpException #130 (@Katsute)

1.1.0

⭐ New Features

  • Add more helpful error messages #116 (@Katsute)
  • Overhaul MyAnimeList Authenticator (Local server & builder) #102 (@Katsute)
  • Fields can be accessed as static strings #100 (@Katsute)

πŸ”§ Optimizations

  • Fixed issue where unicode characters weren't decoded; Json optimizations. #123 (@Katsute)
  • Optimize PaginatedIterator #120 (@Katsute)

πŸ“„ Documentation

  • Update Documentation #117 (@Katsute)
  • Add more helpful error messages #116 (@Katsute)

🐞 Bug Fixes

  • Fixed Light novels having unknown type. #127 (@Katsute)
  • Fixed issue where unicode characters weren't decoded; Json optimizations. #123 (@Katsute)
  • Fix critical issue where UserRetrievable could not be accessed #118 (@Katsute)

1.0.1

πŸ“„ Documentation

  • Minor sourcecode/documentation fixes #104 (@Katsute)

🐞 Bug Fixes

  • Fixed newline Json issue. #101 (@Katsute)

1.0.0

Initial Release