Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): Bump doctrine/dbal from 3.8.3 to 4.0.4 #1877

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 22, 2024

Bumps doctrine/dbal from 3.8.3 to 4.0.4.

Release notes

Sourced from doctrine/dbal's releases.

4.0.4

Release Notes for 4.0.4

4.0.4

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Test Suite

Changes from Lower Branches

  • This release contains all changes of the 3.8.6 release.

4.0.3

Release Notes for 4.0.3

4.0.3

  • Total issues resolved: 0
  • Total pull requests resolved: 6
  • Total contributors: 5

Test Suite

Bugfix

Static Analysis

Documentation

Code Style

... (truncated)

Upgrade guide

Sourced from doctrine/dbal's upgrade guide.

Note about upgrading: Doctrine uses static and runtime mechanisms to raise awareness about deprecated code.

  • Use of @deprecated docblock that is detected by IDEs (like PHPStorm) or Static Analysis tools (like Psalm, phpstan)
  • Use of our low-overhead runtime deprecation API, details: https://github.com/doctrine/deprecations/

Upgrade to 4.0

BC BREAK: removed AbstractMySQLPlatform methods.

  1. getColumnTypeSQLSnippets(),
  2. getDatabaseNameSQL().

BC BREAK: Removed lock-related AbstractPlatform methods

The methods AbstractPlatform::getReadLockSQL(), ::getWriteLockSQL() and ::getForUpdateSQL() have been removed Use QueryBuilder::forUpdate() as a replacement for the latter.

BC BREAK: BIGINT values are cast to int if possible

BigIntType casts values retrieved from the database to int if they're inside the integer range of PHP. Previously, those values were always cast to string.

BC BREAK: Stricter DateTime types

The following types don't accept or return DateTimeImmutable instances anymore:

  • DateTimeType
  • DateTimeTzType
  • DateType
  • TimeType
  • VarDateTimeType

As a consequence, the following type classes don't extend their mutable counterparts anymore:

  • DateTimeImmutableType
  • DateTimeTzImmutableType
  • DateImmutableType
  • TimeImmutableType
  • VarDateTimeImmutableType

BC BREAK: Remove legacy execute and fetch methods.

The following methods have been removed:

  • Result::fetch()
  • Result::fetchAll()

... (truncated)

Commits

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.8.3 to 4.0.4.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Upgrade guide](https://github.com/doctrine/dbal/blob/4.0.x/UPGRADE.md)
- [Commits](doctrine/dbal@3.8.3...4.0.4)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@susnux
Copy link
Contributor

susnux commented Jun 25, 2024

For us relevant:

  • Requires PHP 8.1+ (we currently support 8.0+)
  • Requires MariaDB 10.5+ (we currently support 10.3 and 10.5+)

@nickvergessen
Copy link
Member

Requires PHP 8.1+ (we currently support 8.0+)

Not for master:
https://github.com/nextcloud/server/blob/master/lib/versioncheck.php#L11

Requires MariaDB 10.5+

So we will have to drop that one and just make sure people are aware up front.

@nickvergessen
Copy link
Member

https://github.com/doctrine/dbal/blob/4.0.x/UPGRADE.md

Has some more presents:

  • The Doctrine\DBAL\Exception and the Doctrine\DBAL\Schema\SchemaException classes are now interfaces.
  • The following Table methods have been removed:
    • changeColumn(),
    • getForeignKeyColumns(),
    • getPrimaryKeyColumns(),
    • hasPrimaryKey()
  • removed wrapper- and driver-level Statement::bindParam() methods.
  • renamed SQLite platform classes (should try to add abstraction on our end)
  • The number of affected rows is returned as int|string
  • Dropped support for collate option for MySQL
  • Removed Connection::getWrappedConnection()
  • Statement::execute() marked private.
  • Removed QueryBuilder methods and contstants.
  • Removed ExpressionBuilder methods: The andX() and orX() …
    • (our abstraction might save us from breaking apps)
  • Changes in the QueryBuilder API
    • (our abstraction might save us from breaking apps)
  • Changes in the Doctrine\DBAL\Schema API: Column precision no longer defaults to 10. The default value is NULL.
  • Connection::connect(), ::bindValue() and ::execute() no longer return a boolean value. They will throw an exception in case of failure.

@nickvergessen
Copy link
Member

/composer-update

Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Copy link
Contributor Author

dependabot bot commented on behalf of github Aug 10, 2024

A newer version of doctrine/dbal exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants