镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Breaking changes in Nextcloud 21 #1372

Closed

Description

@ChristophWurst

Hi there,

I found that your app uses some classes of Nextcloud's third party libraries. Since an upgrade of those for php8 compatibility, your app will have to be adjusted as well. See https://docs.nextcloud.com/server/latest/developer_manual/app_publishing_maintenance/upgrade-guide.html#doctrine-dbal for details. Your app uses Doctrine\DBAL\Types\Type which lost the old contants: https://github.com/doctrine/dbal/blob/3.0.x/UPGRADE.md#deprecated-type-constants.

Cheers

Activity

  1. ChristophWurst commented on Jan 12, 2021

    @ChristophWurst
    MemberAuthor

    Please note that we just merged a PR with our own constants for the types, so the app can be fully independent of any 3rdparty libraries: nextcloud/server#25089.

  2. marcelklehr commented on Jan 23, 2021

    @marcelklehr
    Member

    Please note that we just merged a PR with our own constants for the types, so the app can be fully independent of any 3rdparty libraries: nextcloud/server#25089.

    Nice. I'm using Doctrine\DBAL\Schema\Table->changeColumn() in one of my migrations, though, and that requires a type instance, obtained with Type::getType():Type (see https://github.com/nextcloud/bookmarks/pull/1387/checks?check_run_id=1754238646)

  3. marcelklehr commented on Jan 23, 2021

    @marcelklehr
    Member

    So, it works now, but I'm still dependent on DBAL's API

  4. ChristophWurst commented on Jan 25, 2021

    @ChristophWurst
    MemberAuthor

    So, it works now, but I'm still dependent on DBAL's API

    Because the app supports a wider range of Nextcloud releases? That is a problem right now. Once the minimum version is 21 you can use the new constants safely.

  5. marcelklehr commented on Jan 25, 2021

    @marcelklehr
    Member

    No, because I need to use DBAL\Types::getType() for Doctrine\DBAL\Schema\Table->changeColumn

  6. ChristophWurst commented on Jan 25, 2021

    @ChristophWurst
    MemberAuthor

    Right. So the Schema and a few other types are still from Doctrine directly. We have to clean that up and replace with our own abstraction. You are totally right that you will need the Doctrine stuff for this right now.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions