Difference between revisions of "DevelopmentRoadmap"

From Inkscape Wiki
Jump to navigation Jump to search
m (+cat)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 +
This page is old. Please see [[Roadmap]] for more up-to-date information.
  
 +
== Inkscape Development Roadmap ==
 +
 +
This is a working document showing specific near-term tasks needed for achieving milestones.
 +
 +
=== Milestone 2 ===
 +
Inkscape Production:
 +
* (DONE) Create Freshmeat project for Inkscape [tgould]
 +
* (DONE) Remove the KDE / Qt code and dependencies [manny]
 +
* Add modelines to source files for popular editors (vim/emacs) [tvon]
 +
* Check all listed Sodipodi bugs and copy recreatible ones to Inkscape's CVS tracker
 +
* Investigate why events don't always get passed from dialogs to canvas - see [[InkscapeTamed]], section II
 +
* Fill in [[HandlingPreferences]] with explanation of Howto add configuration parameters to the config file
 +
* Review and integrate remaining patches in Sodipodi patch tracker [tgould]
 +
* Implement preliminary support for doxygen or doc++ in the codebase [joncruz]
 +
* Implement preliminary support for arrowheads on path ends [bryce]
 +
* Implement preliminary support for layers [mental]
 +
* Implement preliminary support for iso & hex grid [njh]
 +
* Eliminate all warnings in g++ build process on Linux [joncruz]
 +
* Release 0.36 and post to Freshmeat
 +
 +
Inkscape Experimental R&D
 +
* Identify the remaining XML compliance bugs needing to be fixed & add to plan [mental]
 +
* (DONE) Describe what needs to be done to fix ambiguous default namespace issue [mental]
 +
:We need to disambiguate between qnames that have no namespace and qnames in the default namespace (normally SVG's).  Since internally we use a standard set of prefixes with qnames rather than expanded names, this means using e.g. "svg:g" and "svg:svg" instead of "g" and "svg" everywhere to name SVG elements.  Note that namespaces are normalized to our standard prefix  mappings at load time, so that does not itself constitute a compliance issue.  -- [[MenTaLguY]]
 +
* Select a regression test system strategy (cutest?) [mental]
 +
* Build a new grid options dialog using gtkmm [njh]
 +
* Investigate ps2ai and ai2svg conversion options (potential EPS support?)
 +
* Identify how text-along-a-path could be implemented & plan for M3 or M4
 +
* Prototype stroking/path enhancements [njh]
 +
* Create list of requirements for plugin system & gain team concensus on it [joncruz, bryce]
 +
 +
Inkscape Website & Project
 +
* (DONE) Convert wiki to new look and feel [tvon]
 +
* Convert website to new look and feel [tvon]
 +
* Post project status [bryce]
 +
* See if it's possible to make wiki send edit notification to a mailing list & set it up if so [bryce]
 +
* Set up backup systems http://sourceforge.net/project/admin/backup.php?group_id=93438
 +
* Figure out why http://www.inkscape.org/mockups/export_dialog_02.png doesn't display [tvon]
 +
* Set up hourly cronjob to rebuild code docs onto website [tvon, joncruz]
 +
* Plan out Milestone 3 [bryce]
 +
 +
=== Milestone 3 ===
 +
Inkscape Production
 +
* Implement basic 'make test' regression test support w/ at least one unit test [mental]
 +
* Learn how to make regression tests by creating one for one source file [bryce]
 +
* Learn how to make regression tests by creating one for one source file [njh]
 +
* Learn how to make regression tests by creating one for one source file [ted]
 +
* Further define regression test system implementation plan [bryce]
 +
* Commit to C++ build; rename .c files to .cpp [mental]
 +
 +
Inkscape Experimental:
 +
* Write a codebase directory structure proposal and post to mailing list for review [Mental]
 +
* Write an extensions/plugin proposal and post to mailing list for review [njh]
 +
* Plan task(s) for converting Inkscape Production's dir structure to new scheme
 +
 +
Inkscape Website
 +
* Set up Google Search for inkscape.org [bryce]
 +
 +
=== Milestone [Future] ===
 +
* Go through all Sodipodi feature requests and copy ones worth doing into Inkscape's tracker
 +
* Investigate setting up SF's trick for CVS authentication control [bryce]
 +
* Achieve convergence between inkscape and experimental version
 +
* Determine requirements for an Inkscape 1.00 release & establish plans
 +
* Set up a logging bot for jabber w/ auto-post of htmlified logs to website [bryce]
 +
* Create a gateway to auto-announce things onto website(?) [bryce]
 +
* Review karbon14 codebase for code/libs to reuse
 +
* Investigate getting spsvgview building in C++
 +
* Rework text layout code to use [[PangoLayout]]
 +
* Change Inkscape from 'CSDI' to 'SDI'.  See [http://developer.gnome.org/projects/gup/hig/1.0/windows.html#document-interface-types HIG Document Interface Types]
 +
* Add tutorial for using CVS, creating patches, doing .cvsignore, seeing diffs in commit msg to Wiki
 +
* Set up a bot to #inkscape channel in IRC - put config in cvs 'project' module
 +
* Set up a 'project' cvs module for putting config files, backups, etc.
 +
* Write up some Jabber tricks and advice for new Jabberites & how to share contact info
 +
* Appease jimmac by adding a path tool so that maybe he will stop using Illistrator to create GNOME SVG Artwork - see [http://jimmac.musichall.cz/ikony.php3] right side of page.
 +
* Inquire about becoming a part of GNOME Office
 +
 +
 +
== [[PastMilestones]] ==
 +
 +
[[Category:Developer Discussion]]

Latest revision as of 15:50, 25 July 2006

This page is old. Please see Roadmap for more up-to-date information.

Inkscape Development Roadmap

This is a working document showing specific near-term tasks needed for achieving milestones.

Milestone 2

Inkscape Production:

  • (DONE) Create Freshmeat project for Inkscape [tgould]
  • (DONE) Remove the KDE / Qt code and dependencies [manny]
  • Add modelines to source files for popular editors (vim/emacs) [tvon]
  • Check all listed Sodipodi bugs and copy recreatible ones to Inkscape's CVS tracker
  • Investigate why events don't always get passed from dialogs to canvas - see InkscapeTamed, section II
  • Fill in HandlingPreferences with explanation of Howto add configuration parameters to the config file
  • Review and integrate remaining patches in Sodipodi patch tracker [tgould]
  • Implement preliminary support for doxygen or doc++ in the codebase [joncruz]
  • Implement preliminary support for arrowheads on path ends [bryce]
  • Implement preliminary support for layers [mental]
  • Implement preliminary support for iso & hex grid [njh]
  • Eliminate all warnings in g++ build process on Linux [joncruz]
  • Release 0.36 and post to Freshmeat

Inkscape Experimental R&D

  • Identify the remaining XML compliance bugs needing to be fixed & add to plan [mental]
  • (DONE) Describe what needs to be done to fix ambiguous default namespace issue [mental]
We need to disambiguate between qnames that have no namespace and qnames in the default namespace (normally SVG's). Since internally we use a standard set of prefixes with qnames rather than expanded names, this means using e.g. "svg:g" and "svg:svg" instead of "g" and "svg" everywhere to name SVG elements. Note that namespaces are normalized to our standard prefix mappings at load time, so that does not itself constitute a compliance issue. -- MenTaLguY
  • Select a regression test system strategy (cutest?) [mental]
  • Build a new grid options dialog using gtkmm [njh]
  • Investigate ps2ai and ai2svg conversion options (potential EPS support?)
  • Identify how text-along-a-path could be implemented & plan for M3 or M4
  • Prototype stroking/path enhancements [njh]
  • Create list of requirements for plugin system & gain team concensus on it [joncruz, bryce]

Inkscape Website & Project

Milestone 3

Inkscape Production

  • Implement basic 'make test' regression test support w/ at least one unit test [mental]
  • Learn how to make regression tests by creating one for one source file [bryce]
  • Learn how to make regression tests by creating one for one source file [njh]
  • Learn how to make regression tests by creating one for one source file [ted]
  • Further define regression test system implementation plan [bryce]
  • Commit to C++ build; rename .c files to .cpp [mental]

Inkscape Experimental:

  • Write a codebase directory structure proposal and post to mailing list for review [Mental]
  • Write an extensions/plugin proposal and post to mailing list for review [njh]
  • Plan task(s) for converting Inkscape Production's dir structure to new scheme

Inkscape Website

  • Set up Google Search for inkscape.org [bryce]

Milestone [Future]

  • Go through all Sodipodi feature requests and copy ones worth doing into Inkscape's tracker
  • Investigate setting up SF's trick for CVS authentication control [bryce]
  • Achieve convergence between inkscape and experimental version
  • Determine requirements for an Inkscape 1.00 release & establish plans
  • Set up a logging bot for jabber w/ auto-post of htmlified logs to website [bryce]
  • Create a gateway to auto-announce things onto website(?) [bryce]
  • Review karbon14 codebase for code/libs to reuse
  • Investigate getting spsvgview building in C++
  • Rework text layout code to use PangoLayout
  • Change Inkscape from 'CSDI' to 'SDI'. See HIG Document Interface Types
  • Add tutorial for using CVS, creating patches, doing .cvsignore, seeing diffs in commit msg to Wiki
  • Set up a bot to #inkscape channel in IRC - put config in cvs 'project' module
  • Set up a 'project' cvs module for putting config files, backups, etc.
  • Write up some Jabber tricks and advice for new Jabberites & how to share contact info
  • Appease jimmac by adding a path tool so that maybe he will stop using Illistrator to create GNOME SVG Artwork - see [1] right side of page.
  • Inquire about becoming a part of GNOME Office


PastMilestones