Skip to content

Idempotency problem when formatting quotations #2203

Closed
@sergey-tihon

Description

Issue created from fantomas-online

Original code

let action =
    <@
        let msg = %httpRequestMessageWithPayload
        RuntimeHelpers.fillHeaders msg %heads
        async {
            let! response = (%this).HttpClient.SendAsync(msg) |> Async.AwaitTask
            return response.EnsureSuccessStatusCode().Content
        }
    @>

Formatted code

let action =
    <@ let msg = %httpRequestMessageWithPayload
    RuntimeHelpers.fillHeaders msg %heads

    async {
        let! response =
            (%this).HttpClient.SendAsync(msg)
            |> Async.AwaitTask

        return response.EnsureSuccessStatusCode().Content
    } @>

Reformatted code

let action =
    <@ let msg = %httpRequestMessageWithPayload

       RuntimeHelpers.fillHeaders
           msg
           %heads

           async {
           let! response =
               (%this).HttpClient.SendAsync(msg)
               |> Async.AwaitTask

           return response.EnsureSuccessStatusCode().Content
       } @>

Problem description

Fantomas was not able to produce the same code after reformatting the result.

Extra information

  • The formatted result breaks my code.
  • The formatted result gives compiler warnings.
  • I or my company would be willing to help fix this.

Options

Fantomas master branch at 2022-04-12T06:26:27Z - 7b35c89

Default Fantomas configuration

Did you know that you can ignore files when formatting from fantomas-tool or the FAKE targets by using a .fantomasignore file?

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions