So you want to add a new package, plugin or feature to KIELER, eh? Well, then there's some stuff you should know. First, there's some general remarks applying to all kinds of stuff. Then, there's more details specific to certain kinds of stuff.

Content

General Advice

These remarks apply to all, packages, namespaces, plug-in projects, and features.

Naming Conventions

Follow the Eclipse naming conventions; basically, projects are named after their base packages, who in turn should follow Oracle's naming conventions.

Packages and Namespaces

Naming Conventions

Packages and namespaces may use the university internal domain: http://kieler.cs.cau.de. In fact, that domain forwards to the KIELER project website, although it is not the official domain. Package names should begin with de.cau.cs.kieler, following Oracle's naming conventions.

Plug-In Projects

Naming Conventions

When a project consists of several plug-ins, all of them should share the same prefix. For example, all KIML plug-ins start with de.cau.cs.kieler.kiml. Plug-ins containing examples should begin with de.cau.cs.kieler.example. The project name, project ID and project folder should be the same.

Project Settings

Version Numbering

See the Eclipse guidelines on version numbering for general advice on choosing version numbers for projects. All our projects start with version 0.1.0, which is increased after each new release where the project content or its dependencies have changes. Append the string .qualifierto all version numbers to avoid problems with the build system. (if that part is omitted, the build system won't realize that it has to build the project)

Metadata

In the plug-in manifest editor, be sure to follow these settings:

Metadata for Extension Points

Automatic Build Integration

Features

Naming Conventions

If <name> is the name of a feature's base plug-in, then the feature project and its directory are named <name>.feature, and the feature is assigned the ID <name>.feature. For example, the plug-in de.cau.cs.kieler.core is contained in the feature de.cau.cs.kieler.core.feature, and this feature is located in the feature project de.cau.cs.kieler.core.feature in the directory features/de.cau.cs.kieler.core.feature.

Version Numbering

The version numbering conventions for plug-ins apply to features as well.

Metadata

Source Features

This section hasn't been written yet.