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

Deindex several ports that were =skip. #42222

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

BillyONeal
Copy link
Member

@BillyONeal BillyONeal commented Nov 19, 2024

Removes several ports from the registry that conflict with others and/or are effectively untested in vcpkg's build lab.

[cppmicroservices] This port was added 5 years ago, appears relatively unused, only exists in repology due to vcpkg, and is full of vendored dependencies. It's also broken for most official triplets. Replaces #34552
[ijg-libjpeg, mozjpeg] Leaf ports that we can't test and conflict with libjpeg-turbo, the curated registry's canonical jpeg implementation.
[optional-bare] Conflicts with optional-lite.
[qt5-canvas3d] Removed by qt5 upstream.
[range-v3-vs2015] No longer maintained by upstream, no longer necessary in 2024.
[rbdl-orb] File conflicts with its own dependency.
[sciter] Left support by upstream 2 years ago and has conflicts with other ports.
[signalrclient] "Obsolete" and conflicts with microsoft-signalr
[spdk-*] Several conflicts with other ports.
[c-dbg-macro] Conflicts with [dbg-macro]
[casadi] #41649 appears to have been merged in error, casadi/casadi#3896 needs to land before this can be in the curated registry. Moreover, problems in the portfile were skipped in ci.baseline.txt rather than a supports expression. We are happy to bring this port back as soon as that issue is fixed :) [chromium-base] Not tested anywhere for years.
[libmesh] Conflicts with other ports.
[libpng-apng] Doesn't even exist in the first place.
[libqcow] Release distribution file contains configured sources, while the source code in the repository does not.
[libvmdk] Upstream is gone.
[mecab] Upstream has not been edited in 10 years, combination of =skip and supports clause means not tested.
[shogun] Not tested.

Not deindexed:
[bde] Conflicts with other ports. Warning was given more than a year ago: #32645 . However, #41335 appears to indicate that it works now, so the =skips were removed.
[stxxl] Appears to work on my machine?
[chartdir] Unstable download URLs are now mitigated by asset caching.
[buck-yeh-bux] Works on my machine or already skipped by supports clause. The mariadb backend is broken, but it's entirely broken. We should consider deindexing completely, but @buck-yeh appears to be an active contributor here so I want to give them the heads' up before doing anything with it.
[boringssl, fluidlite, libressl, libmariadb, libmysql] Appears to have a dedicated userbase despite being untestable in CI.
[libxaw] Needed supports expression for ONLY_DYNAMIC_LIBRARY, should have always been a fail not a skip.

ntf-core:arm64-osx=fail
ntf-core:x64-linux=fail
ntf-core:x64-osx=fail
ntf-core:x64-windows-static-md=fail
ntf-core:x64-windows-static=fail
ntf-core:x64-windows=fail
ntf-core:x86-windows=fail

These were previously 'hidden' by bde=skip

Related: #42165

Removes several ports from the registry that conflict with others and/or are effectively untested in vcpkg's build lab.

[cppmicroservices] This port was added 5 years ago, appears relatively unused, only exists in repology due to vcpkg, and is full of vendored dependencies. It's also broken for most official triplets. Replaces microsoft#34552
[ijg-libjpeg, mozjpeg] Leaf ports that we can't test and conflict with libjpeg-turbo, the curated registry's canonical jpeg implementation.
[optional-bare] Conflicted with optional-lite.
[qt5-canvas3d] Removed by qt5 upstream.
[range-v3-vs2015] No longer maintained by upstream, no longer necessary in 2024.
[rbdl-orb] File conflicts with its own dependency.
[sciter] Left support by upstream 2 years ago and has conflicts with other ports.
[signalrclient] "Obsolete" and conflicts with microsoft-signalr
[spdk-*] Several conflicts with other ports.
[c-dbg-macro] Conflicts with [dbg-macro]
[casadi] microsoft#41649 appears to have been merged in error, casadi/casadi#3896 needs to land before this can be in the curated registry. Moreover, problems in the portfile were skipped in ci.baseline.txt rather than a supports expression. We are happy to bring this port back as soon as that issue is fixed :)
[chromium-base] Not tested anywhere for years.
[libmesh] Conflicts with other ports.
[libpng-apng] Doesn't even exist in the first place.
[libqcow] Release distribution file contains configured sources, while the source code in the repository does not.
[libvmdk] Upstream is gone.
[mecab] Upstream has not been edited in 10 years, combination of =skip and supports clause means not tested.
[shogun] Not tested.

Not deindexed:
[bde] Conflicts with other ports. Warning was given more than a year ago: microsoft#32645 .
However, microsoft#41335 appears to indicate that it works now, so the =skips were removed.
[stxxl] Appears to work on my machine?
[chartdir] Unstable download URLs are now mitigated by asset caching.
[buck-yeh-bux] Looks like these are intended to be in the supports clause.
[boringssl, fluidlite, libressl, libmariadb, libmysql] Appears to have a dedicated userbase despite being untestable in CI.
[libxaw] Needed supports expression for ONLY_DYNAMIC_LIBRARY, should have always been a fail not a skip.

Related: microsoft#42165
@BillyONeal BillyONeal added info:internal This PR or Issue was filed by the vcpkg team. category:infrastructure Pertaining to the CI/Testing infrastrucutre labels Nov 19, 2024
@dg0yt
Copy link
Contributor

dg0yt commented Nov 19, 2024

[boringssl, fluidlite, libressl, libmariadb, libmysql] Appears to have a dedicated userbase despite being untestable in CI.

libmariadb builds in CI on android.
It was meant to build in x86-windows, libmysql everywhere else.
But both the x86-windows and the android results are ... unexpected.
(By AZP tests analytics.)

Add ntf-core, previously hidden by skipped bde.
@BillyONeal
Copy link
Member Author

libmariadb builds in CI on android.

True, we have that funny arrangement for only libmariadb/libmysql.

catch-classic:x64-windows = skip
catch-classic:x64-windows-static = skip
catch-classic:x64-windows-static-md=skip
catch-classic:x86-windows = skip
cctag:x64-windows-static-md=fail
cello:arm64-uwp=fail
cello:x64-uwp=fail
chakracore:x64-linux=skip
# chartdir does not offer stable download URLs
Copy link
Member Author

Choose a reason for hiding this comment

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

Suggested change
# chartdir does not offer stable download URLs

@BillyONeal BillyONeal added the requires:vcpkg-team-review This PR or issue requires someone on the vcpkg team to take a further look. label Nov 19, 2024
@BillyONeal
Copy link
Member Author

Tagging vcpkg-team-review because

  1. I'm the author and need another team member to OK
  2. Deindexing generally requires more than 1 maintainer to OK

Copy link
Contributor

@dg0yt dg0yt left a comment

Choose a reason for hiding this comment

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

Successful builds in CI.
(Not necessarily indicating usefullness.)

@@ -1460,10 +1460,6 @@
"baseline": "1.34.2",
"port-version": 0
},
"c-dbg-macro": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on android (header-only). But probably a bad idea, as on other platforms.

@@ -1520,10 +1516,6 @@
"baseline": "1.0.0",
"port-version": 6
},
"casadi": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on linux, osx, windows-dynamic.

@@ -1980,10 +1964,6 @@
"baseline": "0.4.0",
"port-version": 0
},
"cppmicroservices": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on 6/12 triplets. (Related: #34552.)

Copy link
Member Author

Choose a reason for hiding this comment

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

This one has CI, but vendored dependencies that stomp on other things. (In fact this is the port that got me to check all the =skip ones in the first place)

@@ -5004,10 +4976,6 @@
"baseline": "0.21.5",
"port-version": 1
},
"libqcow": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on arm64-osx. But known bad. (Related: #36809.)

@@ -5872,10 +5836,6 @@
"baseline": "0.6.0",
"port-version": 0
},
"mecab": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on android, osx.

Copy link
Member Author

Choose a reason for hiding this comment

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

Hmmmm.... I may have been to hasty with this one

@@ -8348,10 +8284,6 @@
"baseline": "1.0",
"port-version": 7
},
"shogun": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on linux.

"baseline": "24.01",
"port-version": 0
},
"spdk-dpdk": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on linux.

Copy link
Member Author

Choose a reason for hiding this comment

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

The spdk-* ones have CI, but appear to be effectively vendored and modified copies of other things in the registry.

"baseline": "2018-11-24",
"port-version": 3
},
"spdk-ipsec": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on linux.

"baseline": "2018-07-11",
"port-version": 3
},
"spdk-isal": {
Copy link
Contributor

Choose a reason for hiding this comment

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

CI on arm64-osx.

@autoantwort
Copy link
Contributor

You could use microsoft/vcpkg-tool#802 to test ports in ci even if they conflict.

@BillyONeal
Copy link
Member Author

BillyONeal commented Nov 19, 2024

Unfortunately we don't really have the cores available to be adding multiple 'ways' of testing the registry as the pool already gets very behind a lot of the time. And the combinatoric explosion quickly becomes infeasible.

@BillyONeal BillyONeal marked this pull request as draft November 20, 2024 19:45
@Cheney-W Cheney-W removed the requires:vcpkg-team-review This PR or issue requires someone on the vcpkg team to take a further look. label Nov 22, 2024
@BillyONeal
Copy link
Member Author

Yesterday @ras0219-msft, @vicroms, @JavierMatosD and I discussed this and agree that only things which are entirely untested on all platforms should be deindexed in a change like this, under the rationale that we would not add such ports today. I will keep the ones dg0yt noted above and split any remaining ones I think should be removed for other reasons into their own PRs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:infrastructure Pertaining to the CI/Testing infrastrucutre info:internal This PR or Issue was filed by the vcpkg team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants