I'm glad to announce the release of version 2.53 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
New user feature to search by post content (using regular expressions) or tag.
Added some (partial) support for Event object types.
Minor fixes: Allow unboosting your own posts (contributed by khm), CSS fixes for the Dillo browser (contributed by kvibber).
I'm glad to announce the release of version 2.52 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Posts that were liked or boosted can now be unliked and unboosted.
Outgoing message timeouts are no longer hardcoded and can be configured (see snac(8) for more information).
Fixed a bug that caused some incorrect unfollows under special conditions (with shared inboxes enabled and users from the same instance that follow each other, the internal message distributor was confused).
Mastodon API: Added support for lists.
Added a header to avoid over-zealous caching in some browsers (contributed by louis77).
Added support for running and federating inside hidden networks like Tor, I2P or Loki (contributed by iwojima).
Fixed an error processing polls coming from Pleroma instances.
I'm glad to announce the release of version 2.51 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Support for custom Emojis has been added; they are no longer hardcoded, but read from the emojis.json file at the server base directory. Also, they are no longer limited to string substitutions, but images as external URLs are also supported (see snac(8) for more information).
Fixed a bug that caused some notifications to be lost when coming from a user in the same instance.
Added an additional check for blocked instances (sometimes, posts from blocked sites that were ancestors of legit posts were 'leaking' into the timeline).
On OpenBSD, if the disable_email_notifications server flag is set to true, unveil() is not called for the execution of the /usr/sbin/sendmail binary and pledge() doesn't set the exec promise.
CI checks are queued. Hopefully they'll go smoothly?
Assuming they do, it will still be up to someone else with commit access to merge it.
Thank you for your continued improvements! On my mental ToDo list I keep on meaning to create a snac Port for OpenBSD, and it looks as if the unveil and pledge support continues to be refined, cool!
I'm glad to announce the release of version 2.50 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Incoming posts can now be filtered out by content using regular expressions on a server level (these regexes are written in the filter_reject.txt file at the server base directory; see snac(5) and snac(8)).
Improved page position after hitting the Hide or MUTE buttons (for most cases).
Use a shorter maximum conversation thread level (also, this maximum value is now configurable at compilation level with the MAX_CONVERSATION_LEVELS define).
Fixed a bug where editing a post made the attached media or video to be lost.
The way of refreshing remote actor data has been improved.
Posting from the command-line now allows attachments.
Added defines for time to enable MacOS builds (contributed by andypiper).
I'm glad to announce the release of version 2.49 of #snac, the simple, minimalistic #ActivityPub instance server written in C. This time it includes some fixes to the Mastodon API code, which was in need of some love:
Mastodon API: Fixed a bug in how validated links are reported.
Mastodon API: Fixed a bug in search by account.
Mastodon API: Fixed missing Video type objects in timelines.
I'm glad to announce the release of version 2.47 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Added pagination to the notification page.
The New Post... option now includes an optional field to set the URL of an ActivityPub post to be a reply to.
Fixed spurious notifications from the same user.
Fixed repeated mentions in the reply text field.
One-post only pages include the post content instead of the user bio in their metadata (improving post previews from other software).
Mastodon API: Added support for timelines by tag (for sites like e.g. https://fediwall.social to work).
I'm glad to announce the release of version 2.46 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Added support for Peertube videos.
Mastodon API: Tweaks to support the Subway Tooter app (contributed by pswilde), added support for editing posts, fixed an error related to the edit date of a post, fixed some crashes.
Added a handshake emoji next to a user name if it's a mutual relation (follower and followed), because friendship is bliss.
Tweaked some retry timeout values for better behaviour in larger instances (thanks to me@mysmallinstance.homelinux.org for their help).
It's up to someone else with merge access to commit it. Much thanks to @dan for the lightning fast merge with my 2.44 PR.
This time around, the Makefile.patch required a minor tweak, to reflect a minor tweak in the upstream's Makefile as well. Hopefully everything is OK? Preliminary testing on my end went alright but it took me a little longer to find sufficient focus to make that change than I would have liked.
(My own personal life is still sigh hectic and about the same as far as challenges [mostly housing/homeless and financial/debt related] C'est la vie!)
I'm glad to announce the release of version 2.41 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Added support for Article ActivityPub objects to correctly process reviews from #Bookwyrm instances and other similar software.
Show Link objects that are image, audio or video media as if they were attachments.
Added more aggressive caching to timelines and history files.
The history at the end of the public page is listed in reverse chronological order.
Mastodon API: minor fixes.
Be more strict when serving note objects.
Additional HTTP response headers can be defined by adding an http_headers object with header/content pairs into the server.json configuration file.
If you hover the mouse pointer over a vote option in a pool, the current count (as per the last update) is shown. This may be considered cheating in some cases, so try to be honest (or not).
The nodeinfo URL now returns more accurate information.
I'm glad to announce the release of version 2.40 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Announces (boosts) can now be disabled/reenabled on a per-people basis (to limit those boost-trigger-happy friends from flooding your timeline). This is operated from the people page.
It's now possible to show an instance timeline instead of the classic greeting static page at the base URL. This can be enabled by setting the show_instance_timeline field to true in the server configuration file. Other metadata fields can be set to add information to this page; please see snac(8) (the Administrator manual page) for details.
Users can now upload an image (preferably in landscape mode) that will be shown as a banner in their public pages.
Added hints to web UI buttons.
Mastodon API: some minor fixes to allow the semaphore.social web client to work.
Fixed miscalculation of the votersCount field in multiple-choice polls.
DNS or TLS errors in outgoing connections are considered fatal errors and not retried.
I'm glad to announce the release of version 2.39 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Added support for Follow confirmation messages that only return the follow request id (this fixes following Guppe channels).
Fixed some Gotosocial ActivityPub compatibility (details: support fields like tag and attachment being single objects instead of arrays).
Show the 'audience' field (channel URL) if a post has one (like pages from lemmy channels and other forums).
Some web UI tweaks: the new post field is hidden by default (wasting less screen space), added a 'back to top' link at the bottom of the page and other minor tuning to the HTML and default CSS (contributed by yonle).
Fixed RSS (contributed by yonle).
Fixed interactive text processes (like instance or user creating) by calling fflush() after printing text prompts (it was broken on systems that use musl like Alpine Linux).
I'm glad to announce the release of version 2.35 of #snac, the simple, minimalistic #ActivityPub instance server written in C. This time is nothing fancy, mostly bugfixes:
Fixed broken URL links with the # symbol on them.
Fixed people-being-followed data loss after not logging in for a long time (actor objects were purged too soon).
Fixed bug that made impossible to vote on polls that were replied to.
Don't show 'ghost' no-longer-followers in the people list.
When sanitizing HTML input, unsupported tags are deleted instead of escaped.
Fixed crash on missing headers while checking signatures.
Mastodon API: several bug fixes (contributed by Poesty), improved account object (contributed by Haijo7).
There is new a user configuration setup checkbox to mark an account as a bot.
I'm glad to announce the release of version 2.33 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:
Polls (in #ActivityPub lingo, Questions) are shown and can be voted on. Creating a poll is not yet implemented, though.
If an URL written in a post links to an image, it's converted to an attachment.
Fixed a bug in the semaphore code that caused total hangs on OpenBSD.
I'm glad to announce version 2.31 of #snac, the simple, minimalistic #ActivityPub instance server written in ANSI C. This time it's mostly bugfixes contributed by fellow developers:
Fixed webfinger and curl issues, which crashed snac while trying to follow Mitra users (contributed by Poesty).
Use named semaphores instead of anonymous ones, to make it work under MacOS (contributed by Saagar Jha).
Fixed semaphore name conflicts (contributed by Poesty).
Fix warning in ugly pointer substraction (contributed by Saagar Jha).
Added user-agent to webfinger queries (contributed by Poesty).
Mastodon API: implemented notification type filters, fixed (partially) the issue with mentions without server.