forked from Agilefreaks/Aquarium
-
Notifications
You must be signed in to change notification settings - Fork 0
/
UPGRADE
101 lines (70 loc) · 3.39 KB
/
UPGRADE
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
== Updating to Aquarium-0.5.X
This release introduces a few small API changes that are described in
CHANGES. The primary goal of the release is to add full support for
Ruby 1.9.3 and JRuby 1.6.7.
It was not tested on early versions of Ruby 1.9 and JRuby 1.X, so users
of earlier releases should use caution upgrading. Post any issues to the
GitHub project.
== Updating to Aquarium-0.4.X
This release is fully backwards-compatible with previous releases. It
expands the API slightly and adds internal improvements to better support
JRuby. There should be no upgrade issues.
== Updating to Aquarium-0.3.1
There should be no upgrade issues with this release. However, the enhancement
#17565 now ensures that a JoinPoint is only specified with one type and a type
that actually exists, when a string, symbol, or regex is used to specify the
type.
== Updating to Aquarium-0.3.0
There are no known upgrade issues with this release. Although many new synonyms
were added for API method parameters, all changes are backwards compatible.
== Updating to Aquarium-0.2.0
This release changes the expected advice parameter list from
|join_point, *method_args|
to
|join_point, object, *method_args|
where "object" is the current object receiving the message corresponding to
the advised join point. Therefore, when you upgrade, you will need to modify
your advices to take this extra argument, even if you don't use it. Since an
advice of |jp, *args| would silently "absorb" the object into the beginning of
"*args", thereby potentially causing confusion, Aquarium will raise an exception
if the advice block or proc has this obsolete signature.
Note that "JoinPoint#Context.advised_object" is still supported, even if it is
now less useful.
== Updating to Aquarium-0.1.8
V0.1.7 did not successfully "register" at rubyforge. This releases fixes that
problem and also adds several feature enhancements and refactorings. There are
no known upgrade issues.
== Updating to Aquarium-0.1.7
This is primarily a bug-fix release, so there should be no upgrading or
incompatibility issues.
== Updating to Aquarium-0.1.6
As described in the CHANGES, the JoinPoint#type, JoinPoint#type=,
JoinPoint#object, and JoinPoint#object= are now deprecated. Client code that
uses these methods will still work, but warning messages will be written to
STDOUT. See CHANGES for more details.
== Updating to Aquarium-0.1.5
This is mostly a bug-fix release, but it did have to introduce one API change,
as described in the CHANGES. In particular, the aspect "DSL" methods are no
longer automatically to Object, as some of their names overlap with methods
added by Rails.
Now, if you want these methods added to Object, you must require the new
lib/aquarium/aspects/dsl/object_dsl.rb explicitly.
As an alternative, if you just want these methods added selectively in certain
types, then do the following:
require 'aquarium/dsl/aspect_dsl'
class MyClass # reopen "MyClass"
# Add the methods as _class_ methods
include Aquarium::DSL
end
or, use (class|module)_eval:
require 'aquarium/dsl/aspect_dsl'
MyClass.class_eval do
# Add the methods as _class_ methods
include Aquarium::DSL
end
To add the methods as _instance_ methods on individual objects:
object = MyClass.new
object.extend(Aquarium::DSL)
See the CHANGES for more details.
== Updating existing code to Aquarium-0.1.0
This is the first release of Aquarium.