This file lists changes made to the IMPLEMENTATION. For changes to the SPECIFICATION, see file jsr308-changes.html. ---------------------------------------------------------------------- Version 2.3.2, 1 Feb 2018 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 2.3.1, 2 Jan 2018 Base build Updated to OpenJDK jdk8u-dev/langtools as of 26 Dec 2017. ---------------------------------------------------------------------- Version 2.3.0, 1 Dec 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 27 Nov 2017. ---------------------------------------------------------------------- Version 2.2.2, 2 Nov 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 29 Oct 2017. ---------------------------------------------------------------------- Version 2.2.1, 29 Sep 2017 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 2.2.0, 5 Sep 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 21 Aug 2017. Removed support for Java 7 compilation. ---------------------------------------------------------------------- Version 2.1.14, 3 Aug 2017 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 2.1.13, 3 Jul 2017 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 2.1.12, 1 Jun 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 20 May 2017. ---------------------------------------------------------------------- Version 2.1.11, 1 May 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 24 Apr 2017. ---------------------------------------------------------------------- Version 2.1.10, 1 Apr 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 28 Mar 2017. ---------------------------------------------------------------------- Version 2.1.9, 1 Mar 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 26 Feb 2017. ---------------------------------------------------------------------- Version 2.1.8, 20 Jan 2017 The webpage has moved to https://checkerframework.org/jsr308. Old URLs should redirect to the new one, but please update your links and let us know if any old links are broken rather than redirecting. ---------------------------------------------------------------------- Version 2.1.7, 3 Jan 2017 Base build Updated to OpenJDK jdk8u-dev/langtools as of 24 Dec 2016. ---------------------------------------------------------------------- Version 2.1.6, 1 Dec 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 26 Nov 2016. ---------------------------------------------------------------------- Version 2.1.5, 2 Nov 2016 Fix for JDK-8168043. Base build Updated to OpenJDK jdk8u-dev/langtools as of 25 Oct 2016. ---------------------------------------------------------------------- Version 2.1.4, 3 Oct 2016 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 2.1.3, 16 Sep 2016 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 2.1.2, 1 Sep 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 27 Aug 2016. ---------------------------------------------------------------------- Version 2.1.1, 1 Aug 2016 Bug fix for JDK-8160928 backported from JDK 9 (https://bugs.openjdk.java.net/browse/JDK-8160928) Base build Updated to OpenJDK jdk8u-dev/langtools as of 28 Jul 2016. ---------------------------------------------------------------------- Version 2.1.0, 1 Jul 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 28 Jun 2016. ---------------------------------------------------------------------- Version 2.0.1, 1 Jun 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 26 May 2016. ---------------------------------------------------------------------- Version 2.0.0, 2 May 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 1 May 2016. ---------------------------------------------------------------------- Version 1.9.13, 1 Apr 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 22 Mar 2016. ---------------------------------------------------------------------- Version 1.9.12, 1 Mar 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 28 Feb 2016. ---------------------------------------------------------------------- Version 1.9.11, 1 Feb 2016 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 1.9.10, 4 Jan 2016 Base build Updated to OpenJDK jdk8u-dev/langtools as of 30 Dec 2015 (no upstream changes). ---------------------------------------------------------------------- Version 1.9.9, 1 Dec 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 29 Nov 2015. ---------------------------------------------------------------------- Version 1.9.8, 9 Nov 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 7 Nov 2015. ---------------------------------------------------------------------- Version 1.9.7, 24 Oct 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 18 Oct 2015. ---------------------------------------------------------------------- Version 1.9.6, 8 Oct 2015 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 1.9.5, 1 Sep 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 27 Aug 2015. ---------------------------------------------------------------------- Version 1.9.4, 4 Aug 2015 Moved the jsr308-langtools version control repository from Google Code to Bitbucket. If you have cloned the old repository, adapt the .hg/hgrc file to use: https://bitbucket.org/typetools/jsr308-langtools or create a new clone using this command: hg clone https://bitbucket.org/typetools/jsr308-langtools Base build Updated to OpenJDK jdk8u-dev/langtools as of 21 Jul 2015. ---------------------------------------------------------------------- Version 1.9.3, 1 Jul 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 27 Jun 2015. ---------------------------------------------------------------------- Version 1.9.2, 1 Jun 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 26 May 2015. ---------------------------------------------------------------------- Version 1.9.1, 1 May 2015 No changes. Version incremented to match Checker Framework. ---------------------------------------------------------------------- Version 1.9.0, 17 Apr 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 13 Apr 2015. ---------------------------------------------------------------------- Version 1.8.11, 2 Mar 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 23 Feb 2015. ---------------------------------------------------------------------- Version 1.8.10, 30 Jan 2015 Base build Updated to OpenJDK jdk8u-dev/langtools as of 26 Jan 2015. ---------------------------------------------------------------------- Version 1.8.9, 19 Dec 2014 Base build Updated to OpenJDK jdk8u-dev/langtools as of 14 Dec 2014. ---------------------------------------------------------------------- Version 1.8.8, 26 Nov 2014 Deprecated implicit imports, including the jsr308_imports environment variable. ---------------------------------------------------------------------- Version 1.8.7, 30 Oct 2014 Base build Updated to OpenJDK jdk8u-dev/langtools as of 28 Oct 2014. ---------------------------------------------------------------------- Version 1.8.6, 24 Sep 2014 jsr308-langtools is now based on jdk8u-dev: the type-annotations repository was closed and jdk9 is starting to use Java 8 features, which prevents us from building on jdk7. Base build Updated to OpenJDK jdk8u-dev/langtools as of 22 Sep 2014. ---------------------------------------------------------------------- Version 1.8.5, 29 Aug 2014 Change default target version to 8. Allow type annotations in source versions 6 and 7 only if they appear in annotation comments. To obtain a strictly standard Java 8 compiler, provide the -XDTA:noannotationsincomments option. Read type annotations out of version 6 bytecode in addition to previously-existing support for version 7 and version 8 bytecode. This fixes Issues 54 and 55. No updates to base build. ---------------------------------------------------------------------- Version 1.8.4, 1 Aug 2014 Made it possible to compile Java 8 lambdas on a Java 7 JDK. This feature is for type-checking only. The compiled code still requires a Java 8 JVM to execute. ---------------------------------------------------------------------- Version 1.8.3, 1 Jul 2014 No changes. Version increased to match Checker Framework. ---------------------------------------------------------------------- Version 1.8.2, 2 Jun 2014 Base build Updated to OpenJDK 9 dev/langtools and type-annotations/langtools as of 26 May 2014. ---------------------------------------------------------------------- Version 1.8.1, 1 May 2014 Base build Updated to OpenJDK 9 dev/langtools and type-annotations/langtools as of 25 Apr 2014. ---------------------------------------------------------------------- Version 1.8.0, 2 Apr 2014 Base build Updated to OpenJDK 9 dev/langtools and type-annotations/langtools as of 25 Mar 2014. ---------------------------------------------------------------------- Version 1.7.5, 05 Mar 2014 No changes. Version increased to match Checker Framework. ---------------------------------------------------------------------- Version 1.7.4, 19 Feb 2014 Base build Updated to OpenJDK 9 dev/langtools and type-annotations/langtools as of 17 Feb 2014. ---------------------------------------------------------------------- Version 1.7.3, 5 Feb 2014 Base build Updated to OpenJDK 9 dev/langtools and type-annotations/langtools as of 30 Jan 2014. ---------------------------------------------------------------------- Version 1.7.2, 2 Jan 2014 jsr308-langtools is now based on OpenJDK 9 source. The build now requires at least Java 7. Base build Updated to OpenJDK 9 dev/langtools and type-annotations/langtools as of 1 Jan 2014. ---------------------------------------------------------------------- Version 1.7.1, 6 Dec 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 5 Dec 2013. ---------------------------------------------------------------------- Version 1.7.0, 21 Oct 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 19 Oct 2013. ---------------------------------------------------------------------- Version 1.6.7, 28 Aug 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 27 Aug 2013. ---------------------------------------------------------------------- Version 1.6.6, 1 Aug 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 31 Jul 2013. ---------------------------------------------------------------------- Version 1.6.5, 1 Jul 2013 Functionality: Add -XDTA:noannotationsincomments option to turn off annotations in comments. Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 30 Jun 2013. ---------------------------------------------------------------------- Version 1.6.4, 1 Jun 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 31 May 2013. ---------------------------------------------------------------------- Version 1.6.3, 1 May 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 29 Apr 2013. ---------------------------------------------------------------------- Version 1.6.2, 4 Apr 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 31 Mar 2013. ---------------------------------------------------------------------- Version 1.6.1, 1 Mar 2013 Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 1 Mar 2013. ---------------------------------------------------------------------- Version 1.6.0, 1 Feb 2013 Implements the current Type Annotations (JSR 308) specification, see file jsr308-changes.html for details: - Completely changed bytecode representation - Annotations in lambda expressions not stored in bytecode yet Base build Updated to OpenJDK 8 tl/langtools and type-annotations/langtools as of 31 Jan 2013. No longer builds or runs on JDK6 ---------------------------------------------------------------------- Version 1.5.0, 14 Jan 2013 Modified build.xml to work with new Checker Framework binary layout Minor documentation improvements No significant code changes ---------------------------------------------------------------------- Version 1.4.4, 1 Dec 2012 Several documentation improvements No significant code changes ---------------------------------------------------------------------- Version 1.4.3, 1 Nov 2012 No significant changes ---------------------------------------------------------------------- Version 1.4.2, 16 Oct 2012 No significant changes ---------------------------------------------------------------------- Version 1.4.1, 29 Sep 2012 Base build Updated to OpenJDK 8 langtools as of 28 Sep 2012. ---------------------------------------------------------------------- Version 1.4.0, 11 Sep 2012 Tools for converting to new receiver syntax: Files doc/convert-receiver.py and doc/convert-receiver.el are two programs (one written in Python and one writtenin Emacs Lisp) that convert a Java program from old-style (C++-style) receiver annotations to new-style ("this" formal parameter) receiver annotations. Code improvements: - Remove com.sun.source.util.AbstractTypeProcessor - Remove com.sun.tools.javac.tree.JCTree.JCTypeAnnotation.annotation_position field - Add V52 classfile version - Adaptations to these changes and many cleanups - All jtreg test cases pass Base build Updated to OpenJDK 8 langtools as of 7 Sep 2012. ---------------------------------------------------------------------- Version 1.3.1, 21 Jul 2012 Base build Updated to OpenJDK 8 langtools as of 21 Jul 2012. ---------------------------------------------------------------------- Version 1.3.0, 3 Jul 2012 Implements the current Type Annotations (JSR 308) specification, see file jsr308-changes.html for details: - New receiver syntax, using "this" as a formal parameter name: ReturnType methodname(@ReceiverAnnotation MyClass this, ...) { ... } - Annotations on nested classes - No annotations on class literals - Changed @Target default to be the Java 1.5 values - Bytecode changes (u2 instead of u1 for target type, renumbering, consistent storage of wildcards, ...) - UW extension: in addition to annotations in comments, support special /*>>> */ comments to hide multiple tokens. This is useful for the new receiver syntax and for import statements. Base build Updated to OpenJDK 8 langtools as of 2 Jul 2012. ---------------------------------------------------------------------- Version 1.2.7, 14 May 2012 No changes in functionality. ---------------------------------------------------------------------- Version 1.2.6, 18 Mar 2012 Use the newly added multiple task listeners. Base build Updated to OpenJDK 8 langtools as of 17 Mar 2012. ---------------------------------------------------------------------- Version 1.2.5.1, 06 Feb 2012 Compile release with JDK 6 to work on both JDK 6 and JDK 7. ---------------------------------------------------------------------- Version 1.2.5, 3 Feb 2012 Base build Updated to OpenJDK 8 langtools as of 2 Feb 2012. ---------------------------------------------------------------------- Version 1.2.4, 15 Dec 2011 Base build Updated to OpenJDK 8 langtools as of 13 Dec 2011. ---------------------------------------------------------------------- Version 1.2.3, 1 Nov 2011 Small bug fixes and documentation updates. Base build Updated to OpenJDK 8 langtools as of 31 Oct 2011. ---------------------------------------------------------------------- Version 1.2.2, 1 Oct 2011 Be less restrictive about when to start type processing when errors already exist. Small documentation updates. ---------------------------------------------------------------------- Version 1.2.1, 20 Sep 2011 Align jsr308-langtools more with the main langtools. The biggest internal changes are that Type's are no longer cloned and that Trees.getScope now works correctly without workaround. Small bug fixes and documentation updates. Base build Updated to OpenJDK 8 langtools as of 19 Sep 2011. ---------------------------------------------------------------------- Version 1.2.0.1, 4 Sep 2011 A small bug fix release to ensure that the build works correctly with Java 7. ---------------------------------------------------------------------- Version 1.2.0, 2 Sep 2011 Changes to accommodate some recent specification changes. Bug fixes To cleanly separate langtool changes from JDK changes, the latter are now in the separate directory src/jdk-changes Base build Updated to OpenJDK 8 langtools as of 31 Aug 2011 This version of langtools continues to support building on Java 5; however, the official OpenJDK release will require Java 7. Type annotations now require -source 8, which is the new default. ---------------------------------------------------------------------- Version 1.1.5, 22 Jul 2011 No changes in functionality. Edited build scripts to allow running the Checker Framework on the compiler. ---------------------------------------------------------------------- Version 1.1.4, 8 Jul 2011 Bug fixes: javac: don't run type annotation processors if symbol resolution errors exist (improvement to fix in the last release) Base build Updated to OpenJDK langtools build b147 ---------------------------------------------------------------------- Version 1.1.3, 17 Jun 2011 Bug fixes: javac: don't run type annotation processors if deferred errors exist Rename occurrences of "Sun" to "Oracle" Updates to the web-site build process The commits from March 21st/22nd 2011 re-add JSR 308 support that was previously removed in langtools. All of them previously existed in this repository. Base build Updated to OpenJDK langtools build b145 ---------------------------------------------------------------------- Version 1.1.2, 12 Jan 2011 Documentation fixes only ---------------------------------------------------------------------- Version 1.1.1, 18 Sep 2010 Base build Updated to OpenJDK langtools build b108 ---------------------------------------------------------------------- Version 1.1.0, 13 Jun 2010 Base build Updated to OpenJDK langtools build b97 ---------------------------------------------------------------------- Version 1.0.9, 25 May 2010 Bug fixes javadoc: Fixed a bug related to annotated primitive array javac: Emit annotations targeting exceptions in catch clauses Base build Updated to OpenJDK langtools build b94 ---------------------------------------------------------------------- Version 1.0.8, 15 May 2010 Base build Updated to OpenJDK langtools build b93 ---------------------------------------------------------------------- Version 1.0.7, 12 Apr 2010 Base build Updated to OpenJDK langtools build b88 ---------------------------------------------------------------------- Version 1.0.6, 24 Feb 2009 Base build Updated to OpenJDK langtools build b84 ---------------------------------------------------------------------- Version 1.0.5, 12 Jan 2009 Javadoc changes Fixed bugs causing javadoc to miss some annotations, in particular some receiver annotations of constructors annotations on extends clauses of type Object some annotations that are both declaration and type annotations Base build No release since 17 Dec 2009 ---------------------------------------------------------------------- Version 1.0.4, 19 Dec 2009 Base build Updated to OpenJDK langtools build b78 ---------------------------------------------------------------------- Version 1.0.3, 5 Dec 2009 Classfile format Change classfile representation of annotations that are both a type annotation and a declaration annotation (e.g., with missing Target meta-annotation). These are now emitted to the classfile twice. Base build Updated to OpenJDK langtools build b77 ---------------------------------------------------------------------- Version 1.0.2, 16 Nov 2009 ClassFile format Changed reference info structure for class extends/implements and throws to contain a char instead of a byte Base build Updated to OpenJDK langtools build b76 ---------------------------------------------------------------------- Version 1.0.1, 1 Nov 2009 Functionality Added Compiler API support for JSR 308 Found in javax.lang.model.utils.Types Base build Updated to OpenJDK langtools build b75 ---------------------------------------------------------------------- Version 1.0.0, 30 Sep 2009 Functionality Separated type annotations from declaration annotations when targetting method return/parameter and field types Bug fixes javap: Fixed crash related to class literal arrays annotations javac: emit class literal array annotations to classfile Base build Updated to OpenJDK langtools build b72 ---------------------------------------------------------------------- Version 0.9.9, 4 Sep 2009 Base build Updated to OpenJDK langtools build b71 ---------------------------------------------------------------------- Version 0.9.8, 21 Aug 2009 Base build Updated to OpenJDK langtools build b70 ---------------------------------------------------------------------- Version 0.9.7, 12 Aug 2009 Bug fixes Fixed a javac crash when using -sourcepath Base build Updated to OpenJDK langtools build b68 ---------------------------------------------------------------------- Version 0.9.6, 29 Jul 2009 Functionality Initial support for javadoc Support for type arguments of constructor calls Bug fixes Fixed a javap crash when processing a class literal array annotation Base build Updated to OpenJDK langtools build b66 (Milestone 4) ---------------------------------------------------------------------- Version 0.9.5, 13 Jul 2009 Base build Updated to OpenJDK langtools build b63 ---------------------------------------------------------------------- Version 0.9.4, 30 Jun 2009 Bug fixes Fixed a regression when using '-XDTA:spacesincomments' Base build Updated to OpenJDK langtools build b62 ---------------------------------------------------------------------- Version 0.9.3, 23 Jun 2009 Bug fixes Fixed a bug related to exposing package annotation to type-checkers Base build Updated to OpenJDK langtools build 61 ---------------------------------------------------------------------- Version 0.9.2, 2 Jun 2009 Base build Using JavaOne preview build b59 ---------------------------------------------------------------------- Version 0.9.1, 19 May 2009 Functionality javac suppresses redundant cast warnings for annotated casts javap pretty-prints type annotations Compiler API Changes to Tree API: modified AnnotatedTypeTree.getAnnotations() to return List added MethodTree.getReceiverAnnotations() removed MethodTree.getReceiver() Added abstract class for type processor requiring type information named AbstractTypeProcessor Bug fixes Handled annotations in new array dimensions Base build Updated to OpenJDK langtools build b59 ---------------------------------------------------------------------- Version 0.8.9b, 22 Apr 2009 Functionality: parse annotations in comments by default remove -XDTAannotationsincomments flag ---------------------------------------------------------------------- Version 0.9, 16 Apr 2009 Functionality Renamed compile commandline options: - -XDTAannotationsincomments to parse annotations in comments - -Xspacesincomments -> -XDTAspacesincomments Bug fixes Fixed bugs related to vararg annotations Base build Updated to OpenJDK langtools build b54 ---------------------------------------------------------------------- Version 0.8.9, 28 Mar 2009 Functionality: support array class literals emit array type annotations to classfile validate type annotations on new array expressions reject annotations on static method receivers Bug fixes: reject annotations on array access levels eliminate duplicate annotations description in classfile output minor issues with target_type and reference_info output Base build Updated to OpenJDK langtools build b51 ---------------------------------------------------------------------- Version 0.8.8, 13 Mar 2009 Functionality javap: output type annotation locations Bug fixes javac: fixed errors related to emitting annotation info to classfile affected annotations on class type parameters and local variables Base build Updated to OpenJDK langtools build b50 ---------------------------------------------------------------------- Version 0.8.7, 27 Feb 2009 Functionality javac: support for ElementKind.TYPE_PARAMETER specification javac: emit annotations on local variables to classfile javac: support for annotations on wildcards Testing javac: pass all regression tests javac: fix bugs related to invalid type annotations Base build Updated to OpenJDK langtools build b49 ---------------------------------------------------------------------- Version 0.8.6, 3 Feb 2009 Functionality javap support type annotations classfiles javac support for wildcard bound annotations Base build Updated to OpenJDK langtools build b45 ---------------------------------------------------------------------- Version 0.8.5, 17 Jan 2009 Base build Updated to OpenJDK langtools build b43 Functionality Enhanced support for annotations on type parameters ---------------------------------------------------------------------- Version 0.8.4, 17 Dec 2008 Functionality Added support for TYPE_USE annotation target Bug fixes javac rejects more some invalid type annotations - e.g annotations with missing or repeated member values javac and other programs properly handle filenames containing spaces Testing Added compiler tests for jsr308 implementation ---------------------------------------------------------------------- Version 0.8.3, 7 Dec 2008 Bug fixes Fixed bug related to annotations on anonymous classes Base build Updated to OpenJDK langtools build b41 ---------------------------------------------------------------------- Version 0.8.2, 14 Nov 2008 Functionality Added support for annotations on type parameters Bug fixes Fixed bug related to parsing type annotation member values Fixed bug related to parsing commented-annotations with spaces Base build Updated to OpenJDK langtools build b39 ---------------------------------------------------------------------- Version 0.8.1, 1 Nov 2008 Base build Updated to OpenJDK langtools build b38 ---------------------------------------------------------------------- Version 0.8, 27 Sep 2008 No changes for this release ---------------------------------------------------------------------- Version 0.7.9, 19 Sep 2008 No changes for this release ---------------------------------------------------------------------- Version 0.7.8, 12 Sep 2008 Bug fixes Better support for annotations on anonymous classes Base build Updated to OpenJDK langtools build b35 ---------------------------------------------------------------------- Version 0.7.7, 29 Aug 2008 Base build Updated to OpenJDK langtools tl repository Bug fixes Fix bug causing crashes when input files contain tabs ---------------------------------------------------------------------- Version 0.7.6, 12 Aug 2008 New features Changed default array syntax to ARRAYS-PRE Bug fixes several bug fixes related to ARRAYS-PRE parsing ---------------------------------------------------------------------- Version 0.7.5, 2 Aug 2008 New features Added support for ARRAYS-PRE and ELTS-PRE array syntax Base build Updated to OpenJDK langtools build b31 ---------------------------------------------------------------------- Version 0.7.4, 11 July 2008 Removed support for ARRAY-IN convention Moved to the Checker Framework ---------------------------------------------------------------------- Version 0.7.3, 4 July 2008 New features Added support for type annotations in classfiles Base build Updated to OpenJDK langtools build b30 ---------------------------------------------------------------------- Version 0.7.2, 26 June 2008 Documentation Improved installation instruction for Mac Base build Updated to OpenJDK langtools build b29 ---------------------------------------------------------------------- Version 0.7.1, 20 June 2008 No changes in this release. ---------------------------------------------------------------------- Version 0.7, 14 June 2008 Installation New, very simple installation instructions for Linux. For other operating systems, continue to use the old instructions. Base build Updated to OpenJDK langtools build b28 ---------------------------------------------------------------------- Version 0.6.4, 9 June 2008 New features Added support for -Xspacesincomments ---------------------------------------------------------------------- Version 0.6.3, 6 June 2008 Updated the jsr308 to the latest openjdk langtools build (b27) New features Added support for parsing using the 'arrays' convention Documentation Updated installation instructions Miscellaneous changes Revert public API modification for messaging using trees ---------------------------------------------------------------------- Version 0.6.2, 30 May 2008 Documentation Fixed documentation broken link As of May 6, 2008, Apple finally supports Java SE 6 on the Mac. Now, it should be possible to run the JSR 308 compiler on a 64-bit, Intel-based Mac running Mac OS X 10.5.2 or later (http://support.apple.com/kb/HT1856). ---------------------------------------------------------------------- Version 0.6.1, 26 Apr 2008 Miscellaneous Added support for implicit import of JSR 308 annotations, via the "jsr308_imports" system property/environment variable. ---------------------------------------------------------------------- Version 0.6, 11 Apr 2008 Bug fixes Fixed bugs in which some new array expressions with annotated dimension expressions did not parse Fixed bugs in which parse trees for annotated arrays were not correctly constructed Improved pretty-printing for annotated arrays Added support for varargs array element annotations Fixed a crash in ClassWriter ---------------------------------------------------------------------- Version 0.5.1, 21 Mar 2008 Bug fixes Fixed a bug that caused errors to be issued incorrectly for certain anonymous constructors Fixed a bug that caused annotations in which annotations on the type arguments of a method invocation were not correctly handled Miscellaneous Platform-independent binary versions of the JSR 308 javac and javap tools, as well as a script to patch a user's Java 7 installation, are now included in this release ---------------------------------------------------------------------- Version 0.5, 7 Mar 2008 Bug fixes Fixed a bug that caused parse errors for annotated arrays of generics (e.g., "List[@NonNull]") Fixed a bug that caused parse errors for some annotated new array expressions ---------------------------------------------------------------------- Version 0.4.1, 22 Feb 2008 Miscellaneous changes Restored JSR 308 support in the compiler's class reader. ---------------------------------------------------------------------- Version 0.4, 11 Feb 2008 Bug fixes Fixed a bug in which javac was parsing multi-dimensional as single-dimensional arrays. ---------------------------------------------------------------------- Version 0.3.99, 20 Nov 2007 Miscellaneous changes Added an AnnotatedTypeTree to the Tree API. The parser now uses an AnnotatedTypeTree where annotated types are permitted, instead of storing annotations separately in the tree. Some JSR 308 support in the compiler's class reader has been temporarily removed until some internal changes have been completed. ---------------------------------------------------------------------- Version 0.3, 1 Oct 2007 Miscellaneous changes Updated the distribution to OpenJDK 7 b20. Adopted a new directory structure: the JSR 308 distribution now consists only of the "langtools" directory from the OpenJDK distribution; see README.html for more information ---------------------------------------------------------------------- Version 0.2.3, 30 Aug 2007 New features updated javap to parse and display both JSR 175 and JSR 308 annotations (see ./j2se/src/share/opensource/javap) Bug fixes fixed a bug that caused invalid signature errors and/or ArrayIndexOutOfBoundsExceptions when compiling against annotated class files fixed several bugs related to annotations on array creation expressions Miscellaneous changes forced the use of "-ea" to enable assertions when running JSR 308 javac via the wrapper script ---------------------------------------------------------------------- Version 0.2.2, 16 Aug 2007 Code Changes * openjdk updated source to OpenJDK 7 b17 Documentation Changes * openjdk/README-jsr308.html improvements to instructions ---------------------------------------------------------------------- Version 0.2.1, 1 Aug 2007 Documentation Changes * openjdk/README-jsr308.html improvements to instructions Code Changes * openjdk updated source to OpenJDK 7 b16 javac uses EndPosParser by default ---------------------------------------------------------------------- Version 0.2, 2 Jul 2007 Miscellaneous distribution now based on OpenJDK 7, includes full OpenJDK 7 source Documentation Changes * openjdk/README-jsr308.html added note about using IDEs with the JSR 308 compiler added section about building compiler separately from OpenJDK suite added section on differences from the JSR 308 proposal Code Changes * compiler updated source to OpenJDK 7 b14 fix for printing of error/warning count with -typeprocessor option anticipated Sun's fix for TreePath (bug #6473148) ---------------------------------------------------------------------- Version 0.1.1, 7 Jun 2007 Documentation Changes * compiler/README-jsr308.html fixed "Reporting bugs" cross reference Code Changes * compiler parsing of class literal annotations (remaining support due in a future release) ---------------------------------------------------------------------- Version 0.1.0, 1 May 2007 Initial release.