Releases: MbinOrg/mbin
v1.7.2
We are excited to announce the release of Mbin v1.7.2! This version is packed with important bug fixes and performance improvements, focused on bug fixes rather than new features.
The main improvements are (in random order):
- Fixing many PHP undefined, null or other errors that admins might see in their production logs.
- Resolving several templating null issues.
- Removing CSRF tokens from public forms (when user isn't logged-in), reduce unnecessary large amount of sessions.
- Migrating Symfony sessions from Redis to PostgreSQL to avoid race conditions.
- Increase session & cookies duration to 4 months (so people stay logged-in).
- Adding a down-vote mode in
.env
. - Add stricter requirements on the routes configuration (reducing invalid requests are making it to the controller).
- Introducing a scheduler for removing deleted user messages & pruning the dead letter queue in RabbitMQ.
- Various other bug fixes and updating package dependencies and translation improvements.
For more details see below the "What's Changed" section.
Comparison to previous stable version 1.7.1:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
☑️ | ❌ | ❌ | ☑️ | ❌ |
What's Changed
- Translations update from Hosted Weblate by @weblate in #1099
- Fix update actor failing because of a serializer error by @BentiGorlich in #1098
- Check whether the author is blocked before notifying by @BentiGorlich in #1100
- Implement downvote modes by @BentiGorlich in #1022
- Add the downvotes mode to the .env.example by @BentiGorlich in #1104
- Translations update from Hosted Weblate by @weblate in #1103
- docs(contributor): contributors readme action update by @github-actions in #1106
- Bump twig/twig from 3.11.0 to 3.11.1 in the composer group by @dependabot in #1107
- Fix the downvote error by @BentiGorlich in #1110
- Clean-up push controller js by @melroy89 in #1105
- Clean up push controller js even more by @melroy89 in #1111
- Add spoiler to markdown editor by @melroy89 in #1108
- Fix some npm vulnerabilities by @BentiGorlich in #1112
- Translations update from Hosted Weblate by @weblate in #1113
- Also check if filePath is not null by @melroy89 in #1114
- Null error on reported post comment notifications by @BentiGorlich in #1118
- Fix 3rd miscellaneous bug by @BentiGorlich in #1120
- Fix 4th miscellaneous bug by @BentiGorlich in #1121
- Fix 7th miscellaneous bug by @BentiGorlich in #1123
- Fix 2nd miscellaneous bug by @BentiGorlich in #1124
- Fix 6th miscellaneous bug by @BentiGorlich in #1125
- Fix 9th miscellaneous bug by @BentiGorlich in #1122
- Fix null error when an instance does not have a nodeinfo endpoint by @BentiGorlich in #1117
- Update composer PHP depedencies by @melroy89 in #1101
- Disable badges for now by @melroy89 in #1116
- Check on empty/null filePath image by @melroy89 in #1128
- Check if EntryComment is defined and not null by @melroy89 in #1129
- Improve invalid CSRF token logging + add explicit dependency by @melroy89 in #1130
- Make CSRF tokens better named by @melroy89 in #1131
- Add new command: "Remove failed messages command" by @melroy89 in #1132
- Update docs with failed messages remove command by @melroy89 in #1133
- Don't log full html pages (stop error log pollution) by @melroy89 in #1134
- Add explicit require dep phpseclib/phpseclib. Update minor releases o… by @melroy89 in #1135
- Translations update from Hosted Weblate by @weblate in #1137
- Remove dead messages + docs update by @melroy89 in #1139
- Disable CSRF checks on some most-used forms by @melroy89 in #1136
- Translations update from Hosted Weblate by @weblate in #1143
- Translations update from Hosted Weblate by @weblate in #1144
- Reduce error pollution even more on post request failures by @melroy89 in #1140
- Translations update from Hosted Weblate by @weblate in #1146
- add new develop branch for gh trigger by @melroy89 in #1147
- Store sessions in DB + improve cookies/sessions by @melroy89 in #1145
- Translations update from Hosted Weblate by @weblate in #1149
- Add stricter requirements to existing routes by @melroy89 in #1150
- Translations update from Hosted Weblate by @weblate in #1151
- Increase the interval for fetch_user_notifications by @melroy89 in #1152
- Translations update from Hosted Weblate by @weblate in #1154
- Adding Valkey to docs by @melroy89 in #1153
- Introducing dependabot for npm & composer by @melroy89 in #1141
- Bump symfony/http-client from 7.1.4 to 7.1.5 by @dependabot in #1155
- Bump symfony/uid from 7.1.4 to 7.1.5 by @dependabot in #1158
- Bump symfony/translation from 7.1.3 to 7.1.5 by @dependabot in #1156
- Bump symfony/webpack-encore-bundle from 2.1.1 to 2.2.0 by @dependabot in #1159
- Translations update from Hosted Weblate by @weblate in #1160
- Fix the docker build error due to an old symfon/cache version by @BentiGorlich in #1165
- Make the body not required while editing by @BentiGorlich in #1168
- Fix wrong title showing while editing a thread by @BentiGorlich in #1169
- Bump phpunit/phpunit from 11.3.6 to 11.4.0 by @dependabot in #1162
- Translations update from Hosted Weblate by @weblate in #1170
- Bump symfony/ux-chartjs from 2.19.3 to 2.20.0 by @dependabot in #1164
- Bump symfony/console from 7.1.4 to 7.1.5 by @dependabot in #1161
- docs(contributor): contributors readme action update by @github-actions in #1172
- Check if the openssl_sign went OK by @melroy89 in #1102
- Fix scheduler not running by @BentiGorlich in #1166
- Bump to 1.7.2 release now by @melroy89 in #1176
Full Changelog: v1.7.1...v1.7.2
v1.7.1
Welcome to version 1.7.1 of Mbin. A very packed Mbin release once again!
This version includes tons of fixes (too many to mention here, look at "What's Changed") and introduces also new features like: trusted proxy configuration (see also docs), activate accounts manually using the admin panel, show an error when the image is too large to upload (look at the latest .env template file), improved API end-points (isAdmin, isGlobalModerator is part of the user API, fixed AP context and more) as well as many documentation improvements.
Note: Due to a dead-lock issue in 1.7.0, which is now fixed in 1.7.1, we strongly recommend upgrading your Mbin server as soon as possible.
And as always, we would like to thank all the contributors and the Mbin community! We can't do it without you!
Comparison to previous stable version 1.7.0:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
☑️ | ☑️ | ☑️ | ☑️ | ❌ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.1
- Run the update script:
./bin/post-upgrade
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put asudo
in-front of every command) - Flush your Redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- Clear your opcache by reloading PHP-FPM
systemctl reload php8.3-fpm
(or for PHP 8.2:systemctl reload php8.2-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- Update docker php config to match bare metal guide by @jwr1 in #992
- docs(contributor): contributors readme action update by @github-actions in #993
- Update docker ini files to be a little more consistent with docs in #994
- Fix the error when saving the admin settings by @BentiGorlich in #997
- Add posting restricted to mods to the API by @BentiGorlich in #998
- Add user ban and suspension lists to admin panel in #995
- Translations update from Hosted Weblate by @weblate in #999
- Add user password set/reset command to
bin/console
in #1002 - Fix remove moderator api throwing error by @BentiGorlich in #1003
- Fix
ActivityHandler
errors regarding the payload by @BentiGorlich in #1004 - Fix the managers checking wrong fields for editing permissions by @BentiGorlich in #1005
- Allow admins to activate/verify accounts manually using the admin user panel in #1000
- Stop banned or suspended users from notification creation on posts and entries in #1007
- Invalidate collection cache before getting collection for likes, dislikes and shares by @BentiGorlich in #1008
- Bump version to 1.7.1-rc1 by @BentiGorlich in #1010
- add default null to Instance entity nullables field by @asdfzdfj in #1006
- Remove
\intval
aroundMAX_IMAGE_BYTES
insrc/Service/SettingsManager.php
, breaks settings name resolution in #1011 - Add trusted proxy config to framework configuration in #1012
- Version bump for 1.7.1-rc2 in #1015
- Translations update from Hosted Weblate by @weblate in #1017
- Make the API return the server public key and add a dedicated route for it by @BentiGorlich in #1018
- Use the default when the value is zero by @BentiGorlich in #1020
- Add an image too large error by @BentiGorlich in #1019
- Revert "Make the API return the server public key and add a dedicated route for it" by @jwr1 in #1024
- Fix user getting deleted when unregistering push by @BentiGorlich in #1029
- Fix
getAccessToken
always returning null by @BentiGorlich in #1030 - docs(contributor): contributors readme action update by @github-actions in #1031
- Fix UserPushSubscriptionManager using wrong AccessToken type by @BentiGorlich in #1033
- Bump version to 1.7.1-rc3 by @BentiGorlich in #1027
- Fix 500 error when a thread is empty by @BentiGorlich in #1034
- Translations update from Hosted Weblate by @weblate in #1038
- Translations update from Hosted Weblate by @weblate in #1041
- Update PHP Dependencies by @BentiGorlich in #1037
- Fix user soft delete and user account restore within 30 days in #1013
- Change attributed to parsing to not expect a url by @BentiGorlich in #1035
- Add cascade delete to report.considered_by_id by @BentiGorlich in #1028
- Only match magazine by hashtag if post was in random by @BentiGorlich in #1036
- Fix error when updating an actor and the instance has no nodeinfo endpoint by @BentiGorlich in #1040
- Return only the host as audience for remote magazines by @BentiGorlich in #1039
- Bump Version to 1.7.1-rc4 by @BentiGorlich in #1042
- Add
isAdmin
andisGlobalModerator
fields to user api response by @BentiGorlich in #1044 - Add field to all content response DTOs:
canAuthUserModerate
by @BentiGorlich in #1043 - Add missing checks for banned instance by @BentiGorlich in #1053
- actually building user agent in ProjectInfoService by @asdfzdfj in #1057
- push navbar front route generation into twig func by @asdfzdfj in #1058
- Fix AP context by @melroy89 in #1060
- Edit the contributing docs by @BentiGorlich in #1048
- Translations update from Hosted Weblate by @weblate in #1061
- Add a warning message when we hit the cache in post by @BentiGorlich in #1049
- Use different values for
timeout
andmax_duration
by @BentiGorlich in #1051 - Use a different cache key for activity object by @BentiGorlich in #1050
- Add the featured collection to the ap context by @BentiGorlich in #1065
- Update _form_media.html.twig by @TheVillageGuy in #1055
- docs(contributor): contributors readme action update by @github-actions in #1067
- Fix some leftover magazine undefined errors in the nav by @BentiGorlich in #1069
- chore: Create PR template in #1059
- Add installation filler by @melroy89 in #1074
- docs(contributor): contributors readme action update by @github-actions in #1075
- Translations update from Hosted Weblate by @weblate in #1076
- Update theme-dark.scss by @TheVillageGuy in #1062
- Fix messenger deadlocks caused by cache locks by @BentiGorlich in #1066
- Fix the regex, so FF is no longer complaining by @BentiGorlich in #1077
- Use the latest pipeline docker image by @melroy89 in #1078
- Use is defined on twig report notification objects by @melroy89 in #1080
- Bump the version to 1.7.1-rc5 by @BentiGorlich in #1079
- move private vars out of some services/handlers by @asdfzdfj in #1070
- Add error message to logger in case of invalid reg form submission by @melroy89 in #1082
- Translations update from Hosted Weblate by @weblate in #1081
- docs(contributor): contributors readme action update by @github-actions in #1084
- Do not stealth anti-spam error messages in log by @melroy89 in https://github.com/MbinOr...
v1.7.1-rc5
This the fifth release candidate of 1.7.1. It fixes some major and minor bugs and improves the API
Comparison to previous version 1.7.1-rc4:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
❌ | ❌ | ❌ | ☑️ | ❌ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.1-rc5
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- Add
isAdmin
andisGlobalModerator
fields to user api response by @BentiGorlich in #1044 - Add field to all content response DTOs:
canAuthUserModerate
by @BentiGorlich in #1043 - Add missing checks for banned instance by @BentiGorlich in #1053
- actually building user agent in ProjectInfoService by @asdfzdfj in #1057
- push navbar front route generation into twig func by @asdfzdfj in #1058
- Fix AP context by @melroy89 in #1060
- Edit the contributing docs by @BentiGorlich in #1048
- Translations update from Hosted Weblate by @weblate in #1061
- Add a warning message when we hit the cache in post by @BentiGorlich in #1049
- Use different values for
timeout
andmax_duration
by @BentiGorlich in #1051 - Use a different cache key for activity object by @BentiGorlich in #1050
- Add the featured collection to the ap context by @BentiGorlich in #1065
- Update _form_media.html.twig by @TheVillageGuy in #1055
- docs(contributor): contributors readme action update by @github-actions in #1067
- Fix some leftover magazine undefined errors in the nav by @BentiGorlich in #1069
- chore: Create PR template by @LoveIsGrief in #1059
- Add installation filler by @melroy89 in #1074
- docs(contributor): contributors readme action update by @github-actions in #1075
- Translations update from Hosted Weblate by @weblate in #1076
- Update theme-dark.scss by @TheVillageGuy in #1062
- Fix messenger deadlocks caused by cache locks by @BentiGorlich in #1066
- Fix the regex, so FF is no longer complaining by @BentiGorlich in #1077
- Use the latest pipeline docker image by @melroy89 in #1078
- Use is defined on twig report notification objects by @melroy89 in #1080
- Bump the version to 1.7.1-rc5 by @BentiGorlich in #1079
New Contributors
- @LoveIsGrief made their first contribution in #1059
Full Changelog: v1.7.1-rc4...v1.7.1-rc5
v1.7.1-rc4
This the fourth release candidate of 1.7.1. It fixes some bugs with messages from deleted users, changes the microblog hashtag matching feature, updating dependencies (which itself should solve some bugs related to rabbitmq), fixes failed deletions when the user has reports attached to them, fixes PeerTube channel groups not having moderators and fixes updating actors failing when their instance doesn't have a nodeinfo endpoint
Comparison to previous version 1.7.1-rc3:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
☑️ | ❌ | ❌ | ☑️ | ❌ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.1-rc4
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- Fix 500 error when a thread is empty by @BentiGorlich in #1034
- Translations update from Hosted Weblate by @weblate in #1038
- Translations update from Hosted Weblate by @weblate in #1041
- Update PHP Dependencies by @BentiGorlich in #1037
- Fix user soft delete and user account restore within 30 days in #1013
- Change attributed to parsing to not expect a url by @BentiGorlich in #1035
- Add cascade delete to report.considered_by_id by @BentiGorlich in #1028
- Only match magazine by hashtag if post was in random by @BentiGorlich in #1036
- Fix error when updating an actor and the instance has no nodeinfo endpoint by @BentiGorlich in #1040
- Return only the host as audience for remote magazines by @BentiGorlich in #1039
- Bump Version to 1.7.1-rc4 by @BentiGorlich in #1042
Full Changelog: v1.7.1-rc3...v1.7.1-rc4
v1.7.1-rc3
This is the third release candidate of v1.7.1. It fixes some bugs relating to the PushNotificationsAPI and the max image size env var. It also introduces an error message if the image is too large and displays the maximum file size next to the image upload
Comparison to previous version 1.7.1-rc2:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
❌ | ❌ | ❌ | ☑️ | ❌ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.1-rc3
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- Translations update from Hosted Weblate by @weblate in #1017
- Make the API return the server public key and add a dedicated route for it by @BentiGorlich in #1018
- Use the default when the value is zero by @BentiGorlich in #1020
- Add an image too large error by @BentiGorlich in #1019
- Revert "Make the API return the server public key and add a dedicated route for it" by @jwr1 in #1024
- Fix user getting deleted when unregistering push by @BentiGorlich in #1029
- Fix
getAccessToken
always returning null by @BentiGorlich in #1030 - docs(contributor): contributors readme action update by @github-actions in #1031
- Fix UserPushSubscriptionManager using wrong AccessToken type by @BentiGorlich in #1033
- Bump version to 1.7.1-rc3 by @BentiGorlich in #1027
Full Changelog: v1.7.1-rc2...v1.7.1-rc3
v1.7.1-rc2
This is the second release candidate of v1.7.1. This release fixes a critical bug that was introduced in v.1.7.1-rc1 related to image uploads failing if the instance admin forgets to set the MAX_IMAGE_BYTES
environmental variable. Framework configuration for trusted proxies was also introduced to properly handle rate limiting trigged by user IP addresses.
Comparison to previous version 1.7.0:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
❌ | ☑️ | ❌ | ☑️ | ❌ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.1-rc2
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- add default null to Instance entity nullables field by @asdfzdfj in #1006
- Remove
\intval
aroundMAX_IMAGE_BYTES
insrc/Service/SettingsManager.php
, breaks settings name resolution by @nobodyatroot in #1011 - Add trusted proxy config to framework configuration by @nobodyatroot in #1012
- Version bump for 1.7.1-rc2 by @nobodyatroot in #1015
Full Changelog: v1.7.1-rc1...v1.7.1-rc2
v1.7.1-rc1
This is the first release candidate for v1.7.1. This release brings a lot of bug fixes, but also a few new features: admins can verify users by clicking a button, new admin user lists, extend the API,
Comparison to previous version 1.7.0:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
❌ | ❌ | ❌ | ☑️ | ❌ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.1-rc1
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- Update docker php config to match bare metal guide by @jwr1 in #992
- docs(contributor): contributors readme action update by @github-actions in #993
- Update docker ini files to be a little more consistent with docs by @nobodyatroot in #994
- Fix the error when saving the admin settings by @BentiGorlich in #997
- Add posting restricted to mods to the API by @BentiGorlich in #998
- Add user ban and suspension lists to admin panel by @nobodyatroot in #995
- Translations update from Hosted Weblate by @weblate in #999
- Add user password set/reset command to
bin/console
by @nobodyatroot in #1002 - Fix remove moderator api throwing error by @BentiGorlich in #1003
- Fix
ActivityHandler
errors regarding the payload by @BentiGorlich in #1004 - Fix the managers checking wrong fields for editing permissions by @BentiGorlich in #1005
- Allow admins to activate/verify accounts manually using the admin user panel by @nobodyatroot in #1000
- Stop banned or suspended users from notification creation on posts and entries by @nobodyatroot in #1007
- Invalidate collection cache before getting collection for likes, dislikes and shares by @BentiGorlich in #1008
- Bump version to 1.7.1-rc1 by @BentiGorlich in #1010
New Contributors
Full Changelog: v1.7.0...v1.7.1-rc1
v1.7.0
This is the v1.7.0 release of Mbin and it brings a lot of changes: improved instance wide modlog, new SSO providers, new translated languages, moderator updates in the modlog, new cake day display, better stability and scalability of the messengers, PeerTube support, federating direct messages, federate un-/pinning entries, updated robots.txt, improve the documentation, longer durability of the user session, adding admin notifications for reports, tombstones for deleted remote users, improve the federation of edits, push subscriptions, a new look of the federation page, add public API endpoints for getting de-/federated and dead instances, magazines can now restrict posting to mods, updating magazines and users should now federate instantly, new users and magazines now show a leaf icon next to them, improve the editing of threads, make the maximum image size configurable
The Mbin dev team now suggests using PHP 8.3. If you are using the docker setup you will automatically be running the new PHP version.
A total of 145 reviewed and approved pull requests have been merged into this release! As always, a special thank you to new and existing contributors, without you, future Mbin releases would not be possible!
Comparison to previous version 1.6.0:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
☑️ | ☑️ | ☑️ | ☑️ | ☑️ |
Upgrade Instructions for v1.6.0
Note
If you are upgrading from one of the release candidates, you just have to follow the default upgrade procedure, like the one described in the 2nd release candidate
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
- Generate VAPID keys to support push notifications (for encryption):
docker compose exec php php bin/console mbin:push:keys:update
For Bare Metal
- Stop all messenger processes by running
supervisorctl stop messenger:*
as the root user - install the php extension
bcmath
, be sure the extension is for your installed php version. On debian for php 8.2 it would look like this:apt install php8.2-bcmath
. Check if that was successful by running:php -m | grep bcmath
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.0
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Generate VAPID keys to support push notifications (for encryption):
php bin/console mbin:push:keys:update
- Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Refresh supervisor and start the new messenger group:
supervisorctl reread && supervisorctl update && supervisorctl start messenger:*
What's Changed
- Translations update from Hosted Weblate by @weblate in #798
- Translations update from Hosted Weblate by @weblate in #802
- Add Brazilian Portuguese and Danish language selectors by @nobodyatroot in #801
- change sso authentication success route to front page by @CocoPoops in #804
- Authentik SSO by @CocoPoops in #806
- Add moderator updates to the modlog by @BentiGorlich in #799
- docs(contributor): contributors readme action update by @github-actions in #808
- Docker caddy version bump by @nobodyatroot in #813
- fix modlog error when the user adding/removing a moderator is null by @BentiGorlich in #812
- Bump Symfony Framework to 7.0.8 by @nobodyatroot in #816
- docs(contributor): contributors readme action update by @github-actions in #817
- Add support for the Privacy Portal OAUTH provider by @privacyguard in #818
- Update contrib workflow with new version and permissions by @nobodyatroot in #820
- docs(contributor): contributors readme action update by @github-actions in #821
- Fix Authentik Account Registration by @CocoPoops in #824
- Improve modlog by @BentiGorlich in #828
- expose the
apFetchedAt
field of users and magazines for admins by @BentiGorlich in #826 - Translations update from Hosted Weblate by @weblate in #829
- New/cake day by @BentiGorlich in #827
- Include content of audience tag in the receivers by @BentiGorlich in #834
- Remove border radius on autocomplete form to fix letters from getting cutoff at the beginning of the item by @nobodyatroot in #835
- add aria attributes to cake day elements by @e-five256 in #841
- Try to fix wrong urls for images in the related panels by @BentiGorlich in #803
- Update all npm packages and address dependabot security notice by @nobodyatroot in #842
- Fix entries with not showing preview icon by @BentiGorlich in #847
- Try to fix the "Table too large for buffer" messenger errors by @BentiGorlich in #846
- Revert "Fix entries with not showing preview icon" by @BentiGorlich in #851
- improve
findActorOrCreate
by @BentiGorlich in #825 - Translations update from Hosted Weblate by @weblate in #850
- Revert "improve
findActorOrCreate
" by @BentiGorlich in #852 - Add Filipino language selector to sidebar by @nobodyatroot in #854
- Translations update from Hosted Weblate by @weblate in #856
- revert preview hide toggling visibility by @e-five256 in #855
- Fix rule mismatch on related entry front vs single by @e-five256 in #859
- Improve actor fetch by @BentiGorlich in #853
- reduce frequency of
lastoriginupdate
db writes by @e-five256 in #702 - Translations update from Hosted Weblate by @weblate in #865
- docs(contributor): contributors readme action update by @github-actions in #864
- Make outbox message handlers use the
DeliverManager
by @BentiGorlich in #862 - docs(contributor): contributors readme action update by @github-actions in #868
- Translations update from Hosted Weblate by @weblate in #871
- findActorOrCreate was changed to search by apPublicUrl which is wrong, revert to apProfileId by @BentiGorlich in #870
- Fix/actor 404 json error by @BentiGorlich in #872
- Translations update from Hosted Weblate by @weblate in #873
- Add new exception to provide descriptive error (returned false) from
openssl_pkey_get_public
in signature validator by @nobodyatroot in #874 - Translations update from Hosted Weblate by @weblate in #875
- Add peertube support by @BentiGorlich in #782
- Add Galician language support by @nobodyatroot in #876
- Cleanup deprecation warnings in Symfony profiler pre 1.6.1 release by @nobodyatroot in #877
- Implement message federation and redesign message view by @BentiGorlich in #830
- Translations update from Hosted Weblate by @weblate in #878
- Add send direct message button to profile by @melroy89 in #879
- Translations update from Hosted Weblate by @weblate in #881
- Fix/entry wrong type by @BentiGorlich in #880
- Remove text from DM button, stops excessive text wrap on desktop view with three columns by @nobodyatroot in #882
- Translations update from Hosted Weblate by @weblate in #884
- Federate pinned entries by @BentiGorlich in #831
- Translations update from Hosted Weblate by @weblate in #886
- Translations update from Hosted Weblate by @weblate in #888
- Add Discord SSO by @nobodyatr...
v1.7.0-rc2
This is the second release candidate for v1.7.0
which fixes problems coming from our framework upgrade, fix the creation of image posts and improve the editing of threads. Additionally we now suggest using php-8.3
Comparison to previous version 1.7.0-rc1:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
❌ | ❌ | ☑️ | ❌ | ❌ |
Upgrade Instructions
Warning
These instructions are only for directly upgrading from v1.7.0-rc1
. Please review the upgrade instructions for all releases between the one you are upgrading from and v1.7.0-rc2
For Docker
Note
We updated the docker setup to use php-8.3
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
For Bare Metal
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.0-rc2
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Restart the messengers:
supervisorctl restart messenger:*
What's Changed
- Translations update from Hosted Weblate by @weblate in #974
- Remove the newly introduced jitter by @BentiGorlich in #975
- Revert accidental change by @BentiGorlich in #976
- Docs: Move mercure supervisor config, add media reverse proxy by @BentiGorlich in #968
- Docs: add s3 reverse proxy and migration to docs by @BentiGorlich in #967
- Clean up doctrine deprecation warnings by @nobodyatroot in #977
- When editing an entry only use one type by @BentiGorlich in #971
- Translations update from Hosted Weblate by @weblate in #979
- Recommend new installs use php8.3 by @nobodyatroot in #981
- Bump docker php to 8.3 and rabbitmq versions by @nobodyatroot in #980
Full Changelog: v1.7.0-rc1...v1.7.0-rc2
v1.7.0-rc1
This is the first release candidate for v1.7.0 of mbin it brings a lot of changes: improved instance wide modlog, new SSO providers, new translated languages, moderator updates in the modlog, new cake day display, better stability and scalability of the messengers, PeerTube support, federating direct messages, federate un-/pinning entries, updated robots.txt, improve the documentation, longer durability of the user session, adding admin notifications for reports, tombstones for deleted remote users, improve the federation of edits, push subscriptions, a new look of the federation page, add public API endpoints for getting de-/federated and dead instances, magazines can now restrict posting to mods, updating magazines and users should now federate instantly, new users and magazines now show a leaf icon next to them
A total of 123 reviewed and approved pull requests have been merged into this release! As always, a special thank you to new and existing contributors, without you, future Mbin releases would not be possible!
Comparison to previous version 1.6.0:
DB migrations | New ENV vars | Admin guide changes | Suggest cache clearing | New dependencies |
---|---|---|---|---|
☑️ | ☑️ | ☑️ | ☑️ | ☑️ |
Upgrade Instructions
For Docker
- Get the official image or checkout the code and build it locally
- Stop all containers
docker compose down
- Start all containers
docker compose up -d
- Generate VAPID keys to support push notifications (for encryption):
docker compose exec php php bin/console mbin:push:keys:update
For Bare Metal
- Stop all messenger processes by running
supervisorctl stop messenger:*
as the root user - install the php extension
bcmath
, be sure the extension is for your installed php version. On debian for php 8.2 it would look like this:apt install php8.2-bcmath
. Check if that was successful by running:php -m | grep bcmath
- Login as the mbin/kbin user:
su mbin
- Go to your repo
cd /var/www/mbin
- Get the new release:
git fetch && git checkout v1.7.0-rc1
- Run the update script:
bash bin/post-upgrade.sh
. If you get an error when running the db migrations you maybe have to stop your webserver, so nothing is trying to access the database. - Generate VAPID keys to support push notifications (for encryption):
php bin/console mbin:push:keys:update
- Run
exit
so we are back at the root user (or put a sudo infront of every command) - flush your redis db by running
redis-cli
, type inAUTH [YOUR PASSWORD]
and thenFLUSHDB
- clear your opcache by reloading php fpm
systemctl reload php8.2-fpm
(or for PHP 8.3:systemctl reload php8.3-fpm
) - Refresh supervisor and start the new messenger group:
supervisorctl reread && supervisorctl update && supervisorctl start messenger:*
What's Changed
- Translations update from Hosted Weblate by @weblate in #798
- Translations update from Hosted Weblate by @weblate in #802
- Add Brazilian Portuguese and Danish language selectors by @nobodyatroot in #801
- change sso authentication success route to front page by @CocoPoops in #804
- Authentik SSO by @CocoPoops in #806
- Add moderator updates to the modlog by @BentiGorlich in #799
- docs(contributor): contributors readme action update by @github-actions in #808
- Docker caddy version bump by @nobodyatroot in #813
- fix modlog error when the user adding/removing a moderator is null by @BentiGorlich in #812
- Bump Symfony Framework to 7.0.8 by @nobodyatroot in #816
- docs(contributor): contributors readme action update by @github-actions in #817
- Add support for the Privacy Portal OAUTH provider by @privacyguard in #818
- Update contrib workflow with new version and permissions by @nobodyatroot in #820
- docs(contributor): contributors readme action update by @github-actions in #821
- Fix Authentik Account Registration by @CocoPoops in #824
- Improve modlog by @BentiGorlich in #828
- expose the
apFetchedAt
field of users and magazines for admins by @BentiGorlich in #826 - Translations update from Hosted Weblate by @weblate in #829
- New/cake day by @BentiGorlich in #827
- Include content of audience tag in the receivers by @BentiGorlich in #834
- Remove border radius on autocomplete form to fix letters from getting cutoff at the beginning of the item by @nobodyatroot in #835
- add aria attributes to cake day elements by @e-five256 in #841
- Try to fix wrong urls for images in the related panels by @BentiGorlich in #803
- Update all npm packages and address dependabot security notice by @nobodyatroot in #842
- Fix entries with not showing preview icon by @BentiGorlich in #847
- Try to fix the "Table too large for buffer" messenger errors by @BentiGorlich in #846
- Revert "Fix entries with not showing preview icon" by @BentiGorlich in #851
- improve
findActorOrCreate
by @BentiGorlich in #825 - Translations update from Hosted Weblate by @weblate in #850
- Revert "improve
findActorOrCreate
" by @BentiGorlich in #852 - Add Filipino language selector to sidebar by @nobodyatroot in #854
- Translations update from Hosted Weblate by @weblate in #856
- revert preview hide toggling visibility by @e-five256 in #855
- Fix rule mismatch on related entry front vs single by @e-five256 in #859
- Improve actor fetch by @BentiGorlich in #853
- reduce frequency of
lastoriginupdate
db writes by @e-five256 in #702 - Translations update from Hosted Weblate by @weblate in #865
- docs(contributor): contributors readme action update by @github-actions in #864
- Make outbox message handlers use the
DeliverManager
by @BentiGorlich in #862 - docs(contributor): contributors readme action update by @github-actions in #868
- Translations update from Hosted Weblate by @weblate in #871
- findActorOrCreate was changed to search by apPublicUrl which is wrong, revert to apProfileId by @BentiGorlich in #870
- Fix/actor 404 json error by @BentiGorlich in #872
- Translations update from Hosted Weblate by @weblate in #873
- Add new exception to provide descriptive error (returned false) from
openssl_pkey_get_public
in signature validator by @nobodyatroot in #874 - Translations update from Hosted Weblate by @weblate in #875
- Add peertube support by @BentiGorlich in #782
- Add Galician language support by @nobodyatroot in #876
- Cleanup deprecation warnings in Symfony profiler pre 1.6.1 release by @nobodyatroot in #877
- Implement message federation and redesign message view by @BentiGorlich in #830
- Translations update from Hosted Weblate by @weblate in #878
- Add send direct message button to profile by @melroy89 in #879
- Translations update from Hosted Weblate by @weblate in #881
- Fix/entry wrong type by @BentiGorlich in #880
- Remove text from DM button, stops excessive text wrap on desktop view with three columns by @nobodyatroot in #882
- Translations update from Hosted Weblate by @weblate in #884
- Federate pinned entries by @BentiGorlich in #831
- Translations update from Hosted Weblate by @weblate in #886
- Translations update from Hosted Weblate by @weblate in #888
- Add Discord SSO by @nobodyatroot in #887
- Update npm minor releases by @melroy89 in #895
- Add SSO documentation by @BentiGorlich in #892
- Add a lock to the handle if a user manually approves followers by @BentiGorlich in #885
- Fix PrivacyPortal SSO by @BentiGorlich in #894
- Update ...