Roel Spilker
00a8b08226
[jdk8support] there was a bunch of duplicate code in both JavacAST and JavacResolution. We've unified this (and fixed the fact that the JavacAST variant didn't work with javac8).
2013-09-25 22:12:05 +02:00
Roel Spilker
7fc6e70b36
Pre-emptive fix for the anticipated removal of ListBuffer.lb() in javac8
2013-09-25 21:38:37 +02:00
Reinier Zwitserloot
f0cdc27a3f
tiny tiny fix for some incredibly unlikely mix of intellij, ibm stuff, and who knows what. At any rate, Roel is absolutely sure this will fix it, so, hey, who am I to argue? NB: Unicum
2013-09-24 01:55:31 +02:00
Reinier Zwitserloot
7b8a85e1f9
Fixed slight typo issues with the tests due to merging and icelandic on the fly bug fixing.
2013-09-24 01:33:22 +02:00
Reinier Zwitserloot
86a635876d
Merge branch 'master' into jdk8check
...
Conflicts:
src/core/lombok/core/Version.java
src/core/lombok/javac/handlers/HandleConstructor.java
test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages
test/transform/resource/messages-ecj/EqualsAndHashCodeWithSomeExistingMethods.java.messages
2013-09-24 01:18:32 +02:00
Reinier Zwitserloot
7ee868659f
Fixed netbeans 7.4RC1 issue (JavaCompiler.version() was returning bogus values, so we now work around that javac bug).
2013-09-24 01:11:13 +02:00
Sander Koning
72b55dccb1
Issue 559: NullPointerException when @NonNull is used in abstract method
...
- Prevent NPE in javac and give a proper warning in both eclipse and javac
- Add test cases
2013-09-20 17:13:39 +02:00
Reinier Zwitserloot
b81d5ef65c
updated SPI, it did not work in JDK8 properly
2013-09-10 14:01:10 +02:00
Reinier Zwitserloot
0ac3aedbca
version naming and changelog update for edge release
2013-09-10 00:09:55 +02:00
Roel Spilker
52d4c81a59
Updated unit tests to reflect new double-underscore default for onX. (Because single underscore generates warnings in javac8).
2013-09-09 23:54:51 +02:00
Roel Spilker
6a02cb4013
[jdk8support] We now handle doc comments internally, alleviating the need to try and keep up with the complete rewrites of the doc comment parser from java6 to java7 to java8. Still doesn't actually work in jdk8, but only because of a last-mile issue. (we communicate the doc comment via compilationUnit.docComments but that changed types in jdk8, we just need to make a wrapper to make that work).
2013-09-09 23:54:28 +02:00
Roel Spilker
f2662518de
[jdk8support] jdk8 support branch now compiles under javac7, and produces lombok.jar that works on all javas.
2013-09-09 20:40:04 +02:00
Roel Spilker
0932ccb51b
added a todo comment only
2013-09-09 20:16:16 +02:00
Reinier Zwitserloot
cf7290f861
fixed a code typo in the getterlazy usage example. Credits to Adam Brewster for spotting it!
2013-08-28 18:46:11 +00:00
Roel Spilker
d1b26ab164
Removed blanks
2013-08-19 23:55:52 +02:00
Roel Spilker
1c319579cb
Fix suppressing diagnostic messages during resolution in #java8 #val
2013-08-19 23:54:34 +02:00
Roel Spilker
bad93ae677
Only look at the line number for errors and warnings.
2013-08-19 23:50:57 +02:00
Reinier Zwitserloot
b93318da30
* Fixed 553: @XArgsConstructor (and @Builder on a class) did not look at @Accessors to handle field accessors.
...
* various operations on names in javac were really slow; they are faster now.
2013-08-14 07:05:43 +02:00
Roel Spilker
132d603dd4
Getting the java8 compiler remember the comments
2013-08-13 00:24:51 +02:00
Roel Spilker
2b393ec622
Merge branch 'jdk8support' of github.com:rzwitserloot/lombok into jdk8support
2013-08-13 00:21:18 +02:00
Reinier Zwitserloot
95cf815285
replaced double underscore as new standard way of writing the dummy annotation for onX instead of single underscore, which emits warnings on javac8+.
...
Also made dollars and Xes legal in addition to underscores, in case double underscore disappears later too.
2013-08-12 23:13:11 +02:00
Reinier Zwitserloot
613d7e9e0c
Merge pull request #38 from jqno/master
...
Fixed two typos
2013-08-11 19:06:16 -07:00
Jan Ouwens
05b8501071
Oops: didn't realise the text appeared in multiple places.
2013-08-11 21:13:16 +02:00
Jan Ouwens
7faff42d85
Fixed two typos
2013-08-11 20:39:30 +02:00
Roel Spilker
1eaaf3e276
Merge branch 'jdk8support' of github.com:rzwitserloot/lombok into jdk8support
2013-08-06 22:59:55 +02:00
Reinier Zwitserloot
df69425550
position now set for all code generated by javac handlers;
...
this also solves the AssertionError in the Bits class on javac8-ea.
2013-08-06 21:22:48 +02:00
Reinier Zwitserloot
9ed14b8cbf
added Flags.PARAMETER to all the parameters we generate in javac.
2013-08-06 21:22:24 +02:00
Roel Spilker
3619f889f5
To quote Reinier paraphrasing the compiler: "If the loading doesn't work, I don't want it!"
2013-08-05 22:07:45 +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