-
Notifications
You must be signed in to change notification settings - Fork 14
/
Changes
144 lines (120 loc) · 4.52 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
Revision history for Perl extension MOP
0.14 2018-01-31
- use `parent` where it is needed, no need
not to, it is core
- also fix the travis config
0.13 2018-01-25
- added support for Travis CI
- added in some new tests
- thanks to Lisa Hare for these
- added patches to support 5.27/bleadperl
- thanks to FatherC for these
[DEPENDENCIES]
- dropping the Sub::Name dependency in favor of Sub::Util
which will be core eventually
- thanks to Toby Inkster for this
0.12 2017-10-30
[ENHANCEMENT]
- MOP::Util::get_meta now will check for the existance
of a METACLASS method in the given $package and will
use the result of that method call to construct a
metaobject for that package
- this is only in MOP::Util::get_meta, you should
be able to override this/ignore this if needed
[BACKWARDS INCOMPATIBLE CHANGES]-ish
- switched back to Carp::confess from Carp::cluck, the
stack trace is vital until this module matures and
the error messages improve
0.11 2017-10-22
- fixing the missing Devel::Hook dependency
0.10 2017-10-20
[ENHANCEMENT]
- There is now a public API of utility functions in
the MOP::Util module.
- see the docs for more info
- added the MOP::Method::Attribute class to represent
any attributes attached to a method.
- see below for how this changes the `get_code_attributes`
method within MOP::Method
[!!!!BREAKING CHANGES!!!!]
[ Roles ]
- role to class composition behavior has changed
- there is now no difference in the way compositon
beheaves when applied to a class or to a role
- previously only classes complained if there was a
conflict in the compositon process, now both
roles and classes complain
- previously only classes complained if there was a
method requirement after composition was complete,
now both roles and classes complain
[ MOP::Slot ]
- The `add_slot` method now will set the COMP_STASH
of the initializer, therefore taking ownership of
that CV, this mirrors what `add_method` does
- this is actually unlikely to break much, but
is significant, so maybe
- MOP::Slot objects no longer act as overloaded CODE
refs (the &{} operator), this function is now the
domain of the MOP::Slot::Initializer
- MOP::Slot::Initializer has completely changed, the
last version should be ignored completely
- the `builder` feature has been completely removed
- all methods other than `new` have been removed
- it is a blessed CODE reference
[ MOP::Method ]
- the API for `get_code_attributes` in MOP::Method has
changed, it now returns MOP::Method::Attribute objects
[DEPENDENCIES]
- added Sub::Metadata, used to detect null CVs and
mutate the COMP_STASH of CVs.
- added Devel::Hook, which is used in the new MOP::Util
function `defer_until_UNITCHECK`
- bumped the UNIVERSAL::Object dependency version to
make sure we have support for immutable CODE ref
instances (needed for MOP::Slot::Initializer)
0.09 2017-09-27
[ENHANCEMENT]
- moved the Slot::Intitializer class from Moxie back
to this level, I believe it is more appropritate
0.08 2017-08-08
[ENHANCEMENT]
- added support for CODE overloaded (&{})
objects stored as %HAS values
- added Devel::OverloadInfo as dependency
0.07 2017-06-19
[MISC]
- fix edge case where we need to vivify a GLOB slot
0.06 2017-05-08
[INTERNALS]
- make all instance use UNIVERSAL::Object::Immutable
[MISC]
- bumped UNIVERSAL::Object to latest
0.05 2017-02-07
[API]
- added `has_required_method` to MOP::Role
- added tests for this
- added `fully_qualified_name` to MOP::Method
- added tests for this
[MISC]
- switched everything from die to Carp::croack
0.04 2017-01-15
[MISC]
- restored Test::Fatal, sorry that was
just stupid of me
0.03 2017-01-13
[MISC]
- fixing some POD issues
- adjusting some dependencies
- removed Test::Fatal
- bumped UNIVERSAL::Object to latest
0.02 2017-01-12
[ENHANCEMENT]
- fixing constructors to allow both named
and positional argument forms
- added tests and docs for this
[MISC]
- adding in a few more tests
- fixing some POD issues
- fleshing out some documentation
0.01 2017-01-11
- Initial release to an unsuspecting world