In order for a plugin to be released on Plugin Central, a number of standard
pieces of information are required (the "release profile"). To make the plugin
release process as efficient as possible, please make sure that you provide a
complete release profile for every release, not just for initial releases.
The profile should be submitted to the plugin
submission tracker; note that you need a SourceForge user account to submit plugins. Once your submission is seen by the plugin release team, your plugin will become part of a future release batch.
The following information makes up a release profile:
- Name- Plugins based on a standalone application should not
have the same name as the application. Instead, the standard is to add
-"Plugin" to the end of the application's name (e.g. "FooFinderPlugin" for a
plugin based on the FooFinder application).
- Version Number- Version numbers must be unique for all
releases of a plugin on Plugin Central. In order for the Plugin Manager to work
correctly, subsequent version numbers need to be "greater than" previous ones
according to the compareVersions() method in
- All Requirements- Every time you release a plugin,
all of the requirements should be included in the release profile. Please do
not say "Same as the last version"; be explicit. Include any of the following
requirements that apply to your plugin:
- JDK compatibility (minimum version or range)
- jEdit version (minimum version or range)
- plugin dependencies (name and version/range for each plugin)
- required third-party applications (indicate version if applicable)
- libraries to be bundled with the release (with version number and download
location for binary download; third-party libraries are not built from
- Announcement- Changes or features to note in the release
announcement. Initial releases always note "initial Plugin Central
Source Code- In general, it is faster to release plugins which have already been checked into jEdit's SVN repository. If you do not yet have permission to commit to the jEdit project SVN repository,
you can ask for it from any of the project administrators or on the jedit-devel mailing list.
If you are posting an updated plugin, provide the SVN path, (e.g. plugins/XML/tags) and the
tag for the appropriate revision of the code (e.g. release-1_2). Please do not provide the SVN release number. While that uniquely identifies the code to be released, our packaging scripts need an actual tag and we are more likely to do your plugin first if it makes our lives easier. For plugins not maintained in our repository, please provide complete URLs of an archive with the source code, or the source code repository URL. Please do not send new plugins as attachments to any of jEdit's public mailing lists.
- Descriptions- A short and long description of the each
plugin's functionality is required. The short description is used by the Plugin
Manager and on the list pages on Plugin Central. The long description is in HTML is used
only on the plugin detail pages on Plugin Central. Initial release profiles
must always provide descriptions, but they are only required for updates when a
change to one or both of the descriptions is necessary.
To help save you time in creating the actual announcement, jEdit has a macro, under Macros -> Properties -> Create_Plugin_Announcement.bsh, which extracts the information from the plugins .props file and creates a message suitable for posting to the tracker. Please use this script and review the output as it ensures the .props file matches the announcement.
Becoming part of the Release Team
The process of releasing plugins is quite an involved one, and we could use help releasing updated plugins, or better automating the current process of releasing them. If you are good with Ant, Java, and XML, and would like to assist in this, please check out the directory known as pjo for scripts and documentation on the current procedure.