Home Creators Posts Import Register Favorites Logout

Content

Public timeline now excludes reblogs and replies (but not self-replies, so chains of thought are ok)

Re-wrote own embedded WebSub (formerly known as PubSubHubbub) hub to use instead of Superfeedr, as Superfeedr was "normalizing" the payloads by removing important data and thus breaking parts of federation

Fixed order of attachments (left to right in the order they were uploaded, aka "as expected")

Portuguese, Hungarian, Ukrainian translations

User interface for instance administrators: management/moderation of accounts, debug data about WebSub subscriptions, domain blocks (more to come)

Improved caching while excluding account data, thus eliminating the bug that made profiles updates "not work" for ~20 minutes

Moved more code to background processing to give faster responses in the API (deleting statuses, un-reblogging)

More conservative thumbnail generation for avatars and attachments (smaller file size, less files)

"Reblog" is now called "boost" (as in "signal boost") as per community suggestion. "Boost my toot" is now a valid phrase of human language

Unlisted mode is now per-status instead of per-account, and now federates

Basic OEmbed provider API

OpenGraph metatags on public pages for the homepage, the profiles and the statuses, so that sharing Mastodon links on other sites looks good

Fixed avatar errors preventing accounts from federating

Escape key closes image modal

Improved alignment in notifications column (lawful good)

Performance update: When scrolled to top, UI columns keep their content trimmed to a certain number of items. This prevents lag from occuring after receiving lots of updates (such as when having the UI open for a long time)

Videos no longer autoplay, display a preview image with play button instead (saves your bandwidth and the instance hosts's bandwidth)

Moderation tool "account silencing" now acts as a hellban, i.e. silenced accounts are not only removed from public timeline, they also cannot interact with anyone who isn't already following them. Moreover, silenced accounts should not see themselves removed from public timeline.

Added configuration option for blacklisted e-mail domains, if you wish to prevent abuse from known anonymous e-mail providers (although that's a bit of a cat and mouse game since those providers have hundreds of random domains)

Added configuration options to use Amazon S3 as file storage, but most importantly, added configuration options to use a CDN inbetween that, and/or use an alternative to S3 with the same API, such as Minio. More on that later.

Added moderation tool "suspension", which purges all content from a given account and prevents new content on the account from being created, be it a local user's account or a remote user's.

Added configuration option "single user mode", which enables you to close registration on your instance and redirect the homepage to your profile.

Sensitive content marker now federates between instances.

You can now drag & drop files to be uploaded as attachments.

Getting Started screen updated with a link to settings and the public timeline, since the old link under the username was not prominent enough.

Fixed some timeline loading bugs.

Re-implemented autosuggestions component for the compose form: up/down arrows now work normally unless username suggestions are being displayed, enter can be used to select username suggestion (escape to dismiss them)

Now, to the Amazon S3 story.

It turns out, Amazon S3 storage may be cheap, but the devil is in the details, in this particular case, the devil is literally in the data transfer rates. Since moving to S3 halfway through November and up to Dec 1st, mastodon.social accumulated 1.5TB of bandwidth which cost me $167.

Okay, part of that is surely because I forgot to set cache expiration headers on the files, so browsers didn't cache them for long, so I thought. I fixed that and kept an eye out on the December bill estimates. Nope, it's not going down, it's going up. So I got a recommendation that I should use a CDN in front of S3, and Cloudflare has a free tier so cached traffic between the web and Cloudflare would be free for me, and I'd only pay for when Cloudflare fetches S3 files. I implemented that. Nope, S3 traffic still too damn high. The predicted December bill was growing to be $380...

But what if there was an open source file server with the same API as Amazon S3? And what if there was a hosting provider with unmetered bandwidth and lots of cheap storage? I've spent a day configuring a 3€/mo Scaleway VPS, installing the Minio server and downloading the S3 files to it. And it worked. And it works. I'm paying 3€/mo for what would have been $380/mo if not more.

Other stuff

Anyway. We've been given a shoutout by Mike Butcher who has more than 130k followers on Twitter, though I didn't notice the same effect as when Aral Balkan tweeted about it, in terms of people who came to check it out and stick around. But I'm happy about any shoutouts. Tell your friends!

Looking at the GitHub stats, from Nov 15 to Dec 15, 29 pull requests were merged and 107 issues have been closed. (Still 98 issues to go, as of date)

There are ~16k locally registered accounts on mastodon.social

Some new Mastodon instances include: animalliberation.social, on.vu, manowar.social, hex.bz

Patreon stuff

You might have noticed that I still haven't added the promised "supporter" badges to Mastodon, which I am very sorry about. It's my bad. However I've decided, as an extra, to add a "sponsors" page to the wiki on the GitHub project, and list everyone who's donated $20 and more. Furthermore, I added a new reward tier which entitles you to me installing Mastodon on your server and doing basic periodic update maintenance on it.

If you still haven't joined the Patron discord, check patron-only posts for an invite link. Patreon should do it automatically, but apparently that doesn't work, so yeah.

Attached: A commission by cutewitchirl

Too bad I can't embed images in a text post on Patreon huh

Files

Comments

No comments found for this post.