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

[ci] print out the dependencies that were unmet #468

Merged
merged 3 commits into from
Mar 30, 2022

Conversation

strega-nil-ms
Copy link
Contributor

@strega-nil-ms strega-nil-ms commented Mar 29, 2022

This is important because we have Very Weird Errors where, for example, ffmpeg fails to install with CASCADED_DUE_TO_MISSING_DEPENDENCIES, despite all of ffmpeg's dependencies seeming to be successfully installed.

This makes the results look like:

Computing installation plan...
The following packages will be built and installed:
  * port1[core]:arm64-osx -> 0 -- /Users/nimazzuc/projects/vcpkg-tool/overlays/port1
    port2[core]:arm64-osx -> 0 -- /Users/nimazzuc/projects/vcpkg-tool/overlays/port2
Additional packages (*) will be modified to complete this operation.
Detecting compiler hash for triplet arm64-osx...
Restored 0 packages from /Users/nimazzuc/.cache/vcpkg/archives in 13.08 us. Use --debug to see more details.
Starting package 1/2: port1:arm64-osx
Building package port1[core]:arm64-osx...
-- Using community triplet arm64-osx. This triplet configuration is not guaranteed to succeed.
-- [COMMUNITY] Loading triplet configuration from: /Users/nimazzuc/projects/vcpkg/triplets/community/arm64-osx.cmake
-- Installing port from location: /Users/nimazzuc/projects/vcpkg-tool/overlays/port1
CMake Error at /Users/nimazzuc/projects/vcpkg-tool/overlays/port1/portfile.cmake:1 (message):
  Hi
Call Stack (most recent call first):
  scripts/ports.cmake:145 (include)


error: building package port1:arm64-osx failed with: BUILD_FAILED
Elapsed time for package port1:arm64-osx: 25.72 ms
Starting package 2/2: port2:arm64-osx
Building package port2[core]:arm64-osx...
error: building package port2:arm64-osx failed with: CASCADED_DUE_TO_MISSING_DEPENDENCIES
due to the following missing dependencies:
    port1[core]:arm64-osx
Elapsed time for package port2:arm64-osx: 30.04 us

Total elapsed time: 2.463 s

RESULTS
    port1:arm64-osx: BUILD_FAILED: 25.72 ms
    port2:arm64-osx: CASCADED_DUE_TO_MISSING_DEPENDENCIES: 30.04 us

SUMMARY FOR arm64-osx
    SUCCEEDED: 0
    BUILD_FAILED: 1
    POST_BUILD_CHECKS_FAILED: 0
    FILE_CONFLICTS: 0
    CASCADED_DUE_TO_MISSING_DEPENDENCIES: 1
    EXCLUDED: 0
    CACHE_MISSING: 0
    DOWNLOADED: 0

@Neumann-A
Copy link
Contributor

CI builds:
ffmpeg[all,all-gpl,all-nonfree,aom,ass,avcodec,avdevice,avfilter,avformat,avisynthplus,avresample,bzip2,core,dav1d,fdk-aac,fontconfig,freetype,fribidi,gpl,iconv,ilbc,lzma,modplug,mp3lame,nonfree,nvcodec,opencl,opengl,openh264,openjpeg,openssl,opus,postproc,sdl2,snappy,soxr,speex,ssh,swresample,swscale,tensorflow,tesseract,theora,vorbis,vpx,webp,x264,x265,xml2,zlib]
which depends on tensorflow but CI baseline skips tensorflow.

src/vcpkg/build.cpp Outdated Show resolved Hide resolved
src/vcpkg/build.cpp Outdated Show resolved Hide resolved
DECLARE_AND_REGISTER_MESSAGE(BuildingPackageFailed,
(msg::spec, msg::build_result),
"",
"building package {spec} failed with: {build_result}");
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
"building package {spec} failed with: {build_result}");
"building {spec} failed with: {build_result}");

As an aside, I think "package foo" can always be better replaced with just "foo". I know this is a change from the status quo so feel free to say "that's another PR Bill"

@@ -55,10 +55,13 @@ namespace vcpkg
m_data.push_back('\n');
return *this;
}
LocalizedString& append_indent()
LocalizedString& append_indent(int indent = 1)
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
LocalizedString& append_indent(int indent = 1)
LocalizedString& append_indent(size_t indent = 1)

Comment on lines +60 to +64
static const StringLiteral INDENT = " ";
for (int i = 0; i < indent; ++i)
{
m_data.append(INDENT.data(), INDENT.size());
}
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
static const StringLiteral INDENT = " ";
for (int i = 0; i < indent; ++i)
{
m_data.append(INDENT.data(), INDENT.size());
}
m_data.append(indent * 4, ' ');

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.

5 participants