Archive for PostSharp
Philly.NET Code Camp 2011.1 – Presentation Notes and More
Posted by: | CommentsThe Gibraltar team was there in force for Philly.NET Code Camp 2011.1. Since it’s right in our backyard we brought more of the team and had a booth set up. We were just thrilled at how many people stopped by to talk – not just to check out Gibraltar and VistaDB (but that’s always great!) but also to talk about past presentations we’ve done.
Kendall Miller presented a new talk at this Code Camp – Easy Application Scaling with Microsoft AppFabric and AOP. You can read the slides below as well as download the source code for the demos. This is an extended version of the webinar we did a few months ago, with a lot more code samples.
The key idea is that AppFabric cache creates a number of opportunities for high performance, highly scalable applications but you’ll want to do some up-front work to make it easy to use in your application. The code samples walk through how to do it all by hand, then show how to use PostSharp to inject the code at compile time and make it a whole lot easier. You can Download the Code to see for yourself
Philly .NET was very well run as usual – all the food set up and ready to go, good places to network, lots of tracks and sessions to attend. This year they also added an open spaces area for folks to hotly debate common challenges in a semi-moderated forum. It was a fun place to sit and listen to the passionate, divergent opinions on the range of software construction topics. Of course we were happy to see our friends from DevExpress there as well as the rest of the community.
Merry Christmas! Gibraltar 2.5.2 Shipped
Posted by: | CommentsWith all of the crazy cold weather in the UK and the US we hid indoors and polished off the last details of Gibraltar 2.5.2 between cups of hot cocoa by the fire. We previously talked about the key changes but while we’ve been holding the release we managed to get in some last improvements.
The biggest issues were two problems with the Hub server, one of which was rare but very problematic. We wrote a new custom torture test library that simulated the effect of hundreds of web timeouts to identify some thorny issues caused by the thread abort exceptions thrown by IIS when it wants to time out a request. Unfortunately requests can time out in a few cases, notably when really slow clients are uploading data, so every once in a while we were catching a magic problem that stopped the hub cold. We also identified a problem with the new caching code introduced in 2.5.1 being just a bit too clever for its own good. We gave it a stern talking to, had it fetch more wood from the farthest woodpile, and now all is right with the world.
Along with everything else in release we put some polish to the Gibraltar Agent for PostSharp (improvements in aspect ordering), two fixes to the Gemini issue tracking integration, and one API change to make it easier to submit sessions to the Hub whenever you want in code. You can read up on all of it in the release notes. If you’re running an older version of the Hub server, we seriously encourage you to upgrade to this release as soon as possible. You can do this without changing anything else in your infrastructure as each component is backwards compatible with any version of the other components.
As always, keep your ideas coming – we’re hard at work on Gibraltar 3.0 along with VistaDB 4.2 and look forward to getting even more done in 2011 than we did in 2010.
Using Gibraltar, PostSharp and Visual Studio 2010
Posted by: | CommentsEditors Note: This article has been updated to reflect the release of Gibraltar 2.5 which addresses the issues raised.
While Gibraltar works well with Visual Studio 2010 and .NET 4.0, one place we’ve gotten caught up is with the Gibraltar Agent for PostSharp. In a nutshell, the current version uses PostSharp 1.5 which isn’t supported (and doesn’t work) with Visual Studio 2010.
To use Visual Studio 2010, you need to update to PostSharp 2.0 CTP5 or later. This requires a new version of the Gibraltar Agent for PostSharp. An additional wrinkle is that the .NET Runtime target of an aspect and the application that’s using it must be the same. This hasn’t been an issue in the past because the .NET runtime was always 2.0 (even if you were using .NET 3.5 because that is just a set of additional libraries on top of .NET 2.0). With the release of .NET 4.0 this changes and you need to have a version of the aspects that specifically targets .NET 4.0, or you get strange errors.
To add to the complexity, there are two versions of Gibraltar that are “current” today: 2.1.1 which is the current release version, and 2.2.0 Beta 1 which is the current Beta version. Many people are using 2.2.0 Beta 1, and if you’re new to Gibraltar you should start there. Because we ship a strongly named binary for our PostSharp aspects it has to match with our Agent version as well. Taken in total, this would means we need a version for .NET 2.0 and 4.0, Gibraltar 2.1.1 and 2.2.0.
If you’re in this situation where you’re using Visual Studio 2010, or for another reason are running PostSharp 2.0, you’ll need to upgrade to Gibraltar 2.5 or later. It includes a version that targets PostSharp 1.5 and .NET 2.0 (like before), another for PostSharp 2.0 and .NET 2.0, and another for PostSharp 2.0 and .NET 4.0. Since the same application could theoretically combine all three they have unique file names to ensure there aren’t any conflicts. The capabilities of all three are basically the same.


