• Extensions
  • FriendsOfFlarum Byōbu, well integrated, advanced private discussions

Byōbu by FriendsOfFlarum

MIT license Latest Stable Version Total Downloads Donate

Extiverse

Private discussions for your forum. Allows you to select specific recipients for your discussions.

Goals

  • Create discussions only specific users or groups can participate in.
  • Force new posts in these private discussions to show real-time.

Installation

composer require fof/byobu:"*"

Updating

composer update fof/byobu
php flarum migrate

Configuration

Enable the extension under the extensions tab in the admin area.

Make sure you configure the private discussions permission on the Admin Permissions tab to your needs;

  • Create private discussions
  • Edit recipients of private discussions

Support our work

We prefer to keep our work available to everyone.
In order to do so we rely on voluntary contributions on OpenCollective.

Links

An extension by FriendsOfFlarum.

    • 0.1.0-beta.1
      • Is Private gambit. Enabled per default on all threads.
      • Adding, editing, deleting recipients.
      • Event Post clarifying deleted, added users.
    • 0.1.0-beta.2
      • Added badge on discussion if private.
      • Disallowing access to page if not a recipient.
      • Added private discussions to the index by default, will be a setting in the future.

    Can you add more styling into selected users? Maybe padding and largin would be nice ? Also a small cross for removing users would be nice ?

    Great work!

      I am unable to turn on Byobu in Devflarum.
      I get a 500 with the following error (beautified, ./ means vendor):

      PDOException: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'recipients' already exists in ./illuminate/database/Connection.php:390
      Stack trace:
      #0 ./illuminate/database/Connection.php(390): PDOStatement->execute(Array)
      #1 ./illuminate/database/Connection.php(655): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}(Object(Illuminate\\Database\\MySqlConnection), 'create table `r...', Array)
      #2 ./illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('create table `r...', Array, Object(Closure))
      #3 ./illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('create table `r...', Array, Object(Closure))
      #4 ./illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('create table `r...')
      #5 ./illuminate/database/Schema/Builder.php(191): Illuminate\\Database\\Schema\\Blueprint->build(Object(Illuminate\\Database\\MySqlConnection), Object(Illuminate\\Database\\Schema\\Grammars\\MySqlGrammar))
      #6 ./illuminate/database/Schema/Builder.php(134): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))
      #7 ./flagrow/byobu/migrations/2017_01_20_000000_recipients.php(23): Illuminate\\Database\\Schema\\Builder->create('recipients', Object(Closure))
      #8 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))
      #9 ./illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)
      #10 ./flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))
      #11 ./flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)
      #12 ./flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/www/devflarum/...', '2017_01_20_0000...', Object(Flarum\\Extension\\Extension))
      #13 ./flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/www/devflarum/...', Array, Object(Flarum\\Extension\\Extension))
      #14 ./flarum/core/src/Extension/ExtensionManager.php(227): Flarum\\Database\\Migrator->run('/www/devflarum/...', Object(Flarum\\Extension\\Extension))
      #15 ./flarum/core/src/Extension/ExtensionManager.php(120): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))
      #16 ./flarum/core/src/Api/Controller/UpdateExtensionController.php(47): Flarum\\Extension\\ExtensionManager->enable('flagrow-byobu')
      #17 ./flarum/core/src/Http/Handler/ControllerRouteHandler.php(53): Flarum\\Api\\Controller\\UpdateExtensionController->handle(Object(Zend\\Stratigility\\Http\\Request))
      #18 ./flarum/core/src/Http/Middleware/DispatchRoute.php(69): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)
      #19 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\DispatchRoute->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #20 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #21 ./flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #22 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\SetLocale->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #23 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #24 ./flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(58): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #25 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithHeader->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #26 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #27 ./flarum/core/src/Http/Middleware/AuthenticateWithSession.php(36): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #28 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #29 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #30 ./flarum/core/src/Http/Middleware/RememberFromCookie.php(39): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #31 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\RememberFromCookie->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #32 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #33 ./flarum/core/src/Http/Middleware/StartSession.php(48): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #34 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\StartSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #35 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #36 ./flarum/core/src/Api/Middleware/FakeHttpMethods.php(33): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #37 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Api\\Middleware\\FakeHttpMethods->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #38 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #39 ./flarum/core/src/Http/Middleware/ParseJsonBody.php(31): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #40 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\ParseJsonBody->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #41 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #42 ./zendframework/zend-stratigility/src/MiddlewarePipe.php(75): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #43 ./flarum/core/src/Http/AbstractServer.php(54): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)
      #44 ./zendframework/zend-diactoros/src/Server.php(166): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), NULL)
      #45 ./flarum/core/src/Http/AbstractServer.php(35): Zend\\Diactoros\\Server->listen()
      #46 /www/devflarum/forum/api.php(16): Flarum\\Http\\AbstractServer->listen()
      #47 {main}
      
      Next Illuminate\\Database\\QueryException: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'recipients' already exists (SQL: create table `recipients` (`id` bigint unsigned not null auto_increment primary key, `discussion_id` int unsigned not null, `user_id` int unsigned not null, `created_at` timestamp default 0 not null, `updated_at` timestamp default 0 not null, `removed_at` timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci) in ./illuminate/database/Connection.php:662
      Stack trace:
      #0 ./illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('create table `r...', Array, Object(Closure))
      #1 ./illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('create table `r...', Array, Object(Closure))
      #2 ./illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('create table `r...')
      #3 ./illuminate/database/Schema/Builder.php(191): Illuminate\\Database\\Schema\\Blueprint->build(Object(Illuminate\\Database\\MySqlConnection), Object(Illuminate\\Database\\Schema\\Grammars\\MySqlGrammar))
      #4 ./illuminate/database/Schema/Builder.php(134): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))
      #5 ./flagrow/byobu/migrations/2017_01_20_000000_recipients.php(23): Illuminate\\Database\\Schema\\Builder->create('recipients', Object(Closure))
      #6 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))
      #7 ./illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)
      #8 ./flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))
      #9 ./flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)
      #10 ./flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/www/devflarum/...', '2017_01_20_0000...', Object(Flarum\\Extension\\Extension))
      #11 ./flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/www/devflarum/...', Array, Object(Flarum\\Extension\\Extension))
      #12 ./flarum/core/src/Extension/ExtensionManager.php(227): Flarum\\Database\\Migrator->run('/www/devflarum/...', Object(Flarum\\Extension\\Extension))
      #13 ./flarum/core/src/Extension/ExtensionManager.php(120): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))
      #14 ./flarum/core/src/Api/Controller/UpdateExtensionController.php(47): Flarum\\Extension\\ExtensionManager->enable('flagrow-byobu')
      #15 ./flarum/core/src/Http/Handler/ControllerRouteHandler.php(53): Flarum\\Api\\Controller\\UpdateExtensionController->handle(Object(Zend\\Stratigility\\Http\\Request))
      #16 ./flarum/core/src/Http/Middleware/DispatchRoute.php(69): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)
      #17 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\DispatchRoute->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #18 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #19 ./flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #20 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\SetLocale->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #21 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #22 ./flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(58): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #23 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithHeader->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #24 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #25 ./flarum/core/src/Http/Middleware/AuthenticateWithSession.php(36): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #26 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #27 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #28 ./flarum/core/src/Http/Middleware/RememberFromCookie.php(39): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #29 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\RememberFromCookie->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #30 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #31 ./flarum/core/src/Http/Middleware/StartSession.php(48): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #32 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\StartSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #33 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #34 ./flarum/core/src/Api/Middleware/FakeHttpMethods.php(33): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #35 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Api\\Middleware\\FakeHttpMethods->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #36 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #37 ./flarum/core/src/Http/Middleware/ParseJsonBody.php(31): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #38 ./zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\ParseJsonBody->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #39 ./zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\
      ext))
      #40 ./zendframework/zend-stratigility/src/MiddlewarePipe.php(75): Zend\\Stratigility\
      ext->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))
      #41 ./flarum/core/src/Http/AbstractServer.php(54): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)
      #42 ./zendframework/zend-diactoros/src/Server.php(166): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), NULL)
      #43 ./flarum/core/src/Http/AbstractServer.php(35): Zend\\Diactoros\\Server->listen()
      #44 /www/devflarum/forum/api.php(16): Flarum\\Http\\AbstractServer->listen()
      #45 {main}

      Hope you fix it soon so I can test it in Devflarum ? Keep it up!

      PS: it is using the latest dev-master, I checked, but it also occurred yesterday.

        datitisev That's my fault.
        There was a flaw (or some change - it worked before) in the dropping tables part of the script when it "flushes" everything.
        It's been fixed and it is enabling / disabling fine now

        Finally,

        I can move my WhatsApp Group's member in to Online "more-anonym" active private-Discussion. Without phone number, off course ?

        Great, and I would like to make some support donation for its feature.

        Now, I can delete my previous Group Member Assign's Tags and move into this simple member's private discussion. Because too many group created with specific tag-permission, is not good for my big forum..

        luceos changed the title to Flagrow byōbu, well integrated, advanced private discussions .

        There is a conflict with the tag extension on my forum (beta6).
        /t/tag shows all posts, not limited to the current tag.

          I'm getting "Something went wrong while trying to load the full version of this site." all the time. :/ I already tried removing cache from browser and flarum.

            Csineneo I'll try looking into it, thanks.

            Veriael without a more specific error there is hardly anything I can do. Enable debug in your config.php and check your logs for more information.

            Csineneo Yes, same here..

            All post will show on any tags, and should be limited to the current tag.

              hi luceos !

              It seems that the bug find by FBI is disappear, private discussion only appear on the right tag.

              Maybe I find an another one, probably related to Flagrow byōbu;
              For an user with no private discussion's permission not an admin. I tried with the right permission, it seems not work , it's impossible to mark a normal discussion as read. The debug mode say : You don't have the permission do to that

              POST https://domain.ext/api/discussions/8912
              
              {
              "errors": [
              {
              "status": "401",
              "code": "permission_denied"
              }
              ]
              }

              Hey ! Thanks for all what you do for Flarum community.
              It's awesome. :3

                Hello @luceos
                For me, it's just impossible to activate the extension, error message tells me :

                POST https://domain/api/extensions/flagrow-byobu
                
                {
                  "errors": [
                    {
                      "code": 500,
                      "title": "Internal server error",
                      "detail": "PDOException: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'flarum_recipients' already exists in /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php:390\nStack trace:\n#0 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php(390): PDOStatement->execute(Array)\n#1 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php(655): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}(Object(Illuminate\\Database\\MySqlConnection), 'create table `f...', Array)\n#2 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('create table `f...', Array, Object(Closure))\n#3 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('create table `f...', Array, Object(Closure))\n#4 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('create table `f...')\n#5 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Schema/Builder.php(191): Illuminate\\Database\\Schema\\Blueprint->build(Object(Illuminate\\Database\\MySqlConnection), Object(Illuminate\\Database\\Schema\\Grammars\\MySqlGrammar))\n#6 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Schema/Builder.php(134): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))\n#7 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flagrow/byobu/migrations/2017_01_20_000000_recipients.php(23): Illuminate\\Database\\Schema\\Builder->create('recipients', Object(Closure))\n#8 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))\n#9 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)\n#10 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))\n#11 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)\n#12 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/home/clients/4...', '2017_01_20_0000...', Object(Flarum\\Extension\\Extension))\n#13 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/home/clients/4...', Array, Object(Flarum\\Extension\\Extension))\n#14 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Extension/ExtensionManager.php(226): Flarum\\Database\\Migrator->run('/home/clients/4...', Object(Flarum\\Extension\\Extension))\n#15 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Extension/ExtensionManager.php(119): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))\n#16 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(46): Flarum\\Extension\\ExtensionManager->enable('flagrow-byobu')\n#17 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Handler/ControllerRouteHandler.php(52): Flarum\\Api\\Controller\\UpdateExtensionController->handle(Object(Zend\\Stratigility\\Http\\Request))\n#18 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(71): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)\n#19 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\DispatchRoute->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#20 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#21 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/SetLocale.php(50): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#22 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\SetLocale->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#23 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#24 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(57): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#25 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithHeader->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#26 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#27 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(33): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#28 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#29 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#30 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(38): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#31 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\RememberFromCookie->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#32 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#33 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/StartSession.php(33): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#34 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\StartSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#35 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#36 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(32): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#37 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Api\\Middleware\\FakeHttpMethods->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#38 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#39 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(30): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#40 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\ParseJsonBody->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#41 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#42 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(75): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#43 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/AbstractServer.php(53): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#44 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-diactoros/src/Server.php(166): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), NULL)\n#45 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/AbstractServer.php(34): Zend\\Diactoros\\Server->listen()\n#46 /home/clients/440651efa077926db06b61d64304e0c4/web/support/api.php(16): Flarum\\Http\\AbstractServer->listen()\n#47 {main}\n\nNext Illuminate\\Database\\QueryException: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'flarum_recipients' already exists (SQL: create table `flarum_recipients` (`id` bigint unsigned not null auto_increment primary key, `discussion_id` int unsigned not null, `user_id` int unsigned not null, `created_at` timestamp default 0 not null, `updated_at` timestamp default 0 not null, `removed_at` timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci) in /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php:662\nStack trace:\n#0 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('create table `f...', Array, Object(Closure))\n#1 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('create table `f...', Array, Object(Closure))\n#2 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('create table `f...')\n#3 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Schema/Builder.php(191): Illuminate\\Database\\Schema\\Blueprint->build(Object(Illuminate\\Database\\MySqlConnection), Object(Illuminate\\Database\\Schema\\Grammars\\MySqlGrammar))\n#4 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/database/Schema/Builder.php(134): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))\n#5 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flagrow/byobu/migrations/2017_01_20_000000_recipients.php(23): Illuminate\\Database\\Schema\\Builder->create('recipients', Object(Closure))\n#6 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))\n#7 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)\n#8 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))\n#9 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)\n#10 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/home/clients/4...', '2017_01_20_0000...', Object(Flarum\\Extension\\Extension))\n#11 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/home/clients/4...', Array, Object(Flarum\\Extension\\Extension))\n#12 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Extension/ExtensionManager.php(226): Flarum\\Database\\Migrator->run('/home/clients/4...', Object(Flarum\\Extension\\Extension))\n#13 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Extension/ExtensionManager.php(119): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))\n#14 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(46): Flarum\\Extension\\ExtensionManager->enable('flagrow-byobu')\n#15 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Handler/ControllerRouteHandler.php(52): Flarum\\Api\\Controller\\UpdateExtensionController->handle(Object(Zend\\Stratigility\\Http\\Request))\n#16 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(71): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)\n#17 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\DispatchRoute->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#18 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#19 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/SetLocale.php(50): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#20 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\SetLocale->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#21 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#22 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(57): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#23 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithHeader->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#24 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#25 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(33): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#26 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\AuthenticateWithSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#27 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#28 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(38): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#29 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\RememberFromCookie->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#30 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#31 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/StartSession.php(33): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#32 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\StartSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#33 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#34 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(32): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#35 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Api\\Middleware\\FakeHttpMethods->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#36 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#37 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(30): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#38 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Dispatch.php(82): Flarum\\Http\\Middleware\\ParseJsonBody->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#39 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/Next.php(113): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#40 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(75): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#41 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/AbstractServer.php(53): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#42 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/zendframework/zend-diactoros/src/Server.php(166): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), NULL)\n#43 /home/clients/440651efa077926db06b61d64304e0c4/web/support/vendor/flarum/core/src/Http/AbstractServer.php(34): Zend\\Diactoros\\Server->listen()\n#44 /home/clients/440651efa077926db06b61d64304e0c4/web/support/api.php(16): Flarum\\Http\\AbstractServer->listen()\n#45 {main}"
                    }
                  ]
                }
                

                  MathieuM hi, drop the table recipients and delete under the table migrations any entry that refers to the flagrow/messaging or flagrow/byobu extension. You've installed dev-master previously that's why this error shows up. Then run php flarum migrate.