<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>The AspectJ project at Eclipse.org: Teaching</title>
  <link rel="stylesheet" href="aspectj_style.css" type="text/css" />
</head>
<body>
<div id="container">
<?php require("banner.html"); ?>
<div id="main">
  <!-- ================ Page specific content starts here ================ -->

<h1>the aspectj news archives</h1>

 <dl>  
   <dt>December 14th 2005, AspectJ 5 RC1 released</dt>
   <dd>AspectJ 5 release candidate 1 was released today. It contains many bug fixes and
   enhancments since the M5 release. You can see the
   <a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=AspectJ&bug_status=RESOLVED&chfieldfrom=2005-11-17&chfieldto=2005-12-14">
   complete list of resolved issues since M5</a> on bugzilla. AspectJ 5 RC1 is available for download from the
   <a href="downloads.php">downloads page</a>.
  </dd>
  
   <dt>November 16th 2005, AspectJ 5 M5 released</dt>
   <dd>The AspectJ 5 milestone 5 build was released today. It contains a large number of bug fixes and
   enhancements since M4.  We are no longer adding new features to AspectJ and are concentrating
   on fixing bugs before creating our first Release Candidate.  You can see 
   the <a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=AspectJ&bug_status=RESOLVED&chfieldfrom=2005-10-07&chfieldto=2005-11-16">
   complete list of resolved issues since M4</a> on bugzilla. AspectJ 5 M5 is available for download from the  
   <a href="downloads.php">downloads page</a>.  You can see the list of remaining bugs to fix before 1.5.0 is finished
   <a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=AspectJ&target_milestone=1.5.0&target_milestone=1.5.0RC1&target_milestone=1.5.0RC2&keywords=&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED">here</a>.
   </dd>
   
   <dt>October 7th 2005, AspectJ 5 M4 released</dt>
   <dd>The AspectJ 5 milestone 4 build was released today. It contains a large number of bug fixes and
   enhancements since M3, including the <a href="http://www.eclipse.org/aspectj/doc/next/api/index.html">
   new reflection and weaver tools APIs</a>. You can see the <a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=AspectJ&bug_status=RESOLVED&chfieldfrom=2005-08-27&chfieldto=2005-10-07">
   complete
   list of resolved issues since M3</a> on bugzilla. AspectJ 5 M4 is available for download from the  
   <a href="downloads.php">downloads page</a>.
   </dd>

	
  
  <dt>August 25th, 2005, AspectJ 5 M3 released</dt>
   <dd>At long last, AspectJ 5 M3 is here. This release has full Java 5 compilation support,
   language extensions for generics, enhanced load-time weaving, and the first official support
   for the @AspectJ development style. Now it's full speed ahead to M4 and then AspectJ 5 final.
   You can download AspectJ 5 M3 from the <a href="downloads.php">downloads page</a>.
    </dd>
	
   <dt> July 2005, Call for papers issued for 5th International Conference on AOSD</dt>
   <dd>
     <table border="0">
      <tr>
        <td>
           <a href="http://aosd.net/conference">
             <img align="right" src="images/aosd06logo.gif"  border="0" 
                alt="AOSD.06 March 20-24: Bonn, Germany"/ title="AOSD.06"/>
           </a>
        </td>
        <td>
     The <a href="http://aosd.net/conference">AOSD.06</a> conference is now
     soliciting contributions. A great chance for AspectJ users to meet up and share what
     they are doing. Submit your <a href="http://aosd.net/2006/cfc/reports.php">
     experience report</a> abstracts by September 23rd.
         </td>
       </tr>
      </table>
   </dd>
     
   <dt> April 12, 2005, aUnit 0.1 released</dt>
   <dd>Russ Miles has made available the 0.1 release of <a href="http://www.aunit.org">aUnit</a>, a 
   unit testing framework for aspects. The 0.1 release includes a full working test framework
   with a set of examples in the source download to show you how to create tests.</dd>

     
   <dt> April 7, 2005 <a href="downloads.php">AspectJ 5 M2</a> build now available</dt>
   <dd>
	   The second milestone build of AspectJ 5 is now available, with full support for compiling Java 5 language
	   features and annotation matching and binding.
	   See the <a href="doc/README-150.html">README</a>
	   for more details, or go straight to the <a href="doc/ajdk15notebook/index.html">AspectJ 5
	   Developer's Notebook</a> for a detailed description of the new language features.
   </dd>       
	        
   <dt> January 17th, 2005 - AspectJ 5 development builds now support full Java 5 source compilation </dt>
    <dd>
	    The AspectJ 5 development builds as of 17th January now include full support for source
	    compilation of Java 5 programs.
    </dd>
    
     <dt> December 10th, 2004 - AspectJ 5 M1 (milestone 1) build now available. </dt>
    <dd> 
	    The first milestone build of AspectJ 5 is now available, with support for binary
	    weaving of Java 5 classes. This build supports annotations, enums, varargs, autoboxing,
	    covariance, and detection of bridge methods. See the
	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/README-150.html">README</a>
	    for more details, or go straight to the
	    <a
	    href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/ajdk15notebook/index.html">
	    AspectJ 5
	    Developer's Notebook</a> for a detailed description of the new language features.
    </dd>

    <dt> November 9th, 2004 - "Easy Install" AspectJ and AJDT distributions available. </dt>
    <dd>
	    Russ Miles has packaged together <a href="http://www.aspectjcookbook.com">integrated 
	    installers for Eclipse, AJDT, and AspectJ on the Windows and Mac platforms</a>. 
	    So now you can install a fully-configured AspectJ development environment in one single step.
	    Also look out for his forthcoming book, the <a href="http://www.aspectjcookbook.com">
	    AspectJ Cookbook</a>.
    </dd>

    <dt> November 5th, 2004 - AspectJ 1.2.1 released </dt>
    <dd>
	    <a href="http://download.eclipse.org/tools/ajdt/aspectj-1.2.1.jar">(Download)</a> 
	    <a href="http://www.aspectprogrammer.org/dist/aspectj-1.2.1.jar">(Mirror)</a>.
	    AspectJ 1.2.1 was released today. See the
	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/README-121.html">
	    README</a> for an overview of the release, or for detailed information
	    you can refer to this
	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/changes.html">
	    list of changes and bug fixes</a>.
    </dd>

    <dt> October 22nd, 2004 - AspectJ 1.2.1rc1 released </dt>
    <dd>
	    <a href="http://download.eclipse.org/tools/ajdt/aspectj-1.2.1rc1.jar">(Download)</a> 
	    <a href="http://www.aspectprogrammer.org/dist/aspectj-1.2.1rc1.jar">(Mirror)</a>.
	    AspectJ 1.2.1 release candidate 1 was released today. See the
	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/README-121.html">
	    README</a> for an overview of the release, or for detailed information
	    you can refer to this
	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/changes.html">
	    list of changes and bug fixes</a>.
    </dd>

    <dt>July 29, 2004 - AspectJ website launched for the Hispanic community. </dt>
    <dd>
            See <a href="http://www.programemos.com">http://www.programemos.com</a>.
    </dd> 

    <dt> May 25, 2004 - AspectJ 1.2 released. <a href="downloads.html">(Download)</a>.</dt> 
    <dd>
            See the 
	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/doc/README-12.html">
	    1.2 README</a> for an overview of the release.
    </dd>

    <dt> April 21, 2004 - A new book on AspectJ has been published </dt>
    <dd>
	    <a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797326387/ref=sr_aps_b_3/250-2674266-5497022">
	    Introduction to Aspect-Oriented Programming with AspectJ</a> by Yoshihide Nagase, Masahiro Amano, 
	    Hironori Washizaki, and Michiaki Tatsubori (280 pages, Japanese).
    </dd>

    <dt>March 27, 2004</dt>
    <dd> 
	    <a target="_top" href="http://aosd.net/archive/index.php"/>Proceedings of the AOSD 2004 conference</a>
	    are available.
    </dd>

    <dt>March 2004 - IBM's interest in AOP</dt>
    <dd>
            is reported in
	    <a target="_top" href="http://www.sys-con.com/story/?storyid=44214"/>Java Developer's Journal</a>,
	    <a target="_top" href="http://www.theserverside.com/articles/article.tss?l=AOSD2004-2"/>
	    The ServerSide at AOSD 2004</a>, and
	    <a target="_top" href="http://news.com.com/2100-1008-5178164.html"/>news.com</a>.
    </dd>

    <dt>
	    March 17, 2004 - AspectJ 1.1 gets a Software Development Magazine
	    <a target="_top" href="http://sdmagazine.com/jolts/"> 
	    Jolt Productivity award</a>
    </dt>
    <dd>     in the Language and 
	    Development Environments category.
<!--	    <a href="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/2004-jolt.jpg">
	    <img border=0
	    src="http://dev.eclipse.org/viewcvs/indextech.cgi/~checkout~/aspectj-home/2004-jolt-small.jpg"></a> 
-->
    </dd>

    <dt>
	    June 9, 2003 - AspectJ wins the 
	    <a target="_top" href="http://www.javaworld.com/javaworld/jw-06-2003/jw-0609-eca_p.html">
	    JavaWorld Editors' Choice Award</a> 
    </dt>
    <dd>    for &quot;Most Innovative Java Product or Technology&quot;
    </dd>
 
 </dl>

  <!-- ================ End of page specific content ===================== -->
</div>
</div>
</body>
</html>