From 001f799666b54f275e88ba06ec77a59985ecbfe6 Mon Sep 17 00:00:00 2001 From: WebFreak001 Date: Sat, 10 Dec 2022 10:14:25 +0100 Subject: [PATCH 1/3] enable GDC 12 in alpine CI --- .github/workflows/alpine.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/alpine.yml b/.github/workflows/alpine.yml index e0088f952..0bee57792 100644 --- a/.github/workflows/alpine.yml +++ b/.github/workflows/alpine.yml @@ -21,8 +21,7 @@ jobs: fail-fast: false matrix: include: -# Disabled as we rely on DIP1000 `foreach (scope)` which GDC < 12 doesn't support -# - { dc: gdc, dcpkg: gcc-gdc, dcbin: gdc } + - { dc: gdc, dcpkg: gcc-gdc, dcbin: gdc } - { dc: ldc, dcpkg: ldc, dcbin: ldc2 } - { dc: dmd, dcpkg: dmd, dcbin: dmd } From 3230a251af1c009de08d8f9af92a2d38d22cd93f Mon Sep 17 00:00:00 2001 From: WebFreak001 Date: Sat, 10 Dec 2022 10:19:46 +0100 Subject: [PATCH 2/3] simplify imports in dyaml/node.d Should fix internal compiler error in GDC --- source/dub/internal/dyaml/node.d | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/dub/internal/dyaml/node.d b/source/dub/internal/dyaml/node.d index 45a25b77c..bba358a2c 100644 --- a/source/dub/internal/dyaml/node.d +++ b/source/dub/internal/dyaml/node.d @@ -2598,7 +2598,8 @@ enum castableToNode(T) = (is(T == struct) || is(T == class)) && is(typeof(T.opCa @safe unittest { import dub.internal.dyaml : Loader, Node; - import std : split, to; + import std.string : split; + import std.conv : to; static class MyClass { @@ -2620,7 +2621,8 @@ enum castableToNode(T) = (is(T == struct) || is(T == class)) && is(typeof(T.opCa @safe unittest { import dub.internal.dyaml : Loader, Node; - import std : split, to; + import std.string : split; + import std.conv : to; static class MyClass { From 405a268979407c0e6b8f99cfb57bb2458aaea138 Mon Sep 17 00:00:00 2001 From: WebFreak001 Date: Sat, 10 Dec 2022 10:36:08 +0100 Subject: [PATCH 3/3] exclude dub.packagesupplier from source files It's only importing a file, so it's enough if it's inside the import paths. This makes that module be excluded from the unittests and hides the warning that comes with it being deprecated. --- dub.sdl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dub.sdl b/dub.sdl index 2ae42551d..4daba7d39 100644 --- a/dub.sdl +++ b/dub.sdl @@ -7,6 +7,9 @@ license "MIT" targetPath "bin" +excludedSourceFiles \ + "source/dub/packagesupplier.d" # superseded with dub.packagesuppliers + configuration "application" { targetType "executable" mainSourceFile "source/app.d"