diffplug / diffplug/spotless

GrEclipse 4.28+ corrupts Groovy method references by formatting `::` as `: : `

Open
#3,013 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
5.6k
Forks
559
Avg merge
1d 13h
Merged PRs (30d)
34

Description

Minimal report:
```groovy
s.write(tests, TestFQNSerializer::serialize)
```

Actual output:
```groovy
s.write(tests, TestFQNSerializer: : serialize)
```

The output is invalid Groovy and fails compilation.
Environment
Spotless Gradle plugin: `8.9.0`
GrEclipse: reproduced with `4.35` and `4.40`
Last known good GrEclipse version: `4.27`
Gradle: `9.7.0`
Pinning GrEclipse to `4.27` avoids the corruption.

I found no existing issue matching this exact formatting failure.

Contributor guide

Open the contributing guide

Research direction

Reproduce the minimal Groovy example with Spotless Gradle plugin 8.9.0 and GrEclipse 4.35 or 4.40, then compare it with GrEclipse 4.27. Trace the GrEclipse formatting integration and its tests, if present; done means `TestFQNSerializer::serialize` remains unchanged and the formatted output compiles.

Written by the indexing model from the issue text.

Assessment

Tech stack
groovy
Domain
build-system, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.