refactor(dbal): move from deprecated to modern calls - #58891
Conversation
e9754ab to
2a6989f
Compare
b8d7a73 to
21416b8
Compare
SebastianKrupinski
left a comment
There was a problem hiding this comment.
CalDav looks fine
miaulalala
left a comment
There was a problem hiding this comment.
as per my other comment
21416b8 to
c80ae66
Compare
c80ae66 to
5dda39a
Compare
5dda39a to
e5ce498
Compare
SebastianKrupinski
left a comment
There was a problem hiding this comment.
CalDav/CardDav look correct
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com> Signed-off-by: Carl Schwan <carlschwan@kde.org>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
e5ce498 to
149f9a1
Compare
| #[\Override] | ||
| public function execute($params = null): IResult { | ||
| return ($this->result = new ResultAdapter($this->statement->execute($params))); | ||
| return ($this->result = new ResultAdapter($this->statement->execute($params ?? []))); |
There was a problem hiding this comment.
This particular change seems to have broken the PreparedStatement::bindValue and ::bindParam on NC 35.0.0beta1. In \PDOStatement::execute, the default value null has very different meaning from the empty array [] and the two should not be conflated. The empty array purges any parameters previously given with bindParam or bindValue.
I also found the branch https://github.com/nextcloud/server/tree/carl/dependabot/composer/doctrine/dbal-4.4 which looks like it would fix this issue. Is this something which is on its way to the next betas of NC35?
There was a problem hiding this comment.
the dbal 4.4 is planned for NC36, it's breaking too much stuff for merging this in NC35.
Maybe we can just revert the small change in PreparedStatement.php
Summary
Give Doctrine DBAL some love 💘 by moving away from deprecated calls and a few RAW queries.
Checklist
3. to review, feature component)stable32)AI (if applicable)