[PJF] Do not reflow text blocks
Adds upstream fix https://github.com/google/google-java-format/commit/295e7a43f8a84d31c9e39fd853c8c4e52f586240
Before this PR
Formatting a textblock which
- exceeds the max line length
- has no trailing newline (ie. """ is at the end of the line)
Causes the formatter to fail:
error: Something has gone terribly wrong. Please file a bug: https://github.com/palantir/palantir-java-format/issues/new
=== Actual: ===
package com.test;
public class MyTest {
private String myString = "A very long string which just so happens to exceed the max line length and doesn't\"\n + \" have a trailing newline";
}
=== Expected: ===
package com.test;
public class MyTest {
private String myString = "A very long string which just so happens to exceed the max line length and doesn't have a trailing newline";
}
After this PR
Formatter doesn't fail, Fixes https://github.com/palantir/palantir-java-format/issues/1205
==COMMIT_MSG== ==COMMIT_MSG==
Possible downsides?
Thanks for your interest in palantir/palantir-java-format, @mitchjust! Before we can accept your pull request, you need to sign our contributor license agreement - just visit https://cla.palantir.com/ and follow the instructions. Once you sign, I'll automatically update this pull request.
Generate changelog in changelog/@unreleased
changelog/@unreleasedWhat 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
breakandmanual taskchangelog types will result in a major release! - π The
fixchangelog 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
- [ ] Fix
- [ ] Break
- [ ] Deprecation
- [ ] Manual task
- [ ] Migration
Description
Check the box to generate changelog(s)
- [ ] Generate changelog entry
@crogoz sorry for the direct ping, could I get a review on this when you get a chance? π
thanks for the PR @mitchjust! In the meantime we worked on properly dealing with text blocks in the formatter (including not reflowing text blocks). The work was merged in the latest version https://github.com/palantir/palantir-java-format/pull/1419, so I'll close this PR. Please open a new issue if there is still something missing. Thanks!