This project is read-only.

Quick and Dirty Feed Parser 1.01 Release Notes

  1. New Features in Quick and Dirty Feed Parser 1.01.
    1. Windows Phone 7 and Silverlight Support
      1. IsolatedStorageFeedFactory
      2. IFeedFactory Upgrades
      3. Injectable Constructors
    2. Parsers
    3. IFeed Upgrades
      1. Improved Memory Consumption
      2. IFeed.Items Are Now Pre-loaded into an IList Collection
      3. Serialization
  2. Breaking Changes
    1. Upgraded to .NET 4.0
    2. Interface Changes
      1. IFeed.XmlFeed No Longer Exists
      2. All Uris Are Now Strings
      3. IFeed.Items Signature Changed
  3. Contributing to Quick and Dirty Feed Parser

 

New Features in Quick and Dirty Feed Parser 1.01

Windows Phone 7 and Silverlight Support

The biggest changes we made to Quick and Dirty Feed Parser in the 1.0 release is we added support for Silverlight 4 and Windows Phone 7.

We’ve wanted to add support for this since Windows Phone 7 hit the market, but it required that we rewrite the entire parsing engine using LINQ instead of XPath given that XPath isn’t supported in Silverlight or Windows Phone 7. However, the Silverlight and WP7 ports are finished, have test coverage, and have been performing well in some of the sample applications we’ve been building.

IsolatedStorageFeedFactory

Given that you don’t have access to a traditional file system in Silverlight or Windows Phone 7, we felt it appropriate to create a new factory designed to be used specifically for IsolatedStorage. This functionality is now available to you via the IsolatedStorageFeedFactory class, which you can read more about here.

IFeedFactory Upgrades

We made a number of changes to IFeedFactory in order to better support developers who use Quick and Dirty Feed Parser.

Injectable Constructors

You’ll now notice that each type of FeedFactory contains a constructor that looks like this:

public HttpFeedFactory(IFeedXmlParser parser)

Using this constructor you can use a DI container like Ninject or Unity to inject a parser of your choice.

Parsers

Until Quick and Dirty Feed Parser 1.0, constructors

We’ve added some additional choices to developers as far as parsers go, and you can even write your own parser and inject it into a FeedFactory. All you have to do is inherit from the IFeedXmlParser interface.

By default all IFeedFactory objects use the LinqFeedXmlParser class. However, the original XPathFeedXmlParser is still available.

IFeed Upgrades

In order to better support Quick and Dirty Feed Parser’s performance on Windows Phone 7, where developers have to get more done with fewer resources, we made efforts to improve the performance and functionality of all IFeed objects included in Quick and Dirty Feed Parser.

Improved Memory Consumption

IFeed objects no longer have the XmlFeed property associated with them, which contained a full copy of the original XML feed in addition to the parsed entities within the IFeed object itself. This reduced memory consumption of IFeed objects by over 50% and makes them both faster and less expensive to work with even in resource-constrained environments like Windows Phone 7.

IFeed.Items Are Now Pre-loaded into an IList Collection

Originally all IFeed objects used a deferred execution model where they gradually parsed items out from the XmlFeed member contained inside each object. We’ve changed it so that items are now pre-loaded and injected into an IList collection, which makes it both easier and faster to use.

Serialization

We made a number of changes to all of the IFeed classes in Quick and Dirty Feed Parser in order to support syndication, such as adding default constructors and exposing the setters for all properties.

Breaking Changes

In order to make Quick and Dirty Feed Parser better, we had to make some breaking changes to the build for 1.01.

Upgraded to .NET 4.0

.NET 2.0, our original target profile for Quick and Dirty Feed Parser, is falling by the wayside. In the interest of utilizing newer language features in Quick and Dirty Feed Parser itself going forward, we’ve decided to upgrade to .NET 4.0 and use as our standard going forward.

Therefore, this version of Quick and Dirty Feed Parser is not backwards-compatible with .NET 2.0-3.5 projects.

Interface Changes

We made a number of breaking changes in the Quick and Dirty Feed Parser IFeed interface in order to improve the performance of IFeed objects and to make them serializable.

IFeed.XmlFeed No Longer Exists

We removed this member in order to reduce the memory footprint of all IFeed objects.

All Uris Are Now Strings

We converted all public members which utilized the System.Uri type to System.String members, in order to make IFeed classes easily serializable in .NET 4.0, Silverlight, and Windows Phone 7.

IFeed.Items Signature Changed

We changed the signature from IEnumerable<IFeedItem> to List<BaseFeedItem> in order to support serialization and pre-populated lists.

Contributing to Quick and Dirty Feed Parser

We’re always looking for contributors, and if you’d like to help make Quick and Dirty Feed Parser better, please join us on Codeplex!

http://qdfeed.codeplex.com/

Download these release notes in Word 2010 format [download]

Last edited Jan 20, 2011 at 8:18 AM by Aaronontheweb, version 2

Comments

No comments yet.