Skip to content
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

Colored output #2268

Merged
merged 42 commits into from
Jul 28, 2022
Merged

Colored output #2268

merged 42 commits into from
Jul 28, 2022

Conversation

veelo
Copy link
Contributor

@veelo veelo commented Jun 13, 2022

Picking up what was started in #1490 and #2124.

@veelo veelo force-pushed the colored-output branch 2 times, most recently from 15925e2 to 8323d5d Compare June 13, 2022 18:14
@veelo veelo marked this pull request as ready for review June 13, 2022 19:19
@veelo
Copy link
Contributor Author

veelo commented Jun 13, 2022

Are there any Mac users with an idea why this line gives a broken pipe error?

@WebFreak001 WebFreak001 self-requested a review June 13, 2022 19:34
This was referenced Jun 13, 2022
Copy link
Member

@WebFreak001 WebFreak001 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this change, I think to stay consistent with colors it's probably a good idea to define some config file where we define some common colors like colorPackageName, colorPath which we use on all package names that are printed.

Additionally for the tags create a TagColor enum which has values set to the corresponding Color enum values, but with more context-specific names such as TagColor.processing, TagColor.execution, TagColor.finished

This way it's easier to adjust the colors later consistently.

In my comments here I suggested to make paths bold, to be consistent with dmd error messages, but because package names are already bold we might want to consider instead underlining or for example doing some additonal coloring with the package names.

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

Do you have time to look into these comments, @veelo?

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

Do you have time to look into these comments, @veelo?

I'll probably be able to make time for these, but not before I know there is a solution for the failing CI on MacOS. If anybody is able to reproduce this on a Mac that would probably help a lot, but even then some questions remain. I assume the color codes are creating a problem in the terminal there, and I am not sure if that points to a problem with the implementation, or a problem with the shell script. Therefore I am hesitant of replacing the shell script with a D script, because that just might hide the issue.

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

Do you have time to look into these comments, @veelo?

I'll probably be able to make time for these, but not before I know there is a solution for the failing CI on MacOS. If anybody is able to reproduce this on a Mac that would probably help a lot, but even then some questions remain.

Ok. What command should be run locally on a Mac to reproduce the issues?

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

Ok. What command should be run locally on a Mac to reproduce the issues?

It is dub/test/timeout.sh that fails:
https://github.com/dlang/dub/runs/6875052884?check_suite_focus=true#step:6:1542

Actually, I now see there are several other failures higher up.

It appears that this is the script that runs all the tests, so try running this:
https://github.com/dlang/dub/blob/master/scripts/ci/travis.sh

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

Ok. What command should be run locally on a Mac to reproduce the issues?

It is dub/test/timeout.sh that fails: https://github.com/dlang/dub/runs/6875052884?check_suite_focus=true#step:6:1542

Actually, I now see there are several other failures higher up.

It appears that this is the script that runs all the tests, so try running this: https://github.com/dlang/dub/blob/master/scripts/ci/travis.sh

For starters, on Ubuntu 22.04 using DMD64 D Compiler v2.100.0,

git clone --recurse-submodules https://github.com/veelo/dub.git
cd dub
DC=dmd scripts/ci/travis.sh

fails as

Linking...
ld: error: undefined symbol: SSL_load_error_strings
>>> referenced by openssl.d:1093 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1093)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_library_init
>>> referenced by openssl.d:1094 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1094)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_num_locks
>>> referenced by openssl.d:1096 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1096)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_id_callback
>>> referenced by openssl.d:1104 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1104)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_locking_callback
>>> referenced by openssl.d:1105 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1105)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_ex_new_index
>>> referenced by openssl.d:1110 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1110)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: ERR_put_error
>>> referenced by openssl.d:1373 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1373)
>>>               openssl_1d3_448.o:(_D4vibe6stream7openssl11setSSLErrorFNbNeAyaQdiQgZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_peer_certificate
>>> referenced by openssl.d:280 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:280)
>>>               openssl_1c4_4f0.o:(_D4vibe6stream7openssl13OpenSSLStream6__ctorMFNfSQBv8internal14interfaceproxy__T14InterfaceProxyTCQDs4coreQDv6StreamZQBlCQEpQEnQEj14OpenSSLContextEQFpQFn3tls14TLSStreamStateAyaSQGtQDb3net14NetworkAddressAQBfZ10__lambda18MFNbNeZPS6deimosQIo4x5097x509_st) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSLv23_client_method
>>> referenced by openssl.d:620 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:620)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:621 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:621)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:625 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:625)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: SSLv23_server_method
>>> referenced by openssl.d:633 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:633)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:634 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:634)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:636 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:636)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: get_rfc3526_prime_2048
>>> referenced by openssl.d:899 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:899)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext11setDHParamsMFNeAyaZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_num
>>> referenced by safestack.d:140 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:140)
>>>               safestack_431_449.o:(_D6deimos7openssl9safestack__T10SKM_sk_numTSQBqQBm6x509v315GENERAL_NAME_stZ__TQBwZQCaFNbPSQDkQDgQDb__T8STACK_OFTQCrZQoZi) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_value
>>> referenced by safestack.d:142 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:142)
>>>               safestack_433_516.o:(_D6deimos7openssl9safestack__T12SKM_sk_valueTSQBsQBo6x509v315GENERAL_NAME_stZ__TQByZQCcFNbPSQDmQDiQDd__T8STACK_OFTQCrZQoiZPQDa) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
dmd failed with exit code 1.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

For starters, on Ubuntu 22.04 using DMD64 D Compiler v2.100.0,

You are probably missing this dependency:
https://github.com/dlang/dub/blob/master/.github/workflows/main.yml#L47

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

For starters, on Ubuntu 22.04 using DMD64 D Compiler v2.100.0,

You are probably missing this dependency: https://github.com/dlang/dub/blob/master/.github/workflows/main.yml#L47

Same behaviour after

sudo apt-get install -y libcurl4-openssl-dev netcat

has been run.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

We've skipped building dub, probably: https://github.com/dlang/dub/blob/master/.github/workflows/main.yml#L66

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

We've skipped building dub, probably: https://github.com/dlang/dub/blob/master/.github/workflows/main.yml#L66

Are you saying that file is missing

        dub build --compiler=${{ env.DC }}

somewhere?

Does

- name: '[POSIX] Test'

apply to Mac?

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

It is not clear to me what step the link errors appear in, as you did not include that information in the output. But if you only ran the tests without building dub first, that can be an issue. So

dub build --compiler=dmd

should be run before running the travis script.

Does
- name: '[POSIX] Test'
apply to Mac?

Yes.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

dub build --compiler=dmd

To be clear this uses the installed dub to build Dub in your checkout.

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

I see, thanks. The command

git clone --recurse-submodules https://github.com/veelo/dub.git
cd dub
dub build --compiler=dmd
DC=dmd scripts/ci/travis.sh

still errors as

cd dub
dub build --compiler=dmd
DC=dmd scripts/ci/travis.sh
Cloning into 'dub'...
remote: Enumerating objects: 18392, done.
remote: Counting objects: 100% (1112/1112), done.
remote: Compressing objects: 100% (653/653), done.
remote: Total 18392 (delta 567), reused 901 (delta 422), pack-reused 17280
Receiving objects: 100% (18392/18392), 6.64 MiB | 9.99 MiB/s, done.
Resolving deltas: 100% (10021/10021), done.
Performing "debug" build using dmd for x86_64.
dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "application"...
Serializing composite type Flags!(BuildRequirement) which has no serializable fields
Serializing composite type Flags!(BuildOption) which has no serializable fields
Linking...

vibe_ver=$(jq -r '.versions | .["vibe-d"]' < dub.selections.json)
dub fetch vibe-d --version=$vibe_ver # get optional dependency
The '--version' parameter was deprecated, use [email protected]. Please update your scripts.
dub test --compiler=${DC} -c library-nonet
Generating test runner configuration 'dub-test-library-nonet' for 'library-nonet' (library).
Running pre-generate commands for vibe-d:tls...
Performing "unittest" build using dmd for x86_64.
diet-ng 1.7.3: target for configuration "library" is up to date.
mir-linux-kernel 1.0.1: target for configuration "library" is up to date.
taggedalgebraic 0.11.17: target for configuration "library" is up to date.
eventcore 0.9.9: target for configuration "epoll" is up to date.
stdx-allocator 2.77.5: target for configuration "library" is up to date.
vibe-core 1.10.1: target for configuration "epoll" is up to date.
vibe-d:utils 0.9.2: target for configuration "library" is up to date.
vibe-d:data 0.9.2: target for configuration "library" is up to date.
vibe-d:crypto 0.9.2: target for configuration "library" is up to date.
vibe-d:stream 0.9.2: target for configuration "library" is up to date.
vibe-d:textfilter 0.9.2: target for configuration "library" is up to date.
vibe-d:inet 0.9.2: target for configuration "library" is up to date.
vibe-d:tls 0.9.2: target for configuration "openssl" is up to date.
vibe-d:http 0.9.2: target for configuration "library" is up to date.
dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "dub-test-library-nonet"...
.dub/code/dub-test-library-nonet-unittest-linux.posix-x86_64-dmd_v2.100.0-F2CBE0BCE10EBBF9F4509CBE543B3AC9/dub_test_root.d(41,15): Deprecation: module `dub.packagesupplier` is deprecated - Please use dub.packagesuppliers
../.dub/packages/vibe-core-1.10.1/vibe-core/source/vibe/core/taskpool.d(30,49): Deprecation: module vibe.core.sync is not accessible here, perhaps add 'static import vibe.core.sync;'
Serializing composite type Flags!(BuildRequirement) which has no serializable fields
Serializing composite type Flags!(BuildOption) which has no serializable fields
/usr/include/dmd/phobos/std/format/internal/write.d(2344,46): Deprecation: function `vibe.core.path.GenericPath!(PosixPathFormat).GenericPath.Segment.toString` is deprecated - Use .name instead.
/usr/include/dmd/phobos/std/format/internal/write.d(2679,21):        instantiated from here: `formatObject!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/write.d(1239,20):        instantiated from here: `formatValueImpl!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/write.d(632,28):        instantiated from here: `formatValue!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/package.d(779,28):        instantiated from here: `formattedWrite!(Appender!string, char, Segment, int)`
source/dub/internal/utils.d(171,41):        instantiated from here: `format!(char, Segment, int)`
source/dub/recipe/sdl.d(565,53): Deprecation: alias `dub.compilers.buildsettings.BuildRequirements` is deprecated - Use `Flags!BuildRequirement` instead
source/dub/recipe/sdl.d(566,48): Deprecation: alias `dub.compilers.buildsettings.BuildOptions` is deprecated - Use `Flags!BuildOption` instead
Linking...
ld: error: undefined symbol: SSL_load_error_strings
>>> referenced by openssl.d:1093 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1093)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_library_init
>>> referenced by openssl.d:1094 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1094)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_num_locks
>>> referenced by openssl.d:1096 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1096)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_id_callback
>>> referenced by openssl.d:1104 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1104)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_locking_callback
>>> referenced by openssl.d:1105 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1105)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_ex_new_index
>>> referenced by openssl.d:1110 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1110)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: ERR_put_error
>>> referenced by openssl.d:1373 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1373)
>>>               openssl_1d3_448.o:(_D4vibe6stream7openssl11setSSLErrorFNbNeAyaQdiQgZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_peer_certificate
>>> referenced by openssl.d:280 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:280)
>>>               openssl_1c4_4f0.o:(_D4vibe6stream7openssl13OpenSSLStream6__ctorMFNfSQBv8internal14interfaceproxy__T14InterfaceProxyTCQDs4coreQDv6StreamZQBlCQEpQEnQEj14OpenSSLContextEQFpQFn3tls14TLSStreamStateAyaSQGtQDb3net14NetworkAddressAQBfZ10__lambda18MFNbNeZPS6deimosQIo4x5097x509_st) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSLv23_client_method
>>> referenced by openssl.d:620 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:620)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:621 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:621)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:625 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:625)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: SSLv23_server_method
>>> referenced by openssl.d:633 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:633)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:634 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:634)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:636 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:636)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: get_rfc3526_prime_2048
>>> referenced by openssl.d:899 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:899)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext11setDHParamsMFNeAyaZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_num
>>> referenced by safestack.d:140 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:140)
>>>               safestack_431_449.o:(_D6deimos7openssl9safestack__T10SKM_sk_numTSQBqQBm6x509v315GENERAL_NAME_stZ__TQBwZQCaFNbPSQDkQDgQDb__T8STACK_OFTQCrZQoZi) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_value
>>> referenced by safestack.d:142 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:142)
>>>               safestack_433_516.o:(_D6deimos7openssl9safestack__T12SKM_sk_valueTSQBsQBo6x509v315GENERAL_NAME_stZ__TQByZQCcFNbPSQDmQDiQDd__T8STACK_OFTQCrZQoiZPQDa) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
dmd failed with exit code 1.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

So dub builds fine, because that step ends at the empty new line in your output.

But you are not in the right branch, make sure to check out the colored-output branch. It should be building dub 1.26.0+commit.158.g56da321b, not dub 1.24.1-beta.1+commit.205.g96d25366.

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

So dub builds fine, because that step ends at the empty new line in your output.

But you are not in the right branch, make sure to check out the colored-output branch. It should be building dub 1.26.0+commit.158.g56da321b, not dub 1.24.1-beta.1+commit.205.g96d25366.

Doh, will adjust. Trying

git clone --recurse-submodules https://github.com/veelo/dub.git
cd dub
git checkout colored-output
dub build --compiler=dmd
DC=dmd scripts/ci/travis.sh

gives

Cloning into 'dub'...
remote: Enumerating objects: 18392, done.
remote: Counting objects: 100% (1112/1112), done.
remote: Compressing objects: 100% (653/653), done.
remote: Total 18392 (delta 567), reused 901 (delta 422), pack-reused 17280
Receiving objects: 100% (18392/18392), 6.64 MiB | 9.99 MiB/s, done.
Resolving deltas: 100% (10021/10021), done.
Performing "debug" build using dmd for x86_64.
dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "application"...
Serializing composite type Flags!(BuildRequirement) which has no serializable fields
Serializing composite type Flags!(BuildOption) which has no serializable fields
Linking...

vibe_ver=$(jq -r '.versions | .["vibe-d"]' < dub.selections.json)
dub fetch vibe-d --version=$vibe_ver # get optional dependency
The '--version' parameter was deprecated, use [email protected]. Please update your scripts.
dub test --compiler=${DC} -c library-nonet
Generating test runner configuration 'dub-test-library-nonet' for 'library-nonet' (library).
Running pre-generate commands for vibe-d:tls...
Performing "unittest" build using dmd for x86_64.
diet-ng 1.7.3: target for configuration "library" is up to date.
mir-linux-kernel 1.0.1: target for configuration "library" is up to date.
taggedalgebraic 0.11.17: target for configuration "library" is up to date.
eventcore 0.9.9: target for configuration "epoll" is up to date.
stdx-allocator 2.77.5: target for configuration "library" is up to date.
vibe-core 1.10.1: target for configuration "epoll" is up to date.
vibe-d:utils 0.9.2: target for configuration "library" is up to date.
vibe-d:data 0.9.2: target for configuration "library" is up to date.
vibe-d:crypto 0.9.2: target for configuration "library" is up to date.
vibe-d:stream 0.9.2: target for configuration "library" is up to date.
vibe-d:textfilter 0.9.2: target for configuration "library" is up to date.
vibe-d:inet 0.9.2: target for configuration "library" is up to date.
vibe-d:tls 0.9.2: target for configuration "openssl" is up to date.
vibe-d:http 0.9.2: target for configuration "library" is up to date.
dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "dub-test-library-nonet"...
.dub/code/dub-test-library-nonet-unittest-linux.posix-x86_64-dmd_v2.100.0-F2CBE0BCE10EBBF9F4509CBE543B3AC9/dub_test_root.d(41,15): Deprecation: module `dub.packagesupplier` is deprecated - Please use dub.packagesuppliers
../.dub/packages/vibe-core-1.10.1/vibe-core/source/vibe/core/taskpool.d(30,49): Deprecation: module vibe.core.sync is not accessible here, perhaps add 'static import vibe.core.sync;'
Serializing composite type Flags!(BuildRequirement) which has no serializable fields
Serializing composite type Flags!(BuildOption) which has no serializable fields
/usr/include/dmd/phobos/std/format/internal/write.d(2344,46): Deprecation: function `vibe.core.path.GenericPath!(PosixPathFormat).GenericPath.Segment.toString` is deprecated - Use .name instead.
/usr/include/dmd/phobos/std/format/internal/write.d(2679,21):        instantiated from here: `formatObject!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/write.d(1239,20):        instantiated from here: `formatValueImpl!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/write.d(632,28):        instantiated from here: `formatValue!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/package.d(779,28):        instantiated from here: `formattedWrite!(Appender!string, char, Segment, int)`
source/dub/internal/utils.d(171,41):        instantiated from here: `format!(char, Segment, int)`
source/dub/recipe/sdl.d(565,53): Deprecation: alias `dub.compilers.buildsettings.BuildRequirements` is deprecated - Use `Flags!BuildRequirement` instead
source/dub/recipe/sdl.d(566,48): Deprecation: alias `dub.compilers.buildsettings.BuildOptions` is deprecated - Use `Flags!BuildOption` instead
Linking...
ld: error: undefined symbol: SSL_load_error_strings
>>> referenced by openssl.d:1093 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1093)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_library_init
>>> referenced by openssl.d:1094 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1094)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_num_locks
>>> referenced by openssl.d:1096 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1096)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_id_callback
>>> referenced by openssl.d:1104 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1104)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_locking_callback
>>> referenced by openssl.d:1105 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1105)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_ex_new_index
>>> referenced by openssl.d:1110 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1110)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: ERR_put_error
>>> referenced by openssl.d:1373 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1373)
>>>               openssl_1d3_448.o:(_D4vibe6stream7openssl11setSSLErrorFNbNeAyaQdiQgZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_peer_certificate
>>> referenced by openssl.d:280 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:280)
>>>               openssl_1c4_4f0.o:(_D4vibe6stream7openssl13OpenSSLStream6__ctorMFNfSQBv8internal14interfaceproxy__T14InterfaceProxyTCQDs4coreQDv6StreamZQBlCQEpQEnQEj14OpenSSLContextEQFpQFn3tls14TLSStreamStateAyaSQGtQDb3net14NetworkAddressAQBfZ10__lambda18MFNbNeZPS6deimosQIo4x5097x509_st) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSLv23_client_method
>>> referenced by openssl.d:620 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:620)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:621 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:621)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:625 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:625)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: SSLv23_server_method
>>> referenced by openssl.d:633 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:633)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:634 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:634)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:636 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:636)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: get_rfc3526_prime_2048
>>> referenced by openssl.d:899 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:899)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext11setDHParamsMFNeAyaZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_num
>>> referenced by safestack.d:140 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:140)
>>>               safestack_431_449.o:(_D6deimos7openssl9safestack__T10SKM_sk_numTSQBqQBm6x509v315GENERAL_NAME_stZ__TQBwZQCaFNbPSQDkQDgQDb__T8STACK_OFTQCrZQoZi) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_value
>>> referenced by safestack.d:142 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:142)
>>>               safestack_433_516.o:(_D6deimos7openssl9safestack__T12SKM_sk_valueTSQBsQBo6x509v315GENERAL_NAME_stZ__TQByZQCcFNbPSQDmQDiQDd__T8STACK_OFTQCrZQoiZPQDa) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
dmd failed with exit code 1.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "application"...

Still not the right version...

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "application"...

Still not the right version...

Are you saying I'm building dub with the wrong version of dub?

Now,

git clone --recurse-submodules https://github.com/veelo/dub.git
cd dub
git checkout colored-output
git branch
dub build --compiler=dmd
DC=dmd scripts/ci/travis.sh

gives

Cloning into 'dub'...
remote: Enumerating objects: 18392, done.        
remote: Counting objects: 100% (1109/1109), done.        
remote: Compressing objects: 100% (652/652), done.        
remote: Total 18392 (delta 565), reused 897 (delta 420), pack-reused 17283        
Receiving objects: 100% (18392/18392), 6.66 MiB | 10.11 MiB/s, done.
Resolving deltas: 100% (10017/10017), done.
Branch 'colored-output' set up to track remote branch 'colored-output' from 'origin'.
Switched to a new branch 'colored-output'
* colored-output
  master
Performing "debug" build using dmd for x86_64.
dub 1.24.1-beta.1+commit.244.g56da321b: building configuration "application"...
Serializing composite type Flags!(BuildRequirement) which has no serializable fields
Serializing composite type Flags!(BuildOption) which has no serializable fields
Linking...

vibe_ver=$(jq -r '.versions | .["vibe-d"]' < dub.selections.json)
dub fetch vibe-d --version=$vibe_ver # get optional dependency
The '--version' parameter was deprecated, use [email protected]. Please update your scripts.
dub test --compiler=${DC} -c library-nonet
Generating test runner configuration 'dub-test-library-nonet' for 'library-nonet' (library).
Running pre-generate commands for vibe-d:tls...
Performing "unittest" build using dmd for x86_64.
diet-ng 1.7.3: target for configuration "library" is up to date.
mir-linux-kernel 1.0.1: target for configuration "library" is up to date.
taggedalgebraic 0.11.17: target for configuration "library" is up to date.
eventcore 0.9.9: target for configuration "epoll" is up to date.
stdx-allocator 2.77.5: target for configuration "library" is up to date.
vibe-core 1.10.1: target for configuration "epoll" is up to date.
vibe-d:utils 0.9.2: target for configuration "library" is up to date.
vibe-d:data 0.9.2: target for configuration "library" is up to date.
vibe-d:crypto 0.9.2: target for configuration "library" is up to date.
vibe-d:stream 0.9.2: target for configuration "library" is up to date.
vibe-d:textfilter 0.9.2: target for configuration "library" is up to date.
vibe-d:inet 0.9.2: target for configuration "library" is up to date.
vibe-d:tls 0.9.2: target for configuration "openssl" is up to date.
vibe-d:http 0.9.2: target for configuration "library" is up to date.
dub 1.24.1-beta.1+commit.244.g56da321b: building configuration "dub-test-library-nonet"...
.dub/code/dub-test-library-nonet-unittest-linux.posix-x86_64-dmd_v2.100.0-8FEC2B4955A1937D69FD08EE402A0D2B/dub_test_root.d(44,15): Deprecation: module `dub.packagesupplier` is deprecated - Please use dub.packagesuppliers
../.dub/packages/vibe-core-1.10.1/vibe-core/source/vibe/core/taskpool.d(30,49): Deprecation: module vibe.core.sync is not accessible here, perhaps add 'static import vibe.core.sync;'
Serializing composite type Flags!(BuildRequirement) which has no serializable fields
Serializing composite type Flags!(BuildOption) which has no serializable fields
/usr/include/dmd/phobos/std/format/internal/write.d(2344,46): Deprecation: function `vibe.core.path.GenericPath!(PosixPathFormat).GenericPath.Segment.toString` is deprecated - Use .name instead.
/usr/include/dmd/phobos/std/format/internal/write.d(2679,21):        instantiated from here: `formatObject!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/write.d(1239,20):        instantiated from here: `formatValueImpl!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/write.d(632,28):        instantiated from here: `formatValue!(Appender!string, Segment, char)`
/usr/include/dmd/phobos/std/format/package.d(779,28):        instantiated from here: `formattedWrite!(Appender!string, char, Segment, int)`
source/dub/internal/utils.d(171,41):        instantiated from here: `format!(char, Segment, int)`
source/dub/recipe/sdl.d(565,53): Deprecation: alias `dub.compilers.buildsettings.BuildRequirements` is deprecated - Use `Flags!BuildRequirement` instead
source/dub/recipe/sdl.d(566,48): Deprecation: alias `dub.compilers.buildsettings.BuildOptions` is deprecated - Use `Flags!BuildOption` instead
Linking...
ld: error: undefined symbol: SSL_load_error_strings
>>> referenced by openssl.d:1093 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1093)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_library_init
>>> referenced by openssl.d:1094 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1094)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_num_locks
>>> referenced by openssl.d:1096 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1096)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_id_callback
>>> referenced by openssl.d:1104 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1104)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: CRYPTO_set_locking_callback
>>> referenced by openssl.d:1105 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1105)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_ex_new_index
>>> referenced by openssl.d:1110 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1110)
>>>               openssl.o:(_D4vibe6stream7openssl26_sharedStaticCtor_L1090_C1FZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: ERR_put_error
>>> referenced by openssl.d:1373 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:1373)
>>>               openssl_1d3_448.o:(_D4vibe6stream7openssl11setSSLErrorFNbNeAyaQdiQgZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSL_get_peer_certificate
>>> referenced by openssl.d:280 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:280)
>>>               openssl_1c4_4f0.o:(_D4vibe6stream7openssl13OpenSSLStream6__ctorMFNfSQBv8internal14interfaceproxy__T14InterfaceProxyTCQDs4coreQDv6StreamZQBlCQEpQEnQEj14OpenSSLContextEQFpQFn3tls14TLSStreamStateAyaSQGtQDb3net14NetworkAddressAQBfZ10__lambda18MFNbNeZPS6deimosQIo4x5097x509_st) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: SSLv23_client_method
>>> referenced by openssl.d:620 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:620)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:621 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:621)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:625 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:625)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: SSLv23_server_method
>>> referenced by openssl.d:633 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:633)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:634 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:634)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced by openssl.d:636 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:636)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfEQBwQBu3tls14TLSContextKindEQCxQCvQBb10TLSVersionZ9__lambda7MFNbNeZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
>>> referenced 1 more times

ld: error: undefined symbol: get_rfc3526_prime_2048
>>> referenced by openssl.d:899 (../.dub/packages/vibe-d-0.9.2/vibe-d/tls/vibe/stream/openssl.d:899)
>>>               openssl_1c7_569.o:(_D4vibe6stream7openssl14OpenSSLContext11setDHParamsMFNeAyaZv) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_num
>>> referenced by safestack.d:140 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:140)
>>>               safestack_431_449.o:(_D6deimos7openssl9safestack__T10SKM_sk_numTSQBqQBm6x509v315GENERAL_NAME_stZ__TQBwZQCaFNbPSQDkQDgQDb__T8STACK_OFTQCrZQoZi) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a

ld: error: undefined symbol: sk_value
>>> referenced by safestack.d:142 (../.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:142)
>>>               safestack_433_516.o:(_D6deimos7openssl9safestack__T12SKM_sk_valueTSQBsQBo6x509v315GENERAL_NAME_stZ__TQByZQCcFNbPSQDmQDiQDd__T8STACK_OFTQCrZQoiZPQDa) in archive ../.dub/packages/vibe-d-0.9.2/vibe-d/tls/.dub/build/openssl-unittest-linux.posix-x86_64-dmd_v2.100.0-B3A47C3D5193A9E5485F241CFD2170D7/libvibe-d_tls.a
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
dmd failed with exit code 1.

.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

dub 1.24.1-beta.1+commit.205.g96d25366: building configuration "application"...

Still not the right version...

Are you saying I'm building dub with the wrong version of dub?

Not the correct branch.

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

If you checked out the colored-output branch correctly, it would be building 1.26.0+commit.158.g56da321b, not dub 1.24.1-beta.1+commit.205.g96d25366. Unless I am completely mistaken.

@nordlow
Copy link
Contributor

nordlow commented Jul 15, 2022

If you checked out the colored-output branch correctly, it would be building 1.26.0+commit.158.g56da321b, not dub 1.24.1-beta.1+commit.205.g96d25366. Unless I am completely mistaken.

I am on the right branch. I don't understand.

Isn't

1.24.1-beta.1+commit.205.g96d25366

the dub version that is used to build dub?

@veelo
Copy link
Contributor Author

veelo commented Jul 15, 2022

Very strange.

I get this (on Windows):

D:\SARC\dlang\dub>git branch
  auto_compiler
  build-path
* colored-output
  fix_ci
  issue2241-lint-deprecation
  master

D:\SARC\dlang\dub>where dub
C:\D\dmd2\windows\bin\dub.exe
C:\D\LDC_1.28\bin\dub.exe
C:\D\LDC_1.27\bin\dub.exe

D:\SARC\dlang\dub>dub --version
DUB version 1.27.0, built on Dec 19 2021

D:\SARC\dlang\dub>dub build
Performing "debug" build using C:\D\dmd2\windows\bin\dmd.exe for x86_64.
dub 1.26.0+commit.158.g56da321b: target for configuration "application" is up to date.
To force a rebuild of up-to-date targets, run again with --force.

Isn't

1.24.1-beta.1+commit.205.g96d25366

the dub version that is used to build dub?

That is the version currently being built.

gdelazzari and others added 12 commits July 28, 2022 20:47
The test was susceptible to interference from other tests, because it
assumed the 1-exec-simple project was clean, which may be not. The
reason that made the test work until now was that it happened to execute
before other tests that use the same project.

Now it ensures the project is clean before running.

This commit is part of PR dlang#1490 because it was needed in order to make
the new colored-output test pass (which was interfering with this one).
(the .gitignore should be updated for people that runs tests locally...)
@veelo
Copy link
Contributor Author

veelo commented Jul 28, 2022

This PR has passed 60 commits, which makes rebasing time consuming. I have done that three or four times now. Can we give this merge priority please? Thanks!

@veelo veelo requested a review from WebFreak001 July 28, 2022 19:35
@WebFreak001
Copy link
Member

WebFreak001 commented Jul 28, 2022

few things I just found while trying this out:

  • dub list and dub list-overrides now has a lot of whitespace to the left - I think this one should be fixed
  • dub search is not colored/bolded (can be fixed in a separate PR)
  • some single-line error messages look a little confusing with the extra whitespace, such as running dub convert --format=sdl twice (can be fixed in a separate PR)
  • dub lint dscanner output is not colored / does not follow dub output (should be done in a separate PR)
  • dub dustmite does not have any coloring (can be fixed in a separate PR)

@veelo do you want to fix the dub list thing before merging?

@veelo
Copy link
Contributor Author

veelo commented Jul 28, 2022

@veelo do you want to fix the dub list thing before merging?

I'll try to look into that tomorrow.

@WebFreak001
Copy link
Member

ok might as well get this in now and then get feedback from users

@WebFreak001 WebFreak001 merged commit 17d8c94 into dlang:master Jul 28, 2022
@WebFreak001 WebFreak001 mentioned this pull request Jul 28, 2022
6 tasks
@Geod24
Copy link
Member

Geod24 commented Jul 29, 2022

Next release is going to be 🔥

@veelo
Copy link
Contributor Author

veelo commented Jul 29, 2022

Thanks guys, glad to get this in!

@kinke
Copy link
Contributor

kinke commented Jul 29, 2022

Does the --colors=on also propagate to the compiler invocations? -color=on for DMD, -enable-color for LDC. That would finally yield some colored compiler output for our CI logs...

@veelo
Copy link
Contributor Author

veelo commented Jul 29, 2022

Not sure, I cannot remember seeing that implemented. It's a good idea!

@Geod24 Geod24 mentioned this pull request Aug 6, 2022
@nordlow
Copy link
Contributor

nordlow commented Aug 14, 2022

Does the --colors=on also propagate to the compiler invocations? -color=on for DMD, -enable-color for LDC. That would finally yield some colored compiler output for our CI logs...

Is anybody up for implementing this forwarding of flags? @Geod24? Or shall I?

Update: I added #2382.

@veelo veelo deleted the colored-output branch August 15, 2022 09:11
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

Successfully merging this pull request may close these issues.

7 participants