Friendica 2021.04 Released

With a slight delay, we are happy to announce the availability of the new stable version of the Friendica communications server: Friendica Siberian Iris 2021.04.

Photo of a Siberian Iris by Kristine Tanne
Photo of a Siberian Iris by Kristine Tanne

This is mostly a bug fixing release, stabilizing the new features we introduced over the Red Hot Poker cycle, but also finishing some long time restructuring work on the database structure, which results in a greatly improved performance of Friendica. This release bundles 196 pull requests fixing 53 filed issues. For a detailed overview of the changes, please have a look at the CHANGELOG, some of the highlights

  • The reworking of how items are stored in the database was finished, which results in a great improvement of Friendicas performance. Please note that the needed upgrade might take hours depending of your database size.
  • Admins can now block tags from the trending tag widget.
  • We removed the Flash based addons from the addon repository.

And a heads up for developers, we moved some endpoints in the API to normalize the endpoints.

How to Update

Updating from old Friendica versions

If you are updating from an older version than the 2020.03 release, please first update your Friendica instance to that version.

In that version we introduced views to the database and some node admins reported that they had to adjust their MariaDB configuration (table_definition_cache). Also setting pdo_emulate_prepares to true in the Friendica configuration might be necessary.

Pre-Update Procedures

Ensure that the last backup of your Friendica installation was done recently. Despite the long duration of the database upgrade we had no reports of unaddressed problems during the RC phase.

Please make sure to use Barracuda as MySQL DB file format for your Friendica database. Change your database settings before you proceed with the Friendica update. This change will take some time depending on the size of your database.

Using Git

Important: We removed the master branch and are using the stable branch instead.

Updating from the git repositories should only involve a pull from the Friendica core repository and addons repository, regardless of the branch (stable or develop) you are using. Remember to update the dependencies with composer as well.

cd friendica
git fetch
git checkout stable
git pull
bin/composer.phar install --no-dev
cd addon
git fetch
git checkout stable
git pull

Pulling in the dependencies with composer will show some deprecation warning, we will be working on that in the upcoming release.

Using the Archive Files

If you had downloaded the source files in an archive file (tar.gz) please download the current version of the archive (friendica-full-2021.04.tar.gz and friendica-addons 2021.04.tar.gz) and unpack it on your local computer.

As many files got deleted or moved around, please upload the unpacked files to a new directory on your server (say friendica_new) and copy over your existing configuration (config/local.config.php and config/addon.config.php) and .htaccess files. Afterwards rename your current Friendica directory (e.g. friendica) to friendica_old and friendica_new to friendica.

The files of the dependencies are included in the archive (make sure you are using the friendica-full-2021.01 archive), so you don’t have to worry about them.

Post Update Tasks

The database update should be applied automatically, but sometimes it gets stuck. If you encounter this, please initiate the DB update manually from the command line by running the script

bin/console dbstructure update

from the base of your Friendica installation. If the output contains any error message, please let us know using the channels mentioned below.

Please note, that some of the changes to the database structure will take some time to be applied, depending on the size of your Friendica database.

Known Issues

Please note, that one of the dependencies of Friendica is currently incompatible with PHP 7.0. If you are still running that version of PHP, please have a look at this forum thread for a workaround.

How to Contribute

If you want to contribute to the project, you don’t need to have coding experience. There are a number of tasks listed in the issue tracker with the label “Junior Jobs” we think are good for new contributors. But you are by no means limited to these – if you find a solution to a problem (even a new one) please make a pull request at github or let us know in the development forum.

Contribution to Friendica is also not limited to coding. Any contribution to the documentation, the translation or advertisement materials is welcome or reporting a problem. You don’t need to deal with Git(Hub) or Transifex if you don’t like to. Just get in touch with us and we will get the materials to the appropriate places.

Thanks everyone who helped making this release possible and have fun!



1 Trackback

Leave a Reply

Your email address will not be published. Required fields are marked *