diff options
-rw-r--r-- | build.xml | 50 | ||||
-rw-r--r-- | deps/website/markdownj.jar | bin | 0 -> 40987 bytes | |||
-rw-r--r-- | doc/changelog.markdown | 15 |
3 files changed, 63 insertions, 2 deletions
@@ -55,7 +55,7 @@ <delete dir="dist" quiet="true" /> </target> - <target name="website" description="Prepares the website for distribution" depends="javadoc"> + <target name="website" description="Prepares the website for distribution" depends="javadoc, changelogToHtml"> <taskdef classpath="deps/website/java2html.jar" name="java2html" classname="de.java2html.anttasks.Java2HtmlTask" /> <mkdir dir="build/website" /> <copy todir="build/website"> @@ -222,10 +222,11 @@ </manifest> </jar> <copy file="dist/lombok.eclipse.agent-${lombok.version}.jar" tofile="dist/lombok.eclipse.agent.jar" /> + <copy file="doc/changelog.markdown" tofile="build/changelog.txt" /> <jar destfile="dist/lombok-${lombok.version}.jar"> <fileset dir="build/lombok" /> <fileset dir="dist" includes="lombok.eclipse.agent.jar" /> - + <fileset dir="build" includes="changelog.txt" /> <manifest> <attribute name="Main-Class" value="lombok.installer.Installer" /> </manifest> @@ -268,4 +269,49 @@ labels="Featured" verbose="true" /> </target> + + <target name="changelogToHtml"> + <mkdir dir="build/changelog" /> + <echo file="build/changelog/CompileChangelog.java"><![CDATA[ +import com.petebevin.markdown.MarkdownProcessor; +import java.io.*; + +public class CompileChangelog { + public static void main(String[] args) { + try { + FileInputStream in = new FileInputStream(args[0]); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + byte[] b = new byte[65536]; + while ( true ) { + int r = in.read(b); + if ( r == -1 ) break; + out.write(b, 0, r); + } + in.close(); + String markdown = new String(out.toByteArray(), "UTF-8"); + String html = new MarkdownProcessor().markdown(markdown); + FileOutputStream file = new FileOutputStream(args[1]); + file.write(html.getBytes("UTF-8")); + file.close(); + System.exit(0); + } catch ( Throwable e ) { + e.printStackTrace(); + System.exit(1); + } + } +} +]]></echo> + <mkdir dir="build/website" /> + <javac srcdir="build/changelog" destdir="build/changelog" classpath="deps/website/markdownj.jar" debug="on" /> + <property name="CHANGELOG_FILE" location="doc/changelog.markdown" /> + <property name="CHANGELOG_HTML" location="build/website/changelog.html" /> + <java fork="true" classname="CompileChangelog" failonerror="true"> + <classpath> + <pathelement location="deps/website/markdownj.jar" /> + <pathelement location="build/changelog" /> + </classpath> + <arg value="${CHANGELOG_FILE}" /> + <arg value="${CHANGELOG_HTML}" /> + </java> + </target> </project> diff --git a/deps/website/markdownj.jar b/deps/website/markdownj.jar Binary files differnew file mode 100644 index 00000000..5e8f22b9 --- /dev/null +++ b/deps/website/markdownj.jar diff --git a/doc/changelog.markdown b/doc/changelog.markdown new file mode 100644 index 00000000..6c488a0c --- /dev/null +++ b/doc/changelog.markdown @@ -0,0 +1,15 @@ +Lombok Changelog +---------------- + +### v0.8.1 + +* Changelog tracking from this version on. +* Using eclipse's 'find callers' on a @Data annotation will now find callers of the static constructor if you generated it. If not, it still finds callers to hashCode() as before (it's not possible to make eclipse find callers to the normal constructor, though you can just use 'find callers' on the class name, which works fine). [link to issue](http://code.google.com/p/projectlombok/issues/detail?id=5) +* If your field is called 'hasFoo' and its a boolean, and you use @Getter or @Data to generate a getter for it, that getter will now be called 'hasFoo' and not 'isHasFoo' as before. This rule holds for any field prefixed with 'has', 'is', or 'get', AND the character following the prefix is not lowercase (so that 'hashCodeGenerated' is not erroneously identified as already having a prefix!). Similar logic has been added to not generate a getter at all for a field named 'foo' or 'hasFoo' if there is already a method named 'isFoo'. [link to issue](http://code.google.com/p/projectlombok/issues/detail?id=4) +* Starting the lombok installer on mac os X using soylatte instead of apple's JVM now correctly detects being on a mac, and using mac-specific code for finding and installing eclipses. [link to issue](http://code.google.com/p/projectlombok/issues/detail?id=7) +* For non-mac, non-windows installations, the jar file in the `-javaagent` parameter is now written as an absolute path in `eclipse.ini` instead of a relative one. For some reason, on at least 1 linux installation, an absolute path is required to make javaagent work. This 'fix' has the unfortunate side-effect of making it impossible to move your eclipse installation around without breaking the pointer to the lombok java agent, so this change has only been introduced for non-windows, non-mac. Thanks to WouterS for spotting this one and helping us out with some research on fixing it. [link to issue](http://code.google.com/p/projectlombok/issues/detail?id=6) + +### v0.8 + +* Initial release before announcements +* (note: There are a few different editions of lombok out there, all tagged with v0.8.)
\ No newline at end of file |