X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=TODO;h=7bc7cb1aa33523785d011d714e16bcb1438dbc7e;hb=4457fd03f5744de01364ab4504cde54bf0277ac8;hp=87bafa026d8617e6a6e90c52d915834a5f551756;hpb=9398955f2e1d829c624c84b59012f5ada40db594;p=dbsrgits%2FSQL-Translator.git diff --git a/TODO b/TODO index 87bafa0..7bc7cb1 100644 --- a/TODO +++ b/TODO @@ -1,10 +1,39 @@ -Define structure of the data returned by parsers: - o Producers need to know what to expect - o For testing purposes, we need to know if parsers are returning - something reasonable +* The regular Sybase parser is only just functional. If you are + interested in using Sybase, I would suggest serializing the schema + (via YAML or Storable) using the DBI-Sybase parser and then + manipulating that as you see fit. -Modules to be written/finished - SQL::Translator::Validator - SQL::Translator::Parser::xSV - SQL::Translator::Producer::MySQL +* Add more DBI parsers! These have the potential to be very + thorough and far faster than parsing text files with + Parse::RecDescent. +* At least allow more pass-through of INSERT, DELETE, and UPDATE + statements + +* Add INSERT statements for xSV, Excel parsers to automatically + create INSERTs for each row of data in the source file + +* Somehow merge ClassDBI producer with CGI::FormBuilder or Template + Toolkit and some sort of automated CGI builder to create + view/create/edit/delete forms for objects based on schema defs + +* Embetter the Diagram producer to use some real graphing algorithms + to distribute the tables so that the lines don't overlap so badly + +* Integrate more with some standard XML schema representations, + maybe like Torque DB (http://db.apache.org/torque/). We've + started messing around with XMI, too, but it isn't quite usable. + +* Possibly write a basic ANSI-92 SQL parser which could be extended + when writing other new parsers. + +* Make as many "required" modules as possible optional. This will + require support in the Makefile, the tests, and the modules + themselves (they'll need to die gracefully if prerequisites are + not installed). + +* Support for precompiled Parse::RecDescent grammars. + +* More code generation producers, such as Java, PHP, and Python. + +* Integrate Module::Pluggable as a replacement for the _list method.