Commit Graph
885 Commits
Author SHA1 Message Date
Reinier Zwitserloot bdcbd1bac4 SpiLoadUtil's findAnnotationClass didn't work with extends Foo<T>, only with implements Foo<T>. Fixed this. 2011-06-20 21:05:06 +02:00
Reinier Zwitserloot 1c883cb13f as lombok never runs as AP anymore in ecj, the 'show some more info for bug 164' escape to not do that in ecj was no longer relevant. 2011-06-20 21:05:05 +02:00
Reinier Zwitserloot 47f58c922c mentioned Anthony Whitford's delombok maven plugin on delombok feature page. 2011-06-13 23:50:39 +02:00
Reinier Zwitserloot ac8aae9b42 Updated to ivyplusplus 1.7 and used ivy:cachedunjar to shave a second off build times. 2011-06-13 23:48:00 +02:00
Reinier Zwitserloot 6e9205a570 Updated the download page for the website, which now includes a list with instructions for many platforms. 2011-06-13 23:47:47 +02:00
Reinier Zwitserloot cea08d7799 Fixed PrintAST, and separately SneakyThrows/Synchronized which failed because the 'isFullParse' boolean was erronously set on a full rebuild, forced by HandleDelegate.
HandleDelegate has also been updated to not do so much work if there's no @Delegate in a source file.
2011-06-13 22:07:30 +02:00
Reinier Zwitserloot 274d5de571 Decided to improve the windows regexp detector from 'windows' to win|win32|win64|windows, on a word break. 2011-06-07 22:12:29 -07:00
Reinier Zwitserloot deb6b061ce Detector regexp for windows had a pointless grouping in it. 2011-06-07 22:09:59 -07:00
Reinier Zwitserloot 612431bbbb Updated to ASM 4.0RC1 so that we can deal with java7,
especially class files built with java7.

Fixes issue #188
2011-06-07 00:56:43 +02:00
Roel Spilker ef220339b6 Issue 188: add class file pool constants for methodhandles and invokedynamic (java7) 2011-06-06 23:22:47 +02:00
Reinier Zwitserloot 3171afd5bc ecj is now downloaded into lib/ecj. We don't currently use it for anything anymore, but could be handy for automated testing and definitely handy for manual experimenting / testing. 2011-06-06 22:15:31 +02:00
Reinier Zwitserloot eac3971390 -javaagent:lombok.jar=ECJ should now work to enable lombok in any ecj-based tool including ecj itself. 2011-06-06 22:14:22 +02:00
Reinier Zwitserloot 05465b66a8 Minor update to include a timestamp on the edge release download page. 2011-06-06 22:06:02 +02:00
Philipp Eichhorn 476b198f16 Allow "before" to be used as a source-package for eclipse tests (see LoggerSlf4jWithPackage). 2011-06-05 22:14:50 +02:00
Reinier Zwitserloot 964b82124d Eclipse handlers can now opt out of being run in diet-parse mode. Fixes Synchronized and SneakyThrows 2011-06-02 06:43:48 +02:00
Reinier Zwitserloot cd6eee36cf the new eclipse dietparse test suite written by philipp requires junit to be fired up with lombok as agent. Fixed that in the build script. 2011-06-02 06:43:30 +02:00
Reinier Zwitserloot 3c92d18927 ecj and jdt.core contain mostly the same classes. Its possible to get these mixed up and that would be bad (SecurityExceptions as signatures don't match, and in general mixing and matching classes from different releases). Just ditching ecj should do the job. 2011-06-02 06:35:38 +02:00
Reinier Zwitserloot ee40c8542d Trivial fixes. 2011-06-02 06:00:14 +02:00
peichhorn 850c3eaf07 Added a test infrastructure that simulates eclipse with diet-parse, type-binding and so forth. Similar to eclipse, the test needs to be executed with lombok as vm-agent. @Delegate runs with this setup, sadly val does not, at least for now.
And as expected the tests shows that @Synchronized and @SneakyThrows are currently broken for eclipse but not for ecj.
2011-06-01 02:44:53 +02:00
Reinier Zwitserloot aa96fcbc77 Whoops, ecj was broken due to half work on a previous commit to take ecj annotation processing offline. 2011-05-30 23:49:44 +02:00
peichhorn b512546508 The EclipseAST was incomplete when it came to ConstructorCalls. This lead to a severe error in PatchDelegate(issue #211) where classes that didn't use lombok at all could not be build due to a NullPointerException. 2011-05-30 23:44:30 +02:00
Reinier Zwitserloot 88f4e2d2e3 Some small typofixes for the website feature docs. 2011-05-30 22:36:05 +02:00
Reinier Zwitserloot 339b4a6ab1 Whoops, we broke @Delegate with the last update. Now the CAS check on handled is only done if we are -actually- going to call a handler. 2011-05-30 22:30:16 +02:00
Reinier Zwitserloot aa8a627349 tracking if an annotation has been handled or not is now no longer done
via the LombokAST object. Instead its tracked more directly in an attempt
to avoid having to write all handlers as idempotent, and just in case
issue #164 is a race condition (the handled-or-not is a synchronized CAS check).

This does break API for other plugins, but the fix is trivial: Just make your
'handle' method return void. That 'we won't call you again' business in the decks
never quite worked right anyway.

Also, you might want to call Javac.(recursive)setHandledBy when you generate nodes, now.
2011-05-30 22:08:12 +02:00
peichhorn daf84dd00e HandleDelegate did not remove the annotation @Delegate from javac's AST, so HandleDelegate was called multiple times for the same field resulting in an error saying the delegate method was already defined.
Also added a test for @Delegate that uncovered this issue.
2011-05-30 21:26:45 +02:00
Reinier Zwitserloot 1e7c6b98ca Updating website with a shiny new download page listing all the various frameworks and tools lombok now works under. 2011-05-30 11:09:24 +02:00
Reinier Zwitserloot 2d9195a229 Removed the ability of lombok to run as ecj annotation processor, because
it won't actually work right; method-level generics would break.

The new way is to use -javaagent:lombok.jar=ECJ in addition to -cp lombok.jar
2011-05-30 10:50:47 +02:00
Philipp Eichhorn 21cfb45696 delombok would put copyright headers in between the 'package' keyword and the actual package.
See discussion at https://groups.google.com/d/topic/project-lombok/64zuUlLnVMc/discussion
2011-05-28 19:34:34 +02:00
grootjans 489f506ba1 Added a layer of indirection between the patched calls for delegate to guard against situations in which lombok can't possibly work, since there is not enough of eclipse on the classpath. Major example of this is when we are called through jsps in the eclipse help.
Also added an extra check before the patchval is performed by checking if previous patch calls failed in TransformEclipseAST.

This fixes Issue #207.
2011-05-17 01:42:02 +02:00
Reinier Zwitserloot 85f7122ab5 Whoops - previous commit has a grievous error in it. My bad. Fixed now. 2011-05-16 22:54:01 +02:00
Reinier Zwitserloot 9360936435 Robbert Jan excluded com/sun from the pack a while ago, but this by accident also excluded jna which broke ecj apt support. 2011-05-16 22:32:58 +02:00
Reinier Zwitserloot 75e81604f3 Split up PatchVal into the ecj and eclipse bits; in ecj you'd just get NoSuchClassErrors. 2011-05-16 22:32:27 +02:00
grootjans 8b2ee73cc4 EclipseLocationProvider now checks the current directory if it matches the eclipse-like executable patterns. Probably fixes issue #196 2011-05-16 21:09:41 +02:00
Philipp Eichhorn 12b0753336 Fixes issue 205: NullPointerException in javac's Check$Validator with val 2011-05-16 20:35:22 +02:00
grootjans 52e7100060 updated changelog for issue #210 2011-05-16 20:17:06 +02:00
grootjans 05d3e9c984 Generalized fix for Issue #210, now the installer looks recursively for all platforms 2011-05-16 20:12:29 +02:00
Reinier Zwitserloot c2fe4f169f Updated copyright on javac HandleDelegate 2011-05-13 20:22:54 +02:00
Reinier Zwitserloot 8830e883fc @Delegate in javac on the new types/excludes model without autoexclusion now works. 2011-05-13 20:18:29 +02:00
Reinier Zwitserloot 045bc9a60d Updated Delegate docs now that we've changed how it works (it no longer detects that you've implemented a few to-be delegated methods yourself). 2011-05-09 22:05:43 +02:00
Roel Spilker 66f8ec612f Added Issue 210 the the changelog. 2011-05-09 21:25:35 +02:00
Roel Spilker 99b4fac271 Recurse directories while eclipse or sts is part of the directory name. Solves issue 210. 2011-05-09 21:21:33 +02:00
Reinier Zwitserloot 201d921692 Updated buildscript to new server 2011-05-03 03:15:32 +02:00
Reinier Zwitserloot 8c61bb0990 Changed how @Delegate works in ecj - methods already present do NOT
preclude them from being generated, which means you get duplicate method errors.
excludes=Types has been added to counteract this. Once we figure out how to
resolve method sigs out of order we can go back to the original plan.
2011-05-03 02:54:41 +02:00
Roel Spilker b93a582985 Merge branch 'master' of git@github.com:rzwitserloot/lombok 2011-05-03 02:26:15 +02:00
Roel Spilker e5e3521378 Eclipse 3.7 updated some internal AST classes, causing:
NoSuchMethodError: CastExpression.<init>

This commit fixes this (now lombok works both <3.7 and 3.7).

fixes issue #206
2011-05-03 02:25:14 +02:00
Reinier Zwitserloot 12e4f36a2f Yet another eclipse mirror went down or deleted an older version. We're now hosting this dependency ourselves; it was the last one we weren't already hosting. Also upped version from 3.6.0 to 3.6.2. 2011-04-01 19:55:50 +02:00
Reinier Zwitserloot 1a589ca221 Now logging a warning with diagnostic info so that the next time
a user runs into issue #164, we can get a more useful stracktrace from them.
2011-04-01 18:07:46 +02:00
Reinier Zwitserloot 7ebf05aaec Added ability to log warnings in eclipse error log. 2011-04-01 18:07:17 +02:00
Reinier Zwitserloot ab1d938ca8 Now delegating classes defined in the same project works.
At this revision, you can easily and reliably reproduce issue #164 by
creating a loop (A delegates B and B delegates A).
2011-03-28 21:36:08 +02:00
Reinier Zwitserloot 816c0b99e7 Updated documentation of XArgsConstructor to highlight that we won't/can't remove
suppressConstructorProperties until GWT and Android get the CP annotation.

See issue #202
2011-03-23 07:39:13 +01:00