<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>MEF Source Code Rss Feed</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>MEF Source Code Rss Description</description><item><title>Source code checked in, #34058</title><link>http://mef.codeplex.com/SourceControl/ListDownloadableCommits.aspx</link><description>Tag for MEF Preview 6. Release notes via wiki at http&amp;#58;&amp;#47;&amp;#47;codeplex.com&amp;#47;mef</description><author>nblumhardt</author><pubDate>Mon, 13 Jul 2009 17:09:36 GMT</pubDate><guid isPermaLink="false">Source code checked in, #34058 20090713050936P</guid></item><item><title>Source code checked in, #30766</title><link>http://mef.codeplex.com/SourceControl/ListDownloadableCommits.aspx</link><description>MEF Preview 5 Release Notes&amp;#58;&amp;#13;&amp;#10;&amp;#13;&amp;#10;Namespace changes&amp;#13;&amp;#10;-    System.ComponentModel.Composition &amp;#8211; For part authors.  This namespace contains the import and export attributes as well as other APIs that part authors are likely to use.&amp;#13;&amp;#10;-    System.ComponentModel.Composition.Hosting &amp;#8211; For hosters.  This namespace contains the CompositionContainer, catalog implementations, and other APIs that hosters are likely to use.&amp;#13;&amp;#10;&amp;#13;&amp;#10;Part discovery changes&amp;#13;&amp;#10;-    CompositionOptionsAttribute and DiscoveryMode have been removed.&amp;#13;&amp;#10;-    PartNotDiscoverableAttribute replaces &amp;#91;CompositionOptions&amp;#40;DiscoveryMode &amp;#61; DiscoveryMode.Never&amp;#41;&amp;#93;&amp;#13;&amp;#10;-    PartCreationPolicyAttribute can be used to specify part creation policy &amp;#40;Replaces CompositionOptionsAttribute.CreationPolicy&amp;#41;&amp;#13;&amp;#10;-    By default, exports on a base class will not be included in the exports for a derived class.&amp;#13;&amp;#10;-    The PartExportsInheritedAttribute can be applied to a base class to specify that exports on that class will be included in derived classes&amp;#13;&amp;#10;     WARNING&amp;#58; If this attribute is used, and both the base and derived class have export attributes applied to them, there will be multiple exports created for the same class.  Also note that whatever metadata is applied to the export on the base class can&amp;#8217;t be added to or overridden by the derived class&amp;#13;&amp;#10;&amp;#13;&amp;#10;Collection imports&amp;#13;&amp;#10;-    ImportManyAttribute should now be used on collection imports &amp;#40;in the future, an ImportAttribute will not be interpreted as a collection import even if it is applied to a collection type&amp;#41;.&amp;#13;&amp;#10;-    Array imports are now supported.&amp;#13;&amp;#10;&amp;#13;&amp;#10;Typed Imports&amp;#47;Exports&amp;#13;&amp;#10;-    Imports and Exports now match on type as well as contract.&amp;#13;&amp;#10;-    Exporters of string contracts such  as &amp;#91;Export&amp;#40;&amp;#8220;Foo&amp;#8221;&amp;#41;&amp;#93; must now specify the type they expect to be imported as well. e.g. &amp;#91;Export&amp;#40;&amp;#8220;Foo&amp;#8221;, typeof&amp;#40;string&amp;#41;&amp;#41;&amp;#93;&amp;#13;&amp;#10;&amp;#13;&amp;#10;Method exports&amp;#13;&amp;#10;-    Method exports can now be imported as custom delegates in addition to Action&amp;#60;&amp;#8230;&amp;#62; and Func&amp;#60;&amp;#8230;&amp;#62; delegates&amp;#13;&amp;#10;&amp;#13;&amp;#10;Directory Catalog&amp;#13;&amp;#10;-    The directory watching functionality has been removed.  The Refresh&amp;#40;&amp;#41; method has been added to explicitly update the catalog with new assemblies in the directory.&amp;#13;&amp;#10;&amp;#13;&amp;#10;Removal of Caching &amp;#47; new infrastructure&amp;#13;&amp;#10;-    The old caching infrastructure has been removed.  We&amp;#8217;ve added a general purpose API that allows the implementation of catalog caching as well as supporting builders of custom programming models.  The APIs are members of the static class System.ComponentModel.Composition.ReflectionModel.ReflectionModelServices.  In the future we plan to ship a sample that shows how these APIs can be used to create cached catalogs.&amp;#13;&amp;#10;&amp;#13;&amp;#10;New sample application&amp;#13;&amp;#10;-    MEF Studio &amp;#8211; a designer hosting sample.&amp;#13;&amp;#10;&amp;#13;&amp;#10;Common compilation errors to expect when migrating previous code bases&amp;#13;&amp;#10;-    System.ComponentModel.Composition.Container does not exist -&amp;#62; Add reference to System.ComponentModel.Composition.Hosting namespace&amp;#13;&amp;#10;-    CompositionContainer does not contain method AddPart or Compose -&amp;#62; Need to start using CompositionBatch, or one of the helper extension methods ComposeParts or ComposeExportedObjects&amp;#13;&amp;#10;-    CompositionOptionsAttribute does not exist -&amp;#62; For CreationPolicy use PartCreationPolicyAttribute&amp;#13;&amp;#10;-    INotifyImportCompleted does not exist -&amp;#62; Use IPartImportsSatisfiedNotification interface and change method from ImportCompleted to OnImportsSatisfied&amp;#13;&amp;#10;</description><author>haveriss</author><pubDate>Tue, 07 Apr 2009 02:55:28 GMT</pubDate><guid isPermaLink="false">Source code checked in, #30766 20090407025528A</guid></item><item><title>Source code checked in, #28358</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Renamed sample to MefShapes</description><author>haveriss</author><pubDate>Tue, 03 Feb 2009 02:12:23 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28358 20090203021223A</guid></item><item><title>Source code checked in, #28355</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Renamed sample to MefShapes</description><author>haveriss</author><pubDate>Tue, 03 Feb 2009 01:30:02 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28355 20090203013002A</guid></item><item><title>Source code checked in, #28352</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Renamed sample to MefShapes</description><author>haveriss</author><pubDate>Tue, 03 Feb 2009 01:01:13 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28352 20090203010113A</guid></item><item><title>Source code checked in, #28080</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Removed keys as we are exposing an unsigned assembly. </description><author>haveriss</author><pubDate>Tue, 27 Jan 2009 21:45:06 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28080 20090127094506P</guid></item><item><title>Source code checked in, #28055</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Preview 4 Release notes&amp;#58;&amp;#13;&amp;#10;Summary of the breaking changes&amp;#58;&amp;#13;&amp;#10;&amp;#8226;&amp;#9;AllowNonPublicCompositionAttribute was removed. It is no longer needed MEF will always look at publics and non-publics.&amp;#13;&amp;#10;&amp;#8226;&amp;#9;ComposablePartCatalog and related types were moved from System.ComponentModel.Composition to System.ComponentModel.Compositioni.Primitives.&amp;#13;&amp;#10;&amp;#8226;&amp;#9;AttributedTypesPartCatalog was renamed to TypeCatalog&amp;#13;&amp;#10;&amp;#8226;&amp;#9;AttributedAssemblyPartCatalog was renamed to AssemblyCatalog&amp;#13;&amp;#10;&amp;#8226;&amp;#9;DirectoryPartCatalog was renamed to DirectoryCatalog&amp;#13;&amp;#10;&amp;#8226;&amp;#9;AggregatingComposablePartCatalog was renamed to AggregateCatalog&amp;#13;&amp;#10;&amp;#8226;&amp;#9;Catalog Caching extensibility API&amp;#8217;s have been made internal.&amp;#13;&amp;#10;&amp;#13;&amp;#10;New features&amp;#58;&amp;#13;&amp;#10;&amp;#13;&amp;#10;Diagnostics and debugging&amp;#13;&amp;#10;&amp;#13;&amp;#10;We&amp;#8217;ve made significant improvements in the debugging experience to address some problematic scenarios and deliver a foundation for diagnostics in all MEF features and extensions.&amp;#13;&amp;#10;&amp;#13;&amp;#10;The differences to note are&amp;#58;&amp;#13;&amp;#10;&amp;#13;&amp;#10;1.&amp;#9;Multiple composition errors are structured in numbered groups each relating to a single root cause&amp;#13;&amp;#10;2.&amp;#9;The &amp;#8216;causal chain&amp;#8217; &amp;#40;Resulting in&amp;#58; &amp;#8230;&amp;#41; traces an issue all the way back to the root action that the application was trying to perform&amp;#13;&amp;#10;3.&amp;#9;The &amp;#8216;origin path&amp;#8217; &amp;#40;Element&amp;#58; &amp;#8230;&amp;#41; describes how each object involved in the scenario came to be in the composition in the first place&amp;#13;&amp;#10;4.&amp;#9;All of this information can be retrieved programmatically from the exception types if necessary&amp;#13;&amp;#10;&amp;#13;&amp;#10;Another difference will be the visualization of exceptions when they occur.&amp;#13;&amp;#10;&amp;#13;&amp;#10;&amp;#13;&amp;#10;Lifetime Management and Creation Policy&amp;#13;&amp;#10;&amp;#13;&amp;#10;&amp;#8226;&amp;#9;We&amp;#8217;ve renamed Singleton and Factory creation policy to Shared &amp;#47; NonShared&amp;#13;&amp;#10;&amp;#8226;&amp;#9;Parts and Imports can now both declare creation policy. We&amp;#8217;ve also added a new policy called Any, which allows a Part or an Import declare that it can work with either policy, i.e. a Part could have a policy of Any, where one  importer of the part&amp;#8217;s exports has a policy of NonShared, while another importer has a policy of Shared. The grid below indicates the behavior in different scenarios.&amp;#13;&amp;#10;&amp;#8226;&amp;#9;Parts can now be explicitly released from the container by using the Container.ReleaseExport method. This method takes the export and traverses all its references that are non-shared and disposes of them if they implement IDisposable. This prevents what we call viral disposability where every part in the chain must implement IDisposable in order for the deepest child to be disposed. This is an extremely difficult problem for you to manage, and without this feature the likelihood of memory leaks is high.&amp;#13;&amp;#10;&amp;#8226;&amp;#9;A Non-shared part that has a recomposable import will be held conditionally based on the lifetime of its exports. If the exports are collected the part will be released as well.&amp;#13;&amp;#10;</description><author>haveriss</author><pubDate>Tue, 27 Jan 2009 01:26:22 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28055 20090127012622A</guid></item><item><title>Source code checked in, #28054</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Moved preview 3 code from root to preview 3 folder</description><author>haveriss</author><pubDate>Tue, 27 Jan 2009 01:16:16 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28054 20090127011616A</guid></item><item><title>Source code checked in, #28053</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Added tags and preview folders&amp;#13;&amp;#10;</description><author>haveriss</author><pubDate>Tue, 27 Jan 2009 01:04:23 GMT</pubDate><guid isPermaLink="false">Source code checked in, #28053 20090127010423A</guid></item><item><title>Source code checked in, #26383</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>MEF Preview 4 &amp;#13;&amp;#10;1. Container has been refactored&amp;#13;&amp;#10;2. Value Resolver migrated to new Export Provider&amp;#13;&amp;#10;3. Perf enchancements&amp;#13;&amp;#10;4. Catalog Caching&amp;#13;&amp;#10;5. Unit Tests</description><author>gblock</author><pubDate>Tue, 25 Nov 2008 19:55:56 GMT</pubDate><guid isPermaLink="false">Source code checked in, #26383 20081125075556P</guid></item><item><title>Source code checked in, #24974</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Moved Structured Values moved to a separate dll</description><author>gblock</author><pubDate>Thu, 02 Oct 2008 07:21:24 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24974 20081002072124A</guid></item><item><title>Source code checked in, #24971</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Deleting all folders and files as part of new license switch over operations.</description><author>jwanageladmin</author><pubDate>Thu, 02 Oct 2008 02:31:07 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24971 20081002023107A</guid></item><item><title>Source code checked in, #24970</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Deleting all folders and files as part of new license switchover operations.</description><author>jwanageladmin</author><pubDate>Thu, 02 Oct 2008 02:30:03 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24970 20081002023003A</guid></item><item><title>Source code checked in, #24969</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Deleting MEF.sln file as part of license change operations.</description><author>jwanageladmin</author><pubDate>Thu, 02 Oct 2008 01:49:33 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24969 20081002014933A</guid></item><item><title>Source code checked in, #24968</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Deleting Samples folder as part of license change operations.</description><author>jwanageladmin</author><pubDate>Thu, 02 Oct 2008 01:47:48 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24968 20081002014748A</guid></item><item><title>Source code checked in, #24967</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Deleting lib folder as part of license change operations.</description><author>jwanageladmin</author><pubDate>Thu, 02 Oct 2008 01:46:58 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24967 20081002014658A</guid></item><item><title>Source code checked in, #24966</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>Structured Values has been moved to a separate dll.</description><author>gblock</author><pubDate>Wed, 01 Oct 2008 22:57:24 GMT</pubDate><guid isPermaLink="false">Source code checked in, #24966 20081001105724P</guid></item><item><title>Source code checked in, #23846</title><link>http://www.codeplex.com/MEF/SourceControl/ListDownloadableCommits.aspx</link><description>First community drop of MEF</description><author>gblock</author><pubDate>Fri, 05 Sep 2008 21:52:16 GMT</pubDate><guid isPermaLink="false">Source code checked in, #23846 20080905095216P</guid></item></channel></rss>