Skip to content

Broken indentation inside with statements #385

Closed
@voger

Description

@voger

For some reason I get weird indentation inside with statements. Here is an example

Actual

  def resend_confirmation(username) when is_binary(username) do
    with user = %User{confirmed_at: nil} <- get_by(username: username) do
      {:ok, user} = 
        user 
        |> DB.add_confirm_token 
        |> update_user() 
                                                                         Log.info(%Log{user: user.id, message: "send new confirmation"}) 
                                                                         send_welcome(user)
                                                                         {:ok, user}
    else
      nil ->
        {:error, "not found"}
      %User{email: email} ->
        Email.already_confirmed(email)
        {:error, "already confirmed"}
    end
  end

Expected

  def resend_confirmation(username) when is_binary(username) do
    with user = %User{confirmed_at: nil} <- get_by(username: username) do
      {:ok, user} = 
        user 
        |> DB.add_confirm_token 
        |> update_user() 
        Log.info(%Log{user: user.id, message: "send new confirmation"}) 
        send_welcome(user)
        {:ok, user}
    else
      nil ->
        {:error, "not found"}
      %User{email: email} ->
        Email.already_confirmed(email)
        {:error, "already confirmed"}
    end
  end

Another example

Actual

  def create_user(params) do
    profile = UserProfile.registration_changeset(%UserProfile{}, params)

    user_cs =
      %User{}
      |> User.registration_changeset(params)
      |> put_assoc(:user_profile, profile)

    with {:ok, user} <- Repo.insert(user_cs, returning: false) do
      Log.info(%Log{user: user.id, message: "user created"})
                                                                 send_welcome(user)
                                                                 {:ok, user}
    end
  end

Expected

  def create_user(params) do
    profile = UserProfile.registration_changeset(%UserProfile{}, params)

    user_cs =
      %User{}
      |> User.registration_changeset(params)
      |> put_assoc(:user_profile, profile)

    with {:ok, user} <- Repo.insert(user_cs, returning: false) do
      Log.info(%Log{user: user.id, message: "user created"})
      send_welcome(user)
      {:ok, user} 
    end
  end

P.S.: Is there any way to disable indentation temporarily until a solution for this issue is found?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions