mstilkerich / rcmcarddav

CardDAV plugin for RoundCube Webmailer
GNU General Public License v2.0
256 stars 81 forks source link

Undefined array key "drafts_mbox_default_iswitch" #421

Closed jorgebnunes closed 1 year ago

jorgebnunes commented 1 year ago

Hi!

I'm using RC 1.6.0 for a long time and everything was working ok, then, my RC wasn't working anymore and after troubleshooting I managed to do a "composer update --no-dev" and got this message:

Loading composer repositories with package information Info from https://repo.packagist.org: #StandWithUkraine Updating dependencies Nothing to modify in lock file Installing dependencies from lock file Package operations: 0 installs, 1 update, 0 removals Update of roundcube/carddav failed

In ident_switch.php line 47:

Undefined array key "drafts_mbox_default_iswitch"

My composer.json has:

"roundcube/carddav": ">=4.4.6",

So, is anyone experiencing this error?

Thanks.

mstilkerich commented 1 year ago

Hello, this is not a file of rcmcarddav. Have you tried simply running the composer command again? There is a design issue in the roundcube plugin installer that can result in weird composer errors, but often it helps to simply run composer again.

mstilkerich commented 1 year ago

The file throwing the PHP warning that results in composer to fail is part of another roundcube plugin. Roundcube-installer loads roundcube classes during the composer run (that is the design issue I was referring to), and this is how ident_switch code gets executed by composer while attempting to upgrade rcmcarddav.

https://bitbucket.org/BoresExpress/ident_switch/src/master/ident_switch.php

roundcube/plugin-installer#38

I sm closing this as it is no issue with rcmcarddav. You can consider reporting a PHP8 compatibility issue with ident_switch but there already exists a similar issue.

jorgebnunes commented 1 year ago

The file throwing the PHP warning that results in composer to fail is part of another roundcube plugin. Roundcube-installer loads roundcube classes during the composer run (that is the design issue I was referring to), and this is how ident_switch code gets executed by composer while attempting to upgrade rcmcarddav.

https://bitbucket.org/BoresExpress/ident_switch/src/master/ident_switch.php

roundcube/plugin-installer#38

I sm closing this as it is no issue with rcmcarddav. You can consider reporting a PHP8 compatibility issue with ident_switch but there already exists a similar issue.

Hi Michael,

You're right. The problem was identity switch plugin. I disabled it and now everything is working again! Also, can you please refer in the documentation that upgrading to version 5 of your carddav plugin must be done while logged out so the DB upgrade is done when login happens? Thanks for your work, time and support! Regards, Jorge