X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=TODO;h=3a15ae2dc80df158a351bde2bb5b231946fc79a8;hb=postgres-identity-columns;hp=95291881b004b58878251ffd2bf7f66fcc49b130;hpb=760fd65c04b63c468e699dfd2f50bff7f6638a36;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/TODO b/TODO index 9529188..3a15ae2 100644 --- a/TODO +++ b/TODO @@ -2,22 +2,20 @@ - High Priority - clean out RT queue - introspect views and make proper ResultSource::View classes with defining SQL + - better avoidance of column and relationship accessor collisions - encode loader options in Schema.pm - introspect on_update/on_delete/is_deferrable - - preserve_case mode for remaining backends - Low Priority - - support multiple/all schemas, instead of just one - support pk/uk/fk info on views, possibly (materialized views?) - remove deprecated ResultSetManager stuff, rewrite using current features - - Refactor RelBuilder so that it doesn't require a live mostly-built DBIx::Class::Schema, so that other modules (SQLT) can use it easier. And then when/if we get there, break it out as a seperate distribution with a new name. + - Refactor RelBuilder so that it doesn't require a live mostly-built + DBIx::Class::Schema, so that other modules (SQLT) can use it easier. And + then when/if we get there, break it out as a seperate distribution with a + new name. - support for user-defined-types as Schema deploy hooks - - normalize float/real/double data types in a most cross-deployment friendly fashion, using float(25) as the double boundary where possible - - finish data_type tests for all DBs (DB2 and Oracle left) - - support for Informix - generate a schema accessor which stores which SQLT type it was loaded from - add a settable 'on-behalf-of' version tag (for catalyst model) - inject a table2moniker function into the schema - - support coderef for relationship_attrs - common tests for table/column comments - optimize queries - remove extra select for _filter_tables @@ -26,52 +24,58 @@ - figure out how to represent Informix 'DATETIME YEAR TO FRACTION(5)' in a way that SQLT will like - support domains (aka custom data types) as a Schema deploy hook - - when checking whether to delete size from a type definition, use an - inclusive list rather than an exclusive list, in order to support domains - add hashref form of generate_pod to control which POD is generated + - add hashref form of components to control which components are added to + which classes + - check rel accessors for method conflicts + - add an option to add extra code to Result classes (maybe...) + - redo in-memory schema as an @INC coderef rather than temp files + - add option to filter out views + - support columns with names like "ro'd p/n" in MSSQL + - automatic preserve_case detection + - reduce chances of relname/colname collisions + - strip _no, _num, _number, _code etc. from relnames + - write a Manual::Intro with info on +column, inflect_singular, config_file, + catalyst helper, etc. + - add result_roles and schema_roles for use with use_moose=1 + - generate Schema/ResultBase.pm and Schema/ResultSetBase.pm + - remove additional warnings skip in t/22dump.t for ActivePerl on Win32 + - make 23dumpmore.t auto cleanup and remove dump warnings + - generate POD for schema class with class list + - remove implicit rels from common tests so all tests work on MySQL + - server link support for Oracle and MSSQL - Relationships - - Re-scan relations/tables after initial relation setup to find ->many_to_many() relations to be set up - - While scanning for many-to-many, scan for implied rels as well (if foo->belongs_to('bar') and baz->belongs_to('bar'), does that impliy foo->might_have('baz') and the reverse?) + - While scanning for many-to-many, scan for implied rels as well (if + foo->belongs_to('bar') and baz->belongs_to('bar'), does that impliy + foo->might_have('baz') and the reverse?) - Backends - SQLite - table/column comments - - introspect on_update/on_delete/is_deferrable - introspect view SQL - MySQL - table/column comments - - introspect on_update/on_delete/is_deferrable - introspect view SQL - domains? - Pg - - introspect on_update/on_delete/is_deferrable - introspect view SQL - - preserve_case mode - domains - DB2 - - data_type tests - table/column comments - - introspect on_update/on_delete/is_deferrable - - introspect view SQL - - preserve_case mode + - introspect view SQL and set table_class - domains - Oracle - - data_type tests - - table/column comments - - introspect on_update/on_delete/is_deferrable - - introspect view SQL - - preserve_case mode + - introspect view SQL and set table_class - domains - Sybase ASE - table/column comments - introspect on_update/on_delete/is_deferrable - - introspect view SQL + - introspect view SQL and set table_class - domains - MSSQL - table/column comments - - introspect on_update/on_delete/is_deferrable - - introspect view SQL + - introspect view SQL and set table_class - computed column support - domains - Optimization @@ -79,19 +83,17 @@ - use placeholders when available - SQLAnywhere - table/column comments - - introspect on_update/on_delete/is_deferrable - - introspect view SQL - - preserve_case mode + - introspect view SQL and set table_class - domains - Firebird - table/column comments - introspect on_update/on_delete/is_deferrable - - introspect view SQL + - introspect view SQL and set table_class - domains - Informix - - data_type tests - - preserve_case mode + - support opaque types + - datetime/interval precision detection - table/column comments - introspect on_update/on_delete/is_deferrable - - introspect view SQL + - introspect view SQL and set table_class - domains