Closed regro-cf-autotick-bot closed 4 weeks ago
Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml
) and found it was in an excellent condition.
@martin-frbg, there's a test that's hanging regularly on aarch/ppc builds, and now that I'm looking at the logs of a passing build, even there it seems to go awry:
TEST 104/107 potrf:bug_695 [OK]
TEST 105/107 fork:safety [SIGNAL 11: Segmentation fault]
[OK]
TEST 106/107 kernel_regress:skx_avx [OK]
I guess running fork safety test in an emulator is always going to be a risky proposition: https://github.com/conda-forge/openblas-feedstock/blob/441b6aeeb7c6ddd2c6a18424f883f24ce07674a0/recipe/build.sh#L63-L68
Should we just disable that test for cross-compiled builds?
not sure, could you try if https://github.com/OpenMathLib/OpenBLAS/pull/4879 makes it go away (this was seen in Julia very recently, I may have to produce an early 0.3.29 next week)
Thanks @martin-frbg! I've tried the patch but there's no change unfortunately. AFAICT the behaviour is bimodal: either the build passes in <30min, or it hangs forever at that test. One other observation is that the hangs appear to be exclusive to the OPENMP=0
case (e.g. all three builds of that type on aarch/ppc in the current CI run are hanging; I checked other recent runs and didn't find a failure for OPENMP=1
).
Thanks - in that case, disabling the tests is probably warranted if they pass on the actual hardware. Note that test_fork is not run at all in OpenMP builds as it is known to fail with (at least) the GNU libgomp (due to design limitations in the latter)
Thank you! I've tried to disable test_fork
as follows:
--- a/utest/Makefile
+++ b/utest/Makefile
@@ -45,8 +45,10 @@ endif
# FIXME TBD if this works on OSX, SunOS, POWER and zarch
ifeq ($(OSNAME), $(filter $(OSNAME),Linux CYGWIN_NT))
ifneq ($(USE_OPENMP), 1)
+ifneq ($(CROSS), 1)
OBJS += test_fork.o
endif
+endif
OBJS += test_post_fork.o
endif
but that doesn't seem to work (i.e. runs are still hanging there). I don't know the upstream test setup very well - what would be a good (or at least easy) way to skip that test?
strange, are you sure it is hanging in the exact same test? maybe try disabling test_post_fork.c as well
I'm saying it's hanging in the test after
TEST 105/107 kernel_regress:skx_avx [OK]
which -- according to runs that pass -- should be
TEST 106/107 fork:safety
I don't know the exact relation ship between fork:safety
and test_fork.o
resp. test_post_fork.o
though, that's why I was asking. :)
Alright, I upgraded the patch to
--- a/utest/Makefile
+++ b/utest/Makefile
@@ -43,12 +43,14 @@ endif
#this does not work with OpenMP nor with native Windows or Android threads
# FIXME TBD if this works on OSX, SunOS, POWER and zarch
+ifneq ($(CROSS), 1)
ifeq ($(OSNAME), $(filter $(OSNAME),Linux CYGWIN_NT))
ifneq ($(USE_OPENMP), 1)
OBJS += test_fork.o
endif
OBJS += test_post_fork.o
endif
+endif
ifeq ($(C_COMPILER), PGI)
OBJS = utest_main2.o
and that seems to have done the trick! Thank you!
However, I'll note that in the three OPENMP=1
jobs, I still see:
TEST 104/107 potrf:bug_695 [OK]
TEST 105/107 fork:safety [SIGNAL 11: Segmentation fault]
[OK]
TEST 106/107 kernel_regress:skx_avx [OK]
I don't really understand how that test wouldn't equally be skipped there, because it has CROSS=1
just the same (it's set independently from OPENMP
, see build script snippet referenced above).
hmm, there should not be a way around this in the makefile - guessing these are either cmake builds or CI did not actually apply the PR on top of the checkout (I sometimes see this with Cirrus, a rerun usually fixes it)
or CI did not actually apply the PR on top of the checkout
I've never seen that happen in ~5 years in azure pipelines (and I look at a lot of CI runs), but the reason this didn't trigger looks to be much more mundane: I misinterpreted what we're setting the value of CROSS
to, and so the patch doesn't trigger.
It is very likely that the current package version for this feedstock is out of date.
Checklist before merging this PR:
license_file
is packagedInformation about this PR:
please add bot automerge
in the title and merge the resulting PR. This command will add our bot automerge feature to your feedstock.bot-rerun
label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase code>@<space/conda-forge-admin, please rerun bot in a PR comment to have theconda-forge-admin
add it for you.Pending Dependency Version Updates
Here is a list of all the pending dependency version updates for this repo. Please double check all dependencies before merging.
Dependency Analysis
Please note that this analysis is highly experimental. The aim here is to make maintenance easier by inspecting the package's dependencies. Importantly this analysis does not support optional dependencies, please double check those before making changes. If you do not want hinting of this kind ever please add
bot: inspection: disabled
to yourconda-forge.yml
. If you encounter issues with this feature please ping the bot teamconda-forge/bot
.Analysis by source code inspection shows a discrepancy between it and the the package's stated requirements in the meta.yaml.
Packages found by source code inspection but not in the meta.yaml:
This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/10315325611 - please use this URL for debugging.