public
Description: friendly extension management for radiant cms using git or http.
Home | Edit | New

Extension dependencies

Note: If your extension dependencies have their own dependencies it’s best if each extension only includes it’s immediate dependents and let the dependencies cascade until they have all been satisfied; i.e. if your extension requires X which requires Y which requires Z only declare your dependence on X and have Y declare it’s dependence on Z and so on.

While extension bundling is for site maintainers, extension dependencies are for extension authors. As you can probably guess it lets you tell Ray about your extension’s dependencies. All you need is a dependency.yml file in the root directory of your extension. Here’s an example dependency file:

- extension: my_extension_helpers

You can list as many dependencies as you need and they can include gems as well as other extensions. In the case of extensions you may also use the hub option if you depend on a forked version of a repository.

- extension: this_extension_helps_a_ton
  hub: extension_forker
- extension: some_other_voodoo
- gem: this_one
- gem: that_too

The absence of support for plugin dependencies is intentional. You are much better off adding plugins to your extension as git submodules and letting Ray deal with them during the normal installation of your extension. As an added bonus your plugin dependencies will also be recognized and respected by Radiant’s built-in script/extension install.

Note: dependencies.yml is an acceptable file name and .yaml is an acceptable extension.

Last edited by johnmuhl, Sun Apr 12 13:48:49 -0700 2009
Home | Edit | New
Versions: