DevelopmentRoadmap

From Inkscape Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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