Skip to content

feat(sync): read an AniList list over HTTPS - #82

Merged
noctuum merged 1 commit into
mainfrom
feat/anilist-reads
Oct 15, 2026
Merged

noctuum merged 1 commit into
mainfrom
feat/anilist-reads

Conversation

@noctuum

@noctuum noctuum commented Oct 15, 2026

Copy link
Copy Markdown
Member

benshi_sync::anilist::AniList reads the account a token is of and that account's list of anime over AniList's GraphQL API. It sends through a Transport of one method, and Http is the one over reqwest with rustls and ring.

  • Requests go out two seconds apart, also when made at once, and each has a deadline of 15 s.
  • A 429 is Error::Wait with its Retry-After, or a minute where it has none, and no request goes out before that wait and a second past it. A status of 500 or above is Error::Unreachable, and an error an answer carries is Error::Refused in the service's words.
  • The list is read a chunk at a time, and a work on several of the account's lists is read once.
  • tests/fixtures/anilist/list.json was recorded from a test account by the ignored tests/anilist_record.rs, and tests/anilist_recorded.rs reads it back.
  • The tests of the store and of the contract name a film of the test account.

cargo test --workspace passes, 907 tests.

Requests go two seconds apart, and a 429 is the wait it names.
@noctuum
noctuum merged commit eb5c15a into main Oct 15, 2026
1 check passed
@noctuum
noctuum deleted the feat/anilist-reads branch October 15, 2026 02:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant