Društvo LJUDMILA
Rozmanova ulica 12
1000 Ljubljana
Slovenia
Prostori: osmo/za

WDBI TODO

Schema upgrade

  • change all ddl_ functions to return sql_statement
  • add sql_identifier and sql_full_identifier to wdbi.tables

API changes

  • fix WDBI::connect to return boolean status

Urgent

  • import stuff into sourceforge CVS - ✓
  • add 'precious data' warning to destructive operations (delete)
  • Menu doesn't work on Mac - FIXED
  • WDBI Installation automation integration

Cool ideas

  • magic variables in SQL queries - wdbi$toolbar, wdbi$style, wdbi$class, wdbi$id, wdbi$lang, wdbi$onmouseover?
  • widgets for array types

Bugs

DDL dumper

  • trigger function arguments not dumped
  • ✓ sequence values not dumped
  • ✓ wdbi.class_def and wdbi.column_def records should be dumped in schema data dump (not wdbi)
  • aggregates not dumped properly
  • function grants not dumped
  • schema grants, etc... not dumped

WDBI schema

  • deprecate wdbi.queries in favor of wdbi.query
  • queries should preserve grants
  • deprecate function wdbi.a() in favor of wdbi.href()
  • rename sql_path -> sql_identifier
  • rename regclass -> sysid

GUI Bugs

  • speed up browsing
  • form must work if single record specified. now it works only with primary key.
  • XUL query does not work with long queries (because of limited GET)
  • nul (==NULL), trim input handling (flags?)
  • current selection in list view must retain context
    • use recently selected table and record as default (in xul/tables, etc)
  • succesful insert must go to the last record inserted. Can we really do this reliably?
  • if PK changed + update, ask for confirmation
  • links to foreign keys should be disabled when foreign key is null - FIXED
  • add item to popup list, if not present - FIXED
  • failed update messes up unicode (HTML form vars not properly marked as UTF8 - perl problem?) - FIXED
  • fix form cache problems (how exactly?) (cache doesn't invalidate, use some LISTEN/NOTIFY magic) - FIXED
  • navigator update triggers
    • delete must update navigator - FIXED
    • insert must update navigator - FIXED
    • update must update navigator if needed (if PK was changed) - FIXED
    • do not redisplay form after succesfull action - FIXED
    • after deleting last record, do not show update form.


Framework Bugs

  • move all form/relations loading to library
  • implement date and time widgets
  • add subforms to foreign key widget
  • new form/report widget iterator
  • make widgets, skins and formats pluggable
  • make mapping to and from rdf possible
  • expose crud functionality trough web services
  • "make install" installs all in system dirs
  • use proper defaults for insert form. clarify?

Roadmap

  • add "add new" to foreign keys
  • Trigger on wdbi.class_def to:
    • check validity of expression (with SELECT expression FROM table WHERE FALSE) - FIXED
    • maintain regclass field from schema_name and class_name fields - FIXED
  • status bar must show query results
  • iframe is not big enough on safari
  • allow for casting of field on input (class_label)
    • allow for functions on input. Functions popup list like spreadsheet app.
  • import/export drivers: html, xls, rdf, sql
  • form validation in JavaScript: show bad fields, appropriately dis/enable form buttons
  • sorting
    • column sorting in XUL
    • sorting in navigator
    • sorting in references
    • proper locale sorting - wish?
  • master/detail view, combining list and form
  • check for XUL on login, barf if not present, suggest mozilla
  • check for JavaScript
  • check for wdbi schema
  • check if cookies are enabled
  • use OID for primary key when necessary and if possible (not all tables will have it)
  • implement bin/wdbi-setup command to install wdbi schema into a database
  • grouping/aggregates
  • limit widget is not used
  • per field filters. Filter on this. Query By Example?
  • support for composite foreign keys - RETHINK
    • foreign-key select widgets/windows. define proper ui for all cases.
  • URIs of Database Objects
    • give a url to each class, attribute and record
    • give a url to each attribute name and type
  • persistent data in XUL client
  • spreadsheet-like editing in list view - TESTED
  • investigate use of RDF with XUL
  • investigate use of OWL for schema exchange and code generation
  • complain about reserved names in fields (wdbi/*)
  • debian package

Fixed

  • fix problems with unicode in mason (textarea, substr) - FIXED
  • navigator: enter bug, refresh does not load correct record - FIXED
  • running an action (eg update) breaks links to foreign keys - FIXED
  • update form must not reload record if update fails - FIXED
  • simple foreign-key select widgets/windows - FIXED
  • entry url and login clicks must flow - FIXED
  • add insert button to update form - FIXED