Remove kludges previously required because we didn't have anonymous roles
[gitmo/MooseX-Role-Parameterized.git] / TODO
1 + Anonymous roles need work!
2     - We should be able to say Moose::Meta::Role->create_anon_role.
3     - Anonymous roles should not have the same strictures as regular roles
4         * For example, regular roles have to deal with imported functions;
5           anonymous roles shouldn't have to.
6     - Role exclusion is done by name, so anonymous roles should not even be
7       checked. Fix this and t/003-apply.t will pass all of its tests. (Start
8       by just commenting it out :))
9     - The get_method_map and add_method overrides in Meta::Role::Parameterized
10       are a hack. Fix them correctly in Moose.
11
12 + We need to reimplement all of the keywords of Moose::Role. So far I have "has"
13   (and added "method" for various reasons). They need to operate on
14   $CURRENT_METACLASS instead of caller.
15
16 + There is literally zero documentation.
17
18 + Tests could be improved too! Failing tests more than welcome.
19
20 + A good motivating example. Different serialization formats sucks.
21
22 + Moose::Exporter should have a with_meta option which does with_caller but also
23   initializes the metaclass, since that's the most common case for us (and
24   probably others).
25
26 + Figure out a plan for alias, excludes, and other parameters that roles
27   currently support.
28     - I'm fine with saying either of:
29         * "You can't have exclusion; make it a parameter"
30         * "You cannot have parameters named alias or excludes; they
31           already have meaning"
32     - The current implementation is closer to the latter. (we pass the args to
33       both parameter construction and parameterized-role application)
34     - We don't enforce that parameters cannot be named alias or excludes though.
35
36 + Parameters is an empty superclass. Is there anything interesting we can stick
37   in there?
38