Using Sonar Cloud on .NET Core with Travis

Note to self since I just spent a frustratingly long time on this. In order to analyse your .NET Core project with Sonar on Linux (using Travis in my case since it’s an open source project), the following is required: Have a machine with Mono and .NET Core installed Download the MSBuild Sonar Analyzer and ensure that the scripts are executable Execute it perfectly with just the right amount of parameters For reference, some build steps out of a Travis YAML file I’ve been working for NGenerics: [Read More]
dotnet  ci 

Dependency injection - the what and the how

Background: We’ve started a weekly patterns & practices meeting at work with some of our senior developers where our discussions and actions will hopefully bring some improvement to the current development environment. Once a week one of us has an opportunity to showcase a new topic – much akin to knowledge transfer session but more fine-grained and at a higher level than the technology. Gareth Stephenson suggested we blog about the content for the benefit of others, which I think is not a bad idea at all. [Read More]

Emitting a Type that inherits from a base type referencing the built Type

Incredibly simple, yet it took me a while to craft the correct search terms to come up with this solution. I can’t even find that forum post now, so hopefully this entry will save someone else some time. In a lot of solutions there exists a base class that would take the inheritor as a type reference to be able to do some work on it - you’ll typically see this pattern in fluent interfaces and classes that use reflection. [Read More]
dotnet 

MS-LPL

As Miguel pointed out, this just seems … well, evil. Notice the last clause in Section 2 : (F) Platform Limitation- The licenses granted in sections 2(A) & 2(B) extend only to the software or derivative works that you create that run on a Microsoft Windows operating system product. Wow. Can’t believe that you can still get away with open-sourcing code and then choosing a license like that. There’s a great need for . [Read More]