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

The continuing intermittent macOS CI build failures #2814

Open
Numpsy opened this issue Sep 1, 2024 · 2 comments
Open

The continuing intermittent macOS CI build failures #2814

Numpsy opened this issue Sep 1, 2024 · 2 comments

Comments

@Numpsy
Copy link
Contributor

Numpsy commented Sep 1, 2024

We seem to still have an intermittent CI build failure on macOS, with errors about not being able to get the start time of a process -

https://github.com/fsprojects/FAKE/actions/runs/10654117014/job/29530030223#step:8:9395

Looking at the code, it seems to expect to fail to get the process start time sometimes, and responds by logging it and returning DateTime.Now -

Trace.traceFAKE "Error while retrieving StartTime of started process: %O" e

There are sometimes multiple instances of that error in the logs but the only one that seems to make it break is in the no dependencies hello world and casing #2314 test case at

testCase "no dependencies hello world and casing #2314"
where it explicitly expects that there is no error output from the test process -
stdErr.Trim() |> Expect.equal "empty expected" ""

I'm not sure why the error occurs (maybe it is just because the test process exits too quickly and is gone by the time the runner tries to get the time), so I 'm not sure if there is a bug or if the test is a bit too strict?
The error only seems to happen on macOS, though there is a different code path for Windows vs. macOS/Linux that might effect things there.

@Thorium
Copy link
Member

Thorium commented Sep 22, 2024

Ok it seems the test is asserting that there is no output. But Fake.Core.Trace.TraceFAKE will be output. Now the question is, if proc.StartTime fails to get, is it just that this platform didn't work and we can ignore, or is it so important error that we should fail the test?

xperiandri pushed a commit that referenced this issue Sep 22, 2024
Debugging of #2814
Adds catching `PlatformNotSupportedException` and `NotSupportedException` on a process starting
@Numpsy
Copy link
Contributor Author

Numpsy commented Sep 22, 2024

Now the question is, if proc.StartTime fails to get, is it just that this platform didn't work and we can ignore, or is it so important error that we should fail the test?

The way it catches the exceptions and returns DateTime.Now suggests an explicit decision to not treat it as an error, but I don't know any history behind the decision

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

No branches or pull requests

2 participants