Skip to content

Mir-algorithm fails to build #38

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

Open
vabenil opened this issue Feb 22, 2025 · 11 comments
Open

Mir-algorithm fails to build #38

vabenil opened this issue Feb 22, 2025 · 11 comments

Comments

@vabenil
Copy link

vabenil commented Feb 22, 2025

Redub version: 1.20.3
dmd version: 2.109.1
dub version: 1.38.1

Any project with mir-algorithm as a dependency fails to build, dub builds mir projects just fine.

I have been having this problem for a couple of months already, so it's unrelated to the latest realese.

Steps to reproduce

create a project and set the dub.json to:

{
	"dependencies": {
		"mir-algorithm": "*"
	},
	"name": "example"
}

Then do:

$ redub

You will get something like this:

[ vabenil@arch-pc: D/tests/2 ]$ redub
Dependencies resolved - 0 ms "debug" using /usr/bin/dmd v2.109.1 [linux-x86_64] - full parallel
Up-to-Date: mir-core [library];
Will Build: 2; mir-algorithm [default];
Built: 2 - 527ms
Build Failure: 'mir-algorithm 3.22.3 [default]'
        Redub v1.20.3
        dmd 2.109.1
        Failed with flags:

        /usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' '-version=Have_mir_algorithm' -I/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source -I/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/graph/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/graph/tarjan.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/type_info.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/format.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/small_string.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algorithm/setops.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algorithm/iteration.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/base64.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/mod.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/linear.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/polynomial.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/generic.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/utility.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/constant.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/extrapolate.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/spline.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/context.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/slim_ptr.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/array.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/ptr.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/stat.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/sum.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/numeric.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/normal.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/hermite.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/expdigamma.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/field.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/allocation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/dynamic.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/iterator.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/sorting.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/filling.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/ndfield.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/concatenation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/chunks.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/topology.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/slice.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/mutation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/fuse.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/connect/cpython.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/traits.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/internal.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/date.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/appender.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/array/allocation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/polynomial.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/annotated.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/numeric.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/parse.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/test.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/stdio.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/combinatorics/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ediff.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/container/binaryheap.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/series.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/range.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/format_impl.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/cpp_export/numeric.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/serde.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/internal/ldc_simd.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/string_map.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/lob.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/small_array.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/timestamp.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/ion.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/transform.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/json.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/decimal.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/fixed.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/fp.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/low_level_view.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/kernel.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/phobos_kernel.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/parse.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/dec2float_table.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/dec2float.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/ryu/table.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/ryu/generic_128.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/integer.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/string.d -lib '-of=/home/vabenil/.dub/.redub/7B422004A01006B4/83CCC8CC53C8F507/libmir-algorithm.a'
Failed after 2140ms with message
        /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1474): Error: `pure` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call impure function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1474): Error: `@nogc` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call non-@nogc function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1474): Error: function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals` is not `nothrow`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1429): Error: function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` may throw but is marked as `nothrow`
/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/annotated.d(69): Error: template instance `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!()` error instantiating
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/meta.d(683):        instantiated from here: `U!(Algebraic!(Ion_))`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(858):        12 recursive instantiations from here: `ReplaceTypeUnless!(isVariant, This, Algebraic!(Ion_), typeof(null), bool, long, double, string, Blob, Clob, Timestamp, This[], StringMap!(This), Annotated!(This))`
/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/ion.d(60):        instantiated from here: `Algebraic!(Ion_)`

Warning: If you think this is a bug on redub, do test with dub, if it works, do file an issue at https://github.com/MrcSnm/redub/issues/new/choose
Build Failure
[ vabenil@arch-pc: D/tests/2 ]$ ^C
[ vabenil@arch-pc: D/tests/2 ]$ dub --verison
       Error Unknown command line flags: --verison
             Type "dub run -h" to get a list of all supported flags.
[ vabenil@arch-pc: D/tests/2 ]$ dub --version
DUB version 1.38.1, built on Jul  7 2024

Feel free to ask for extra details

@MrcSnm
Copy link
Owner

MrcSnm commented Feb 22, 2025

I will certailny need more details, this builds fine forme, though I`m on windows

@vabenil
Copy link
Author

vabenil commented Feb 23, 2025

I'm using Arch linux kernel 6.12.12-1-lts.

Haven't tested on Windows.

For a better test I deleted my ~/.dub directory to start fresh, and compiled the default program provided by dub init with redub -f -v (I also have no dub.selection.json)

{
	"authors": [
		"Vabenil"
	],
	"copyright": "Copyright © 2025, Vabenil",
	"dependencies": {
		"mir-algorithm": "~>3.22.3"
	},
	"description": "Test",
	"license": "MIT",
	"name": "bl_test"
}

This was the output of the command: Beware no linewrapping!

[ vabenil@arch-pc: D/tests/bl_test ]$ redub -f -v
Parsing /home/vabenil/MEGA/sync/D/tests/bl_test/dub.json at /home/vabenil/MEGA/sync/D/tests/bl_test with : -c
Added project bl_test to memory cache.
Getting package mir-algorithm:@~>3.22.3
Fetching Package: mir-algorithm  version ~>3.22.3
Parsing /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/dub.json at /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm with : -c
Getting package mir-core:@>=1.6.0
Fetching Package: mir-core  version >=1.6.0
Parsing /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/dub.json at /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core with : -c
Fetch Success: mir-algorithm v3.22.3 required by bl_test
Fetch Success: mir-core v1.7.1 required by mir-algorithm
Dependencies resolved - 1822 ms "debug" using /usr/bin/dmd v2.109.1 [linux-x86_64] - full parallel
Will Build: bl_test; mir-algorithm [default]; mir-core;
Built: bl_test - 244ms

       /usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' '-version=Have_mir_algorithm' '-version=Have_bl_test' -I/home/vabenil/MEGA/sync/D/tests/bl_test/source -I/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source -I/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source /home/vabenil/MEGA/sync/D/tests/bl_test/source/app.d -c '-of=/home/vabenil/.dub/.redub/8960FBB75F103957/8960FBB75F103957/bl_test.o'

Built: mir-core 1.7.1 - 241ms

       /usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' -I/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/complex/math.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/complex/package.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/functional.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/string_table.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/conv.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/ieee.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/package.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/constant.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/common.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/primitives.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/bitop.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/enums.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/utility.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/checkedint.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/reflection.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/bitmanip.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/qualifier.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/meta.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/utility.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/memory.d /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/exception.d -lib '-of=/home/vabenil/.dub/.redub/8960FBB75F103957/CD5BCF2AC3649BD3/libmir-core.a'

Build Failure: 'mir-algorithm 3.22.3 [default]'
       Redub v1.20.3
       dmd 2.109.1
       Failed with flags:

       /usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' '-version=Have_mir_algorithm' -I/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source -I/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/graph/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/graph/tarjan.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/type_info.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/format.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/small_string.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algorithm/setops.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algorithm/iteration.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/base64.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/mod.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/linear.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/polynomial.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/generic.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/utility.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/constant.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/extrapolate.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/spline.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/context.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/slim_ptr.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/array.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/ptr.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/stat.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/sum.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/numeric.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/normal.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/hermite.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/expdigamma.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/field.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/allocation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/dynamic.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/iterator.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/sorting.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/filling.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/ndfield.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/concatenation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/chunks.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/topology.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/slice.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/mutation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/fuse.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/connect/cpython.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/traits.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/internal.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/date.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/appender.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/array/allocation.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/polynomial.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/annotated.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/numeric.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/parse.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/test.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/stdio.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/combinatorics/package.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ediff.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/container/binaryheap.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/series.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/range.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/format_impl.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/cpp_export/numeric.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/serde.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/internal/ldc_simd.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/string_map.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/lob.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/small_array.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/timestamp.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/ion.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/transform.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/json.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/decimal.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/fixed.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/fp.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/low_level_view.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/kernel.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/phobos_kernel.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/parse.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/dec2float_table.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/dec2float.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/ryu/table.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/ryu/generic_128.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/integer.d /home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/string.d -lib '-of=/home/vabenil/.dub/.redub/8960FBB75F103957/83CCC8CC53C8F507/libmir-algorithm.a'
Failed after 2186ms with message
       /home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1474): Error: `pure` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call impure function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1474): Error: `@nogc` function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` cannot call non-@nogc function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1474): Error: function `mir.annotated.U!(Algebraic!(Ion_)).Annotated.opEquals` is not `nothrow`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(1429): Error: function `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!().opEquals` may throw but is marked as `nothrow`
/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/annotated.d(69): Error: template instance `mir.algebraic.Algebraic!(Ion_).Algebraic.opEquals!()` error instantiating
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/meta.d(683):        instantiated from here: `U!(Algebraic!(Ion_))`
/home/vabenil/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d(858):        12 recursive instantiations from here: `ReplaceTypeUnless!(isVariant, This, Algebraic!(Ion_), typeof(null), bool, long, double, string, Blob, Clob, Timestamp, This[], StringMap!(This), Annotated!(This))`
/home/vabenil/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/ion.d(60):        instantiated from here: `Algebraic!(Ion_)`

Warning: If you think this is a bug on redub, do test with dub, if it works, do file an issue at https://github.com/MrcSnm/redub/issues/new/choose
Build Failure

@vabenil
Copy link
Author

vabenil commented Feb 23, 2025

I tested it in an Ubuntu 24.04 instance in AWS, using redub-ubuntu-latest-x86_64 from the release page and the build failed exactly the same way

@MrcSnm
Copy link
Owner

MrcSnm commented Feb 23, 2025

I'll test it later today against linux

@MrcSnm
Copy link
Owner

MrcSnm commented Feb 24, 2025

I have just tested on Linux and it still builds fine for me:

hipreme@LinuxMint:~/test/redubug$ redub -f -v --compiler=dmd
Parsing /home/hipreme/test/redubug/dub.json at /home/hipreme/test/redubug with : -c 
Added project redubug to memory cache.
Getting package mir-algorithm:@~>3.22.3
Parsing /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/dub.json at /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm with : -c 
Getting package mir-core:@>=1.6.0
Parsing /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/dub.json at /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core with : -c 
Dependencies resolved - 0 ms "debug" using /usr/bin/dmd v2.109.1 [linux-x86_64] - full parallel
Will Build: redubug; mir-algorithm [default]; mir-core; 
Built: redubug - 59ms

	/usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' '-version=Have_mir_algorithm' '-version=Have_redubug' -I/home/hipreme/test/redubug/source -I/home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source -I/home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source /home/hipreme/test/redubug/source/app.d -c '-of=/home/hipreme/.dub/.redub/7F5D97366D582EA9/7F5D97366D582EA9/redubug.o' 

Built: mir-core 1.7.1 - 65ms

	/usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' -I/home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/ieee.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/package.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/constant.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/math/common.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/primitives.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/complex/package.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/complex/math.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/meta.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/memory.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/internal/utility.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/qualifier.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/exception.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/checkedint.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/bitop.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/functional.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/enums.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/utility.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/bitmanip.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/reflection.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/conv.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/string_table.d /home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source/mir/algebraic.d -lib '-of=/home/hipreme/.dub/.redub/7F5D97366D582EA9/E509B68461E8527A/libmir-core.a' 

Built: mir-algorithm 3.22.3 [default] - 914ms

	/usr/bin/dmd '-color=on' -op -debug -g '-version=Have_mir_core' '-version=Have_mir_algorithm' -I/home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source -I/home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/source /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/string_map.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/ryu/table.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/ryu/generic_128.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/kernel.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/phobos_kernel.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/parse.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/dec2float.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/internal/dec2float_table.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/fixed.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/fp.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/integer.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/low_level_view.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/bignum/decimal.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/numeric.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/expdigamma.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/normal.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/func/hermite.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/stat.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/math/sum.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algorithm/setops.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algorithm/iteration.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/type_info.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/internal/ldc_simd.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/transform.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/json.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/algebraic_alias/ion.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/generic.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/spline.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/extrapolate.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/mod.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/polynomial.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/package.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/linear.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/utility.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/interpolate/constant.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/date.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ediff.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/range.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/cpp_export/numeric.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/polynomial.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/ptr.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/slim_ptr.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/array.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/package.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/rc/context.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/serde.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/parse.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/format.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/appender.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/small_array.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/small_string.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/chunks.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/ndfield.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/iterator.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/filling.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/fuse.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/connect/cpython.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/concatenation.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/internal.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/slice.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/dynamic.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/mutation.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/package.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/topology.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/field.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/traits.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/sorting.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/ndslice/allocation.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/container/binaryheap.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/numeric.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/graph/tarjan.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/graph/package.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/stdio.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/test.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/timestamp.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/combinatorics/package.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/string.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/annotated.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/series.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/array/allocation.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/lob.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/format_impl.d /home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/source/mir/base64.d -lib '-of=/home/hipreme/.dub/.redub/7F5D97366D582EA9/E3E943ED73AB830A/libmir-algorithm.a' 

Linked: redubug - 86ms

	/usr/bin/dmd -of/home/hipreme/.dub/.redub/7F5D97366D582EA9/7F5D97366D582EA9/redubug /home/hipreme/test/redubug/redubug.o -g -L--no-as-needed -L--start-group -L/home/hipreme/.dub/packages/mir-algorithm/3.22.3/mir-algorithm/libmir-algorithm.a -L/home/hipreme/.dub/packages/mir-core/1.7.1/mir-core/libmir-core.a -L--end-group 

Finished redubug - 1002ms - To force a rebuild of up-to-date targets, run again with --force


Maybe you could try posting the dub -f -v --compiler=dmd here too?

@MrcSnm
Copy link
Owner

MrcSnm commented Feb 26, 2025

After some tests, I've noticed: The order of source files matters for mir. This is a known bug that 0xEAB commented on D discord.
The bug is also reproducible with dub by calling dub build --combined.

Further tests allowed me to know that:

Dub specifies files by using dirEntries("*.d", SpanMode.breadth)
Redub specifies files by using dirEntries("*.d", SpanMode.depth).

The main difference is due to depth allocating less memory and thus being faster.

As a workaround, I could suggest a redub flag (--breadth) to solve that issue if it is very important. But, to be fair, that issue should really be solved from the D compiler.

@vabenil
Copy link
Author

vabenil commented Feb 26, 2025

@MrcSnm Hey, regarding your workaround I would personally appreciate it in the case this issue is not easily solvable (if it's a long-term issue that I will have to live with). It generally prevents me from using redub in anything that uses mir after all.

MrcSnm added a commit that referenced this issue Feb 27, 2025
@MrcSnm
Copy link
Owner

MrcSnm commented Feb 27, 2025

@vabenil Take a look on the new version. Try it with redub build --breadth

@MrcSnm
Copy link
Owner

MrcSnm commented Feb 27, 2025

Actually, I don't think I'm able to fix that easily @vabenil .
From what I've seen, dirEntries in D doesn't implement spanmode.breadth correctly, so, the cause might be beyond my understanding right now :(

Update: I've added my own implementation of --breadth , so, you can try

@vabenil
Copy link
Author

vabenil commented Mar 1, 2025

@vabenil Take a look on the new version. Try it with redub build --breadth
Sorry, hadn't had much time to test this until today.

So I tried with the latest git version:

Redub v1.21.3 - A reimagined DUB. Built With LDC v2.110 at Mar  1 2025

and now mir-algorithm compiles fine with --breadth.
Though I noticed that if I fisrt delete my ~/.dub directory and then I run dub build -f, then
after that anytime I call redub build -f --breadth I will get a Build Failure.

@MrcSnm
Copy link
Owner

MrcSnm commented Mar 2, 2025

I have tried building mir with redub --breadth on Windows. I basically got the same error you were getting, while the depth version builds fine. Unfortunately I don't know how much more I could do, unfortunately, even the dir iterator itself is OS dependent and may lead to errors

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

No branches or pull requests

2 participants