Commit Graph
1366 Commits
Author SHA1 Message Date
Reinier Zwitserloot 9ed14b8cbf added Flags.PARAMETER to all the parameters we generate in javac. 2013-08-06 21:22:24 +02:00
Reinier Zwitserloot d0d2dd6f5d Some work on actually making lombok work on JDK8's javac. 2013-07-28 07:16:12 +02:00
Reinier Zwitserloot 4dbe3802fd more progress. This one is less JDK8 compatible, but
it has major refactorings to make JDK6-8 support
possibly with much prettier code.
2013-07-28 03:10:34 +02:00
Reinier Zwitserloot e2af5ed0c7 experiment: Can we wrap TreeMaker and remove a heck of a lot of opportunity to program handlers that are not cross javac6-8 compatible? 2013-07-26 07:15:07 +02:00
Reinier Zwitserloot 1b4d8669c4 A source file with just @Getter in it now compiles in javac8, but there is still a looooong way to go. 2013-07-23 00:54:59 +02:00
Reinier Zwitserloot 45697b5081 Merge branch 'master' into jdk8. Also added some major fixes whilst merging.
Conflicts:
	src/core/lombok/javac/handlers/JavacHandlerUtil.java
	src/utils/lombok/javac/CommentCatcher.java
	src/utils/lombok/javac/Javac.java
2013-07-22 23:23:46 +02:00
Roel Spilker deed98be16 Upyeared the copyright notice in the generated javadoc. 2013-07-18 16:27:50 +02:00
Reinier Zwitserloot 023d90bc75 post-release version bump to 0.12.1 2013-07-16 02:06:45 +02:00
Reinier Zwitserloot e72ab866d6 bumped version 2013-07-16 00:58:05 +02:00
Reinier Zwitserloot 7af9add999 * Fixed issues with @FieldDefaults and @Value (you can NOT override
@Value's final-by-default and private-by-default with it; now
appropriate warnings are emitted)
* Builder now errors out on presence of most lombok annotations on an
explicit builder class.
* Builder now takes @FieldDefaults/@Value into account.
* Builder on type now generates the constructor as package private
instead of private to avoid synthetic accessor constructors.
* added a bunch of test cases.
* added a test case feature: If the expected file is omitted entirely
but there are expected messages, the differences in the output itself
are ignored.
* streamlined checking for boolean-ness (removed some duplicate code)
* added 'fluent' and 'chain' to @Builder.
2013-07-16 00:51:31 +02:00
Reinier Zwitserloot ec0cc4348c Renamed ImmutableList to LombokImmutableList, to reduce our ImmutableList coming up in autocomplete dialogs when guava's was intended. 2013-07-16 00:45:09 +02:00
Reinier Zwitserloot 1037e83225 possible fix for a deadlock issue 531. 2013-07-08 22:13:00 +02:00
Reinier Zwitserloot e7ff097fec Fixed value's snippet integration (it hadn't been updated yet now that Value has moved from experimental into core). 2013-07-08 21:21:33 +02:00
Reinier Zwitserloot bf8e2afed0 gave up on adding support for moving javadoc to getter/setter in eclipse. Eclipse breaks the javadoc out of the raw source and we can't modify that without breaking a billion things. To solve this issue we'd have to write some very complicated patches to intercept this process and somehow propagate the node that the javadoc is attached to AND translate from the ast model to dom or whatever is being used there. Not gonna happen for this low priority feature. 2013-07-08 21:20:24 +02:00
Reinier Zwitserloot 867929c79f added tests for new javadoc behaviour, javac implementation of copying javadoc for getters/setters, and fixed pretty printer to no longer inject an extra newline at the top of javadoc. 2013-07-08 21:20:24 +02:00
Reinier Zwitserloot 0d5fea94da Support for javadoc copying in Getter/Setter generation for javac, as well as updates to all relevant documentation 2013-07-08 21:20:20 +02:00
Reinier Zwitserloot a6c1be550f A lot of refactoring on how javadoc is handled, to prepare for copying javadoc from field to setter/getter in javac. 2013-07-08 04:58:00 +02:00
Reinier Zwitserloot 4923506d73 more work on the tricky Context hack to make 'ant compile' not emit warnings. 2013-07-07 22:05:41 +02:00
Reinier Zwitserloot 91bfd390e0 updated docs for new desugaring for getter(lazy=true) 2013-07-07 21:49:48 +02:00
Reinier Zwitserloot 85fec0dffa eclipse support for the new @Getter(lazy=true) desugaring. 2013-07-07 21:49:47 +02:00
Reinier Zwitserloot b6a23a7d94 @Getter(lazy=true) now uses a different, more efficient desugaring. Implementing in javac, ecj still has to be done. 2013-07-07 21:49:47 +02:00
Reinier Zwitserloot dfc682a001 lombok's compile target is 1.6, but, eclipse project was generated as 1.7. This caused a bunch of weirdness because eclipse changes a bunch of warnings and quickfixes based on this (such as complaining about lack of @SafeVarargs, a 1.7-only feature). 2013-07-07 21:49:47 +02:00
Reinier Zwitserloot 446a8e33e0 FINALLY! Found the cause of a really weird eclipse bug,
where _ANY_ mention of com.sun.tools.javac.tree.TreeMaker,
anywhere in a source file, would disable pretty much every
intelligent part of what makes the 'I' in IDE in eclipse:
No auto-complete, no 'go to declaration', etcetera, but only
since Eclipse Juno (not fixed in Kepler either). It's the
presence of src/stubs/com/sun/tools/javac/util/Context.java.

I've moved Context to a special stubs directory that's only used
for javac (so that we still get the benefit of getting some
warnings and such when making command line builds), and removed
the @Override annotations for where the stubbing is relevant
(for methods that exist in javac7 but not in javac6 on interfaces
we create implementations of). Furthermore, I did some extremely
tricky work in making our version actuall compatible with the
exact class signatures of both javac6- and javac7+'s versions;
generation of synthetic methods for reified type parameters was
causing havoc.

A big stack of 'here be voodoo' comments unfortunately added to
explain it all; necessary evil.
2013-07-07 21:49:47 +02:00
Reinier Zwitserloot 5326cfa8e8 Merge branch 'master' of github.com:rzwitserloot/lombok 2013-07-07 05:27:31 +02:00
Reinier Zwitserloot e531b1f499 Merge pull request #37 from maddingo/master
The installer creates proper "full paths" on Windows
2013-06-28 07:52:26 -07:00
Martin Goldhahn a8fe76af4d allow installer to be started with lombok.installer.fullpath, that creates proper paths on Windows 2013-06-28 13:58:36 +02:00
Reinier Zwitserloot 420e0dcb53 deprecating the old Value annotation also added deprecation warnings to where we still support it as an alias. fixed. 2013-06-25 13:03:42 +02:00
Reinier Zwitserloot fb32de51af And now the changelogs are also updated to reflect that Value has been promoted. Racking up the commits here... 2013-06-25 00:29:57 +02:00
Reinier Zwitserloot c3e4eb4f74 and added some more javadoc to point at the new main package variant 2013-06-25 00:28:44 +02:00
Reinier Zwitserloot 54ef2d0852 ... and now that @Value has been promoted to the main package, the old experimental one is now deprecated. 2013-06-25 00:27:09 +02:00
Reinier Zwitserloot b5747963c0 Value has been promoted to the main package. 2013-06-25 00:23:02 +02:00
Reinier Zwitserloot e1c39bbc60 javac builder implementation. Passes all tests.
Added toString() impl for builders in both eclipse and javac.
Added all documentation, though it'll need some reviewing.
2013-06-18 04:23:15 +02:00
Reinier Zwitserloot eb3d32c718 finished tests for builder (added after-delombok versions). 2013-06-18 03:33:35 +02:00
Reinier Zwitserloot e047d2b94e Added a ClassDef wrapper, because its signature changed between javac1.6 and javac1.7. (The wrapper uses reflection). Need for: javac @Builder impl.
Also added some utilities to JavacHandlerUtil.
2013-06-18 03:33:13 +02:00
Reinier Zwitserloot 359b7845f2 Most of the javac implementation for HandleBuilder, plus
some minor updates and refactoring in the eclipse HandleBuilder.
2013-06-16 13:20:54 +02:00
Reinier Zwitserloot 9066d57ed9 improved and added to test cases for @Builder.
Eclipse's implementation continues to pass them all.
2013-06-16 13:20:54 +02:00
Reinier Zwitserloot 648c3eeee6 Eclipse Builder implementation finished. Tests need fleshing out though. 2013-06-16 13:20:54 +02:00
Reinier Zwitserloot 2d76b1d22d First steps Builder support 2013-06-16 13:20:53 +02:00
Reinier Zwitserloot 4e521c558e Added injectType methods to Eclipse/JavacHandlerUtil, which we'll need to inject the created $Builder type.
Inspired by Philipp Eichhorn's work in lombok-pg.
2013-06-16 13:20:53 +02:00
Reinier Zwitserloot bf43dc7477 Removed a SuppressWarnings which old eclipse doesn't care about for some reason... now I'm just confused. Do we need it or not? 2013-06-16 13:20:53 +02:00
Reinier Zwitserloot b3dac7722e issue 536: annotationprocessor now always returns false. 2013-06-16 10:57:53 +02:00
Reinier Zwitserloot 5fd82596f6 Added some very limited reporting when OutOfMemorErrors occur during
parse tree builder under javac. Let's hope our users reporting these
issues can use this to figure out which files are triggering the issue.
2013-06-13 00:33:14 +02:00
Reinier Zwitserloot 5a3e9bd804 Added @NonNull on parameters feature (issue 514),
including docs and changelog.
2013-05-31 01:03:38 +02:00
Reinier Zwitserloot 7bbb7cf3ca Fixes for issue 470: VerifyErrors when using @SneakyThrows. 2013-05-30 20:26:20 +02:00
Reinier Zwitserloot b3b91a0ddd added test case and delombok result for issue 520 (val in try-with-resources). WARNING: I havent added ecj test output yet because so far there is no ecj7 available for testing with our buildscripts. I should fix that first and then Ill sort this out. 2013-05-24 01:02:13 +02:00
Reinier Zwitserloot 2c53dc7a65 whoops, didnt update version number to 0.11.9 yet 2013-05-24 01:00:44 +02:00
Reinier Zwitserloot 5d6f82d799 added previous fix of issue 520 to the changelog 2013-05-24 00:54:38 +02:00
Reinier Zwitserloot 6b5a0e2cb3 Fixed more issues related to java7's try-with-resources,
and updated ECJ version detection.
2013-05-24 00:52:37 +02:00
Reinier Zwitserloot 9c1e29842e Added methods to obtain JLS support-level version information from AST/LombokNode. Tests updates to honour these with //version X at the top
of any test file (now also in eclipse, which until now always said it was v6)
2013-05-23 22:58:34 +02:00
Reinier Zwitserloot 4152eee126 Added a method to obtain latest java language spec supported by host
platform and implemented it for javac BUT NOT FOR ECJ!
2013-05-23 21:25:30 +02:00