- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.3 to 3.2.5 #424 (@dependabot)
- Bump the junit group with 2 updates #426 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.1.0 to 3.2.0 #430 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.0 to 3.2.1 #431 (@dependabot)
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.12.1 to 3.13.0 #432 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.1 to 3.2.2 #433 (@dependabot)
- Bump org.apache.maven.plugins:maven-source-plugin from 3.3.0 to 3.3.1 #434 (@dependabot)
- Bump org.apache.maven.plugins:maven-jar-plugin from 3.3.0 to 3.4.0 #435 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.2 to 3.2.3 #436 (@dependabot)
- Bump org.apache.maven.plugins:maven-jar-plugin from 3.4.0 to 3.4.1 #438 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.3 to 3.2.4 #437 (@dependabot)
- Bump org.sonatype.plugins:nexus-staging-maven-plugin from 1.6.13 to 1.7.0 #439 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.3 to 3.7.0 #440 (@dependabot)
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.5 to 3.3.0 #442 (@dependabot)
- Bump org.apache.maven.plugins:maven-jar-plugin from 3.4.1 to 3.4.2 #444 (@dependabot)
- Bump the junit group with 2 updates #445 (@dependabot)
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.3.0 to 3.3.1 #446 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.7.0 to 3.8.0 #447 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.4 to 3.2.5 #448 (@dependabot)
- Bump the junit group with 2 updates #449 (@dependabot)
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.3.1 to 3.4.0 #450 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.8.0 to 3.10.0 #451 (@dependabot)
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.4.0 to 3.5.0 #452 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.5 to 3.2.6 #453 (@dependabot)
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.6 to 3.2.7 #455 (@dependabot)
- Bump the junit group with 2 updates #454 (@dependabot)
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.5.0 to 3.5.1 #458 (@dependabot)
- Bump the junit group with 2 updates #456 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.10.0 to 3.10.1 #457 (@dependabot)
- Bump the junit group with 2 updates #459 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.10.1 to 3.11.1 #460 (@dependabot)
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.5.1 to 3.5.2 #461 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.11.1 to 3.11.2 #463 (@dependabot)
Full Changelog: 3.4.2...3.4.3
- 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
- Bump maven-surefire-plugin from 3.1.0 to 3.1.2 #394 (@dependabot)
- Bump the junit group with 2 updates #396 (@dependabot)
- Bump actions/checkout from 3 to 4 #400 (@dependabot)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.5.0 to 3.6.0 #401 (@dependabot)
- Upgrade to Java 21 #402 (@Katsute)
Full Changelog: 3.4.0...3.4.1
-
Add missing character and people fields #393 (@Katsute)
These are from undocumented features, you must use
MyAnimeList.enableExperimentalFeature(ExperimentalFeature.CHARACTERS)
andMyAnimeList.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
-
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
-
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
-
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)
orAnime.getCharacters()
.Character information currently includes:
- Name
- Alternative names
- Picture
- Biography
- Animeography
- Bump junit-jupiter from 5.9.2 to 5.9.3 #377 (@mashiro-san)
- Bump maven-surefire-plugin from 3.0.0 to 3.1.0 #378 (@dependabot)
- Bump maven-gpg-plugin from 3.0.1 to 3.1.0 #379 (@dependabot)
- Bump maven-source-plugin from 3.2.1 to 3.3.0 #383 (@dependabot)
Full Changelog: 3.0.3...3.1.0
- Bump maven-compiler-plugin from 3.10.1 to 3.11.0 #368 (@dependabot)
- Bump maven-surefire-plugin from 3.0.0-M9 to 3.0.0 #370 (@dependabot)
Full Changelog: 3.0.2...3.0.3
- Bump maven-surefire-plugin from 3.0.0-M8 to 3.0.0-M9 #365 (@dependabot)
- Bump maven-javadoc-plugin from 3.4.1 to 3.5.0 #366 (@dependabot)
Full Changelog: 3.0.1...3.0.2
- Bump maven-surefire-plugin from 3.0.0-M7 to 3.0.0-M8 #359 (@dependabot)
Full Changelog: 3.0.0...3.0.1
-
Change groupid #355 (@Katsute)
- Changed groupid from
com.kttdevelopment
todev.katsute
- Changed package from
com.kttdevelopment
todev.katsute
- Moved exceptions from
com.kttdevelopment.mal4j
todev.katsute.mal4j.exceptions
- Anime/Manga start/end dates now return
NullableDate
instead of aDate
To bring your code up to date:
- Change the dependency groupid from
com.kttdevelopment
todev.katsute
- Replace all
import com.kttdevelopment.mal4j
withimport dev.katsute.mal4j
- Exceptions are now imported from
dev.katsute.mal4j.exceptions
, fix this import manually
- Changed groupid from
- Bump junit-jupiter from 5.9.1 to 5.9.2 #358 (@mashiro-san)
Full Changelog: 2.12.0...3.0.0
-
Drop use of 'Preview' classes #353 (@Katsute) Any methods that previously returned
AnimePreview
andMangaPreview
now instead returnsAnime
andManga
. There is no need to callgetAnime
andgetManga
to get all details, all details are now returned by default.Simply change any usage of
AnimePreview
toAnime
andMangaPreview
toManga
.- Removed
getAnimePreview
andgetMangaPreview
- Removed redundant
getAnime
andgetManga
on certain classes
- Removed
Full Changelog: 2.11.0...2.12.0
- 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
- Using an experimental feature without enabling it will throw a
- Remove deprecated authentication methods #345 (@Katsute)
- Removed
withOAuthToken
, usewithToken
- Removed
refreshOAuthToken
, userefreshToken
- Removed
withAuthorization
, usewithOAuth2
- The deprecated String parameter has been replaced with the Authorization parameter.
Previously:
Should be replaced with:
new MyAnimeListAuthenticator("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("client_id", "client_secret", "authorization_code", "PKCE_code_challenge"));
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);
- Removed
- Bump maven-jar-plugin from 3.2.2 to 3.3.0 #344 (@dependabot)
Full Changelog: 2.10.0...2.11.0
This update adds support for Anime promotional videos (PVs) and trailers. Use Anime.getVideos()
to retrieve all PVs.
- Removed deprecated enums #338 (@Katsute)
- Removed
AnimeSource.Web_Manga
, useAnimeSource.WebManga
- Removed
AnimeSource.Digital_Manga
, useAnimeSource.DigitalManga
- Removed
MangaType.Novel
, useMangaType.LightNovel
- Removed
- Removed deprecated method
MyAnimeList.getMyself
#339 (@Katsute) UseMyAnimeList.getAuthenticatedUser
- Removed deprecated AndroidCompatibilityException #340 (@Katsute)
- Added Anime PV/Trailers #341 (@Katsute)
- Retrieve Anime PVs/Trailers using
Anime.getVideos()
, returns an array - Added corresponding field variable
videos
orFields.Anime.videos
- Added corresponding experimental field
ExperimentalFeature.VIDEOS
- Retrieve Anime PVs/Trailers using
- 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)
- Enable all experimental features using
Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.9.1...2.10.0
- Add missing Manga publishing status
discontinued
#334 (@Katsute)
- 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
- 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
- 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
- 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
- Fix visual novel Anime source #315 (@Katsute)
- 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
- 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)
- 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
- Fix modularity for Java 9-10 #310 (@Katsute)
- 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
- 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
- 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
- Fix random newlines appearing in log #278 (@Katsute)
Full Changelog: https://github.com/KatsuteDev/Mal4J/compare/2.7.0...2.7.1
- Search for public Anime/Manga lists using only client id #266 (@Katsute)
- Add additional authentication methods #270 (@Katsute)
- Rename
MyAnimeList.withAuthorization(...)
toMyAnimeList.withOAuth2(...)
. - Replace
MyAnimeListAuthenticator
parameters with a singleAuthorization
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 forMyAnimeListAuthenticator
.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);
- Rename
- Add warning when using deprecated classes/methods #276 (@Katsute)
- Fix Anime/Manga list ID sometimes being null #268 (@Katsute)
- Remove rare exceptions from documentation #277 (@Katsute)
- Adjust warning messages #263 (@Katsute)
- Code quality fixes #264 (@Katsute)
- Add debug mode #265 (@Katsute)
- 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
-
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 nowMyAnimeList.withToken(String)
MyAnimeList.refreshOAuthToken()
is nowMyAnimeList.refreshToken()
-
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
- Fix issue with null priority and rewatch/reread value #255 (@Katsute)
- 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
- 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)
- Update CI to Java 17 (LTS) #237 (@Katsute)
- Enforce timeouts on workflows #240 (@Katsute)
- Migrate to reusable workflows #243 (@Katsute)
- 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
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)
- Multiple exception changes (see pull) #224 (@Katsute)
- (android) Use
X-HTTP-Method-Override
when PATCH is not available #220 (@Katsute)
- Fix MyAnimeList genre changes β Genre has been changed from an enum to a class #236 (@Katsute)
- Fix RelationType.toString() #215 (@Katsute)
- 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])
- 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)
- Migrate documentation #204 (@Katsute)
- Bump crazy-max/ghaction-import-gpg from 3.1.0 to 3.2.0 #212 (@dependabot[bot])
- Update jcore test dependency #208 (@Katsute)
Breaking Change: This update changes query return type from full to preview. Anime
β AnimePreview
and Manga
β MangaPreview
.
- Fix queries not returning preview type #197 (@Katsute)
- Fix Android compatibility issues #194 (@Katsute)
- Add jCore to test cases #190 (@Katsute)
- Bump org.junit.jupiter from 5.7.1 to 5.7.2 #188 (@Katsute)
- Replace
MyAnimeList#getMyself
withMyAnimeList#getAuthenticatedUser
#179 (@Katsute) - Add inverted fields #173 (@Katsute)
- Improve JsonSyntaxException #165 (@Katsute)
- Backend improvements & optimizations #178 (@Katsute)
- Improve documentation #164 (@Katsute)
- Fix compatibility issue with Android API 28+ (9+) #185 (@Katsute)
- Fix array manipulation issue #172 (@Katsute)
- 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)
- Fix Genre #161 (@Katsute)
- Fix Android reflection issue. #155 (@Katsute)
This update brings support to Java 8+
Please check the FAQ for new issues that may occur.
- 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)
- Cleanup documentation. #152 (@Katsute)
- Remove deprecated server constructors. #147 (@Katsute)
- Remove deprecated fields. #146 (@Katsute)
- Fix toString methods #149 (@Katsute)
- Retrieve User Anime/Manga listings from User object. #128 (@Katsute)
- Fix issue where android would not parse regex correctly #134 (@Katsute)
- Fixed issue where PaginatedIterator randomly skipped items #132 (@Katsute)
- Fixed HttpException #130 (@Katsute)
- Add more helpful error messages #116 (@Katsute)
- Overhaul MyAnimeList Authenticator (Local server & builder) #102 (@Katsute)
- Fields can be accessed as static strings #100 (@Katsute)
- Fixed issue where unicode characters weren't decoded; Json optimizations. #123 (@Katsute)
- Optimize PaginatedIterator #120 (@Katsute)
- Update Documentation #117 (@Katsute)
- Add more helpful error messages #116 (@Katsute)
- 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)
- Minor sourcecode/documentation fixes #104 (@Katsute)
- Fixed newline Json issue. #101 (@Katsute)
Initial Release