document use_moose option
[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     - encode loader options in Schema.pm
6     - introspect on_update/on_delete/is_deferrable
7   - Low Priority
8     - support multiple/all schemas, instead of just one
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     - support coderef for relationship_attrs
20     - common tests for table/column comments
21     - optimize queries
22     - remove extra select for _filter_tables
23     - option to promote non-nullable unique constraints to PK (prefer int
24       columns when more than one) (RT#51696)
25     - figure out how to represent Informix 'DATETIME YEAR TO FRACTION(5)' in a
26       way that SQLT will like
27     - support domains (aka custom data types) as a Schema deploy hook
28     - add hashref form of generate_pod to control which POD is generated
29     - add hashref form of components to control which components are added to
30       which classes
31     - check rel accessors for method conflicts
32     - add an option to add extra code to Result classes (maybe...)
33     - redo in-memory schema as an @INC coderef rather than temp files
34     - add option to filter out views
35     - support columns with names like "ro'd p/n" in MSSQL
36     - automatic preserve_case detection
37
38 - Relationships
39    - Re-scan relations/tables after initial relation setup to find
40      ->many_to_many() relations to be set up
41    - While scanning for many-to-many, scan for implied rels as well (if
42      foo->belongs_to('bar') and baz->belongs_to('bar'), does that impliy
43      foo->might_have('baz') and the reverse?)
44
45 - Backends
46   - SQLite
47     - table/column comments
48     - introspect on_update/on_delete/is_deferrable
49     - introspect view SQL
50   - MySQL
51     - table/column comments
52     - introspect on_update/on_delete/is_deferrable
53     - introspect view SQL
54     - domains?
55   - Pg
56     - introspect on_update/on_delete/is_deferrable
57     - introspect view SQL
58     - domains
59   - DB2
60     - table/column comments
61     - introspect on_update/on_delete/is_deferrable
62     - introspect view SQL
63     - domains
64   - Oracle
65     - table/column comments
66     - introspect on_update/on_delete/is_deferrable
67     - introspect view SQL
68     - domains
69   - Sybase ASE
70     - table/column comments
71     - introspect on_update/on_delete/is_deferrable
72     - introspect view SQL
73     - domains
74   - MSSQL
75     - table/column comments
76     - introspect on_update/on_delete/is_deferrable
77     - introspect view SQL
78     - computed column support
79     - domains
80     - Optimization
81       - use one query for whole table instead of query-per-column in _columns_info_for
82       - use placeholders when available
83   - SQLAnywhere
84     - table/column comments
85     - introspect on_update/on_delete/is_deferrable
86     - introspect view SQL
87     - domains
88   - Firebird
89     - table/column comments
90     - introspect on_update/on_delete/is_deferrable
91     - introspect view SQL
92     - domains
93   - Informix
94     - data_type tests
95     - table/column comments
96     - introspect on_update/on_delete/is_deferrable
97     - introspect view SQL
98     - domains