@bradwilson@mastodon.social
@bradwilson@mastodon.social avatar

bradwilson

@bradwilson@mastodon.social

#Code #Motorcycles #Music #BoardGames #VideoGames #Photography #AntiFascist #AntiRacist #PostTheist #Feminist #EV #GreenEnergy #BlackLivesMatter | https://dotnet.social/@xunit's caretaker | He/him | 0.00115 miles tall

Previously: GitHub, Microsoft, and others.
Now: Living that retired life.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

bradwilson, to random
@bradwilson@mastodon.social avatar

Installed Resharper today because I want one refactoring (convert interpolated string to String.Format) and already I'm regretting how aggressively it's destroyed everything I had set the way I want it.

bradwilson, to random
@bradwilson@mastodon.social avatar

First time poking around with Dev Drives, so doing a little performance testing by measuring dotnet build after git clean -xdf for @xunit (main branch).

On NVMe (NTFS): 17.5s
On SATA (NTFS): 17.9s
On VHDX (ReFS): 14.4s
On VHDX (ext4): 11.7s

The top 3 are built in Windows, and the bottom 1 is built in WSL 2 (Ubuntu 22.04). I wanted to be able to compare the two VHDX options.

Looks like Dev Drive is a win, but not as big as moving to Linux & ext4.

bradwilson, to CSharp
@bradwilson@mastodon.social avatar

I want to see if it's possible to replace runtime reflection in @xunit v3 with source generators (for better performance and to support NativeAOT), but I think I've already hit the first blocking point: no support for ? Only and ?

bradwilson, (edited ) to random
@bradwilson@mastodon.social avatar

As I finish up my 50th year alive, inspired by one of the YouTube channels I watch, I'm picking my favorite movie for every year I've been alive. Some of these were insanely hard to choose, and some required almost no thought at all. Durability and re-watchability were high on my list of important traits.

Let's go! What are some of your favorites?

Edit: This list originally stopped at 2022, but I'm going to keep extending it every year.

๐Ÿงต 1/n

bradwilson, to random
@bradwilson@mastodon.social avatar

Windows Terminal seems to have its own font renderer, and sometimes it's just plain worse than what's built in.

Compare these two prompts from CONHOST (darker, left) and Windows Terminal (lighter, right). Same text, same font, but the Windows Terminal rendering frequently gets the shape and size of the diagonal blocks wrong, which causes artifacts like color bleed and/or misaligned edges. Worse, which artifacts you see changes with the font size.

image/png

bradwilson, to random
@bradwilson@mastodon.social avatar

gripe:

Why doesn't editor.ReplaceNode() take a collection of nodes to use as a replacement? Instead I have to write:

editor.InsertAfter(oldNode, newNodes);
editor.RemoveNode(oldNode);

And then as a bonus, it destroys some of the trivia along the way (like deleting a blank line that it shouldn't delete). (That part may be my fault, I haven't figured out whether I've actually fixed my other bug yet.)

bradwilson, (edited ) to dotnet
@bradwilson@mastodon.social avatar

Sad realization for today: using formatted strings hides issues that CA1305 would find.

Overly simple example:

$"{myValue}"

vs.

myValue.ToString()

These are equivalent. Both (usually) implicitly and silently use CultureInfo.CurrentUICulture, but only the latter can be flagged as needing an explicit culture to ensure you're getting the value the way you want.

This kind of makes me want to rip out all instances of formatted strings now.

bradwilson, to random
@bradwilson@mastodon.social avatar

Anybody else noticing that @dotnet 6 does not output Unicode correctly when run from Windows Terminal?

First image = Standard console host
Second image = Windows Terminal

Tried turning AtlasEngine on and off, no impact. Using Windows Terminal version 1.17.11461.0. This feels recent-ish, not sure if it's .NET or Terminal.

image/png
image/png

bradwilson, (edited ) to dotnet
@bradwilson@mastodon.social avatar

I see a lot of responses to the current Moq 4.20 issue being "now I have to port all my projects to something else".

Is anybody considering just rolling back to 4.18.4 and staying there?

Is anybody considering forking the project and giving it a new name, after removing SponsorLink? It's BSD licensed, so there shouldn't be any legal issues with doing so.

bradwilson, to random
@bradwilson@mastodon.social avatar

CI build time climb when introducing multiple version support for @xunit . โฑ๏ธ

bradwilson, to random
@bradwilson@mastodon.social avatar

Switching from Firefox to Floorp today, and if anybody asks, I'm using "Chrome". ๐Ÿ˜‚

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

I'm skeptical of the new tight integration of .NET to Ubuntu 24.04. I noticed two things immediately:

  • I don't have access to .NET 6 at all
  • I don't have access to the latest .NET 8 SDK any more (currently 8.0.104, despite latest being 8.0.204).

I assumed using the Microsoft apt feed would allow me to use newer even if Ubuntu's feeds were older, but... not so much.

If .NET 6 is still supported, why isn't it on Ubuntu 24.04? And why are we being held back?

#dotnet #ubuntu #ubuntu24

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

I want CA2007 to be smarter.

There's no need to keep re-calling .ConfigureAwait(false) on every single task. The first one is good enough. I've already been shifted off the SyncContext, if there was one.

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

What exactly is going on here? ๐Ÿค” The nullability attributes on Guard.ArgumentNotNull are working in lots of other places. ๐Ÿ˜•

The implementation of Guard.ArgumentNotNull, which is showing the [NotNull] annotation which tells the compiler that the value is not null.

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

Is it just me or has MyGet been down all day?

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

Been trying out the new C# Dev Kit on VS Code, and my first case of "no no oh god no don't do that!" was when it silently auto-created a solution file when I open a folder that has a .csproj in it.

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

Today I noticed that Visual Studio successfully uses source files from SourceLink, but VS Code (with the new C# Dev Kit) does not.

I wonder why. Anybody know?

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

Having one of those "what the heck is wrong?!" moments.

I wrote a Roslyn analyzer. Tests work great.

I wrote the fixer for that diagnostic reported above. Test fails. Set breakpoints, and RegisterCodeFixesAsync never gets called, despite being set for the same descriptor. Same pattern I use with every other fixer, but this one is just silently... not doing anything.

Very confused and frustrated right now. Might have to ship this analyzer without a fix.

image/png
image/png
image/png

bradwilson, to windows
@bradwilson@mastodon.social avatar

Found my first issue with using a Dev Drive, and wanting to have access to it from WSL: apparently the way Dev Drives mount in Windows is not compatible with the WSL auto-mounting.

Why does this matter? Docker Desktop (in WSL 2 mode) can't mount a Dev Drive folder.

Do I dump WSL 2 mode for Docker? Or do I dump Dev Drive? Tough choice, but I suspect I dump the Dev Drive.

In WSL 2, /mnt/c/Dev gets an I/O error because "cannot read symbolic link".
Trying to mount C:\Dev on Docker in Windows (running in WSL 2 mode) claims it can't create /run/desktop/mnt/host/c/Dev because the file exists (but in reality, the error is that it can't read that folder from WSL).

bradwilson, to github
@bradwilson@mastodon.social avatar

I have a permanent branch that's never going to be merged into main. Is there any way to get GitHub to stop asking me if I want to merge it whenever I push new commits to it? I want this to go away for specific branches (I'll also accept it going away for all branches, because I mostly don't care about this).

bradwilson, to random
@bradwilson@mastodon.social avatar

I will consider it a social media victory when @xunit has more followers than I do. There's just no logical reason why more people are interested in me as a person than the thing I'm known for. ๐Ÿ˜‚

(That was never going to happen on the dead bird site, but it has a chance of happening here. Also, this is an invitation to follow xUnit.net, not an invitation to un-follow me. ๐Ÿคฃ)

bradwilson, to random
@bradwilson@mastodon.social avatar

I've been organizing my dependencies for @xunit v3 so I can minimize them (anything that doesn't ship in .NET itself is a potential compatibility clash with library versions that developers want to use).

I'm not that worried about System.Collections.Immutable or IAsyncDisposable having breaking changes across major versions. System.Text.Json, on the other hand, feels like potential danger territory. The alternative of writing even a very feature-limited JSON parser makes me uncomfortable.

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

Visual Studio 2022 just said "Have you considered using DevDrive and ReFS?".

Yo. You just loaded a project from a DevDrive. Be smarter.

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

Had a discussion today about what it would take to make @xunit NativeAOT compatible, and it was very interesting and thought provoking.

To start: how would you design a unit testing framework if you had little to no access to reflection? What xUnit.net does relies heavily on just randomly peeking at things at runtime and making decisions about what to do as a result.

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

I've been noticing whole-machine slow downs whenever I heavily use my Dev Drive (for example, building source) that are just unacceptable.

A common example is I'll start a full build in Visual Studio and then go to type in Windows Terminal and everything I type will be delayed by multiple seconds. Even pasting will show only a few characters at a time.

So, back to raw SSD and (sigh) NTFS for now. #DevDrive #dotnet

  • All
  • Subscribed
  • Moderated
  • Favorites
  • โ€ข
  • megavids
  • kavyap
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • InstantRegret
  • GTA5RPClips
  • Youngstown
  • everett
  • slotface
  • rosin
  • osvaldo12
  • mdbf
  • ngwrru68w68
  • JUstTest
  • cubers
  • modclub
  • normalnudes
  • tester
  • khanakhh
  • Durango
  • ethstaker
  • tacticalgear
  • Leos
  • provamag3
  • anitta
  • cisconetworking
  • lostlight
  • All magazines