The Fediverse allows for heterogeneous applications. This means that applications will interpret certain things in different ways. This can be used both to allow different use cases such as microblogging or sharing videos, and to design Fediverse applications that meet the need of different communities.
While doing stuff differently is fine, it leads to a lot of work for developers, as they now potentially need to test their application against each other application. We provide these support tables to simplify this task. Basically, we collect the behavior of various applications for certain tasks, and display them as a table. By then consulting one of these tables, the developer can form an opinion how their new feature will interact with the wider Fediverse.
The ActivityPub objects used to generate the support tables can be downloaded:
These samples are CC0 licensed.
Generating support tables and samples
The data for the support tables is in the file
you can generate the files in
site/docs/support_tables/generated/ and thus the
support tables. They can be viewed locally by running
poetry run mkdocs serve
--load option indicates that the file
test_results.toml should be converted
to the corresponding sqlite3 database
Updating the test results
First, one needs to ensure that the results have been converted to sqlite using
Next, we will start the Mastodon 4.2 containers via
Furthermore, we will start the pasture runner via
This will drop you into an interactive shell. Then by running
you can recreate the data in
test_results.sqlite corresponding to Mastodon 4.2.
By then exiting the runner, and running
You should be able to view that what changed in
test_results.toml are volatile
arguments such as the
id of objects, the
published date, or the ordering
of json-ld sets.