You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README-163.html 4.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
  2. <html> <head>
  3. <title>AspectJ 1.6.3 Readme</title>
  4. <style type="text/css">
  5. <!--
  6. P { margin-left: 20px; }
  7. PRE { margin-left: 20px; }
  8. LI { margin-left: 20px; }
  9. H4 { margin-left: 20px; }
  10. H3 { margin-left: 10px; }
  11. -->
  12. </style>
  13. </head>
  14. <body>
  15. <div align="right"><small>
  16. &copy; Copyright 2008 Contributors.
  17. All rights reserved.
  18. </small></div>
  19. <h1>AspectJ 1.6.3 Readme</h1>
  20. <ul>
  21. <li><a href="#split">Split matching/weaving</a></li>
  22. <li><a href="#bugsfixed">Bugs fixed</a></li>
  23. <li><a href="#notable">Notable bug fixes</a></li>
  24. <li><a href="#whatsnext">What's next?</a></li>
  25. </ul>
  26. <hr>
  27. <a name="split"/>
  28. <H4>Split matching/weaving</h4>
  29. <p>The main goal of AspectJ 1.6.3 was to make the line between matching and weaving more explicit and
  30. introduce the notion of a matcher artifact. This matcher would enable reuse of the semantics of
  31. AspectJ pointcut matching without including the unnecessary code that is the weaver. Why? In some
  32. environments, for example Spring AOP, the weaving may be done in an entirely different way and the
  33. default weaver included in aspectjweaver.jar is just unnecessary code. Some users also find they have trouble getting
  34. approval for using the 'aspectjweaver.jar' in their projects because it includes a bytecode
  35. modification library, even when they are not using that code.
  36. <p>The result of this work is documented in <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=246125">bug 246125</a>
  37. and there is now a new jar file in the distribution called org.aspectj.matcher.jar that includes
  38. a first pass at the matching code. It is not quite as slimmed down as it could be but is a first
  39. pass that includes no bytecode modification toolkit.
  40. <p>To use this matcher standalone it simply requires an abstraction of some type system to be plugged in.
  41. The matcher code can then be used to parse standard pointcuts and answer questions about whether they match against
  42. that type system. There is no documentation on how to do this yet, as we don't think many users will
  43. be contributing new type systems, but internally we are working on an Eclipse JDT type system abstraction that will
  44. enable us to show matches in AJDT without actually compiling code (currently the two type system abstractions
  45. we ship are bytecode based and reflection based - both of which require compilation).
  46. <hr>
  47. <a name="bugsfixed"/>
  48. <h4>Bugs fixed</h4>
  49. <p>The complete list of issues resolved for AspectJ 1.6.3 (more than 50) can be found with
  50. this bugzilla query:
  51. <ul>
  52. <li><a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=AspectJ&target_milestone=1.6.3&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0=">Bugs resolved</a>
  53. </ul>
  54. <p>During 2008, there have been four AspectJ releases, fixing almost 200 issues.
  55. <hr>
  56. <a name="notable"/>
  57. <h4>Notable bug fixes</h4>
  58. <ul>
  59. <li>More improvements to the way AspectJ/AJDT communicate (251277, 249216, 258325)
  60. <li>More ajdoc improvements (256514)
  61. <li>Better support for non standard annotation style parameter ordering (164573, 219419)
  62. <li>Fixed long standing issue with extending Spring SecurityInterceptor (252722)
  63. <li>Ensure parameter annotations made on an ITD reach the target affected type (256669)
  64. </ul>
  65. <hr>
  66. <a name="whatsnext"/>
  67. <h4>What's next?</h4>
  68. <p>The JDT World should be completed in the 1.6.4 timeframe and that will surface as benefits in AJDT, possibly leading to better
  69. LTW tooling. Some improved syntax for intertype declarations is a possible candidate feature (see discussion in
  70. <a href="http://dev.eclipse.org/mhonarc/lists/aspectj-users/msg10208.html">this mailing list thread</a>).
  71. A possible introduction of a code style syntax for the mixin style that is @DeclareParents (and a renaming of
  72. @DeclareParents to perhaps DeclareMixin or DeclareDelegate).
  73. <hr>
  74. <!-- ============================== -->
  75. </body>
  76. </html>