--- /dev/null
+===============================================================================
+
+Do NOT commit to this module without permission from a maintainer;
+see the MAINTAINERS file for who they are. You should discuss all
+changes on the gLabels developers mail list:
+
+ glabels-devel@lists.sourceforge.net
+
+To join the list visit:
+
+ https://lists.sourceforge.net/lists/listinfo/glabels-devel
+
+The list is moderated for first time posters.
+
+See below for additional guidelines.
+
+===============================================================================
+
+ROADMAP
+=======
+
+See the TODO file in this directory.
+
+
+BRANCHES
+========
+
+gLabels will typically have 2 active branches: a stable branch and a
+development branch. A branch represents a series of releases with a
+fixed major and minor version. The minor version will be an even
+number for a stable branch and will be an odd number for a development
+branch. For example the "2.2.5" release would be from a stable branch
+and "2.3.5" would be a development release.
+
+Stable branch
+-------------
+
+Some characteristics of a stable branch:
+
+- Prerequisites are fixed for the lifetime of the branch.
+- The primary purpose of releases within a branch is to fix bugs.
+- Besides bug fixes, releases may also include new and updated translations,
+ updated documentation, and new label templates.
+- Generally, no new features will be introduced by a release within a
+ stable branch unless it is necessary to fix a bug. Such a fix should not
+ introduce new prerequisites.
+- Nor will code be refactored unless it is necessary to fix a bug.
+- The Git branch will be named glabels_major_minor. E.g. "glabels_2_2".
+
+Unstable/development branch
+---------------------------
+
+Some characteristics of a development branch:
+
+- Prerequisites are volatile and may change release to release.
+- The primary purpose of releases is to introduce new features and
+ get them in the hands of testers.
+- Features and file formats may be volatile and change release to
+ release.
+- No attempt will be made to maintain backwards compatibility with
+ development releases.
+- The development branch is maintained in the Git master branch.
\ No newline at end of file
Development plan
----------------
-This development plan sets a specific set of milestones for future versions of glabels.
+This development plan sets a specific set of milestones for future versions
+of glabels.
Goals for 2.2.x:
- - Bugfixes
+ - Bugfixes
- - Translations
+ - Translations
-Possible Goals for 2.3.x (current development branch):
+Goals for 2.3.x (current development branch for 3.0):
- - Undo, Redo capability
+ - Migrate to Gnome 3.0 platform
- - Make text items rich. I.e. allow multiple characteristics
- to exist within a single object.
+ - Remove deprecations from Gnome 2.0 platform
- - Text effects. (follow contour, non-rectangular text boxes,
- ...)
+ - New color combo selector widget family
- - Ability to select/unselect individual records during a merge-print.
+ - New font selector widget family
- - Add additional "merge" backends. Candidates include:
- gnome-db
- internal database stored in glabels file
- generic XML
- freedb (CDDB) for CD labels
- ADIF for generating QSL-cards
+ - Ability to select/unselect individual records during a
+ merge-print.
- - Printer calibration tool: a facility for tweaking output origin and
- scale. This should really be part of the underlying print system but
- currently is not, so I may want to add the hack.
+ - Improve documentation and translation maintainance
- - Adjustable grid spacing. Spacing of visible grid should be user
- adjustable. This grid spacing should be an integral multiple of
- a finer invisible grid. There should be a "snap to grid" toggle,
- that causes all posistioning and sizing performed on the canvas
- to snap to the closest grid. The possible grid spacing should be
- appropriate for the current units selected (e.g. .1 points, .01 mm,
- 1/64 inch, 0.001 inch).
+ - Code cleanup
- - Allow for management of custom templates
- (i.e. delete, rename, edit).
+
+Possible Goals for future branches:
+
+ - Make text items rich. I.e. allow multiple characteristics
+ to exist within a single object. Basically each text object
+ will be a mini word processor. The bounding box for the object
+ will act like a page, where lines wrap on the word boundary.
+
+ - Undo, Redo capability
+
+ - Text effects. (follow contour, non-rectangular text boxes,
+ ...)
+
+ - Add additional "merge" backends. Candidates include:
+ gnome-db
+ internal database stored in glabels file
+ generic XML
+ freedb (CDDB) for CD labels
+ ADIF for generating QSL-cards
+
+ - Printer calibration tool: a facility for tweaking output
+ origin and scale. This should really be part of the
+ underlying print system but currently is not, so we may
+ want to add the hack.
+
+ - Adjustable grid spacing. Spacing of visible grid should
+ be user adjustable. This grid spacing should be an
+ integral multiple of a finer invisible grid. There should
+ be a "snap to grid" toggle, that causes all posistioning
+ and sizing performed on the canvas to snap to the closest
+ grid. The possible grid spacing should be appropriate
+ for the current units selected (e.g. .1 points, .01 mm,
+ 1/64 inch, 0.001 inch).
+
+ - Allow for management of custom templates
+ (i.e. delete, rename, edit).
+
+ - See https://sourceforge.net/tracker/?atid=445119&group_id=46122&func=browse
+ for additional ideas.