create new tag
, view all tags
This topic started in TWikiPluginAPI.

-- PeterThoeny - 06 Feb 2001

Question: When do we start a CVS branch for the Plugins development?

-- AndreaSterbini - 29 Jan 2001

We need to decide on a plugin development strategy and on a plugin deployment strategy.

The TWiki core should not contain plugins except for the DefaultPlugin and a template plugin. The reason is the keep the installation package small, and to separate timing of testing the TWiki core and plugins.

Development: We need to define a easy way for plugin developers to:

  • Contribute plugins
  • Collaborate on plugins

Deployment: We need to define a easy way for plugin users to:

  • See what plugins are available, including what's new
  • Get a plugins for installation

Andrea: Regarding CVS, what is your idea? How to organize it?

I believe the person who creates and contributes a plugin should own and maintain it. Also, we need some space where people can collaborate on each plugin.

Regarding deployment, how about a new web at TWiki.org, like a TWiki.Plugins web? Each plugin gets a topic, name ends in ...Plugin. The plugin ZIP file is attached to the topic.

We could define a category table that categorizes a plugin. Category table Items:

  • One line description:
  • Author:
  • Platform: any, any Unix, Solaris, Linux, Windows, ...
  • Depends on CPAN modules:
  • Depends on other programs / libs:
  • Tested with TWiki version:

May be the TWiki.Plugins web can be used also for plugin development?

Thoughts, opinions?

-- PeterThoeny - 06 Feb 2001

I agree with the Plugins web, we could use it both for development and for deployment.

I like the categories (I always forget about it ... we definitely need some CategoryEditor ...)

I would add a set of categories on the plugins versions and on the minimum needed versions of required software:

  • Plugin Version:
  • Platform Version: ...
  • Perl Version:

PS: The Plugins web suggests me also to add a Skins web both for Skin development and for Skins deployment ... (see TWikiSkins)

-- AndreaSterbini - 06 Feb 2001

When creating the SpreadSheetPlugin I realized that we make some changes to the Plugins web organization: Change the default page layout and reduce the category table. A typical work flow of creating a plugin is to write and test a plugin on a local TWiki installation, and then to publish it in the Plugins web. Therefore the category table should be short, and most of the category table data should be in the topic text.

Here is an example template:

-----( cut here )---------------------------------------------------

---++ %TOPIC% Plugin

<short description with examples>

---++ Syntax Rules:

<syntax rule section in case there are>

---++ Plugin Installation Instructions

   * Download the ZIP file from the %TOPIC% home
   * Unzip ==%TOPIC%Plugin.zip== in your twiki installation directory.
     | *File:* | *Description:* |
     | ==data/TWiki/%TOPIC%.txt== | Plugin topic |
     | ==data/TWiki/%TOPIC%.txt,v== | Plugin topic repository |
     | ==bin/TWiki/Plugins/%TOPIC%.pm== | Plugin Perl module |
   * Add ==%TWIKIWEB%.%TOPIC%Plugin== to the ==ACTIVEPLUGINS== 
     variable in %TWIKIWEB%.TWikiPreferences (or any WebPreferences 
   * Add the following line to the "TWiki Plugins" section of
      * %<name>Plugin: (one line description)

---++ Plugin Info

| One Line Description: | ... |
| Plugin Author:        | Main.... |
| Plugin Version:       | ... |
| CPAN Dependencies:    | ... |
| Other Dependencies:   | ... |
| Perl Version:         | ... |
| Plugin Home:          | http://TWiki.org/cgi-bin/view/Plugins/%TOPIC% |

__Related Topics:__ %TWIKIWEB%.TWikiPreferences, %TWIKIWEB%.TWikiPlugins

-----( cut here )---------------------------------------------------

Publishing (and updating) a plugin is now simply a matter of:

  • copying the page content from the the local installation to the Plungins web at TWiki.org;
  • attaching the ZIP file; and
  • setting the category table.

The TWikiCategory table in the Plugins web can be reduced to:

It is also nicer to have a smaller category table (especially for other types of pages like plugin dev)

NicholasLee announced today in DevelopersNews that the twiki/bin/TWiki directory moved to the new twiki/lib directory. With that we need to repackage all existing Plugins! A good opportunity to fix the plugin docs as well. Well, soon we will have a stable environment (at the code freeze for the TWikiReleaseNorthernSpring2001, as Nicholas calls it)

-- PeterThoeny - 17 Mar 2001

One thing I think we should consider is creating a new cvs module plugins/ along side twiki/. We can put all the 'non-standard' plugs people contribute into that location, and migrate them to twiki/lib/TWiki/Plugins/ if they become part of the core.

As part of this, it might be good to development a standard plugin install type script that puts stuff in the right location.

-- NicholasLee - 20 Mar 2001

I shortened the Plugins category table and changed the default text according to my note on 17 Mar 2001.

In addition, I added a new TopicClassification: AddOnPackage. This is for add-on packages that are not plugins. The first add-on is DolphinToTWikiAddOn, a small script to convert DolphinWiki text files to the TWiki format.

-- PeterThoeny - 09 Apr 2001

Edit | Attach | Watch | Print version | History: r11 < r10 < r9 < r8 < r7 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r11 - 2003-07-26 - PeterThoeny
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.