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-1.6.3.adoc 3.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. = AspectJ 1.6.3
  2. _© Copyright 2008 Contributors. All rights reserved._
  3. * xref:#split[Split matching/weaving]
  4. * xref:#bugsfixed[Bugs fixed]
  5. * xref:#notable[Notable bug fixes]
  6. * xref:#whatsnext[What's next?]
  7. '''''
  8. [[split]]
  9. == Split matching/weaving
  10. The main goal of AspectJ 1.6.3 was to make the line between matching and
  11. weaving more explicit and introduce the notion of a matcher artifact.
  12. This matcher would enable reuse of the semantics of AspectJ pointcut
  13. matching without including the unnecessary code that is the weaver. Why?
  14. In some environments, for example Spring AOP, the weaving may be done in
  15. an entirely different way and the default weaver included in
  16. aspectjweaver.jar is just unnecessary code. Some users also find they
  17. have trouble getting approval for using the 'aspectjweaver.jar' in their
  18. projects because it includes a bytecode modification library, even when
  19. they are not using that code.
  20. The result of this work is documented in
  21. https://bugs.eclipse.org/bugs/show_bug.cgi?id=246125[bug 246125] and
  22. there is now a new jar file in the distribution called
  23. org.aspectj.matcher.jar that includes a first pass at the matching code.
  24. It is not quite as slimmed down as it could be but is a first pass that
  25. includes no bytecode modification toolkit.
  26. To use this matcher standalone it simply requires an abstraction of some
  27. type system to be plugged in. The matcher code can then be used to parse
  28. standard pointcuts and answer questions about whether they match against
  29. that type system. There is no documentation on how to do this yet, as we
  30. don't think many users will be contributing new type systems, but
  31. internally we are working on an Eclipse JDT type system abstraction that
  32. will enable us to show matches in AJDT without actually compiling code
  33. (currently the two type system abstractions we ship are bytecode based
  34. and reflection based - both of which require compilation).
  35. '''''
  36. [[bugsfixed]]
  37. == Bugs fixed
  38. The complete list of issues resolved for AspectJ 1.6.3 (more than 50)
  39. can be found with this bugzilla query:
  40. * 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
  41. resolved]
  42. During 2008, there have been four AspectJ releases, fixing almost 200
  43. issues.
  44. '''''
  45. [[notable]]
  46. == Notable bug fixes
  47. * More improvements to the way AspectJ/AJDT communicate (251277, 249216,
  48. 258325)
  49. * More ajdoc improvements (256514)
  50. * Better support for non standard annotation style parameter ordering
  51. (164573, 219419)
  52. * Fixed long standing issue with extending Spring SecurityInterceptor
  53. (252722)
  54. * Ensure parameter annotations made on an ITD reach the target affected
  55. type (256669)
  56. '''''
  57. [[whatsnext]]
  58. == What's next?
  59. The JDT World should be completed in the 1.6.4 timeframe and that will
  60. surface as benefits in AJDT, possibly leading to better LTW tooling.
  61. Some improved syntax for intertype declarations is a possible candidate
  62. feature (see discussion in
  63. https://dev.eclipse.org/mhonarc/lists/aspectj-users/msg10208.html[this
  64. mailing list thread]). A possible introduction of a code style syntax
  65. for the mixin style that is @DeclareParents (and a renaming of
  66. @DeclareParents to perhaps DeclareMixin or DeclareDelegate).
  67. '''''