wiki:SimpleMultiProjectPlugin

Version 23 (modified by falkb, 4 years ago) (diff)

description improved

SimpleMultiProjectPlugin

Description

Lets you easily manage multiple projects with one Trac instance.

  • This implements the idea of wiki:TracMultipleProjects/SingleEnvironment.
  • Milestones and versions are assigned to their projects, and both are displayed on the roadmap. There are several possibilities to filter by projects on that page, and also the timeline.
  • Components can be assigned to all or only certain projects.
  • 'New Ticket' will just offer the associated milestones, versions and components of the chosen project. This requires a new custom-ticket field 'project'.

Still an experimental version, feedback much appreciated.

Plan

#10074
roadmap page filter for certain projects
#10075
new ticket page needs support for project selection
#10076
timeline page needs support for project filtering (for tickets)
#10085
version selection depending on projects
#10086
version as date on roadmap
#10087
project-related roadmap filtering/grouping: project group boxes on|off
#10088
project-related roadmap filtering/grouping: only milestones vs. only versions
#10089
project-related timeline page filtering of wiki changes
#10090
user-defined field used to define the "project" (e.g. by using component)
#10096
support permission handling
#10119
show project description as project box header on roadmap page
#10152
Localization / translation support (L10N)
#10365
check 1.0 compatibility
#11162
improve project selection widget
#11543
Per-project ticket.default_* settings

Technical thoughts

This plugin adds a new ressource 'project' implemented by database table:

  1. smp_project: a list of all defined projects

Actually, most database tables of Trac core related to ressources would need a new column 'project_id'. This way tickets, components, milestones, versions or even wikis could attach to certain projects. Since a plugin just adds stuff but cannot change the core structure, it implements the new dimension 'project' not by adding a new column to each ressource table but rather by adding several mapping tables smp_[ressource]_project, each one mapping a certain ressource to projects:

  1. smp_milestone_project: the association of milestones to projects
  2. smp_version_project: the association of versions to projects
  3. smp_component_project: the association of components to projects

Example

Admin Interface:

http://trac-hacks.org/attachment/wiki/SimpleMultiProjectPlugin/project_admin.png


http://trac-hacks.org/attachment/wiki/SimpleMultiProjectPlugin/edit_project.png


Associate a milestone in a project:

http://trac-hacks.org/attachment/wiki/SimpleMultiProjectPlugin/edit_milestone.png


Group milestones and versions on the roadmap by project, and display only projects chosen in the filter box:

http://trac-hacks.org/attachment/wiki/SimpleMultiProjectPlugin/roadmap_projects_filter.png


display only tickets in the timeline of projects chosen in the filter box (adapted from TimelineComponentFilterPlugin):

http://trac-hacks.org/attachment/wiki/SimpleMultiProjectPlugin/timeline_projects_filter.png

Bugs/Feature Requests

Existing bugs and feature requests for SimpleMultiProjectPlugin are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from [download:simplemultiprojectplugin here].

Source

You can check out SimpleMultiProjectPlugin from here using Subversion, or browse the source with Trac.

Installation

  1. Add a custom ticket field 'project' in your trac.ini to give tickets the information to which project they belong. Milestones selection depends on that as well.
    [ticket-custom]
    project = text
    project.label = Project
    project.value =
    
  2. Generate the plugin .egg file from sources
    python setup.py bdist_egg
    
  3. Copy the plugin to Trac, e.g.
    cp dist/SimpleMultiProject-0.0.1-py2.6.egg /instance_trac/plugins/
    
  4. Restart Apache. After installation of this plugin Trac needs a database upgrade!
    trac-admin /instance_trac/ upgrade
    

Recent Changes

15523 by Cinc-th on 2016-04-30 22:18:21
SimpleMultiProjectPlugin: bumped version to V0.5.2dev.
15522 by Cinc-th on 2016-04-30 22:12:17
Release V0.5.1.

The following new features are available:

  • #12367:
    • associate projects and components using the components panel of Trac
  • #12702:
    • new plugin to add a column to the milestone table with version information if ExtendedVersionPlugin is installed and enabled
  • #12703:
    • allow hiding of completed milestones on milestone admin page
    • allow filtering of milestones by project on milestone admin page
  • #12704:
    • allow hiding of completed versions on version admin page
    • allow filtering of versions by project on version admin page

The following bugs were fixed:

  • #12568
    • UnicodeError: source returned bytes, but no encoding specified when using Genshi 0.7
  • #12628
    • IndexError: list index out of range
  • #12761

Some minor fixes not tracked by tickets were applied.

See log:simplemultiprojectplugin@15018:15521 for full changelog since V0.5.0.

Closes #12765

15521 by Cinc-th on 2016-04-30 21:58:37
SimpleMultiProjectPlugin: prepare release V0.5.1.
(more)

Author/Contributors

Author: crossroad, falkb, thomasd
Maintainer: crossroad
Contributors:

Attachments (8)

Download all attachments as: .zip