Difference between revisions of "Roadmap"
Jump to navigation
Jump to search
Line 11: | Line 11: | ||
Internals | Internals | ||
− | |||
− | |||
− | |||
− | |||
− | |||
* masks/clippaths | * masks/clippaths | ||
− | ** (DONE)Implement creation | + | ** (DONE) Implement creation |
− | * | + | * (DONE) Load-from-URL |
− | |||
− | |||
− | |||
RFE's | RFE's | ||
− | |||
*(DONE) tools: add/remove points on path, bezier drag | *(DONE) tools: add/remove points on path, bezier drag | ||
Maintenance | Maintenance | ||
− | + | * (DONE) When run without installing, make it look for icon image file(s) locally so we don't get garbage icons | |
− | |||
− | * ( | ||
− | |||
Testing | Testing | ||
* (DONE) Implement tests of Inkscape against the [[W3C]] test suite [rick beton, bryce] | * (DONE) Implement tests of Inkscape against the [[W3C]] test suite [rick beton, bryce] | ||
− | * | + | |
+ | Statistics | ||
+ | * (DONE) Reduce open/total RFE ratio to 55% | ||
=== Milestone 11 - Import/Export Feature Enhancements - Inkscape 0.45 === | === Milestone 11 - Import/Export Feature Enhancements - Inkscape 0.45 === | ||
+ | |||
+ | New/Changed Dependencies | ||
+ | * (DONE) Change to Gtk 2.6 | ||
+ | * (DONE) Drop libloudmouth | ||
* (DONE) Bidirectional text in Pango needs attention | * (DONE) Bidirectional text in Pango needs attention | ||
* (DONE) [[MakeVertical]] in Pango needs attention | * (DONE) [[MakeVertical]] in Pango needs attention | ||
* (DONE) integrate [[Googles_Summer_Of_Code]] 2006 work, i.e. [[Filter_Effects|SVG Filters]] and [[User:Daleharvey|formalising the protocol for inkboard communication]] | * (DONE) integrate [[Googles_Summer_Of_Code]] 2006 work, i.e. [[Filter_Effects|SVG Filters]] and [[User:Daleharvey|formalising the protocol for inkboard communication]] | ||
− | * | + | |
+ | |||
+ | === Milestone 12 - Inkscape 0.46 === | ||
+ | |||
+ | New/Changed Dependencies: | ||
+ | * Gtk 2.8 | ||
+ | |||
+ | Refactoring/Cleanup Effort: | ||
+ | * Eliminate use of the style.h types in as much of codebase as possible, particularly display/*. | ||
+ | * Create an SPObject API for tracking references and avoiding id clashes on import and interdocument copy/paste. What we need are a void SPDocument::importCopies([set of SPObjects]), and an [set of SPObjects] SPObject::dependencies() method. | ||
+ | * Implement [http://grin-optics.org gradient] UI "release" handler to deal with gradient garbage collection (see bug 984854) | ||
+ | * improvement of svg patterns UI - make it similar to gradient-drag, instead of piggybacking knotholder | ||
+ | * Change to use of GQuarks instead of #defines where feasible | ||
+ | * Learn and use autoscan and autoreconf to find out which configure tests are still needed. | ||
+ | * Clean up configure.in | ||
+ | * (PARTIALLY DONE) [http://inkscape.org/cgi-bin/wiki.pl?DirectoryReorgProposal Directory Reorganization] (rejon) | ||
+ | |||
+ | File Format Support Effort: | ||
* PDF Export | * PDF Export | ||
* Investigate ps2ai, pstoedit and ai2svg conversion options (potential EPS support?) | * Investigate ps2ai, pstoedit and ai2svg conversion options (potential EPS support?) | ||
* Import of native Adobe Illustrator files | * Import of native Adobe Illustrator files | ||
− | |||
* Add extension for use of [[VDX2SVG]] (http://vdxtosvg.sourceforge.net/) | * Add extension for use of [[VDX2SVG]] (http://vdxtosvg.sourceforge.net/) | ||
* Add extension for use of [[PDF2SVG]] (http://www.solidcode.net/pdf2svg/ - this doesn't actually link to a useful page) | * Add extension for use of [[PDF2SVG]] (http://www.solidcode.net/pdf2svg/ - this doesn't actually link to a useful page) | ||
+ | |||
+ | Extensions Effort: | ||
+ | * Implement extension API | ||
+ | * Implement extension registry | ||
+ | * Complete Extension preferences dialog | ||
+ | |||
+ | Desktop Integration Effort: | ||
* [[WebDAV/FTP]] support via GNOME-VFS, Neon, or the like | * [[WebDAV/FTP]] support via GNOME-VFS, Neon, or the like | ||
+ | * Make printing work more efficiently and reliably | ||
+ | |||
+ | Testing: | ||
+ | * Include some rendering tests in `make check'. | ||
+ | * Get 'make check' to pass on Win32 and OSX | ||
− | + | SVG Compliance | |
+ | * masks/clippaths | ||
+ | ** on-canvas editing | ||
+ | * [http://sourceforge.net/tracker/index.php?func=detail&aid=893812&group_id=93438&atid=604309 hyperlinking] | ||
− | + | === Milestone 13 - Inkscape 0.47 === | |
− | |||
− | + | New/Changed Dependencies: | |
+ | * Gtk 2.10 | ||
* Reduce open/total RFE ratio to 40% | * Reduce open/total RFE ratio to 40% | ||
* Reduce open/total bug ratio to 5% | * Reduce open/total bug ratio to 5% | ||
− | === Milestone 14 | + | === Milestone 14 - Inkscape 0.48 === |
* Object-to-object snapping | * Object-to-object snapping | ||
− | * | + | * Markers - |
* Enhanced grid system | * Enhanced grid system | ||
* Inter-application cut-and-paste | * Inter-application cut-and-paste | ||
* Inter-application drag-and-drop | * Inter-application drag-and-drop | ||
* Clipart manager GUI | * Clipart manager GUI | ||
− | |||
− | === Milestone 15 | + | === Milestone 15 - Inkscape 0.49 === |
* Replace style.cpp entirely, with a clearer and cleaner version. | * Replace style.cpp entirely, with a clearer and cleaner version. | ||
Line 81: | Line 105: | ||
− | === Milestone 16 | + | === Milestone 16 - Inkscape 0.50 === |
* Prereq: Is renderer immune to the same kinds of numerical problems we see with our new renderer, libnr, or libart? | * Prereq: Is renderer immune to the same kinds of numerical problems we see with our new renderer, libnr, or libart? | ||
Line 87: | Line 111: | ||
* Integrate a Cairo-based SVG Canvas library | * Integrate a Cairo-based SVG Canvas library | ||
− | === Milestone 17 | + | === Milestone 17 - Inkscape 0.51 === |
* Prereq: We need a conceptualization of how it should work | * Prereq: We need a conceptualization of how it should work | ||
Line 93: | Line 117: | ||
− | === Milestone 18 | + | === Milestone 18 - Inkscape 0.52 === |
* Reenable fuzzy font matching [bb] | * Reenable fuzzy font matching [bb] | ||
− | === Milestone 19 | + | === Milestone 19 - Inkscape 0.53 === |
* Implement [[LittleCMS]] as color management system | * Implement [[LittleCMS]] as color management system | ||
* (DONE) Create a swatches dialog | * (DONE) Create a swatches dialog | ||
− | === Milestone 20 | + | === Milestone 20 - Inkscape 0.54 === |
− | === Milestone 21 | + | === Milestone 21 - Inkscape 0.55 === |
* Reduce open/total RFE ratio to 30% | * Reduce open/total RFE ratio to 30% | ||
+ | |||
+ | |||
Revision as of 00:12, 23 January 2007
Contents
- 1 Inkscape Development Roadmap
- 1.1 Milestone 10 - RFE's & Extensions Implementation - Inkscape 0.44
- 1.2 Milestone 11 - Import/Export Feature Enhancements - Inkscape 0.45
- 1.3 Milestone 12 - Inkscape 0.46
- 1.4 Milestone 13 - Inkscape 0.47
- 1.5 Milestone 14 - Inkscape 0.48
- 1.6 Milestone 15 - Inkscape 0.49
- 1.7 Milestone 16 - Inkscape 0.50
- 1.8 Milestone 17 - Inkscape 0.51
- 1.9 Milestone 18 - Inkscape 0.52
- 1.10 Milestone 19 - Inkscape 0.53
- 1.11 Milestone 20 - Inkscape 0.54
- 1.12 Milestone 21 - Inkscape 0.55
- 1.13 Milestone [Future]
Inkscape Development Roadmap
NOTE: This is a working document showing specific near-term tasks needed for achieving milestones. The number in front of the version is in reference to the milestone.
Milestones 0-9 have been completed since the start of the Inkscape Project. See OldRoadmap
Milestone 10 - RFE's & Extensions Implementation - Inkscape 0.44
New/Changed Dependencies
- (DONE) Add libcroco
Internals
- masks/clippaths
- (DONE) Implement creation
- (DONE) Load-from-URL
RFE's
- (DONE) tools: add/remove points on path, bezier drag
Maintenance
- (DONE) When run without installing, make it look for icon image file(s) locally so we don't get garbage icons
Testing
- (DONE) Implement tests of Inkscape against the W3C test suite [rick beton, bryce]
Statistics
- (DONE) Reduce open/total RFE ratio to 55%
Milestone 11 - Import/Export Feature Enhancements - Inkscape 0.45
New/Changed Dependencies
- (DONE) Change to Gtk 2.6
- (DONE) Drop libloudmouth
- (DONE) Bidirectional text in Pango needs attention
- (DONE) MakeVertical in Pango needs attention
- (DONE) integrate Googles_Summer_Of_Code 2006 work, i.e. SVG Filters and formalising the protocol for inkboard communication
Milestone 12 - Inkscape 0.46
New/Changed Dependencies:
- Gtk 2.8
Refactoring/Cleanup Effort:
- Eliminate use of the style.h types in as much of codebase as possible, particularly display/*.
- Create an SPObject API for tracking references and avoiding id clashes on import and interdocument copy/paste. What we need are a void SPDocument::importCopies([set of SPObjects]), and an [set of SPObjects] SPObject::dependencies() method.
- Implement gradient UI "release" handler to deal with gradient garbage collection (see bug 984854)
- improvement of svg patterns UI - make it similar to gradient-drag, instead of piggybacking knotholder
- Change to use of GQuarks instead of #defines where feasible
- Learn and use autoscan and autoreconf to find out which configure tests are still needed.
- Clean up configure.in
- (PARTIALLY DONE) Directory Reorganization (rejon)
File Format Support Effort:
- PDF Export
- Investigate ps2ai, pstoedit and ai2svg conversion options (potential EPS support?)
- Import of native Adobe Illustrator files
- Add extension for use of VDX2SVG (http://vdxtosvg.sourceforge.net/)
- Add extension for use of PDF2SVG (http://www.solidcode.net/pdf2svg/ - this doesn't actually link to a useful page)
Extensions Effort:
- Implement extension API
- Implement extension registry
- Complete Extension preferences dialog
Desktop Integration Effort:
- WebDAV/FTP support via GNOME-VFS, Neon, or the like
- Make printing work more efficiently and reliably
Testing:
- Include some rendering tests in `make check'.
- Get 'make check' to pass on Win32 and OSX
SVG Compliance
- masks/clippaths
- on-canvas editing
- hyperlinking
Milestone 13 - Inkscape 0.47
New/Changed Dependencies:
- Gtk 2.10
- Reduce open/total RFE ratio to 40%
- Reduce open/total bug ratio to 5%
Milestone 14 - Inkscape 0.48
- Object-to-object snapping
- Markers -
- Enhanced grid system
- Inter-application cut-and-paste
- Inter-application drag-and-drop
- Clipart manager GUI
Milestone 15 - Inkscape 0.49
- Replace style.cpp entirely, with a clearer and cleaner version.
- (DONE) Integrate use of libcroco for handling Cascading Style Sheets.
- Palettes
- Custom palettes like from Gnome
- Ability to load 3rd-party palettes (e.g. Pantone, Trumatch, Focoltone, Toyo, etc.)
Milestone 16 - Inkscape 0.50
- Prereq: Is renderer immune to the same kinds of numerical problems we see with our new renderer, libnr, or libart?
- Will the new renderer improve performance for most users?
- Integrate a Cairo-based SVG Canvas library
Milestone 17 - Inkscape 0.51
- Prereq: We need a conceptualization of how it should work
- Currently, part of the concept discussion is at here
Milestone 18 - Inkscape 0.52
- Reenable fuzzy font matching [bb]
Milestone 19 - Inkscape 0.53
- Implement LittleCMS as color management system
- (DONE) Create a swatches dialog
Milestone 20 - Inkscape 0.54
Milestone 21 - Inkscape 0.55
- Reduce open/total RFE ratio to 30%
Milestone [Future]
- Investigate performance measurement testing for Inkscape
- Convert all tabs into spaces (convert tabs to 4 spaces)
- Rename all 'SPFooBar' routines to 'FooBar' and put into namespaces
- (DONE) dialogs folder
- Investigate SVG docs where SVG is not the default namespace used at the root -- e.g. <svg:svg xmlns:svg="http://...etc"><svg:rect.../><blah></svg:svg> -- <blah> would end up getting shoehorned into the svg namespace
- Write an Internal DTD subset describing the custom Inkscape XML elements, for validation against SVG DTD
- Ensure Inkscape does not throw away the internal DTD subsets of documents it reads
- Start thinking about 1.0 when major functionality gaps are closed
- (BASICALLY DONE) layers
- (DONE) color palette
- (DONE) gradient tool
- (DONE) patterns
- (DONE) text on path and in shape
- (DONE) text selection
- (DONE) SVG filters
- mask tool
- perspective transforms
- scripting
- path editing
- shaped strokes
- Implement preliminary support for iso & hex grid
- Implement perspective transformations via PerspectiveObject
- Improve freehand curve smoothness [pjrm, paraprax]
- Review X1-1GUITest on SF
- Review usability links at http://openusability.org/docman/?group_id=52
- Review usability links at http://openusability.org/docman/?group_id=57
- Editable toolbars (libegg)