Skip to content

Releases: Acizza/mal-rs

v0.8.0

26 Apr 19:07
Compare
Choose a tag to compare

Changelog:

  • All error types have been moved to the error module.

  • Added the english_title and synopsis fields to the AnimeInfo and MangaInfo structs.

  • All error types now chain correctly with their causes.

  • Improved some error messages.

v0.7.0

05 Mar 23:08
Compare
Choose a tag to compare

Changelog:

  • Added missing series types that would cause parsing to fail on some people's anime list.

  • Series searching has been moved to the appropriate list type. For example, to search for an anime and manga series:

let mal = MAL::new("username", "password");

let found_anime = mal.anime_list().search_for("Toradora").unwrap();
let found_manga = mal.manga_list().search_for("Bleach").unwrap();
  • Removed AnimeStatus and MangaStatus enums and merged them into a new Status enum to represent both list types. AnimeStatus::Watching / MangaStatus::Reading now corresponds to Status::WatchingOrReading, and AnimeStatus::PlanToWatch / MangaStatus::PlanToRead now corresponds to Status::PlanToWatchOrRead.

  • The type of the client field in the MAL struct is now Cow<reqwest::Client>, so an existing reqwest::Client can be used with MAL::with_client without giving up ownership.

  • The Debug impl for MAL no longer prints the user's password.

  • Replaced the MALError::Internal variant with MALError::ListError and expanded the ListError type.

  • Slightly optimized list parsing.

  • Updated minidom to v0.8.

v0.6.0

21 Jan 04:46
Compare
Choose a tag to compare

Changelog:

  • Completely overhauled error handling. All public functions now return a MALError enum that contains a Request and Internal variant that are used to represent errors sending a request to MAL and internal parsing errors, respectively.
  • Moved AnimeInfo struct to list::anime module
  • Moved MangaInfo struct to list::manga module
  • Renamed the anime-list feature to anime and manga-list feature to manga since all functionality related to both has been moved to their respective list modules
  • Added series_type field to AnimeInfo / MangaInfo structs
  • Added airing_status field to AnimeInfo struct
  • Added publishing_status field to MangaInfo struct
  • Moved SeriesInfo trait to list module

v0.5.0

16 Jan 22:29
Compare
Choose a tag to compare

Changelog:

  • Converted List trait to generic List struct, to reduce code duplication.

  • Added List::add_id and List::update_id methods.

  • The AnimeEntry and MangaEntry types now have a field named values that contains all of the data that can be set / updated on MyAnimeList. (this change was made to avoid duplicating code for the List::add_id and List::update_id methods)

  • User info is now parsed when reading entries from a user's list and reading from a list now returns the ListEntries type.

  • Renamed List::read_entries to List::read since it parses user info now.

  • Implemented Default trait for AnimeValues and MangaValues structs.

  • Implemented Display trait for WatchStatus and ReadStatus enums.

v0.4.1

14 Jan 20:01
Compare
Choose a tag to compare

Changelog:

  • Fixed credential verification returning an error when checking invalid credentials
  • Added SeriesInfo trait and implemented them for the AnimeInfo & MangaInfo structs
  • Implemented Display trait for ListType enum

v0.4.0

13 Jan 15:23
Compare
Choose a tag to compare

Changelog:

  • Added last_updated_time, image_url, and synonym fields to AnimeInfo and MangaInfo structs.
  • WatchStatus::from_i32 and ReadStatus::from_i32 now return Option rather than Result.
  • Fixed the status of changed fields not being reset when adding an anime / manga to a user's list.
  • Refactored the requests module and fixed some inconsistencies with it.

v0.3.0

12 Jan 17:15
Compare
Choose a tag to compare

Changelog:

  • Added ability to perform operations on a user's manga list
  • Created List and ListEntry trait to make list operations generic
  • Renamed Status enum to WatchStatus
  • Renamed ListEntry struct to AnimeEntry

v0.2.1

10 Jan 11:01
Compare
Choose a tag to compare

Changelog:

  • Gracefully handle a case where the rewatching tag is not set when parsing a user's anime list

v0.2.0

08 Jan 17:16
Compare
Choose a tag to compare

Changelog:

  • Streamlined the way you access the user's anime list (call MAL::anime_list() instead of AnimeList::new()).
  • Added the ability to delete an anime from the user's list by it's MyAnimeList ID.
  • Added Debug, Copy, and Clone traits to AnimeList struct.

v0.1.0

08 Jan 15:58
Compare
Choose a tag to compare

This version allows you to search MyAnimeList for anime / manga, and add / update / delete an anime from a user's list. This is mostly just a marking point for the initial crates.io version.