mfw have to take a break from mastodon.py development because I got rate limited
(I have some tests that run against prod directly, both mastodon dot social and icosahedron dot website, and I do really want to run these before I push, since they validate my return value documentation matches reality)
Quote posts tentatively done. Still TODO: Asynchronous refresh, create docs for examples, packaging for JOSS
not me finding a bug wherein i tolower a base62 string before decoding while adding tests
I don't think there are many people other than me who have actually hit this error
anyways, it's 2am, and everything is implemented but I have some test failures. I will take care of them and do the release tomorrow.
test failures resolved, time to write some more docs, then we can push a new release, I think, and then JOSS archival
docs done, JOSS time.
well, first step in JOSS process is to tag a release. So I will wait until the tests pass on CI for all the python versions, and push a new release~

Mastodon.py version 2.2.0 is now out! 🦣🐍

There's a quite a few bug fixes (thank you to everyone who reported and/or fixed something), and support for 4.5 functionality: Quotes as well as async refreshing! Also quite a bit of additional testing, coverage is now above 90%.

As usual, please report any bugs you see, I should have the time to do quick fixes and maintenance release in the near future hopefully.

* Changelog: https://github.com/halcy/Mastodon.py/releases/tag/v2.2.0
* Docs: https://mastodonpy.readthedocs.io/en/v2.2.0/
* PyPi: https://pypi.org/project/Mastodon.py/

#mastodev #mastodon #python #mastodonpy

Release v2.2.0 · halcy/Mastodon.py

Bumped support level to 4.5.8 Switch from grapheme to graphemeu package, which is more maintained (thanks @CyberTailor for the report). Fix a crash due to unbound local in stream_public (Thanks @el...

GitHub
nb: there will be (hopefully) a maintenance release in the coming days that will be docs changes only, to point the docs to the upcoming JOSS publication so we can have a proper citation target and researcher guidance, finally.

@halcy Any chance the researcher guidance will be able to have things like "here are common basic ethical standards for sociological research that have been accepted in these sorts of areas in the past" or "all sampling will reflect and embed the network only as viewed from those sampling-points, no amount of sampling or cross-correlating can recreate or approximate an attempted 'global view' of the network", etc.?

Like I get it if not, but it'd be nice,

@gaditb https://joss.theoj.org/papers/10.21105/joss.08946 check the ethics statement and the paper it references :)
Mastodon.py: A Python library for the Mastodon API

Diener et al., (2026). Mastodon.py: A Python library for the Mastodon API. Journal of Open Source Software, 11(120), 8946, https://doi.org/10.21105/joss.08946

Journal of Open Source Software