Tag Archives: NuGet

Using per solution/project NuGet package sources (in Visual Studio)

I was today trying to add new package source to be used. It’s a private feed from our TeamCity server that serves some shared libraries. I started with adding it in the Visual Studio settings. But that didn’t satisfy me. You know, I’d like to have it only for this particular project, not whole Visual Studio. And it turned out, it’s pretty simple. I’m already using nuget.config file to put packages into custom named folder (lib :) ).

In this file you can add few elements and have another package source added.

	<packageSources>
		<add key="FooBar package source" value="http://nuget.foobar.com/feed/" />
	</packageSources>
	<activePackageSource>
		<add key="FooBar package source" value="http://nuget.foobar.com/feed/" />
	</activePackageSource>

And it works with everything in Visual Studio. Not only in Package Manager Console. The VS settings contains the new feed, the Manage NuGet Packages works with it too.

Sweet. Well designed, NuGet.

log4net dependencies problem – solved

OK, following log4net’s versioning scheme in NuGet package wasn’t a good idea. In version 1.2.11 the new keys were used and I used this as a fresh start. I didn’t realized that thanks to semantic versioning everybody will be updated to latest version and dependencies will be broken. My fault. :-?

If you read my previous log4net post there’s a solution with modifying package.config file, but… So to fix it package owners were forced to repack the dependencies to be =. Not good.

So today I pushed version 2.0.0, which is actually 1.2.11 with new keys, and 1.2.11 was removed. So there’s now on NuGet the new major version and dependencies need to be explicitly stated to be compatible with it (again, it’s 1.2.11 with new keys).

Fire is quenched, hopefully.

log4net (back) alive on NuGet

It turned out, that the previous maintainer of log4net NuGet package @dotnetjunky was assigned mistakenly. So nobody was actually maintaining that package. After few messages with him, we decided, I’ll take over the ownership and maintain it.

I still use NLog in my projects, as I like it a little bit more. But I know, there’s big community around log4net, with my coworker Ales included. :)

Today I uploaded package with new version 1.2.11 [1], and I’ll try my best to keep the package up-to-date. Enjoy.

[1] I used the binaries signed with new key so any new dependencies will follow this recommended usage.

PowerThreading library on NuGet

I like NuGet because it removes the hassle of downloading and installing libraries. And sadly only small number of vendors is providing just package without installer. And I also like parallel/multithreaded programming. Crucial tool in my toolbox for parallel programming is Jeffrey Richter’s (Wintellect) PowerThreading library. The library is great and contains a lot of smart ideas [1] and some handy objects too. And it’s completely free.

Sadly it was not on NuGet. Hence I took the challenge and created the package. It’s called simply PowerThreading. Don’t take me wrong, Jeffrey is doing great job with this library and I’m and will be happy to maintain the package. He’s too smart to waste his time on this; spending rather the time on improving it, is more valuable.

[1] In fact the async/await feature in C# 5 uses similar concept as AsyncEnumerator.

FirebirdClient on NuGet

Yep, it’s done. Now you can download FirebirdClient from NuGet. From nuget.org/List/Packages/FirebirdSql.Data.FirebirdClient to be precise.

It took me a while to find some time to create the package and publish it. But recently I started using NuGet quite often, so assigned this task higher priority.

The build there is same as the default one (targets .NET 4 CLR) you can download from site. Later I’d like to incorporate into package other versions (different CLRs, Mono builds, …) too. Maybe the other pieces like WebProviders, DDEX (?) and unstable builds could be there too. I’ll think about it more.

Hope you’re excited as I’m and you’ll enjoy it. :)