14,727

Downloads

155

Downloads of v 2.5.8

9

Average downloads per day

2016-11-01

Last published

Share on Social Networks

There is a newer prerelease version of this package available.
See the version list below for details.

Clide: An Enjoyable IDE Automation API

2.5.8

High-level, composable and testable APIs for working with IDEs.

To install Clide: An Enjoyable IDE Automation API, run the following command in the Package Manager Console

Install-Package Clide -Version 2.5.8

Release Notes

v2.5

* VS services are no longer automatically imported via constructor dependencies.
  This was causing significant performance degradation for little additional
  simplicity over just taking a dependency on a single constructor parameter
  `[Import(typeof(SVsServiceProvider))] IServiceProvider services` which can
  provide the same behavior in a much more explicit way. Typical pattern is
  for this parameter to be used in a public constructor together with the other
  MEF dependencies, and invoke an internal constructor with the actual dependencies
  (i.e. DTE, IVsShell, etc.) which are just extracted from the service provider
  at construction time. Also, this allows the component to decide to delay
  retrieval of these services, marshall to the UI thread as needed, etc.

v2.4

* Dropped .NET 4.0 and therefore VS2010 support.

v2.2

* Added general-purpose referencing service

v2.1

* Added FindProjects extension method for ISolutionNode, which is more efficient than traversing the entire solution.
* Improved support for side-by-side versioning of Clide assemblies deployed by multiple extensions

v2.0

* Reworked internals to avoid depending on VS-MEF extensibility, which is problematic and may
  cause interference with VS composition.
* Core DI now provided by Autofac, which gives us a performance boost in addition.
* Components now don't need any [Import] or [ImportingConstructor] in order for constructor
  dependencies to work, even for core VS services like IServiceProvider or IVsShell, DTE, etc.
* Types that have the ComponentAttribute applied are automatically registered.
* Supports registering with a certain type (like [Export(typeof(IMyService))]): [Component(typeof(IMyService))]
* Added support for registering components as single instance (singletons) using [Component(IsSingleton = true)]

v1.4

* Fixes some performance issues due to MEF (lack of) caching
* Tracing of MEF composition off by default (can be turned on for diagnostics via the registry)
* Exposed ServiceLocator.GlobalProvider to get access to a thread-safe IServiceProvider for the entire Visual Studio IDE.
* Removed usage of the problematic ServiceProvider.GlobalProvider (see above)
* Removed usage of the problematic ThreadHelper for UI thread marshaling (now leveraging the WPF Dispatcher)
* Added support for customizing what kinds of traces you want to receive on your output window via Host.Initialize
* Fixed a potential hang when using the Tracer from a background thread
* Fixed issue when a command filter was improperly configured.

v1.3

* Expose CompositionContainer directly on IDevEnv. This simplifies many scenarios where you want to interact with the container. Users can still import ICompositionService.
* Added support for intercepting arbitrary commands in the IDE via simple exports of ICommandInterceptor components, automatically registered when the host is initialized.
* Moved MEF tracing/diagnostics to run on a separate background thread. This makes host initialization much faster.

v1.2

* Refactored for easier reuse by offering two static entry points:
    - DevEnv.Get: gets the IDevEnv entry point API. This can be
      used from anywhere you can import an IServiceProvider. By
      default the instance is reused.
    - Host.Initialize: initializes a hosting package and its components
      (i.e. commands, filters, tool windows, etc.).
* Single assembly now can be used for both VS2010 and VS2012: this means
  you no longer have to fork your extension for either IDE just because
  you use Clide (you may because of other dependencies, like VSMSDK).

v1.1

* ISolutionExplorer API, with full solution traversal, behaviors
  for selecting, expanding and collapsing nodes, etc.
* Integration with Adapter pattern for pluggable conversion of
  solution explorer nodes (i.e. projectNode.As<EnvDTE.Project>())
* Improved diagnostics and debug-time rendering of nodes
* Improved reporting of composition errors in the Clide output window

v1.0

* Full support for MEF-exported commands (ICommandExtension) and command filters
* ToolWindow support
* Tools options pages support

Owners

Authors

Daniel Cazzulino

Copyright

Copyright 2012

Tags

Dependencies

Version History

Version Downloads Last updated
Clide 3.0.106-pre 0 Wednesday, February 22, 2017
Clide 3.0.105-pre 61 Tuesday, December 20, 2016
Clide 3.0.103-pre 58 Wednesday, December 7, 2016
Clide 3.0.102-pre 28 Monday, December 5, 2016
Clide 3.0.101-pre 33 Tuesday, November 1, 2016
Clide 3.0.100-pre 86 Friday, October 21, 2016
Clide 3.0.94-pre 40 Thursday, October 20, 2016
Clide 3.0.93-pre 44 Wednesday, October 19, 2016
Clide 3.0.92-pre 37 Wednesday, September 28, 2016
Clide 3.0.89-pre 33 Wednesday, September 21, 2016
Clide 3.0.88-pre 35 Tuesday, September 13, 2016
Clide 3.0.87-pre 33 Monday, September 5, 2016
Clide 3.0.70-pre 42 Thursday, September 1, 2016
Clide 3.0.68-pre 32 Thursday, September 1, 2016
Clide 3.0.67-pre 33 Wednesday, August 31, 2016
Clide 3.0.66-pre 41 Wednesday, August 3, 2016
Clide 3.0.64-pre 36 Wednesday, August 3, 2016
Clide 3.0.62-pre 36 Tuesday, August 2, 2016
Clide 3.0.60-pre 44 Thursday, July 21, 2016
Clide 3.0.36-pre 58 Wednesday, January 20, 2016
Clide 3.0.35-pre 50 Wednesday, January 20, 2016
Clide 3.0.32-pre 52 Tuesday, January 19, 2016
Clide 3.0.28-pre 52 Tuesday, January 19, 2016
Clide 3.0.27-pre 50 Tuesday, January 19, 2016
Clide 3.0.26-pre 52 Monday, January 18, 2016
Clide 3.0.25-pre 53 Monday, January 18, 2016
Clide 3.0.24-pre 52 Monday, January 18, 2016
Clide 3.0.23-pre 48 Saturday, January 16, 2016
Clide 3.0.22-pre 51 Saturday, January 16, 2016
Clide 3.0.21-pre 61 Friday, January 15, 2016
Clide 3.0.20-pre 51 Friday, January 15, 2016
Clide 3.0.19-pre 58 Friday, January 15, 2016
Clide 3.0.17-pre 53 Friday, January 15, 2016
Clide 3.0.16-pre 61 Friday, January 15, 2016
Clide 3.0.14-pre 52 Friday, January 15, 2016
Clide 3.0.12-pre 62 Friday, January 15, 2016
Clide 3.0.10-pre 56 Thursday, January 14, 2016
Clide 3.0.9-pre 50 Thursday, January 14, 2016
Clide: An Enjoyab... 2.5.7 86 Thursday, October 27, 2016
Clide: An Enjoyab... 2.5.6 51 Wednesday, September 28, 2016
Clide: An Enjoyab... 2.5.5 107 Thursday, September 1, 2016
Clide: An Enjoyab... 2.5.4 41 Thursday, September 1, 2016
Clide: An Enjoyab... 2.5.3 92 Friday, August 12, 2016
Clide: An Enjoyab... 2.5.2 58 Tuesday, August 9, 2016
Clide: An Enjoyab... 2.5.1 56 Tuesday, August 9, 2016
Clide: An Enjoyab... 2.5.0 106 Thursday, May 5, 2016
Clide: An Enjoyab... 2.4.12 126 Monday, February 22, 2016
Clide: An Enjoyab... 2.4.11 115 Monday, January 11, 2016
Clide: An Enjoyab... 2.4.10 150 Tuesday, December 22, 2015
Clide: An Enjoyab... 2.4.8 64 Tuesday, December 22, 2015
Clide: An Enjoyab... 2.4.7 65 Tuesday, December 22, 2015
Clide: An Enjoyab... 2.3.48 71 Monday, December 21, 2015
Clide: An Enjoyab... 2.3.46 76 Monday, December 14, 2015
Clide: An Enjoyab... 2.3.42 59 Monday, December 14, 2015
Clide: An Enjoyab... 2.3.39 64 Monday, December 14, 2015
Clide: An Enjoyab... 2.3.37 63 Monday, December 14, 2015
Clide: An Enjoyab... 2.3.33 141 Wednesday, November 11, 2015
Clide: An Enjoyab... 2.3.32 94 Wednesday, November 4, 2015
Clide: An Enjoyab... 2.3.31 221 Tuesday, July 28, 2015
Clide: An Enjoyab... 2.3.29 165 Wednesday, June 24, 2015
Clide: An Enjoyab... 2.3.28 97 Wednesday, June 24, 2015
Clide: An Enjoyab... 2.3.27 123 Monday, May 11, 2015
Clide: An Enjoyab... 2.3.26 126 Monday, May 11, 2015
Clide: An Enjoyab... 2.3.25 89 Monday, May 11, 2015
Clide: An Enjoyab... 2.3.24 135 Tuesday, March 17, 2015
Clide: An Enjoyab... 2.3.20 201 Friday, December 5, 2014
Clide: An Enjoyab... 2.3.16 101 Thursday, December 4, 2014
Clide: An Enjoyab... 2.3.15 110 Wednesday, December 3, 2014
Clide: An Enjoyab... 2.3.14 104 Tuesday, December 2, 2014
Clide: An Enjoyab... 2.3.13 103 Tuesday, December 2, 2014
Clide: An Enjoyab... 2.3.12 113 Wednesday, November 26, 2014
Clide: An Enjoyab... 2.3.11 188 Tuesday, October 28, 2014
Clide: An Enjoyab... 2.3.10 125 Tuesday, October 28, 2014
Clide: An Enjoyab... 2.3.9 104 Tuesday, October 28, 2014
Clide: An Enjoyab... 2.3.8 104 Tuesday, October 28, 2014
Clide: An Enjoyab... 2.3.7 116 Tuesday, October 28, 2014
Clide: An Enjoyab... 2.3.6 138 Wednesday, October 8, 2014
Clide: An Enjoyab... 2.3.5 150 Tuesday, September 23, 2014
Clide: An Enjoyab... 2.3.2 278 Thursday, January 9, 2014
Clide: An Enjoyab... 2.2.1312.318 183 Monday, January 6, 2014
Clide: An Enjoyab... 2.1.1306.2716 265 Thursday, June 27, 2013
Clide: An Enjoyab... 2.1.1306.2619 147 Wednesday, June 26, 2013
Clide: An Enjoyab... 2.0.1306.1821 163 Tuesday, June 18, 2013
Clide: An Enjoyab... 2.0.1306.1719 153 Tuesday, June 18, 2013
Clide 2.0.1306.1119 155 Tuesday, June 11, 2013
Clide 2.0.1306.1118 225 Tuesday, June 11, 2013
Clide 2.0.1306.1117 154 Tuesday, June 11, 2013
Clide 2.0.1306.1015 149 Monday, June 10, 2013
Clide 2.0.1306.816 277 Saturday, June 8, 2013
Clide 2.0.1306.719 198 Friday, June 7, 2013
Clide 1.4.1305.2320 267 Thursday, May 23, 2013
Clide 1.4.1305.2305 151 Thursday, May 23, 2013
Clide 1.4.1305.2302 147 Thursday, May 23, 2013
Clide 1.4.1305.2211 148 Wednesday, May 22, 2013
Clide 1.4.1305.2205 147 Wednesday, May 22, 2013
Clide 1.4.1305.2120 143 Tuesday, May 21, 2013
Clide 1.4.1305.1705 159 Friday, May 17, 2013
Clide 1.3.1305.1514 171 Wednesday, May 15, 2013
Clide 1.3.1301.2116 201 Monday, January 21, 2013
Clide 1.3.1301.1823 172 Friday, January 18, 2013
Clide 1.3.1301.1815 162 Friday, January 18, 2013
Clide 1.3.1301.1721 245 Friday, January 18, 2013
Clide 1.2.1301.1419 168 Monday, January 14, 2013
Clide 1.2.1301.1414 167 Monday, January 14, 2013
Clide 1.2.1301.1016 167 Thursday, January 10, 2013
Clide 1.2.1301.921 201 Wednesday, January 9, 2013
Clide 1.2.1301.915 195 Wednesday, January 9, 2013
Clide 1.2.1301.903 208 Wednesday, January 9, 2013
Clide 1.2.1301.821 203 Tuesday, January 8, 2013
Clide 1.2.1301.820 203 Tuesday, January 8, 2013
Clide 1.2.1301.816 199 Tuesday, January 8, 2013
Clide 1.2.1301.420 208 Friday, January 4, 2013
Clide 1.2.1301.323 201 Thursday, January 3, 2013
Clide 1.2.1301.320 206 Thursday, January 3, 2013
Clide 1.1.1212.1720 163 Monday, December 17, 2012
Clide 1.1.1212.1715 159 Monday, December 17, 2012
Clide 1.1.1212.1405 153 Friday, December 14, 2012
Clide 1.0.1211.3003 183 Friday, November 30, 2012
Clide 1.0.1211.2917 158 Thursday, November 29, 2012
Clide 1.0.1211.2813 165 Wednesday, November 28, 2012
Clide 1.0.1211.2719 174 Tuesday, November 27, 2012
Clide 1.0.1211.2014 161 Friday, November 23, 2012
Clide 1.0.1211.1917 163 Monday, November 19, 2012
Clide 1.0.1211.1906 149 Monday, November 19, 2012