Skip to content

updating from 3.1.0 to 3.2.0 is a breaking change #272

Closed
@SingingBush

Description

@SingingBush

I was reading the safe migration guide which states that in 3.2.0 the default modules/packages will pull in the unsafe versions of the API to maintain backwards compatibility.

On updating and doing a build though I got errors:

./../../.dub/packages/mysql-native-3.2.0/mysql-native/source/mysql/impl/prepared.d(156,20): Error: none of the overloads of `opAssign` are callable using argument types `(byte[])`, candidates are:
../../../.dub/packages/taggedalgebraic-0.11.22/taggedalgebraic/source/taggedalgebraic/taggedalgebraic.d(147,7):        `taggedalgebraic.taggedalgebraic.TaggedAlgebraic!(_MYTYPE).TaggedAlgebraic.opAssign(TaggedAlgebraic!(_MYTYPE) other)`
../../../.dub/packages/taggedalgebraic-0.11.22/taggedalgebraic/source/taggedalgebraic/taggedalgebraic.d-mixin-140(149,9):        `taggedalgebraic.taggedalgebraic.TaggedAlgebraic!(_MYTYPE).TaggedAlgebraic.opAssign(ubyte[] value)`
../../../.dub/packages/taggedalgebraic-0.11.22/taggedalgebraic/source/taggedalgebraic/taggedalgebraic.d-mixin-140(165,9):        `taggedalgebraic.taggedalgebraic.TaggedAlgebraic!(_MYTYPE).TaggedAlgebraic.opAssign(const(ubyte)[] value)`
../../../.dub/packages/taggedalgebraic-0.11.22/taggedalgebraic/source/taggedalgebraic/taggedalgebraic.d-mixin-140(181,9):        `taggedalgebraic.taggedalgebraic.TaggedAlgebraic!(_MYTYPE).TaggedAlgebraic.opAssign(typeof(null) value)`
../../../.dub/packages/taggedalgebraic-0.11.22/taggedalgebraic/source/taggedalgebraic/taggedalgebraic.d-mixin-140(197,9):        `taggedalgebraic.taggedalgebraic.TaggedAlgebraic!(_MYTYPE).TaggedAlgebraic.opAssign(bool value)`
../../../.dub/packages/mysql-native-3.2.0/mysql-native/source/mysql/impl/prepared.d(156,20):        ... (34 more, -v to show) ...
../../../.dub/packages/mysql-native-3.2.0/mysql-native/source/mysql/impl/prepared.d(327,15): Error: template instance `mysql.impl.prepared.SafePrepared.setArg!(byte[])` error instantiating
source/ddbc/drivers/mysqlddbc.d(705,38):        instantiated from here: `setArg!(byte[])`

I tried changing all my imports to be the explicit mysql.unsafe.* versions but the error remained the same. For now it seems ddbc will need to stay on 3.1.0

ddbc also uses std.variant everywhere and potentially could do with some work to use @safe code. Not expecting to get time to do that any time soon though

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions