Subject: [TOOLS-DEVELOPMENT] Tools rewrite project

From: Henrik Levkowetz <[email-masked]>
Date: Thu, 12 Jul 2007 21:11:51 +0200

So, with the the 2.00 deployment of the rewritten public datatracker
tools on June 28th, and the followup minor releases 2.01-2.03, the
first phase of the tools rewrite is pretty much done.

We already knew that this would not cover everything which is needed,
with the largest known remaining chunk of work being the rewrite of
the password-protected perl .cgi scripts in django, using the same
database abstraction models and template support as for the public
pages.

However, experience with the rewrite of the public tools lets us now
in more detail list things that should be done, going forward.  This
list is in approximately the order I would expect projects to be done,
but except where noted, there's nothing particularly strict about the
sequence:

 * Opening up of the project pages and code repository

   Doing this will potentially let more people take part in the work,
   and will take us one step closer to the open source approach we
   would like for this code.  The licensing still needs to be decided,
   but even without that done, participation and bug-fixes becomes
   easier with the project pages and repository open.

 * Rewrite of the Draft Submission tool in python/django.

   It is recommended to do this soon, as the current submission tool
   implementation is in perl, and although the known security problems
   with the old code should be fixed in this code, it would be better
   to have also this public tool in django.

 * Updated look-and-feel

   This was hard to do before, but with the separation of database
   and presentation logic which django provides, it should be much
   easier to accomplish this.  I'd propose that this project be
   undertaken as a demo project against a copy of the database, on a
   different repository branch than the current release branch, and
   when the look and feel has come together, and people find that
   it constitutes a clear added value, a new release branch which
   merges the look and feel with the current release branch is done
   and deployed.

 * New minor features

   Some minor features, which we get almost for free, has already been
   incorporated in the minor 2.02 and 2.03 releases, such as generating
   Atom/RSS feeds for some pages, and generating a sitemap for google.
   Other new minor features could be deployed in coming minor releases.
   (Major features, like the look-and-feel update, should be developed
   on separate branches and receive TMC approval before deployment.)
   Draft state export in xml form for the benefit of other tools may
   come in as a feature here, e.g., /draft/<draft-name>/state.xml

 * Rewrite of the password-protected pages in python/django.

   The extent of this work has to be determined -- the meeting on Friday
   afternoon in Chicago should help settle to which extent the django
   admin interface can replace current scripts, and which tasks cannot
   be handled to the admin interface but needs tool rewrites.

 * Database cleanup and refactoring.

   The database has grown over the years, without having had any
   cleanups or re-organisation, and we currently have 12 individual
   tickets covering different needed cleanup and re-organization
   tasks.  It would be best to do this after the password-protected
   cgi scripts have been replaced by django pages, since the database
   changes would then be a matter of updating the database abstraction
   layer, without having to do simultaneous updates of the cgi scripts
   to match the changes.  However, if the rewrite of password-protected
   pages is going to be a long time coming, we may want to re-consider
   this, and do some cleanup actions earlier.

 * New applications
   - RFC editor data exchange
	Exporting relevant state changes in a well-defined format,
	to the rfc editor, and and importing state changes from
	the rfc editor.  Could be JSON or XML over email, jabber or ??
   - IANA data exchange
	Similar to the RFC Editor data exchange, but for IANA
   - Other new applications...

The TMC should consider whether the phases or projects above seem
well-formulated, and whether the sequence seems appropriate, so we
have a reasonable roadmap going forward, I think.

	Henrik

_______________________________________________
TOOLS-DEVELOPMENT mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/tools-development