Add feature-list from nixed 09 branch
[dbsrgits/DBIx-Class.git] / Features_09
1 (Potential) Features for 0.09
2 =============================
3
4 Subselects - everyone wants these
5  - Will require new/improved SQL::Abstract
6  - The API will involve passing ResultSets to searches as conditions/values/whatever.
7
8 Row/find caching - would be pretty useful
9  - Need to have good definitions of when the cache should be queried and when invalidated
10  - Be able to supply own expiry?
11  - Be able to invalidate manually? Single item / entire cache / single table
12
13 Deprecate compose_connection / DB.pm
14  - Everyone has probably forgotten what this is anyway..
15
16 Syntax improvements?
17  - "as" to "alias" ?
18  - "belongs_to" to "contains/refers/something"
19  - order_by to take a arrayref/hashref so it also just works with quoting
20  - ??
21
22 Using inflated objects/references as values in searches
23  - Goes together with subselects above
24  - should deflate then run search
25
26 FilterColumn - like Inflate, only for changing scalar values
27  - This seems to be vaporware atm..
28
29 SQL/API feature complete?
30  - UNION
31  - proper join conditions!
32  - function calls on the LHS of conditions..
33
34 Moosification - ouch
35
36 Prefetch improvements
37  - slow on mysql, speedup?
38  - multi has_many prefetch
39  - paging working with prefetch
40
41 Magically "discover" needed joins/prefetches and add them
42  - eg $books->search({ 'author.name' => 'Fred'}), autoadds: join => 'author'
43  - also guess aliases when supplying column names that are on joined/related tables
44
45 Metamodel stuff - introspection
46
47 Storage API/restructure
48  - call update/insert etc on the ResultSource, which then calls to storage
49  - handle different storages/db-specific code better
50  - better cross-db code .. eg LIKE/ILIKE
51
52 Relationships
53  - single vs filter, discrepancies.. remove one of them and make behave the same?
54
55 SQL::Abstract et al
56  - be able to extract/view/dump what the SQL is *going to* be before running it
57  - bind params sanity? (order of bind params broken when using a resultsource based on a select statement)
58  - etc
59  
60 Joining/searching weird attribute tables?
61  - Support legacy/badly designed junk better..
62
63 Documentation - improvements
64  - better indexing for finding of stuff in general
65  - more cross-referencing of docs
66