123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
- <html> <head>
- <title>AspectJ 1.6.3 Readme</title>
- <style type="text/css">
- <!--
- P { margin-left: 20px; }
- PRE { margin-left: 20px; }
- LI { margin-left: 20px; }
- H4 { margin-left: 20px; }
- H3 { margin-left: 10px; }
- -->
- </style>
- </head>
-
- <body>
- <div align="right"><small>
- © Copyright 2008 Contributors.
- All rights reserved.
- </small></div>
-
- <h1>AspectJ 1.6.3 Readme</h1>
-
- <ul>
- <li><a href="#split">Split matching/weaving</a></li>
- <li><a href="#bugsfixed">Bugs fixed</a></li>
- <li><a href="#notable">Notable bug fixes</a></li>
- <li><a href="#whatsnext">What's next?</a></li>
- </ul>
- <hr>
- <a name="split"/>
- <H4>Split matching/weaving</h4>
- <p>The main goal of AspectJ 1.6.3 was to make the line between matching and weaving more explicit and
- introduce the notion of a matcher artifact. This matcher would enable reuse of the semantics of
- AspectJ pointcut matching without including the unnecessary code that is the weaver. Why? In some
- environments, for example Spring AOP, the weaving may be done in an entirely different way and the
- default weaver included in aspectjweaver.jar is just unnecessary code. Some users also find they have trouble getting
- approval for using the 'aspectjweaver.jar' in their projects because it includes a bytecode
- modification library, even when they are not using that code.
- <p>The result of this work is documented in <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=246125">bug 246125</a>
- and there is now a new jar file in the distribution called org.aspectj.matcher.jar that includes
- a first pass at the matching code. It is not quite as slimmed down as it could be but is a first
- pass that includes no bytecode modification toolkit.
- <p>To use this matcher standalone it simply requires an abstraction of some type system to be plugged in.
- The matcher code can then be used to parse standard pointcuts and answer questions about whether they match against
- that type system. There is no documentation on how to do this yet, as we don't think many users will
- be contributing new type systems, but internally we are working on an Eclipse JDT type system abstraction that will
- enable us to show matches in AJDT without actually compiling code (currently the two type system abstractions
- we ship are bytecode based and reflection based - both of which require compilation).
- <hr>
- <a name="bugsfixed"/>
- <h4>Bugs fixed</h4>
- <p>The complete list of issues resolved for AspectJ 1.6.3 (more than 50) can be found with
- this bugzilla query:
- <ul>
- <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>
- </ul>
- <p>During 2008, there have been four AspectJ releases, fixing almost 200 issues.
- <hr>
- <a name="notable"/>
- <h4>Notable bug fixes</h4>
-
- <ul>
- <li>More improvements to the way AspectJ/AJDT communicate (251277, 249216, 258325)
- <li>More ajdoc improvements (256514)
- <li>Better support for non standard annotation style parameter ordering (164573, 219419)
- <li>Fixed long standing issue with extending Spring SecurityInterceptor (252722)
- <li>Ensure parameter annotations made on an ITD reach the target affected type (256669)
- </ul>
-
- <hr>
- <a name="whatsnext"/>
- <h4>What's next?</h4>
-
- <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
- LTW tooling. Some improved syntax for intertype declarations is a possible candidate feature (see discussion in
- <a href="http://dev.eclipse.org/mhonarc/lists/aspectj-users/msg10208.html">this mailing list thread</a>).
- A possible introduction of a code style syntax for the mixin style that is @DeclareParents (and a renaming of
- @DeclareParents to perhaps DeclareMixin or DeclareDelegate).
-
- <hr>
-
- <!-- ============================== -->
- </body>
- </html>
|