Skip to content

refactor: Iceshrimp’s Mastodon API implementation with original extensions

Eana Hufwe requested to merge eana/firefish:iceshrimp_mastodon into develop

What does this PR do?

Porting Iceshrimp’s Mastodon API implementation with original extensions to Firefish, replacing Megalodon’s implementation.

Resolves #10880 (closed), #10920 (closed), #10717 (closed), #10716 (closed), #10699 (closed), #10697 (closed), #10659 (closed), #10657 (closed), #10543 (closed), #10591 (closed), #10230 (closed), #9637 (closed), #10278 (closed) (unverified), and #9691 (closed) (partially).

Breaking changes

  • The new API uses a new format to manage Mastodon sessions in the database, whereas old implementation uses Misskey sessions. All previous client app and token registrations will not work with the new API. All clients need to be re-registered and all users need to re-authenticate.
  • All IDs (of statuses/notes, notifications, users, etc.) will be using the alphanumerical format, aligning with the Firefish/Misskey API. The old numerical IDs will not work when queried against the new API.

Contribution Guidelines

By submitting this merge request, you agree to follow our Contribution Guidelines

  • This change is reviewed in an issue (#10880 (closed)) / This is a minor bug fix
  • I agree to follow this project's Contribution Guidelines
  • I have made sure to test this pull request
  • I have made sure to run pnpm run format before submitting this pull request

If this merge request makes changes to the Firefish API, please update docs/api-change.md

  • I updated the document / This merge request doesn't include API changes

Co-authored-by: Laura Hausmann laura@hausmann.dev
Co-authored-by: CookiLover311 jacoco@vivaldi.net
Co-authored-by: AkiraFukushima h3.poteto@gmail.com

Edited by naskya

Merge request reports