Changes between Initial Version and Version 1 of ComponentDependencyPlugin

Jul 29, 2009, 8:46:08 PM (13 years ago)
Jeff Hammel

New hack ComponentDependencyPlugin, created by k0s


  • ComponentDependencyPlugin

    v1 v1  
     1= allows components to state dependencies on other plugins =
     3== Description ==
     5ComponentDependencyPlugin allows a `Component` to state a dependency on other plugin, via the `IRequireComponents` interface:
     8class IRequireComponents(Interface):
     9    def requires():
     10        """list of component classes that this component depends on"""
     13The `Component` classes that are returned by the `requires` method will be enabled upon environment upgrade.  This allows very simple dependencies.  Of course, for installation, the required components are still required to be part of python (in `install_requires` in ``) and this plugin will not work if there is trouble loading a plugin that is required.
     15== Bugs/Feature Requests ==
     17Existing bugs and feature requests for ComponentDependencyPlugin are
     18[report:9?COMPONENT=ComponentDependencyPlugin here].
     20If you have any issues, create a
     21[ new ticket].
     23== Download ==
     25Download the zipped source from [download:componentdependencyplugin here].
     27== Source ==
     29You can check out ComponentDependencyPlugin from [ here] using Subversion, or [source:componentdependencyplugin browse the source] with Trac.
     31== Example ==
     33The files in `` illustrate how to use the plugin.  Enable the `ComponentDependencyPlugin` (`componentdependencies.componentdependency.componentdependencyplugin = enabled`) and enable the `TestDependencyPlugin` (`componentdependencies.test.testdependencyplugin = enabled`).  Trac will then require an upgrade.  The `FooBarTest` component will be enabled in the upgrade.
     37== Recent Changes ==
     39[[ChangeLog(componentdependencyplugin, 3)]]
     41== Author/Contributors ==
     43'''Author:''' [wiki:k0s] [[BR]]