README for tagcolledit 1.2
==========================

Functionality
-------------

A tagged collection is a set of items in which each item is associated with a
set of zero or more tags, in no particular order.

Or, more briefly, a collection of things with categories attached.

tagcolledit is an experimental GUI program to perform mass-editing of tagged
collections.  It has been written to be the basis for implementing editors for
any kind of tagged collections, like package tags and web browser bookmarks.

Although still on its infancy, it can already be used to navigate and perform
heavy-duty editing of the Debian Package Tags database.

Together with debtags, it can be used to produce tag patches that can be
submitted for inclusion in the main tag database or installed in
/etc/debtags/tagpatch.d to customize the database locally.


What is in this release
-----------------------

Porting to a newer version of libtagcoll1.


Compiling from the subversion repository
----------------------------------------

Additionally to the build-dependencies, you need to install ``libtool`` and
``automake1.9`::

  apt-get install libtool automake1.9
  autoreconf -i
  ./configure
  make

The package uses GNU Libtool.  While this is very nice, it can be a pain when
trying to debug a program. For that reason, compilation of shared libraries can
be turned off by specifying the ``--disable-shared`` option to ``configure``.


Resources
---------

  Website:

    http://debtags.alioth.debian.org

  Mailing lists:
  
    debtags-devel@lists.alioth.debian.org
    http://lists.alioth.debian.org/mailman/listinfo/debtags-devel
      Development and usage discussions
  
    debtags-commits@lists.alioth.debian.org
    http://lists.alioth.debian.org/mailman/listinfo/debtags-commmits
      Postings of subversion logs

  Subversion repository:

    http://svn.debian.org/viewcvs/debtags/libdebtags
      Browse online
    svn://svn.debian.org/debtags/libdebtags
      Read-only access
    svn+ssh://alioth.debian.org/svn/debtags/libdebtags
      Write access

  APT repository:

    deb http://debtags.alioth.debian.org/debian unstable main


Further stages of the development
---------------------------------

Development will now proceed by keeping the package in line with libtagcoll1
and experimenting with new features.


TODO-list items completed so far
--------------------------------

These are the TODO-list items completed so far::

--- Done in version 1.2
 + Ported to new libtagcoll

--- Done in version 1.1
 + C++ migration

(older completed items are archived in the DONE file)



TODO-list items being worked on
-------------------------------

These are the TODO-list items currently being worked on::

 - none at the moment


Future TODO-list items
----------------------

These are the TODO-list items that are to be addressed in the future::

 - try to share classes with debtags-edit (for exaple, the two-level tag
   selection menu)

 - "Load debtags" should remove tags which are namespace names, when tags with
   that namespace are already present
 
 - port foundation libraries to libboost when possible

 - Show tag cardinality in tag menu

 - Setup ItemList as a drag target for TAGCOLL data, to activate inter-panel
   copy/moves with drag-and-dropping

 - Make the columns sortable
    - Names sort alphabetically
    - Tagsets sort first by cardinality, then lexicographically

 - For TreeViews, use the TreeView drag&drop system instead of the generic
   widget one

 - Add columns to the TagSelector.  Will probably need a
   TagCollection::getTagStats function to compute them all in a single run, so
   that the computation is more efficient

 - Write a component to display a smart hierarchy (exploting on-demand
   generation)
    - Use it to display the smart hierarchy generated with the currently
      selected items


Discarded TODO-list items
-------------------------

These TODO-list items have been discarded::


Useful resources
----------------


Author
------

Enrico Zini <enrico@debian.org>

