-
Notifications
You must be signed in to change notification settings - Fork 330
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
Turn on the CI build for PRs #204
Conversation
Local run in my fork: https://github.com/gdziadkiewicz/logging-log4net/actions/runs/11637652589 |
@gdziadkiewicz can you test how just using "dotnet test" as a single step would look like? |
Will do. |
Here is the log from the |
run: | | ||
npm update -g npm --no-progress | ||
npm install --no-progress | ||
npm test | ||
|
||
- name: Build |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor: build step is not required - npm test
will build as a pre-requisite
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's true, but it's easier to tell what failed when the phases are separated.
the windows output looks like the output from I'd like to suggest that you install the Quackers test logger (https://www.nuget.org/packages/quackers.testlogger) - in conjunction with Alternatively, if y'all really want to eschew |
@fluffynuts we already use Quackers test logger in log4net.Tests. |
@gdziadkiewicz dotnet test brings the full output on all platforms. |
dotnet-version: 8 | ||
dotnet-quality: ga | ||
|
||
- name: Build |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you remove this step since dotnet test also builds the DLLs?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would rather not do that. With separate steps, it's easy to see without digging into whether it's a build issue or a failing tests issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point.
WIP |
Hi all, I amended the csproj to use quackers by default, and it looks great (I'm a new fan!). As for Zarro, at the moment, the builds are taking longer with it than without it (especially for Windows, it's 2x longer), and there is this surprising requirement of having node/npm to build a dotnet project. Would going with Quackers and dropping Zarro be acceptable? Open to discuss @fluffynuts @FreeAndNil P.S. From now on, I will respond much more quickly. |
I would like to skip zarro at this point and add it later in case we need it. |
The only problem that I can think of with using quackers without zarro is that the dotnet test system has a bug (I opened an issue, and they took months to get back to me, and basically said "yeah, we know, but we're re-working all of the test internals, so we're closing this") where it doesn't suppress all console logging, even when explicitly told to only use quackers - in particular, you'll see failures twice, though the final stats and all output by quackers will be the same. Zarro contains hacks to suppress re-echoing these outputs, by instructing quackers to prepend all log lines with an obscure string sequence that it can use to decide if a log line comes from quackers or not. I also expect that the longer build time via zarro is largely due to the legacy behavior of splitting nuget restore and build - msbuild didn't use to restore packages on build, where it does now. I should probably look into that at some point, but builds have been adequately fast for all the use-cases I've encountered, so it hasn't been high priority. |
@fluffynuts are you OK with skipping zarro in the pipeline for now? |
Sure, if you want to. Zarro does a lot of things and a lot of them are not required for log4net. I know the node/npm requirement can be confusing for some - part of the aim is standardizing how we (me,my work, etc) build and test things, ie via |
@gdziadkiewicz LGTM. |
Here is a build error https://github.com/gdziadkiewicz/logging-log4net/actions/runs/11842227538/job/33000348058?pr=1 and here is a failing test https://github.com/gdziadkiewicz/logging-log4net/actions/runs/11845311348/job/33010485591?pr=1 |
the output from quackers is looking better than i expected without zarro (: |
Nice, thanks a lot. |
Fixes #106
TODO: