Add support for eclipse 4.13 by k-brooks · Pull Request #482 · diffplug/spotless
Part 1 of 2: _ext wrapper updates to support 4.13
I broke out (and ordered) the commits by subproject intentionally, although, without project linking / publishing, I have not been able to properly build/test the dependent projects.
I have not attempted to publish, wasn't clear on the process.
Part 2 will come once these libraries have published.
Would you be interested in having the ext projects cleaned up? It would be nice to have project dependencies across these, and potentially the 'root' project.
| ext_VER_JAVA=1.8 | ||
|
|
||
| # Compile dependencies | ||
| VER_ECLIPSE_CDT=9.7 |
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm wondering if this was a bug in the eclipse-cdt release of 9.8, as it referenced 9.7
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! I looked at it, and I believe you are correct. I should publish a 9.8.1 bugfix.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix. I really missed to commit the vital change.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like a great start! From here, you are blocked on me publishing these new _ext jars, I'll let you know when that is complete. I'll push some small changes to this branch as well.
Re: combining build with the main project. The problem is that the builds for these are really slow because of p2, and I don't know of a good way to speed them up. I am open to a build refactor (best to do in a separate PR to prevent blocking this PR), but it needs to not slow down the current build. Everything in _ext is pretty specialized, it's important for regular java devs to not have to deal with this when contributing normal mavenCentral-based formatters.
| # Mayor versions correspond to the supported Eclipse core version. | ||
| # Minor version is incremented for features or incompatible changes (including changes to supported dependency versions). | ||
| # Patch version is incremented for backward compatible patches of this library. | ||
| ext_version=3.2.1 |
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we don't change the code in eclipse-base, then we don't need to publish a new eclipse-base. We only change this when something about the OSGi plumbing needs to change, which is generally rare.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was under the impression that the compile-scoped dependencies were included in the fat jar, but if that is incorrect, then I can back this and the related changes out.
Are you OK with me rewriting these commits to suit, or would you prefer new commits?
| ext_VER_JAVA=1.8 | ||
|
|
||
| # Compile dependencies | ||
| VER_ECLIPSE_CDT=9.7 |
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! I looked at it, and I believe you are correct. I should publish a 9.8.1 bugfix.
@fvgh before I publish this, can you confirm that this is true:
- we don't need to publish a new ext-eclipse-base
- we don't need to publish a new ext-eclipse-jdt
This is because we can just update lockfiles for jdt. I do need to publish new jars for groovy, cdt, and wtp. Are we missing anything important?
Can you give me push permissions on your PR branch?
https://github.com/Vestmark/spotless: git-receive-pack not permitted on 'https://github.com/Vestmark/spotless/'
If not, can you move your issue_480-ext to match the DiffPlug repo? I published the eclipse-cdt 9.8.1 bundled jar, and updated the corresponding lockfile. I also published eclipse-cdt 9.9.0, and I leave it to you to do the lockfile. When we get confirmation from @fvgh that we have done this correctly, then we can move forward with wtp, groovy, and jdt.
Thanks for all your effort. I am really busy at the moment, hence I did not find time to contribute. So if the _ext tests are passing I am fine with the changes. If you get stuck anywhere, let me know. I'll try to answer within 24 hours.
fvgh approved these changes Nov 1, 2019
Can you give me push permissions on your PR branch?
https://github.com/Vestmark/spotless: git-receive-pack not permitted on 'https://github.com/Vestmark/spotless/'If not, can you move your
issue_480-extto match the DiffPlug repo? I published the eclipse-cdt 9.8.1 bundled jar, and updated the corresponding lockfile. I also published eclipse-cdt 9.9.0, and I leave it to you to do the lockfile. When we get confirmation from @fvgh that we have done this correctly, then we can move forward with wtp, groovy, and jdt.
My apologies @nedtwigg , I thought had checked that box, but perhaps you require permissions at the repo level? I granted you maintenance permissions for the Vestmark fork - if that does not work, then I will push this branch to the Diffplug repo, instead.
Looks like a great start! From here, you are blocked on me publishing these new
_extjars, I'll let you know when that is complete. I'll push some small changes to this branch as well.Re: combining build with the main project. The problem is that the builds for these are really slow because of p2, and I don't know of a good way to speed them up. I am open to a build refactor (best to do in a separate PR to prevent blocking this PR), but it needs to not slow down the current build. Everything in
_extis pretty specialized, it's important for regular java devs to not have to deal with this when contributing normal mavenCentral-based formatters.
#483 opened to capture the build work, will comment with thoughts on that thread.
|
|
||
| ### Version 9.8.1 - October 31st 2019 ([artifact]([jcenter](https://bintray.com/diffplug/opensource/spotless-eclipse-cdt))) | ||
|
|
||
| * Really publish Eclipse CDT release 9.8 for Eclipse 4.12 ([#482](https://github.com/diffplug/spotless/pull/482)). |
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
:-)
| ext_version=9.9.0 | ||
| ext_artifactId=spotless-eclipse-cdt | ||
| ext_description=Eclipse's CDT C/C++ formatter bundled for Spotless | ||
| ext_description=Eclipse''s CDT C/C++ formatter bundled for Spotless |
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not a huge deal, but a typo here, I can fix it but didn't want to mess with your work
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we have published everything we need so that you can now do the lockfiles for CDT and for JDT. When those are working, I'll publish the jars for WTP and groovy, and then you can do the lockfiles for those too, and then we can merge and publish!
In the lockfiles, even though eclipse-base can be 3.2.0, we get a bugfix if we ask for 3.2.1.
ext-eclipse-groovy 3.5.0 is up and ready for lockfiles.
ext-eclipse-wtp 3.15.0 is erroring for me, so it is not up:
> gradle -b _ext/eclipse-wtp/build.gradle jar
...
Could not resolve all files for configuration ':compileClasspath'.
> Could not find any version that matches org.eclipse.platform:org.eclipse.core.filebuffers:[3.8.0,4.0.0[.
Versions that do not match:
3.6.700
3.6.600
3.6.500
3.6.400
3.6.300
+ 3 more
Searched in the following locations:
https://repo.maven.apache.org/maven2/org/eclipse/platform/org.eclipse.core.filebuffers/maven-metadata.xml
https://jcenter.bintray.com/org/eclipse/platform/org.eclipse.core.filebuffers/maven-metadata.xml
file:/Users/ntwigg/.m2/repository/org/eclipse/platform/org.eclipse.core.filebuffers/maven-metadata.xml
file:/Users/ntwigg/.m2/repository/org/eclipse/platform/org.eclipse.core.filebuffers/
file:/Users/ntwigg/Documents/dev/spotless/_ext/eclipse-wtp/build/p2asmaven/maven/org/eclipse/platform/org.eclipse.core.filebuffers/maven-metadata.xml
file:/Users/ntwigg/Documents/dev/spotless/_ext/eclipse-wtp/build/p2asmaven/maven/org/eclipse/platform/org.eclipse.core.filebuff
nedtwigg
changed the title
Issue 480 ext
Add support for eclipse 4.13
@nedtwigg - sorry for the compile error - looks like the two artifacts (osgi services and filebuffers) diverged in their versioning, updated accordingly
Lock file(s) to follow shortly
@nedtwigg - I have the wtp formatter lock file staged, ready when you are :-)
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The rest looks good to me. Thanks again for your work.
Looks like wtp 3.15.0 has not propagated?
Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Could not find artifact com.diffplug.spotless:spotless-eclipse-wtp:jar:3.15.0 in google-maven-central
Odd - I was able to run tests locally (assuming travis is running gradlew check, or some derivative thereof), I did not see that failure.
I reran the build, looks like we're passing CI now! This looks ready to merge to me, except it needs changelog entries for plugin-maven and plugin-gradle.
changelogs updated, thanks again for all your help @nedtwigg !
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters