| Comments

Today (at approximately 10:00 AM PST) our team released an update to the Silverlight 4 runtime.  This update, dubbed internally as “GDR3,” provides an update in the following key areas (KB2495644):

  • Timestamp issues with media playback and VC-1 codec
  • Visual Studio IDE crash when profiling a Silverlight application which has a pixel shader
  • Enabling Silverlight to run as a 32-bit process in 64-bit Firefox on OSX
  • DRM fixes for a “6207” error when playing protected content after upgrading to a version of Silverlight
  • Memory leak fixes with regard to the use of in-line DataTemplate
  • Out-of-browser applications failing to update if the application name was changed
  • Media playback error when the media streams have redirect information
  • Improving network latency (KB2505882)

Many readers of this blog will likely zero in on the memory leak fix here.  The issue is discussed/debated/ridiculed ad nauseam on the forums relating to this issue.  If your customer applications are facing this issue and you chose not to apply one of the two workarounds, then you want to encourage your customers to upgrade to this release.  This can be done using the minimum runtime version attributes in your <object> tags where you use Silverlight.  This will prompt the user for an upgrade.  Of course, I’ve stated my opinion many times before that this should be a customized experience and we’ve even provided sample code to do so in our installation experience whitepaper.

‘I noticed <your-favorite-bug/feature> isn’t fixed here’

Each service release doesn’t fix our backlog completely.  If there is an issue you are seeing with Silverlight after applying this update, please, please, please log a bug on the product.  Don’t assume someone else has.  There is a specific way you can log a product bug on Silverlight as I’ve outlined in this post: Ways to give feedback on Silverlight.  The ideal bug is one that is detailed, reproducible, and provides an actual repro project/sample.  This is the fastest route to getting a bug understood and evaluated.

Getting the update

As with all service updates, this update will be made available to customers via Microsoft Update.  If you are a developer and don’t want to wait, you can download the bits here (please be aware network propagation across the globe might take a few hours):

There is NO SDK update for this release.  As a developer you only need to update the developer runtime on your machine to continue enabling Silverlight development but to also have the new runtime on your machine as a user as well.  Please note that by you, the developer, simply having the updated dev runtime doesn’t “force” your apps to use it.  This is controlled by using the minRuntimeVersion flags in your <object> tag to trigger what the minimum requirement is for your application.

Hope this helps!

| Comments

Last night after a quick e-mail exchange with Phil, David and Scott I revised my Silverlight Toolkit “NuPack” packages I had previously created when NuPack NuGet first came out.  At the time there were a couple of things still not supported and frankly, I got busy and never bothered to check back.  Scott had seen something on a forum inquiring why Silverlight stuff, namely our open source controls, aren’t deployable via NuGet.  There wasn’t any other reason other than resources not currently scheduled to add this to the build flows, etc.  So I spent a few minutes revising the packages and putting them up there:

Silverlight Toolkits on NuGet

What you see above is the “Add Library Package Reference” results after you install NuGet.  Now instead of having to install an MSI, etc. you can basically add a reference to the package and the bits will be copied to your project and automatically referenced.  In order to componentize the main Silverlight Toolkit, I created the NuGet packages in a way that they can be individually consumed, or a meta-package as “All.”  It’s cool that NuGet allows you to create a meta-package which is basically a dependency graph.  For instance, my “all” package has zero content…but here is the .nuspec contents:

   1: <?xml version="1.0" encoding="utf-8"?> 
   2: <package> 
   3:   <metadata> 
   4:     <id>SilverlightToolkit-All</id> 
   5:     <version>4.2010.04</version> 
   6:     <authors>Microsoft</authors>
   7:     <description>The complete Microsoft Silverlight Toolkit.  Details at http://silverlight.codeplex.com</description> 
   8:     <language>en-US</language>
   9:     <licenseUrl>http://silverlight.codeplex.com/license</licenseUrl>    
  10:     <projectUrl>http://silverlight.codeplex.com/</projectUrl>
  11:     <dependencies>
  12:       <dependency id="SilverlightToolkit-Core" version="4.2010.04" />
  13:       <dependency id="SilverlightToolkit-Data" version="4.2010.04" />
  14:       <dependency id="SilverlightToolkit-DataViz" version="4.2010.04" />
  15:       <dependency id="SilverlightToolkit-Input" version="4.2010.04" />
  16:       <dependency id="SilverlightToolkit-Layout" version="4.2010.04" />
  17:       <dependency id="SilverlightToolkit-Theming" version="4.2010.04" />
  18:     </dependencies>
  19:     <title>Silverlight Toolkit - All</title>
  20:     <owners>Tim Heuer</owners>
  21:     <iconUrl>http://silverlight.microsoft.com/assets/sl-32.png</iconUrl>
  22:     <tags>silverlight toolkit sltoolkit</tags>
  23:   </metadata> 
  24: </package>

It’ basically defines the pointers to what it needs and NuGet does the magic to manage the dependencies on install.  For the Silverlight for Windows Phone Toolkit, we also have icons.  NuGet allows me to package up those icons as well so that when the package gets added, so do the icons (NOTE: there is still a step to mark them as content in the project).  I point this out because when the phone toolkit first came out some of the samples weren’t working for people because they didn’t read that they had to actually include some icons to get them to work.  Using NuGet, at least we’re able to help them even further.

I really like this model.  I love that I can use a familiar “Add Reference” gesture in Visual Studio, but I can also use a PowerShell VS window to do my package management as well if I wanted.  Take a look at the NuGet stuff and if you are a Silverlight developer, now you have everything easily at your fingertips!

NOTE: The version numbers in the toolkit packages are package version numbers.  We’ve never really promoted the toolkit versions as they literally are (i.e., 4.0.31319.blah) but rather as the release timeframe i.e., “April 2010” release.  Because NuGet follows CLR versioning taxonomy I created the package versions to hopefully be somewhat descriptive: 4.2010.04 – For Silverlight 4, April 2010 release – as an example.  It’s not perfect, but it works.

NuGet has over 670 packages now in the repository with an amazing set of tools readily available at your fingertips.  There are some good Silverlight nuggets in there as well and it is nice to have our toolkits in there now also!  When updates come out, the Library Package Manager will show the updates, giving the developer the option to update them quickly.

Hope this helps!

| Comments

February is here…time for an updated Windows 7 Smashing Magazine theme pack!

Blue Clutter

The February themes range from love (Valentine's) to Chinese New Year.  So here is your February 2011 Windows 7 Theme Packs for wallpapers – unfiltered and uncensored – about 40 wallpapers in all.

Special thanks to TransferBigFiles.com for hosting these wallpaper themes through their great service! (Please note that these downloads are only good for about a year.)

For details on these and to see past ones, visit the Smashing Magazine Windows 7 Theme information for the specifications I used for the theme pack as well as previous themes.  Want to participate and submit yours?  Join in!

| Comments

Happy New Year!!!  January (and 2011) is here…time for an updated Windows 7 Smashing Magazine theme pack!

One 2011

CMYK 2011

The January themes mostly concentrate on a lot of winter and New Year themes (with two random Drupal 7 wallpapers...warning for non-geeks).  Above are two of my favorites.  So here is your January 2011 Windows 7 Theme Packs for wallpapers – unfiltered and uncensored – about 60 wallpapers in all.

Special thanks to TransferBigFiles.com for hosting these wallpaper themes through their great service! (Please note that these downloads are only good for about a year.)

For details on these and to see past ones, visit the Smashing Magazine Windows 7 Theme information for the specifications I used for the theme pack as well as previous themes.  Want to participate and submit yours?  Join in!

| Comments

Today we are releasing an update to Silverlight 4.  This is an update to two areas where no workarounds could be provided for customers and we found it important to fix.  The two issues in today’s update (which brings Silverlight to version 4.0.51204.0) are:

Diacritics

Foreign diacritical marks (usually accent marks on non-US languages) do not display in a TextBox control or a RichTextBox control in an out-of-browser (OOB) application on the Mac platform.

This update simply fixes what was a broken piece of functionality.

Trusted and Signed Applications

Before you apply this update, a Silverlight 4 OOB application can enable an update only when the application is signed with matching certificates that have not expired.

This update relaxes this restriction. After you apply the update, an OOB application can enable an update if the following conditions are true:

  • Both the new application and the old application have valid signatures.
  • The new application is signed with a trusted certificate.
  • The Subject and the Issuer of the certificate that is used to sign the new application match those of the certificate that is used to sign the old application.

Summary

This update will be provided via Microsoft Update and other auto-update mechanisms for users.  We felt the need to service these issues because of the lack of a usable workaround for customers.  In the end this will benefit all Silverlight out-of-browser applications.

If you are a developer, you can always update the latest developer runtime by downloading it here: Silverlight Developer Runtime

You can read the ‘official’ KB article 2477244. Hope this helps!