Commit Graph

216 Commits

Author SHA1 Message Date
Roel Spilker 6758714ed5 Change owner lombok GitHub repository 2021-04-23 00:01:55 +02:00
Reinier Zwitserloot 3d7754e269 [testing] wahey, ecj testing works again, and now we can test JDK16 features in it! 2021-03-23 06:01:50 +01:00
Reinier Zwitserloot 3400f66fa7 [deps] pushing ASM to 9.1, and ASM opcode compat levels to ASM9, as we need the support for records 2021-03-22 11:38:56 +01:00
Reinier Zwitserloot 251b7541b7 [build] broke the distribution. 2021-03-19 03:28:31 +01:00
Reinier Zwitserloot 88f8cdb3a2 [build] remove some errors in eclipse.
The ant task we use for streaming test reporting in the ant script needs deps we don't wanna include in eclipse, so I moved it to a src dir that we don't include in eclipse by default.
2021-03-19 03:17:39 +01:00
Reinier Zwitserloot 5241235b99 [testing] add a test.javac16 2021-03-19 03:17:39 +01:00
Reinier Zwitserloot e69d0b143e [testing] fix vm-finder on macs. 2021-03-19 03:17:38 +01:00
Reinier Zwitserloot 9498849d69 [testing] Fixing running older tests.
the new formatter is nice, but needed to be compile with 1.6, otherwise running junit on older VMs doesn't work.
2021-03-19 03:17:38 +01:00
Reinier Zwitserloot ccd6a4e895 [testing] made the test script a bit more consistent 2021-03-19 02:20:44 +01:00
Reinier Zwitserloot dcb7efcc0e [testing] improve the output of ant test. 2021-03-19 02:14:24 +01:00
Reinier Zwitserloot 0c6a243c8e [build] quality-of-life improvements for lombok dev on windows
On windows, Eclipse keeps annotation processors open, which means putting spiProcessor in 'build' is annoying, as you can't delete open files on windows. Fixed by moving it to dist
2021-03-19 02:14:24 +01:00
Reinier Zwitserloot 27f3917d89 [testing] now that we've patched lombok to work in j16, no need for the --add-opens lines anymore. 2021-03-19 02:14:24 +01:00
Reinier Zwitserloot 6723525c4a [testing] unbroke 'ant test.javac8'. 2021-03-19 02:14:24 +01:00
Reinier Zwitserloot 15a28add9d [build] the new spi processor didn't handle inner types used as SPI targets. 2021-03-18 23:18:54 +01:00
Reinier Zwitserloot 24c1a1ed54 [typo] oh dear, I broke the build again. 2021-03-18 21:33:59 +01:00
Reinier Zwitserloot c04941f11c [build] Further adjustments to the 'ant intellij' target.
As I don't use intellij, no idea if it works. Feedback welcome!
2021-03-17 12:50:28 +01:00
Reinier Zwitserloot 58693486f0 [build] Fixed the ant eclipse and ant intellij targets. 2021-03-17 12:46:34 +01:00
Reinier Zwitserloot 476a43b970 [build] sped up the build considerable.
We used to use the mango SPI processor, but this had two major issues:
* ecj wouldn't run annotation processors, requiring a separate proc:only compile run with javac
* mangoSPI couldn't do incremental compilation, so this required a full rebuild just to generate SPI files, every time.

Addressed by updating to IPP40 which does support explicit annotation processors even for ecj, and
adding our own SPI generating annotation processor to the build which can deal with incrementals.

There are some limits; removing a `@Provides` annotation on an existing type will need a full clean to pick that up, for example.
These limits seem quite exotic, though.
2021-03-16 17:09:13 +01:00
Reinier Zwitserloot a2ebb4ce36 [test] work in progress: Make test.javac6 pass all tests.
The `test.javac6` job causes a ton of errors because many tests use java8+ features. Marking them off as java8+ targeted only.
2021-03-13 04:20:47 +01:00
Reinier Zwitserloot f8c16ed8ac [tests] fix tests on java6/7 2021-03-05 08:06:46 +01:00
Reinier Zwitserloot eebc5f4e85 [javac6] replacing calls to ListBuffer add/addAll to the append variants; add/addAll do not work in j6. 2021-03-05 06:44:35 +01:00
Reinier Zwitserloot b9f1f50b8e [versioning] pre-release version bump of the changelog as well 2021-01-28 23:16:26 +01:00
Reinier Zwitserloot 8ba5df7161 [trivial] hey, setting automatic module name is probably a good idea. Can't hurt. 2020-12-22 19:31:53 +01:00
Reinier Zwitserloot 734b91ea97 [build] build is now far less unreliable
Tiered compilation used to dump every stage into the same build dir, and included that dir on the classpath,
which means any ordering issues introduced into a build aren't going to result in a failed build,
thus breaking the build for everybody except those who already had a working lombok in their
build dir before starting a build. The opposite of bootstrapping, in other words.

Fixed by having each stage build into its own private stage phase.
2020-12-04 07:16:19 +01:00
Reinier Zwitserloot ea442e676c [build] the build can now autoclean
autocleaning means that the build system detects that the usual incremental mode,
where the build artefacts are not deleted and instead used to skip steps already performed,
is not an option due to changes in the build script itself or a change in deps not detectable.

It works by having a version number which can be incremented, and a system that checks
for mismatches and forces a clean.
2020-12-04 07:14:14 +01:00
Reinier Zwitserloot 59bf969500 [build] bugfix for mapstructBinding build 2020-12-04 05:01:58 +01:00
Reinier Zwitserloot da2c793083 [build] added a publish target for the mapstruct binding jar 2020-12-04 04:15:08 +01:00
Roel Spilker 8cfe4c73fa [build] #2616 have lombok-mapstruct-binding contain a java module file and java8 class files. 2020-12-04 01:14:38 +01:00
Roel Spilker b59db90acf #2616 attempt to have java9 modules and java8 class files 2020-12-04 00:39:54 +01:00
Reinier Zwitserloot 065616aea1 [#2599] Completely rewrite how we decide whether it's ecj or eclipse for patching 2020-10-15 23:22:16 +02:00
Reinier Zwitserloot 2666a923e6 [deps] bumped lombok.patcher dep to v0.38, which adds ASM9 support.
This makes lombok better at handling e.g. javac15.
2020-10-08 20:10:52 +02:00
Reinier Zwitserloot 1ced413ccb [deps] added some deps used during eclipse testing. 2020-09-24 22:15:31 +02:00
Reinier Zwitserloot f6a6f9deb5 [trivial] [typo] 2020-09-18 03:43:42 +02:00
Reinier Zwitserloot 9d45a506b1 [build] eclipse test target for Javac8 fixed
javac8 has a bizarre dependency situation: we need the stubs in src/stubs there to compile, but if they are there
at runtime during a test run of javac8, they take precedence over the JDK's javac (because we include this
as a separate cp entry, and thus it is not a bootclasspath item), and messes everything up.
The fix is to tell eclipse to compile various src/X folders to different 'bin' targets, which required
an update to ivyplusplus as well.

also it was just broken in general, fixed that too :)
2020-09-18 01:00:24 +02:00
Reinier Zwitserloot 9148294f78 [testing] [eclipse] [#2413] Eclipse tests now more expansive
We now test generating a level2-DOM from our level1-AST (eclipse has 3 levels of ASTs, more or less), only if
that is possible, i.e. only if the full eclipse is available. This requires using a test target named `eclipse-X`, and not
one of the `ecjX` ones. This is the change that requires the massive update to the build system. About 6 tests,
including a newly added one about @Delegate, now fail. These failures would usually not cause instant failure in
eclipse, but can cause errors during save actions and will likely mess with other things in weird ways, such as
messing up syntax highlighting.

Yes, this commit now makes a bunch of cases fail the unit tests, but that is representative of actual errors in lombok,
so I'm checking it in as is (without this commit, the problem is still there, the tests are just incapable of detecting it).
2020-08-29 04:14:10 +02:00
Reinier Zwitserloot 409f0428c7 Merge pull request #2548 from rosti-il/master
Fix tests under Windows, fix test.javac11 and test.javac14, fix issue #1745
2020-08-28 00:27:33 +02:00
Reinier Zwitserloot 6088e6e3d6 [build] added ant website.open
this serves the site locally and opens your browser
2020-08-28 00:15:55 +02:00
Rostislav Krasny 79c3d383fd Fix tests under Windows, fix test.javac11 and test.javac14, fix issue #1745
The change of the TestConfiguration.java is based on the fact that
Git for Windows is configured with 'core.autocrlf=true' by default.
2020-08-18 04:09:25 +03:00
Reinier Zwitserloot 7dfbe4323c [tests] fixed the 'ant test.javac' tests. 2020-07-24 00:35:33 +02:00
Reinier Zwitserloot 18222922da [tests] command line 'ant test.eclipse' fixed 2020-07-24 00:27:36 +02:00
Reinier Zwitserloot a0eb13a478 [test] bugfix for the 'dist' step 2020-07-23 23:51:50 +02:00
Reinier Zwitserloot 2f397d7c95 [tests] only add agent VM args for ECJ/Eclipse tests 2020-07-23 23:40:33 +02:00
Reinier Zwitserloot 88d4c1e54c [build] [wip] the eclipse debug targets still aren't entirely correct. 2020-07-03 17:50:44 +02:00
Reinier Zwitserloot cb7e4a9ef3 [build] propagate chosen bootclasspath into eclipse test targets 2020-07-03 05:34:30 +02:00
Reinier Zwitserloot 88918e9eb3 [build] fixed a build issue (on 'ant dist') on windows.
apparently on windows symlinking requires admin rights because ?????
This can be fixed with an explicit update to group policies, which I
can't assume anybody working on lombok is going to actually do.
/bin/ln in msysgit just copies (interesting choice). I could write a mechanism
that tries /bin/ln and if not there, try <copy> instead, either in the build scripts
or in ivyplusplus, but that's way too much effort to avoid a 2MB copy. So,
for now, we just copy... if more symlinking is to be done later, we'll revisit, though.
copying is such a silly waste of time, slowing down the build for no reason.
2020-07-02 23:34:54 +02:00
Reinier Zwitserloot 0f1c950b77 [build] [mapstructBinding] 2020-06-25 23:31:13 +02:00
Reinier Zwitserloot 0bbedd092a [build] rewriting the build system 2020-06-23 15:55:18 +02:00
Roel Spilker 0401f49fa6 Update org.eclipse dependencies, fixes #2363 2020-03-05 22:53:52 +01:00
Reinier Zwitserloot 635a32258e [eclipse-p2] the eclipse p2 site is now selfsigned. 2020-03-05 22:47:54 +01:00
Reinier Zwitserloot 59aa676111 [eclipse-p2] create a p2 eclipse update site 2020-02-28 19:25:30 +01:00