opensim-org / opensim-core

SimTK OpenSim C++ libraries and command-line applications, and Java/Python wrapping.
https://opensim.stanford.edu
Apache License 2.0
802 stars 324 forks source link

Fix Windows CI failures #3806

Open aymanhab opened 5 months ago

nickbianco commented 5 months ago

This thread may be useful: https://github.com/actions/runner-images/issues/10004

nickbianco commented 5 months ago

The Windows 2019 builds were failing due to an issue with compiling Catch2 (linker error). There's another issue on that repo also reporting issues with Catch2; not a linker error, but worth monitoring.

Based on that thread, it seems like they did not properly update the VCruntime shipped with the Windows runner images. Other projects have come up with workarounds in their CI scripts that we might be able to adopt, e.g.: https://github.com/ECP-WarpX/impactx/pull/633/files.

nickbianco commented 5 months ago

I'm testing the workaround on https://github.com/opensim-org/opensim-core/pull/3807, but supposedly the issue was fixed in the runners, so I'm also re-running the Windows builds on https://github.com/opensim-org/opensim-core/pull/3796 without the workaround to see what happens.

aymanhab commented 5 months ago

Thanks @nickbianco I wouldn't try workarounds to roll back later since it appears they're rolling out a fix on their side and too many projects were affected. As long as one of our windows environments is functional we can afford to wait I think. My main concern would be if there's an issue linking executables built with earlier vc versions which may be problematic for dependencies but will wait for the dust to settle if this comes up.

nickbianco commented 5 months ago

It looks like the Windows runners have been updated. The C++ tests are passing, but the Matlab tests are still failing with a link error:

java.lang.UnsatisfiedLinkError: D:\a\opensim-core\opensim-core\build\Release\osimJavaJNI.dll: A dynamic link library (DLL) initialization routine failed

I'm seeing this on https://github.com/opensim-org/opensim-core/pull/3796.

nickbianco commented 5 months ago

New issue related to Java bindings failures: https://github.com/actions/runner-images/issues/10055.

aymanhab commented 5 months ago

@nickbianco This seems rather flaky, same runner version passes all java tests on other runs. Is that the reason for reopening?

nickbianco commented 5 months ago

The issue closed automatically after I merged that PR, which I didn't intend. The PR is more of a temporary patch, and I was thinking we keep this issue open until Microsoft gets their act together.