palantir / palantir-java-format

A modern, lambda-friendly, 120 character Java formatter.
Apache License 2.0
468 stars 48 forks source link

Optimise imports on save #906

Closed CRogers closed 1 year ago

CRogers commented 1 year ago

Before this PR

In #862, we moved away from using the "Save Actions" plugin to using the native IntelliJ "Actions on Save" feature.

An oversight when doing this was that the Save Actions plugin was configured to use optimise imports as well. However, in #862 we did not enable optimise on save.

This mostly flew under the radar as most devs have manually enabled the "Optimize Imports on the Fly" option in intellij at soe point in the last $years, and this mostly fixes the inputs for you as you code. However, some devs do not have this, especially devs who are new or are low code who are least equipped to resolve this problem.

After this PR

==COMMIT_MSG== Ensure imports are optimised on save, as well as formatting. ==COMMIT_MSG==

Possible downsides?

changelog-app[bot] commented 1 year ago

Generate changelog in changelog-dir>`changelog/@unreleased`</changelog-dir

What do the change types mean? - `feature`: A new feature of the service. - `improvement`: An incremental improvement in the functionality or operation of the service. - `fix`: Remedies the incorrect behaviour of a component of the service in a backwards-compatible way. - `break`: Has the potential to break consumers of this service's API, inclusive of both Palantir services and external consumers of the service's API (e.g. customer-written software or integrations). - `deprecation`: Advertises the intention to remove service functionality without any change to the operation of the service itself. - `manualTask`: Requires the possibility of manual intervention (running a script, eyeballing configuration, performing database surgery, ...) at the time of upgrade for it to succeed. - `migration`: A fully automatic upgrade migration task with no engineer input required. _Note: only one type should be chosen._
How are new versions calculated? - ❗The `break` and `manual task` changelog types will result in a major release! - 🐛 The `fix` changelog type will result in a minor release in most cases, and a patch release version for patch branches. This behaviour is configurable in autorelease. - ✨ All others will result in a minor version release.

Type

- [ ] Feature - [ ] Improvement - [x] Fix - [ ] Break - [ ] Deprecation - [ ] Manual task - [ ] Migration

Description

Ensure imports are optimised on save, as well as formatting. **Check the box to generate changelog(s)** - [x] Generate changelog entry
svc-autorelease commented 1 year ago

Released 2.34.0