0
|
1 === version 3.0
|
|
2 ================================================================================================
|
|
3 change - Removed overloads of logging methods that were taking format string from ILogger and
|
|
4 ILogger and IExtendedLogger and didn't have word Format in their name.
|
|
5 For example:
|
|
6 void Error(string format, params object[] args); // was removed
|
|
7 void ErrorFormat(string format, params object[] args); //use this one instead
|
|
8
|
|
9
|
|
10 impact - low
|
|
11 fixability - medium
|
|
12 revision -
|
|
13
|
|
14 description - To minimize confusion and duplication those methods were removed.
|
|
15
|
|
16 fix - Use methods that have explicit "Format" word in their name and same signature.
|
|
17 ================================================================================================
|
|
18 change - Removed WebLogger and WebLoggerFactory
|
|
19
|
|
20 impact - low
|
|
21 fixability - medium
|
|
22 revision -
|
|
23
|
|
24 description - To minimize management overhead the classes were removed so that only single
|
|
25 Client Profile version of Castle.Core can be distributed.
|
|
26
|
|
27 fix - You can use NLog or Log4Net web logger integration, or reuse implementation of existing
|
|
28 web logger and use it as a custom logger.
|
|
29
|
|
30 ================================================================================================
|
|
31 change - Removed obsolete overload of ProxyGenerator.CreateClassProxy
|
|
32
|
|
33 impact - low
|
|
34 fixability - trivial
|
|
35 revision -
|
|
36
|
|
37 description - Deprecated overload of ProxyGenerator.CreateClassProxy was removed to keep the
|
|
38 method consistent with other methods and to remove confusion
|
|
39
|
|
40 fix - whenever removed overload was used, use one of the other overloads.
|
|
41
|
|
42 ================================================================================================
|
|
43 change - IProxyGenerationHook.NonVirtualMemberNotification method was renamed
|
|
44
|
|
45 impact - high
|
|
46 fixability - easy
|
|
47 revision -
|
|
48
|
|
49 description - to accommodate class proxies with target method NonVirtualMemberNotification on
|
|
50 IProxyGenerationHook type was renamed to more accurate NonProxyableMemberNotification
|
|
51 since for class proxies with target not just methods but also fields and other member that
|
|
52 break the abstraction will be passed to this method.
|
|
53
|
|
54 fix - whenever NonVirtualMemberNotification is used/implemented change the method name to
|
|
55 NonProxyableMemberNotification. Implementors should also accommodate possibility that not
|
|
56 only MethodInfos will be passed as method's second parameter.
|
|
57
|
|
58 ================================================================================================
|
|
59 change - DynamicProxy will now allow to intercept members of System.Object
|
|
60
|
|
61 impact - very low
|
|
62 fixability - easy
|
|
63 revision -
|
|
64
|
|
65 description - to allow scenarios like mocking of System.Object members, DynamicProxy will not
|
|
66 disallow proxying of these methods anymore. AllMethodsHook (default IProxyGenerationHook)
|
|
67 will still filter them out though.
|
|
68
|
|
69 fix - whenever custom IProxyGenerationHook is used, user should account for System.Object's
|
|
70 members being now passed to ShouldInterceptMethod and NonVirtualMemberNotification methods
|
|
71 and if neccessary update the code to handle them appropriately.
|