Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/gherkin #1649

Merged
merged 18 commits into from
Apr 5, 2023
Merged

Feature/gherkin #1649

merged 18 commits into from
Apr 5, 2023

Conversation

blacelle
Copy link
Contributor

@blacelle blacelle commented Apr 1, 2023

This follows the work in #928 (thanks @jamietanna).

It is reworked to:

  1. be synced with main
  2. Rely on gherkin-utils core module
  3. Lost ability to customize the indentation through this Gherkin formatter. It should remain available through standard Spotless indentation
  4. Added maven integration

jamietanna and others added 5 commits September 7, 2021 08:48
As part of diffplug#907, we want to be able to format our Gherkin source files
automagically.

To do this, we can utilise the upstream gherkin-formatter project to do
the heavy lifting, and add a few test cases within this project to make
sure that functionality looks correct.

We're calling this a `simple` formatter as it doesn't allow much to be
configured other than the indentation size in spaces.
As we've created a Gherkin formatter as part of diffplug#907, we should make it
possible to use it natively in Gradle, which requires we add it as a new
supported type in `SpotlessExtension`.
.editorconfig Show resolved Hide resolved
@jamietanna
Copy link
Contributor

Thanks for this, but note that there are some issues upstream with how it treats certain things like whitespace and tables, which is also what blocked my original PR with my library 😅

@nedtwigg
Copy link
Member

nedtwigg commented Apr 5, 2023

@blacelle Would you like me to merge this now, or do you want to wait for cucumber/gherkin-utils#20?

Copy link
Member

@nedtwigg nedtwigg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of gherkin { simple(), I would name it gherkin { gherkinUtils().

plugin-gradle/README.md Show resolved Hide resolved
plugin-maven/CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
@blacelle
Copy link
Contributor Author

blacelle commented Apr 5, 2023

I would prefer merging at your earliest convenience. Let me implement the requested changes.

@blacelle blacelle requested a review from nedtwigg April 5, 2023 19:10
@blacelle
Copy link
Contributor Author

blacelle commented Apr 5, 2023

This should be OK. Thanks @nedtwigg

@nedtwigg nedtwigg enabled auto-merge April 5, 2023 22:01
@nedtwigg nedtwigg merged commit 4ca8189 into diffplug:main Apr 5, 2023
@nedtwigg
Copy link
Member

nedtwigg commented Apr 6, 2023

Published in plugin-gradle 6.18.0 and plugin-maven 2.36.0.

@blacelle blacelle deleted the feature/gherkin branch April 6, 2023 04:40
benkard pushed a commit to benkard/mulkcms2 that referenced this pull request Aug 7, 2023
This MR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [flow-bin](https://github.com/flowtype/flow-bin) ([changelog](https://github.com/facebook/flow/blob/master/Changelog.md)) | devDependencies | minor | [`^0.206.0` -> `^0.214.0`](https://renovatebot.com/diffs/npm/flow-bin/0.206.0/0.214.0) |
| [org.liquibase.ext:liquibase-hibernate5](https://github.com/liquibase/liquibase-hibernate/wiki) ([source](https://github.com/liquibase/liquibase-hibernate)) | build | minor | `4.21.1` -> `4.22.0` |
| [org.liquibase:liquibase-maven-plugin](http://www.liquibase.org/liquibase-maven-plugin) ([source](https://github.com/liquibase/liquibase)) | build | minor | `4.21.1` -> `4.23.0` |
| [com.vladsch.flexmark:flexmark-all](https://github.com/vsch/flexmark-java) | compile | patch | `0.64.4` -> `0.64.8` |
| [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) | build | minor | `2.36.0` -> `2.38.0` |

---

### Release Notes

<details>
<summary>flowtype/flow-bin</summary>

### [`v0.214.0`](flow/flow-bin@a8d35e6...ca11e28)

[Compare Source](flow/flow-bin@a8d35e6...ca11e28)

### [`v0.213.1`](flow/flow-bin@656b64a...a8d35e6)

[Compare Source](flow/flow-bin@656b64a...a8d35e6)

### [`v0.213.0`](flow/flow-bin@733e908...656b64a)

[Compare Source](flow/flow-bin@733e908...656b64a)

### [`v0.212.0`](flow/flow-bin@d057186...733e908)

[Compare Source](flow/flow-bin@d057186...733e908)

### [`v0.211.1`](flow/flow-bin@669f2d7...d057186)

[Compare Source](flow/flow-bin@669f2d7...d057186)

### [`v0.211.0`](flow/flow-bin@c0f5f12...669f2d7)

[Compare Source](flow/flow-bin@c0f5f12...669f2d7)

### [`v0.210.2`](flow/flow-bin@6dbf435...c0f5f12)

[Compare Source](flow/flow-bin@6dbf435...c0f5f12)

### [`v0.210.1`](flow/flow-bin@572b4ff...6dbf435)

[Compare Source](flow/flow-bin@572b4ff...6dbf435)

### [`v0.210.0`](flow/flow-bin@026a117...572b4ff)

[Compare Source](flow/flow-bin@026a117...572b4ff)

### [`v0.209.0`](flow/flow-bin@b1689a0...026a117)

[Compare Source](flow/flow-bin@b1689a0...026a117)

### [`v0.208.1`](flow/flow-bin@1e8564c...b1689a0)

[Compare Source](flow/flow-bin@1e8564c...b1689a0)

### [`v0.208.0`](flow/flow-bin@97db57b...1e8564c)

[Compare Source](flow/flow-bin@97db57b...1e8564c)

### [`v0.207.0`](flow/flow-bin@7bf1c0e...97db57b)

[Compare Source](flow/flow-bin@7bf1c0e...97db57b)

</details>

<details>
<summary>liquibase/liquibase-hibernate</summary>

### [`v4.22.0`](https://github.com/liquibase/liquibase-hibernate/releases/tag/v4.22.0)

[Compare Source](liquibase/liquibase-hibernate@v4.21.1...v4.22.0)

Support for Liquibase 4.22.0.

#### What's Changed

-   Fix diff changelog is removing unique constraint since 4.21.0 (hibernate6 + postgresql) by [@&#8203;filipelautert](https://github.com/filipelautert) in liquibase/liquibase-hibernate#480
-   add Support for Hibernate EnversSettings revision_field_name and revision_type_field_name by [@&#8203;lorenzbaier](https://github.com/lorenzbaier) in liquibase/liquibase-hibernate#488
-   Bump spring.version from 6.0.8 to 6.0.9 by [@&#8203;dependabot](https://github.com/dependabot) in liquibase/liquibase-hibernate#490

#### New Contributors

-   [@&#8203;lorenzbaier](https://github.com/lorenzbaier) made their first contribution in liquibase/liquibase-hibernate#488

**Full Changelog**: liquibase/liquibase-hibernate@v4.21.0...v4.22.0

</details>

<details>
<summary>liquibase/liquibase</summary>

### [`v4.23.0`](https://github.com/liquibase/liquibase/blob/HEAD/changelog.txt#Liquibase-4230-is-a-major-release)

[Compare Source](liquibase/liquibase@v4.22.0...v4.23.0)

### [`v4.22.0`](https://github.com/liquibase/liquibase/blob/HEAD/changelog.txt#Liquibase-v4220-is-a-major-release)

[Compare Source](liquibase/liquibase@v4.21.1...v4.22.0)

</details>

<details>
<summary>vsch/flexmark-java</summary>

### [`v0.64.6`](vsch/flexmark-java@0.64.4...0.64.6)

[Compare Source](vsch/flexmark-java@0.64.4...0.64.6)

</details>

<details>
<summary>diffplug/spotless</summary>

### [`v2.38.0`](https://github.com/diffplug/spotless/blob/HEAD/CHANGES.md#&#8203;2380---2023-04-06)

##### Added

-   Support configuration of mirrors for P2 repositories in `EquoBasedStepBuilder` ([#&#8203;1629](diffplug/spotless#1629)).
-   The `style` option in Palantir Java Format ([#&#8203;1654](diffplug/spotless#1654)).
-   Added formatter for Gherkin feature files ([#&#8203;1649](diffplug/spotless#1649)).

##### Changes

-   **POTENTIALLY BREAKING** Converted `googleJavaFormat` to a compile-only dependency and drop support for versions < `1.8`. ([#&#8203;1630](diffplug/spotless#1630))
-   Bump default `cleanthat` version to latest `2.6` -> `2.13`. ([#&#8203;1589](diffplug/spotless#1589) and [#&#8203;1661](diffplug/spotless#1661))
-   Bump default `diktat` version `1.2.4.2` -> `1.2.5`. ([#&#8203;1631](diffplug/spotless#1631))
-   Bump default `flexmark` version `0.62.2` -> `0.64.0`. ([#&#8203;1302](diffplug/spotless#1302))
-   Bump default `googleJavaFormat` version `1.15.0` -> `1.16.0`. ([#&#8203;1630](diffplug/spotless#1630))
-   Bump default `scalafmt` version `3.7.1` -> `3.7.3`. ([#&#8203;1584](diffplug/spotless#1584))
-   Bump default Eclipse formatters for the 2023-03 release. ([#&#8203;1662](diffplug/spotless#1662))
    -   JDT and GrEclipse `4.26` -> `4.27`
        -   Improve GrEclipse error reporting. ([#&#8203;1660](diffplug/spotless#1660))
    -   CDT `11.0` -> `11.1`

### [`v2.37.0`](https://github.com/diffplug/spotless/blob/HEAD/CHANGES.md#&#8203;2370---2023-03-13)

##### Added

-   You can now put the filename into a license header template with `$FILE`. ([#&#8203;1605](diffplug/spotless#1605) fixes [#&#8203;1147](diffplug/spotless#1147))

##### Changes

-   We are now opting in to Gradle's new stable configuration cache. ([#&#8203;1591](diffplug/spotless#1591))
-   Adopt [Equo Solstice OSGi and p2 shim](https://github.com/equodev/equo-ide/tree/main/solstice) to update all Eclipse-based plugins. ([#&#8203;1524](diffplug/spotless#1524))
    -   Eclipse JDT now supports `4.9` through `4.26`. Also we now recommend dropping the last `.0`, e.g. `4.26` instead of `4.26.0`, you'll get warnings to help you switch.
    -   Eclipse Groovy now supports `4.18` through `4.26`. Also we now recommend dropping the last `.0`, e.g. `4.26` instead of `4.26.0`, you'll get warnings to help you switch.
    -   Eclipse CDT now supports `10.6` through `11.0`.
    -   Eclipse WTP is still WIP at [#&#8203;1622](diffplug/spotless#1622).

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This MR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4yNC4wIiwidXBkYXRlZEluVmVyIjoiMzQuMjQuMCJ9-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants