Releases: nhatminhle/cofoja
Releases · nhatminhle/cofoja
Small overdue release
Long overdue release. This is nothing much, really, but I decided to package a release so people using binaries can benefit from the important bug fix below (and to show that I'm still around and taking care of the project somewhat :).
- Fixed a bug where using
old
in both@Ensures
and@ThrowEnsures
on a same method would make the instrumenter crash. - Re-added support for javac option passthrough (thanks to Liam Miller-Cushon).
- Added support for Apache Ivy to retrieve dependencies (I'm still no good with Maven, sorry...).
As usual, these Cofoja JAR files should work with Java 6 and above.
UPDATE (2/7): The new binaries include a fix for an NPE that triggered when running in Eclipse (actually in non-Sun javac).
Cofoja 1.2
This release adds support for Java 8 and introduces a number of incompatible changes.
Feature changes:
- Added support for Java 8 lambdas.
- Removed support for javac options (conflict between Oracle Javac 8 and previous versions).
- Added support for
@ContractImport
annotation. - Revamped and updated documentation bundled in the README.md file (documents almost all currently supported features).
Installation changes:
- Now builds with Oracle JDK 8. (Thanks to igoro@)
- Should also build on Windows. (Thanks to igoro@)
- Updated build.xml; now defaults to bootstrap.
- build.xml now requires Ant 1.9.1+.
- Cofoja now requires ASM 5+.
Migration recommendations:
- Pass the
classpath
,sourcepath
andclassoutput
annotation processor options to Cofoja. - Set the
classpath
annotation processor option to the same value as your main project classpath (seebuild.xml
for an example macro using Ant). - Add explicit
@ContractImport
annotations where imported names are used in contract code.