Skip to content

mbin

Communication & Email

A decentralized ActivityPub‑based content aggregator, voting platform, discussion board, and microblogging service that can interoperate with Mastodon, Lemmy, Pixelfed, Pleroma, PeerTube and other fediverse tools.

PHP Latest v1.10.0-rc2 · 27d ago Security brief →

Features

  • Decentralized ActivityPub aggregator supporting multiple services (Mastodon, Lemmy, Pixelfed, Pleroma, PeerTube, etc.)
  • Comprehensive UI improvements and numerous enhancements for server owners and users
  • Full support for all ActivityPub actor types including robot/service accounts
  • Up‑to‑date PHP dependencies with active security/vulnerability fixes
  • JSON Accept header support on all ActivityPub endpoints

Recent releases

View all 3 releases →
v1.10.0-rc2 Bug fix
⚠ Upgrade required
  • For Docker: stop containers with `docker compose down` then start with `docker compose up -d`.
  • For Bare Metal: ensure PHP 8.4 is installed, run the update script (`bash bin/post-upgrade`), restart php-fpm and messenger services via supervisor.
Notable features
  • Option to use old post component layout in Combined view
  • API endpoints for Combined feed, user messages, and Tag content
Full changelog

This is the second release candidate for the upcoming 1.10 release.
It contains mostly bugfixes and small improvements.

Comparison to previous stable version v1.10.0-rc1:

| DB migrations | New ENV vars | Renamed ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
| :---------------------: | :---------------------: | :---------------------: | :---------------------: | :---------------------: | :---------------------: |
| :x: | :x: | :x: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: |

We have 3 different summaries below. One for end-users, one for server admins, and finally a summary for developers.

Summary for Users

  • added an option to use the old layout for posts in Combined view
  • boosted content in Combined feed will only be included if sorted by newest
  • user titles will ignore special Unicode characters
  • fix infinite scrolling of comments
  • disable reply button for comments on locked threads and posts
  • better layout for thread comments in Combined view

Summary for Server Admins

  • fix mbin:images:remove-remote command

Summary for developers

Mbin:

  • updated some dependencies

App:

  • new API endpoints for
    • get Combined feed for magazine (/api/magazine/{magazine_id}/combined[/v2])
    • get chat messages of specific user (/api/users/{user_id}/messages)
    • get content for a Tag (/api/tag/{name}/[entries|entryComments|post|postComments])

Fediverse:

  • Treat as:Public or just Public correctly
  • Fix support for image property on Page type, add support for string

Upgrade Instructions

For Docker

  1. Get the official image or checkout the code and build it locally
  2. Stop all containers docker compose down
  3. Start all containers docker compose up -d

For Bare Metal

  1. Ensure you have PHP 8.4 installed
  2. Login as the mbin/kbin user: su mbin
  3. Go to your repo cd /var/www/mbin
  4. Get the new release: git fetch && git checkout v1.10.0-rc1
  5. Run the update script: bash bin/post-upgrade.
  6. Run exit so we are back at the root user (or put a sudo in front of every command)
  7. clear your opcache by reloading php fpm systemctl restart php8.4-fpm
  8. Restart the messengers: supervisorctl restart messenger:*

[!WARNING]
Executing the migrations might fail. If that is the case and the error message says something like "Unique violation: 7 ERROR: could not create unique index [...]", we prepared a command to fix these duplications.
Bare metal (as the mbin/kbin user): php bin/console mbin:check:duplicates-users-magazines
Docker: docker compose exec php php bin/console mbin:check:duplicates-users-magazines
This command will start a guided tour to delete all duplicated users.

What's Changed

  • fix documentation of dedup users command by @blued-gear in https://github.com/MbinOrg/mbin/pull/2097
  • fix handling of special unicode in user title by @blued-gear in https://github.com/MbinOrg/mbin/pull/2102
  • add option to use old post component in combined view by @blued-gear in https://github.com/MbinOrg/mbin/pull/2103
  • fix infinite scrolling for comments by @blued-gear in https://github.com/MbinOrg/mbin/pull/2104
  • Bump phpstan/phpdoc-parser from 2.3.0 to 2.3.2 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2099
  • Bump meteo-concept/hcaptcha-bundle from 4.3.0 to 4.5.0 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2100
  • Bump league/oauth2-server-bundle from 1.0.0 to 1.1.1 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2101
  • only enable includeBoosts if sorting is set to newest by @blued-gear in https://github.com/MbinOrg/mbin/pull/2105
  • Fix flaky test case in UserFilterListApiTest by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2110
  • Treat as:Public or just Public correctly -> the same as https://www.w3.org/ns/activitystreams#Public by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2109
  • Fix support for image property on Page type, add support for string by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2111
  • Fix type error on mention extraction from tags by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2108
  • Translations update from Hosted Weblate by @weblate in https://github.com/MbinOrg/mbin/pull/2114
  • Fix command only working halfway through by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2116
  • Add the second cursor to the query by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2121
  • Fix the mapping of the magazine modlog by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2122
  • disable reply button for commenst on locked threads and posts by @blued-gear in https://github.com/MbinOrg/mbin/pull/2124
  • Some new API endpoints by @blued-gear in https://github.com/MbinOrg/mbin/pull/2123
  • Bump liip/imagine-bundle from 2.15.0 to 2.17.1 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2118
  • Bump gumlet/php-image-resize from 2.1.2 to 2.1.3 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2117
  • Bump symfony/mercure-bundle from 0.3.9 to 0.4.2 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2119
  • Bump pagerfanta/twig from 4.7.2 to 4.8.0 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2094
  • Bump nelmio/api-doc-bundle from 5.7.1 to 5.10.0 by @dependabot[bot] in https://github.com/MbinOrg/mbin/pull/2120
  • Update robots.txt by @melroy89 in https://github.com/MbinOrg/mbin/pull/2126
  • Fix another flaky test by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2129
  • Update phpunit and paratest by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2130
  • Translations update from Hosted Weblate by @weblate in https://github.com/MbinOrg/mbin/pull/2132
  • Fix typo in monitoring_duration_twig_render by @melroy89 in https://github.com/MbinOrg/mbin/pull/2131
  • Harmonized layout for thread_comments in combined view by @blued-gear in https://github.com/MbinOrg/mbin/pull/2115
  • docs(contributor): contributors readme action update by @github-actions[bot] in https://github.com/MbinOrg/mbin/pull/2134
  • Bump version to v1.10.0-rc2 by @BentiGorlich in https://github.com/MbinOrg/mbin/pull/2128

Full Changelog: https://github.com/MbinOrg/mbin/compare/v1.10.0-rc1...v1.10.0-rc2

v1.10.0-rc1 Breaking risk
Breaking changes
  • Notification signup DTO schema changed
  • /api/combined/{collectionType} endpoint method changed from PUT to GET
  • Search API response format reworked
Security fixes
  • firebase/php-jwt updated from 6.11.1 to 7.0.2 for security
Notable features
  • Keyword content filters with expiration dates and scoping options
  • Built-in server monitoring with metrics collection and statistics
  • Automatic image compression for uploads
v1.9.1 Bug fix
Notable features
  • Thread and microblog locking
  • Discoverability and indexability settings for content
  • Combined RSS feed of threads and microblogs

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

About

Stars
406
Forks
30
Languages
PHP Twig SCSS

Install & Platforms

Install via
docker

Community & Support

Beta — feedback welcome: [email protected]