Update Firebird ODBC driver download URL
[dbsrgits/DBIx-Class-Schema-Loader.git] / TODO
1 - General
2   - High Priority
3     - clean out RT queue
4     - introspect views and make proper ResultSource::View classes with defining SQL
5     - better avoidance of column and relationship accessor collisions
6     - encode loader options in Schema.pm
7     - introspect on_update/on_delete/is_deferrable
8   - Low Priority
9     - support pk/uk/fk info on views, possibly (materialized views?)
10     - remove deprecated ResultSetManager stuff, rewrite using current features
11     - Refactor RelBuilder so that it doesn't require a live mostly-built
12       DBIx::Class::Schema, so that other modules (SQLT) can use it easier.  And
13       then when/if we get there, break it out as a seperate distribution with a
14       new name.
15     - support for user-defined-types as Schema deploy hooks
16     - generate a schema accessor which stores which SQLT type it was loaded from
17     - add a settable 'on-behalf-of' version tag (for catalyst model)
18     - inject a table2moniker function into the schema
19     - common tests for table/column comments
20     - optimize queries
21     - remove extra select for _filter_tables
22     - option to promote non-nullable unique constraints to PK (prefer int
23       columns when more than one) (RT#51696)
24     - figure out how to represent Informix 'DATETIME YEAR TO FRACTION(5)' in a
25       way that SQLT will like
26     - support domains (aka custom data types) as a Schema deploy hook
27     - add hashref form of generate_pod to control which POD is generated
28     - add hashref form of components to control which components are added to
29       which classes
30     - check rel accessors for method conflicts
31     - add an option to add extra code to Result classes (maybe...)
32     - redo in-memory schema as an @INC coderef rather than temp files
33     - add option to filter out views
34     - support columns with names like "ro'd p/n" in MSSQL
35     - automatic preserve_case detection
36     - reduce chances of relname/colname collisions
37     - strip _no, _num, _number, _code etc. from relnames
38     - write a Manual::Intro with info on +column, inflect_singular, config_file,
39       catalyst helper, etc.
40     - add result_roles and schema_roles for use with use_moose=1
41     - generate Schema/ResultBase.pm and Schema/ResultSetBase.pm
42     - remove additional warnings skip in t/22dump.t for ActivePerl on Win32
43     - make 23dumpmore.t auto cleanup and remove dump warnings
44     - generate POD for schema class with class list
45     - remove implicit rels from common tests so all tests work on MySQL
46     - server link support for Oracle and MSSQL
47
48 - Relationships
49   - While scanning for many-to-many, scan for implied rels as well (if
50     foo->belongs_to('bar') and baz->belongs_to('bar'), does that impliy
51     foo->might_have('baz') and the reverse?)
52
53 - Backends
54   - SQLite
55     - table/column comments
56     - introspect view SQL
57   - MySQL
58     - table/column comments
59     - introspect view SQL
60     - domains?
61   - Pg
62     - introspect view SQL
63     - domains
64   - DB2
65     - table/column comments
66     - introspect view SQL and set table_class
67     - domains
68   - Oracle
69     - introspect view SQL and set table_class
70     - domains
71   - Sybase ASE
72     - table/column comments
73     - introspect on_update/on_delete/is_deferrable
74     - introspect view SQL and set table_class
75     - domains
76   - MSSQL
77     - table/column comments
78     - introspect view SQL and set table_class
79     - computed column support
80     - domains
81     - Optimization
82       - use one query for whole table instead of query-per-column in _columns_info_for
83       - use placeholders when available
84   - SQLAnywhere
85     - table/column comments
86     - introspect view SQL and set table_class
87     - domains
88   - Firebird
89     - table/column comments
90     - introspect on_update/on_delete/is_deferrable
91     - introspect view SQL and set table_class
92     - domains
93   - Informix
94     - support opaque types
95     - datetime/interval precision detection
96     - table/column comments
97     - introspect on_update/on_delete/is_deferrable
98     - introspect view SQL and set table_class
99     - domains