Wow, THANK YOU for pulling them together :-)

On Mon, Jan 9, 2012 at 1:25 PM, Andy Clement <andrew.clem...@gmail.com>wrote:

> Hi,
>
> I'm afraid that effectively the up to date documentation is the
> developers notebook plus the accumulated readmes since it was created.
>  I know that isn't great but we just don't find the time to keep the
> docs up to date.  However, given that there wasn't really anything in
> Java6 and honestly there isn't a whole lot in Java7, there aren't many
> fundamental changes to the syntax of the AspectJ language.  The
> changes have been mainly around performance/memory/etc.  But let me
> try and pull it together for you:
>
> DevelopersNotebook - discusses everything in AspectJ 1.5
>
> Big work items and language changes since then:
>
> - pipeline compilation - drastically reduces memory required when
> compiling large projects
>
> - pertypewithin - added getWithinTypeName() special method for this
> instantiation model
>
> - parameter annotation matching -
> http://www.eclipse.org/aspectj/doc/released/README-160.html
>
> - annotation value matching -
> http://www.eclipse.org/aspectj/doc/released/README-160.html
>
> - huge weaver refactoring - removed 25% of the classes in the weaver.
> http://www.eclipse.org/aspectj/doc/released/README-161.html
>
> - annotation value binding optimization -
> http://www.eclipse.org/aspectj/doc/released/README-161.html
>
> - incremental compiler improvements under the IDE - much more analysis
> done to reduce the need to fallback to full builds
>
> - refactoring to split out matching from weaving - new 'matcher' jar
> for environments that don't need weaving
>
> - multi-project incremental build times greatly improved -
> http://www.eclipse.org/aspectj/doc/released/README-164.html
>
> - optimizing support for maintaining per join point state -
> http://www.eclipse.org/aspectj/doc/released/README-164.html
>
> - @DeclareMixin - better variant for declare parents for annotation
> style aspects -
> http://www.eclipse.org/aspectj/doc/released/README-164.html
>
> - matching algorithms rewritten -
> http://www.eclipse.org/aspectj/doc/released/README-167.html - much
> faster matching and much less memory used.
>
> - optimized generated code for annotation binding - much faster.
> http://www.eclipse.org/aspectj/doc/released/README-167.html
>
> - declare annotation supporting compound type patterns -
> http://www.eclipse.org/aspectj/doc/released/README-169.html
>
> - intertype declaration of member types -
> http://www.eclipse.org/aspectj/doc/released/README-169.html
>
> - 'overweaving' -
> http://www.eclipse.org/aspectj/doc/released/README-169.html.  For
> improved performance when weaving code that has previously already
> been woven.
>
> - aspect scoping - (in LTW can limit applicability of aspects) -
> http://www.eclipse.org/aspectj/doc/released/README-169.html
>
> - type category type patterns -
> http://www.eclipse.org/aspectj/doc/released/README-169.html -
> is(ClassType), is(InterfaceType), etc.
>
> - message inserts for declare error/warning -
> http://www.eclipse.org/aspectj/doc/released/README-169.html
> e.g. declare warning: execution(* A.m(..)): "joinpoint is {joinpoint}";
>
> - aspectJ snapshots now in a maven repo -
> http://www.eclipse.org/aspectj/doc/released/README-169.html
>
> - annotation removal syntax -
> http://www.eclipse.org/aspectj/doc/released/README-1611.html
> e.g. declare @field: int Foo.i: -@Anno;
>
> - added our own optimized xml parser for aop.xml
>
> - annotation value matching supports != -
> http://www.eclipse.org/aspectj/doc/released/README-1612.html
> e.g. get(@Anno(someValue!=2) * *)
>
> - can create aspects entirely in XML, no need for a pre-existing
> abstract aspect -
> http://www.eclipse.org/aspectj/doc/released/README-1612.html
>
> - 'thisAspectInstance' added -
> http://www.eclipse.org/aspectj/doc/released/README-1612.html
>
> - synthetic is supported in pointcut modifiers -
> http://www.eclipse.org/aspectj/doc/released/README-1612.html
>
> cheers,
> Andy
>
> On 8 January 2012 13:56, agks mehx <agksm...@gmail.com> wrote:
> > The Developer's Notebook seems to be from 2005, and I can't imagine there
> > have been no significant changes in 6 years.
> >
> > What is the authoritative source of documentation / reference for
> AspectJ?
> >  I am starting afresh on a greenfield project so I want to start with
> recent
> > features (the upcoming Java 7 release) rather than old ways of
> specifiying
> > aspects.
> >
> > Thanks!
> >
> > _______________________________________________
> > aspectj-users mailing list
> > aspectj-users@eclipse.org
> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@eclipse.org
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
_______________________________________________
aspectj-users mailing list
aspectj-users@eclipse.org
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to