Age | Commit message (Collapse) | Author |
|
still a looooong way to go.
|
|
Conflicts:
src/core/lombok/javac/handlers/JavacHandlerUtil.java
src/utils/lombok/javac/CommentCatcher.java
src/utils/lombok/javac/Javac.java
|
|
|
|
|
|
@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.
|
|
coming up in autocomplete dialogs when guava's was intended.
|
|
has moved from experimental into core).
|
|
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.
|
|
javadoc for getters/setters, and fixed pretty printer to no longer inject an extra newline at the top of javadoc.
|
|
as updates to all relevant documentation
|
|
javadoc from field to setter/getter in javac.
|
|
|
|
|
|
Implementing in javac, ecj still has to be done.
|
|
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).
|
|
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.
|
|
|
|
proper paths on Windows
|
|
where we still support it as an alias. fixed.
|
|
|
|
experimental one is now deprecated.
|
|
|
|
Added toString() impl for builders in both eclipse and javac.
Added all documentation, though it'll need some reviewing.
|
|
javac1.7. (The wrapper uses reflection). Need for: javac @Builder impl.
Also added some utilities to JavacHandlerUtil.
|
|
some minor updates and refactoring in the eclipse HandleBuilder.
|
|
|
|
|
|
inject the created $Builder type.
Inspired by Philipp Eichhorn's work in lombok-pg.
|
|
reason... now I'm just confused. Do we need it or not?
|
|
|
|
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.
|
|
including docs and changelog.
|
|
|
|
|
|
and updated ECJ version detection.
|
|
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)
|
|
platform and implemented it for javac BUT NOT FOR ECJ!
|
|
generates a warning to explain this strange situation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
other lombok plugin developers.
|
|
Instead they are retrieved
dynamically, with a pinch of caching during runtime. We already had some
fixes to make sure that compile time constanst were not inlined, but we
need to take into account that a lot of the Integer-based enums have
been replaced with actual enums.
Also, certain TreeMaker methods needed to be invoked dynamically with
reflection.
This needs to be reviewed, and if it turns out that these changes are too
dramatic, we should fork out a larger part of our code for specific JVM
versions.
|
|
|
|
because it is a lot more work than anticipated, but this code is prettier and slightly more bugfree so worth checking in.
|
|
are abstract classes.
|
|
fixes the issue where delombok would leave lombok annotations in the file if that annotation had no actual effect (such as @Getter on a field if there is an explicit getX method for that field).
issue #443: delombok would screw up @SneakyThrows on methods or constructors with empty bodies. Now we generate warnings for this.
|