Difference between revisions of "Roadmap"

From Inkscape Wiki
Jump to navigation Jump to search
m (Bolded titles of lists.)
(Mostly formatting and markup edits (“minor” in that the edits are not content-related…or not minor if you count their quantity). Also fixed a couple minor spelling errors.)
Line 1: Line 1:
== Inkscape Development Roadmap ==  
== Inkscape Development Roadmap ==  


NOTE: This is a working document showing specific near-term tasks needed for achieving the numbered milestones.
'''NOTE:''' This is a working document showing specific near-term tasks needed for achieving the numbered milestones.


''Milestones 0-12 have been completed since the start of the Inkscape Project. See [[OldRoadmap]]''
''Milestones 0-12 have been completed since the start of the Inkscape Project. See [[OldRoadmap]]''
Line 7: Line 7:
=== Milestone 13 - Inkscape 0.47 - Refactoring / Cleanup ===
=== Milestone 13 - Inkscape 0.47 - Refactoring / Cleanup ===


'''New/Changed Dependencies:'''
==== New/Changed Dependencies ====
* Gtk 2.12 (required)
* GTK 2.12 (required)


'''Architectural Refactoring Effort:'''
==== Architectural Refactoring Effort ====
* [[Lib2geom]] Integration
* [[Lib2geom]] Integration
** Eliminate code in favor of 2geom where feasible
** Eliminate code in favor of <code>2geom</code> where feasible
* Convert remaining GTK dialog code to Gtkmm
* Convert remaining GTK dialog code to GTKmm
* Eliminate all use of sp_repr_new in favor of XML::Document::* classes (see [http://article.gmane.org/gmane.comp.graphics.inkscape.devel/19068])
* Eliminate all use of <code>sp_repr_new</code> in favor of <code>XML::Document::*</code> classes (see [http://article.gmane.org/gmane.comp.graphics.inkscape.devel/19068])
* SubsystemRearchitecture
* Subsystem Rearchitecture
** Migrate SPObject to native C++ classes
** Migrate <code>SPObject</code> to native C++ classes
** Rename all '[[SPFooBar]]' routines to '[[FooBar]]' and put into namespaces
** Rename all '[[SPFooBar]]' routines to '[[FooBar]]' and put into namespaces
* Implement [http://grin-optics.org gradient] UI "release" handler to deal with gradient garbage collection (see bug 984854)
* Implement [http://grin-optics.org gradient] UI “release” handler to deal with gradient garbage collection (see bug 984854)
* Create an API for tracking references and avoiding id clashes on import and interdocument copy/paste. The optimal place to put it would probably be somewhere at the XML level.
** '''Note:''' ''I can't find this bug on Inkscape.  Could someone locate and link it?'' <br>--[[User:Zearin|Zearin]] 18:48, 5 November 2009 (UTC)
* Streamline style.*
* Create an API for tracking references and avoiding id clashes on import and interdocument copy/paste. The optimal place to put it would probably be somewhere at the XML level
** Eliminate use of the style.h types in as much of codebase as possible, particularly display/*.
* Streamline style
** Externally, it should present a simple set of accessor methods for getting/setting properties by name, and propagating to/from repr.
** Eliminate use of the <tt>style.h</tt> types in as much of codebase as possible, particularly display
** Externally, it should present a simple set of accessor methods for getting/setting properties by name, and propagating to/from <tt>repr</tt>
** Inside, it should have:
** Inside, it should have:
*** a concise list of property names with the expected domain of values in CSS and the associated Inkscape data type
*** a concise list of property names with the expected domain of values in CSS and the associated Inkscape data type
Line 29: Line 30:
*** some generic code (not tied to any one property) implementing the needed behavior
*** some generic code (not tied to any one property) implementing the needed behavior


'''Codebase Cleanup Effort:'''
==== Codebase Cleanup Effort ====
* Change to use of [http://library.gnome.org/devel/glib/stable/glib-Quarks.html GQuarks] instead of #defines where feasible
* Change to use of [http://library.gnome.org/devel/glib/stable/glib-Quarks.html GQuarks] instead of <code>#defines</code> where feasible
* Use autoscan and autoreconf to find out which configure tests are still needed.
* Use <code>autoscan</code> and <code>autoreconf</code> to find out which configure tests are still needed
** Trim down the amount of stuff in our configure.ac
** Trim down the amount of stuff in our <tt>configure.ac</tt>
* (PARTIALLY DONE) [[DirectoryReorgProposal]]
* <ins>(PARTIALLY DONE)</ins> [[DirectoryReorgProposal]]
* Convert all tabs into spaces (convert tabs to 4 spaces)
* Convert all tabs into spaces (convert tabs to 4 spaces)
** Also see http://sourceforge.net/mailarchive/message.php?msg_id=7164324
** Also see http://sourceforge.net/mailarchive/message.php?msg_id=7164324
* [[http://wiki.inkscape.org/wiki/index.php/InkscapeJanitors#Cleanup:_Whitespace Remove trailing whitespace]]
* [[http://wiki.inkscape.org/wiki/index.php/InkscapeJanitors#Cleanup:_Whitespace Remove trailing whitespace]]
* Replace use of C macros (E.g. SP_IS_PATH) with C++ instance methods, static class methods, etc.
* Replace use of C macros (e.g. <code>SP_IS_PATH</code>) with C++ instance methods, static class methods, etc.
* Use [http://pmd.sourceforge.net/cpd.html Copy/Paste Detector] to find and refactor duplicated code
* Use [http://pmd.sourceforge.net/cpd.html Copy/Paste Detector] to find and refactor duplicated code


'''User Documentation Effort:'''
==== User Documentation Effort ====
* Re-arrange tutorials into sub-categories
* Rearrange tutorials into sub-categories
* (PARTIALLY DONE) Switch to use of xml2po for tutorial files ([[User:Colin Marquardt|Colin Marquardt]])
* <ins>(PARTIALLY DONE)</ins> Switch to use of <code>xml2po</code> for tutorial files ([[User:Colin Marquardt|Colin Marquardt]])
* Document filters
* Document filters


'''Inkscape SVG Effort'''
==== Inkscape SVG Effort ====
* Revisit coordination system (move away from Cartesian)
* Revisit coordination system (move away from Cartesian)


'''User Interface Effort:'''
==== User Interface Effort ====
* Improvement of SVG patterns UI—make it similar to gradient-drag, instead of piggybacking knotholder
* Improvement of SVG patterns UI—make it similar to gradient-drag, instead of piggybacking knotholder
* Palettes
* Palettes
** Custom palettes like from Gnome
** Custom palettes like from Gnome
** Ability to load 3rd-party palettes (e.g. Pantone, Trumatch, Focoltone, Toyo, etc.)
** Ability to load 3<sup>rd</sup>-party palettes (e.g. Pantone, Trumatch, Focoltone, Toyo, etc.)
* Reenable fuzzy font matching [bulia]
* Reenable fuzzy font matching [<tt>bulia</tt>]
* Improve freehand curve smoothness [pjrm, paraprax]
* Improve freehand curve smoothness [<tt>pjrm</tt>, <tt>paraprax</tt>]


'''Testing Effort:'''
==== Testing Effort ====
* Include some rendering tests in `make check'.
* Include some rendering tests in <tt>`make check'</tt>.
* Get 'make check' to pass on Win32 and OSX (with the current btool, does this mean a 'btool check' should pass?)
* Get <tt>`make check'</tt> to pass on Win32 and OSX (with the current <code>btool</code>, does this mean a <tt>`btool check'</tt> should pass?)
* Investigate performance measurement testing for Inkscape
* Investigate performance measurement testing for Inkscape


'''Animation Effort'''
==== Animation Effort ====
* Create a written conceptualization of how it should work
* Create a written conceptualization of how it should work
** Currently, part of the concept discussion is at [[Animation-(Timeline)|here]]
** Currently, part of the concept discussion is at [[Animation-(Timeline)|here]]


'''User Documentation Effort:'''
==== User Documentation Effort ====
* More tutorials
* More tutorials
** Node editing
** Node editing
Line 73: Line 74:
** Creating photo-realistic art
** Creating photo-realistic art


'''Performance effort:'''
==== Performance effort ====
*Support Hardware acceleration
*Support Hardware acceleration
**Take advantage of opengl 2.1 or dx9 to enhance editing and display performance. (Note: OpenVG would be better suited for Inkscape's needs but I'm not sure about its status. --[[User:Tweenk|Tweenk]] 00:53, 26 July 2009 (UTC))
**Take advantage of OpenGL 2.1 or dx9 to enhance editing and display performance.
***('''Note:''' OpenVG would be better suited for Inkscape's needs but I'm not sure about its status. --[[User:Tweenk|Tweenk]] 00:53, 26 July 2009 (UTC))
*Multi-Processor
*Multi-Processor
**Boost performance on multi-core processor.
**Boost performance on multi-core processor.


'''GUI effort:'''
==== GUI effort ====
*Layer panel
*Layer panel
**Add object selection in layer(similar to adobe illustrator).
**Add object selection in layer (similar to Adobe Illustrator).
*Tab document
*Tab document
**Open and create new document(s) in the same window.
**Open and create new document(s) in the same window.
Line 87: Line 89:
**Compact icons
**Compact icons
**Grayed icons
**Grayed icons
***Tool icons turn into color when hovering or selected
***Tool icons turn into color when hovering or selected (similar to Adobe Illustrator).
(similar to adobe illustrator).
*Multi-page
*Multi-page
**Multi-page tool (similar to Artboard tool on adobe illustrator CS4).
**Multi-page tool (similar to Artboard tool on Adobe Illustrator CS4).


=== Milestone 14 - Inkscape 0.48 - Animation ===
=== Milestone 14 - Inkscape 0.48 - Animation ===


File Format Support Effort:
==== File Format Support Effort ====
* PDF Import/Export
* PDF Import/Export
** Choice of PDF spec. (PDF/X-1a, PDF/X-3)
** Choice of PDF spec. (PDF/X-1a, PDF/X-3)
Line 101: Line 102:
* [[MicrosoftVisio|Visio]] support
* [[MicrosoftVisio|Visio]] support
** Add extension for use of [[VDX2SVG]] (http://vdxtosvg.sourceforge.net/)
** Add extension for use of [[VDX2SVG]] (http://vdxtosvg.sourceforge.net/)
** (OBSOLETE) Add extension for use of [[PDF2SVG]] (http://cgit.freedesktop.org/~cworth/svg2pdf/)
** <ins>(OBSOLETE)</ins> <del>Add extension for use of [[PDF2SVG]]</del> (http://cgit.freedesktop.org/~cworth/svg2pdf/)


DOM Binding Effort:
==== DOM Binding Effort ====
* Evaluate Adobe Activescript to use instead of Spidermonkey for our JS engine
* Evaluate Adobe Activescript to use instead of Spidermonkey for our JS engine
* Create sample prototype app to explore ActiveScript
* Create sample prototype app to explore ActiveScript
* Decide whether to go with Spidermonkey or Adobe ActiveScript
* Decide whether to go with Spidermonkey or Adobe ActiveScript


Tools:
==== Tools ====
* [https://bugs.launchpad.net/inkscape/+bug/sf904962 correct handling of multiple font faces] by Text tool
* [https://bugs.launchpad.net/inkscape/+bug/sf904962 correct handling of multiple font faces] by Text tool
* [http://article.gmane.org/gmane.comp.graphics.inkscape.devel/16938/ Filters tool]
* [http://article.gmane.org/gmane.comp.graphics.inkscape.devel/16938/ Filters tool]
* Get basic rendering and authoring of simple animations working adequately
* Get basic rendering and authoring of simple animations working adequately


Desktop Integration Effort:
==== Desktop Integration Effort ====
* [PARTIALLY DONE] Inter-application cut-and-paste
* <ins>[PARTIALLY DONE]</ins> Inter-application cut-and-paste
* Inter-application drag-and-drop
* Inter-application drag-and-drop


Architectural Refactoring Effort:
==== Architectural Refactoring Effort ====
* Complete lib2geom integration
* Complete <code>lib2geom</code> integration


DOM Binding Effort:
==== DOM Binding Effort ====
* Create tool that reads the w3c idl files and generates binding code
* Create tool that reads the W3C <tt>idl</tt> files and generates binding code
* Bind xpath parsing/execution
* Bind XPath parsing/execution
* Finish the CSS-DOM classes
* Finish the <code>CSS-DOM</code> classes
* Add a 'run' mode in a separate window that runs and displays the scripted SVG
* Add a <tt>run</tt> mode in a separate window that runs and displays the scripted SVG


Desktop Integration Effort:
==== Desktop Integration Effort ====
* [[WebDAV/FTP]] support via GVFS, KIO, Neon, or the like
* [[WebDAV/FTP]] support via GVFS, KIO, Neon, or the like
* Finish making printing work more efficiently and reliably
* Finish making printing work more efficiently and reliably
* Clipart manager GUI
* Clipart manager GUI


Inkboard Effort
==== Inkboard Effort ====
* Ensure multi-user conferences work across most JEP-compliant Jabber servers
* Ensure multi-user conferences work across most JEP-compliant Jabber servers
* Conduct an informal security analysis of Inkboard for security flaws
* Conduct an informal security analysis of Inkboard for security flaws


File Format Support Effort:
==== File Format Support Effort ====
* PDF Import/Export
* PDF Import/Export
** Generate multipage PDF documents
** Generate multipage PDF documents
Line 142: Line 142:
** Add crop, bleed and registration marks
** Add crop, bleed and registration marks


Inkboard Effort
==== Inkboard Effort ====
* Stabilize the code by closing crash bugs in the bug tracker
* Stabilize the code by closing crash bugs in the bug tracker


SVG Feature Compliance Effort:
==== SVG Feature Compliance Effort ====
* Animation
* Animation
** Sketch out UI mockup ideas for animation rendering/animation
** Sketch out UI mockup ideas for animation rendering/animation
** Make an ultra-preliminary proof of concept of at least one animation feature
** Make an ultra-preliminary proof of concept of at least one animation feature


Extension Effort:
==== Extension Effort ====
* Unification of the way to display help on extensions
* Unification of the way to display help on extensions
* Localizable help of bundled extensions
* Localizable help of bundled extensions
Line 157: Line 157:
=== Milestone 15 - Inkscape 0.49 - Prototype all SVG Mobile features ===
=== Milestone 15 - Inkscape 0.49 - Prototype all SVG Mobile features ===


SVG Feature Compliance Effort:
==== SVG Feature Compliance Effort ====
* Ability to select which SVG spec version to save as
* Ability to select which SVG spec version to save as
* Multi-page
* Multi-page
Line 164: Line 164:
* Path editing
* Path editing
* Shaped strokes
* Shaped strokes
* Masking/clippaths
* Masking/clip paths
** on-canvas editing (patch for 0.47 is ready)
** on-canvas editing (patch for 0.47 is ready)
** Should work like gradient tool to apply transparency
** Should work like gradient tool to apply transparency
Line 172: Line 172:
=== Milestone 16 - Inkscape 0.50 - SVG Mobile Support ===
=== Milestone 16 - Inkscape 0.50 - SVG Mobile Support ===


SVG Feature Compliance Effort:  (Also see [[SVG Tiny Compliance]])
==== SVG Feature Compliance Effort:  (Also see [[SVG Tiny Compliance]]) ====
* Multi-page
* Multi-page
* Scripting
* Scripting
* Markers
* Markers
** Inherit stroke properties like color
** Inherit stroke properties (like color)
** On-canvas editing
** On-canvas editing
** Fix snapping issue
** Fix snapping issue
Line 183: Line 183:
=== Milestone 17 - Inkscape 0.51 ===
=== Milestone 17 - Inkscape 0.51 ===


Architectural Refactoring Effort:
==== Architectural Refactoring Effort ====
* cairo Adoption Effort:
* <tt>cairo</tt> Adoption Effort:
** Integrate a cairo-based SVG Canvas library
** Integrate a cairo-based SVG Canvas library
* follow the [http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html Freedesktop Icon Naming Spec] for easier themeing
* follow the [http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html Freedesktop Icon Naming Spec] for easier themeing


File Format Support Effort:
==== File Format Support Effort ====
* Native [[Adobe Illustrator]] file Import (DONE)/Export
* Native [[Adobe Illustrator]] file Export / <del>Import</del> <ins>(DONE)</ins>
** (DONE) Requires good PDF Import/Export
** <ins>(DONE)</ins> <del>Requires good PDF Import/Export</del>
* Native [[CorelDraw]] file Import/Export (currently uses UniConvertor)
* Native [[CorelDraw]] file Import/Export (currently uses UniConvertor)
* DXF import/export
* DXF import/export
* Improved raster support via Gdk::Pixbuf
* Improved raster support via <code>Gdk::Pixbuf</code>


=== Milestone 18 - Inkscape 0.52 - Tech drawing abilities ===
=== Milestone 18 - Inkscape 0.52 - Tech drawing abilities ===


User Interface Effort:
==== User Interface Effort ====
* Implement iso (DONE) & hex grid
* Implement <del>iso</del> <ins>(DONE)</ins> and hex grid
* Editable toolbars (Gtk::Toolbar class)
* Editable toolbars (<code>GTK::Toolbar</code> class)
* Geometrical constraints
* Geometrical constraints
** "Perpendicular-to", "Parallel-to", etc.
** “Perpendicular-to”, “Parallel-to”, etc.
* Path trimming/extending/offset
* Path trimming/extending/offset
* Filleting tool
* Filleting tool


Extensions Effort:
==== Extensions Effort ====
* Implement extension registry for users to upload/download extensions via Inkscape
* Implement extension registry for users to upload/download extensions via Inkscape
* Dia-like smart shapes support
* Dia-like smart shapes support
Line 213: Line 213:


* Separate sections of code into various libraries for use by other programs
* Separate sections of code into various libraries for use by other programs
** inkcanvas
** <tt>inkcanvas</tt>
** inkview
** <tt>inkview</tt>
** inkscape
** <tt>inkscape</tt>


=== Milestone 20 - Inkscape 0.54 ===
=== Milestone 20 - Inkscape 0.54 ===

Revision as of 18:48, 5 November 2009

Inkscape Development Roadmap

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

Milestones 0-12 have been completed since the start of the Inkscape Project. See OldRoadmap

Milestone 13 - Inkscape 0.47 - Refactoring / Cleanup

New/Changed Dependencies

  • GTK 2.12 (required)

Architectural Refactoring Effort

  • Lib2geom Integration
    • Eliminate code in favor of 2geom where feasible
  • Convert remaining GTK dialog code to GTKmm
  • Eliminate all use of sp_repr_new in favor of XML::Document::* classes (see [1])
  • Subsystem Rearchitecture
    • Migrate SPObject to native C++ classes
    • Rename all 'SPFooBar' routines to 'FooBar' and put into namespaces
  • Implement gradient UI “release” handler to deal with gradient garbage collection (see bug 984854)
    • Note: I can't find this bug on Inkscape. Could someone locate and link it?
      --Zearin 18:48, 5 November 2009 (UTC)
  • Create an API for tracking references and avoiding id clashes on import and interdocument copy/paste. The optimal place to put it would probably be somewhere at the XML level
  • Streamline style
    • Eliminate use of the style.h types in as much of codebase as possible, particularly display
    • Externally, it should present a simple set of accessor methods for getting/setting properties by name, and propagating to/from repr
    • Inside, it should have:
      • a concise list of property names with the expected domain of values in CSS and the associated Inkscape data type
      • a concise list of property aliases which represent one or more properties combined, each with the rule used to combine
      • definitions of the aforementioned rules and value domains
      • some generic code (not tied to any one property) implementing the needed behavior

Codebase Cleanup Effort

User Documentation Effort

  • Rearrange tutorials into sub-categories
  • (PARTIALLY DONE) Switch to use of xml2po for tutorial files (Colin Marquardt)
  • Document filters

Inkscape SVG Effort

  • Revisit coordination system (move away from Cartesian)

User Interface Effort

  • Improvement of SVG patterns UI—make it similar to gradient-drag, instead of piggybacking knotholder
  • Palettes
    • Custom palettes like from Gnome
    • Ability to load 3rd-party palettes (e.g. Pantone, Trumatch, Focoltone, Toyo, etc.)
  • Reenable fuzzy font matching [bulia]
  • Improve freehand curve smoothness [pjrm, paraprax]

Testing Effort

  • Include some rendering tests in `make check'.
  • Get `make check' to pass on Win32 and OSX (with the current btool, does this mean a `btool check' should pass?)
  • Investigate performance measurement testing for Inkscape

Animation Effort

  • Create a written conceptualization of how it should work
    • Currently, part of the concept discussion is at here

User Documentation Effort

  • More tutorials
    • Node editing
    • Advanced text effects
    • Grid snapping
    • Connectors
    • Creating photo-realistic art

Performance effort

  • Support Hardware acceleration
    • Take advantage of OpenGL 2.1 or dx9 to enhance editing and display performance.
      • (Note: OpenVG would be better suited for Inkscape's needs but I'm not sure about its status. --Tweenk 00:53, 26 July 2009 (UTC))
  • Multi-Processor
    • Boost performance on multi-core processor.

GUI effort

  • Layer panel
    • Add object selection in layer (similar to Adobe Illustrator).
  • Tab document
    • Open and create new document(s) in the same window.
  • Menu icons
    • Compact icons
    • Grayed icons
      • Tool icons turn into color when hovering or selected (similar to Adobe Illustrator).
  • Multi-page
    • Multi-page tool (similar to Artboard tool on Adobe Illustrator CS4).

Milestone 14 - Inkscape 0.48 - Animation

File Format Support Effort

DOM Binding Effort

  • Evaluate Adobe Activescript to use instead of Spidermonkey for our JS engine
  • Create sample prototype app to explore ActiveScript
  • Decide whether to go with Spidermonkey or Adobe ActiveScript

Tools

Desktop Integration Effort

  • [PARTIALLY DONE] Inter-application cut-and-paste
  • Inter-application drag-and-drop

Architectural Refactoring Effort

  • Complete lib2geom integration

DOM Binding Effort

  • Create tool that reads the W3C idl files and generates binding code
  • Bind XPath parsing/execution
  • Finish the CSS-DOM classes
  • Add a run mode in a separate window that runs and displays the scripted SVG

Desktop Integration Effort

  • WebDAV/FTP support via GVFS, KIO, Neon, or the like
  • Finish making printing work more efficiently and reliably
  • Clipart manager GUI

Inkboard Effort

  • Ensure multi-user conferences work across most JEP-compliant Jabber servers
  • Conduct an informal security analysis of Inkboard for security flaws

File Format Support Effort

  • PDF Import/Export
    • Generate multipage PDF documents
    • Define bleed and slug areas for offset printing
    • Add crop, bleed and registration marks

Inkboard Effort

  • Stabilize the code by closing crash bugs in the bug tracker

SVG Feature Compliance Effort

  • Animation
    • Sketch out UI mockup ideas for animation rendering/animation
    • Make an ultra-preliminary proof of concept of at least one animation feature

Extension Effort

  • Unification of the way to display help on extensions
  • Localizable help of bundled extensions
  • Effect extensions browser

Milestone 15 - Inkscape 0.49 - Prototype all SVG Mobile features

SVG Feature Compliance Effort

  • Ability to select which SVG spec version to save as
  • Multi-page
  • Animation
  • Implement perspective transformations via PerspectiveObject
  • Path editing
  • Shaped strokes
  • Masking/clip paths
    • on-canvas editing (patch for 0.47 is ready)
    • Should work like gradient tool to apply transparency
  • hyperlinking
  • Ensure Inkscape does not throw away the internal DTD subsets of documents it reads

Milestone 16 - Inkscape 0.50 - SVG Mobile Support

SVG Feature Compliance Effort: (Also see SVG Tiny Compliance)

  • Multi-page
  • Scripting
  • Markers
    • Inherit stroke properties (like color)
    • On-canvas editing
    • Fix snapping issue
  • Real CMYK / LAB / HSB support

Milestone 17 - Inkscape 0.51

Architectural Refactoring Effort

File Format Support Effort

  • Native Adobe Illustrator file Export / Import (DONE)
    • (DONE) Requires good PDF Import/Export
  • Native CorelDraw file Import/Export (currently uses UniConvertor)
  • DXF import/export
  • Improved raster support via Gdk::Pixbuf

Milestone 18 - Inkscape 0.52 - Tech drawing abilities

User Interface Effort

  • Implement iso (DONE) and hex grid
  • Editable toolbars (GTK::Toolbar class)
  • Geometrical constraints
    • “Perpendicular-to”, “Parallel-to”, etc.
  • Path trimming/extending/offset
  • Filleting tool

Extensions Effort

  • Implement extension registry for users to upload/download extensions via Inkscape
  • Dia-like smart shapes support

(CAD and BlueprintGeometricAndTechDrawing)

Milestone 19 - Inkscape 0.53 - Inkcore

  • Separate sections of code into various libraries for use by other programs
    • inkcanvas
    • inkview
    • inkscape

Milestone 20 - Inkscape 0.54

Milestone 21 - Inkscape 0.55

??? - Inkscape 1.00 - Full SVG 1.1 support

Milestone [Future]