diff --git a/.github/workflows/dub.yml b/.github/workflows/dub.yml index c089132..c4c8986 100644 --- a/.github/workflows/dub.yml +++ b/.github/workflows/dub.yml @@ -22,7 +22,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-latest, windows-latest, macos-latest ] + os: [ ubuntu-latest, windows-latest, macos-14 ] compiler: - dmd-latest - ldc-latest @@ -30,6 +30,16 @@ jobs: - dmd-2.098.1 - ldc-1.31.0 # eq to dmd v2.101.2 - ldc-1.28.1 # eq to dmd v2.098.1 + include: + - compiler: ldc-latest + os: macos-latest + exclude: + - compiler: dmd-latest + os: macos-14 + - compiler: dmd-2.101.2 + os: macos-14 + - compiler: dmd-2.098.1 + os: macos-14 steps: - uses: actions/checkout@v3 @@ -38,16 +48,17 @@ jobs: with: compiler: ${{ matrix.compiler }} - - name: Upgrade dub dependencies - uses: WebFreak001/dub-upgrade@v0.1.1 + # Broken, try without it for now. + # - name: Upgrade dub dependencies + # uses: WebFreak001/dub-upgrade@v0.1.1 - name: Build Library run: dub build --build=release --config=library # cache - - uses: WebFreak001/dub-upgrade@v0.1.1 - if: startsWith(matrix.os, 'windows') - with: { store: true } + # - uses: WebFreak001/dub-upgrade@v0.1.1 + # if: startsWith(matrix.os, 'windows') + # with: { store: true } # Older compiler versions build-older: @@ -92,12 +103,12 @@ jobs: with: compiler: ${{ matrix.compiler }} - - name: Upgrade dub dependencies - uses: WebFreak001/dub-upgrade@v0.1.1 + # - name: Upgrade dub dependencies + # uses: WebFreak001/dub-upgrade@v0.1.1 - name: Build Library run: dub build --build=release --config=library # cache - - uses: WebFreak001/dub-upgrade@v0.1.1 - with: { store: true } + # - uses: WebFreak001/dub-upgrade@v0.1.1 + # with: { store: true } diff --git a/dub.sdl b/dub.sdl index b691ab1..447c3d7 100644 --- a/dub.sdl +++ b/dub.sdl @@ -13,6 +13,7 @@ subPackage "./integration-tests" subPackage "./integration-tests-vibe" subPackage "./integration-tests-phobos" subPackage "./testconn" +dflags "-preview=dip1000" configuration "library" { } diff --git a/source/mysql/protocol/comms.d b/source/mysql/protocol/comms.d index ec2a3ea..0238926 100644 --- a/source/mysql/protocol/comms.d +++ b/source/mysql/protocol/comms.d @@ -689,7 +689,7 @@ package(mysql) ubyte[] getPacket(Connection conn) return packet; } -package(mysql) void send(MySQLSocket _socket, const(ubyte)[] packet) +package(mysql) void send(MySQLSocket _socket, scope const(ubyte)[] packet) in { assert(packet.length > 4); // at least 1 byte more than header diff --git a/source/mysql/protocol/sockets.d b/source/mysql/protocol/sockets.d index a582fc9..cbe2a78 100644 --- a/source/mysql/protocol/sockets.d +++ b/source/mysql/protocol/sockets.d @@ -39,7 +39,7 @@ interface MySQLSocket @safe: void close(); @property bool connected() const; - void read(ubyte[] dst); + void read(scope ubyte[] dst); void write(const scope ubyte[] bytes); void acquire(); @@ -78,7 +78,7 @@ class MySQLSocketPhobos : MySQLSocket return socket.isAlive; } - void read(ubyte[] dst) + void read(scope ubyte[] dst) { // Note: I'm a little uncomfortable with this line as it doesn't // (and can't) update Connection._open. Not sure what can be done, @@ -138,7 +138,7 @@ version(Have_vibe_core) { return socket.connected; } - void read(ubyte[] dst) + void read(scope ubyte[] dst) { socket.read(dst); }