mix style
: brought back to life for folks who want to incrementally introduce Styler
Styler.Style.Pipes
:- include
x in y
and^foo
(for ecto) as a valid pipe starts - work even harder to keep rewrites on one line
- include
ModuleDirectives
: hande dynamic module namesPipes
: includeEcto.Query.from
andQuery.from
as valid pipe starts
- Sped up styling just a little bit
Styler
now implementsMix.Task.Format
, meaning it is now an Elixir formatter plugin. See the README for new installation & usage instructions
- the
mix style
task has been removed
Pipes
rewrites|> Enum.into(%{}[, mapper])
andEnum.into(Map.new()[, mapper])
toMap.new/1,2
calls
Pipes
rewrites some two-step processes into one, fixing these credo issues in pipe chains:Credo.Check.Refactor.FilterCount
Credo.Check.Refactor.MapJoin
Credo.Check.Refactor.MapInto
ModuleDirectives
handles even weirder places to hide your aliases (anonymous functions, in this case)Pipes
tries even harder to keep single-pipe rewrites of invocations on one line
Pipes
- fixed omission of
==
as a valid pipe start operator (h/t @peake100 for the issue) - fixed rewrite of
a |> b
, whereb
was invoked without parenthesis
- fixed omission of
- Enabled
Defs
style and overhauled it to properly handles comments - Optimized and tweaked
ModuleDirectives
style- Now culls newlines between "groups" of the same directive
- sorts
@behaviour
directives - orders directives within non defmodule contexts (eg, a
def do
) if there's at least onealias|require|use|import
Pipes
will try to keep single-pipe rewrites on one line
- Added
ModuleDirectives
style- Note that this is potentially destructive in some rare cases. See moduledoc for more.
- This supersedes the
Aliases
style, which has been removed.
mix style -
reads and writes to stdin/stdout
Pipes
style is now aware ofunless
blocks
- Lots of README tweaking =)
- Optimized some Zipper operations
- Added
Simple
style, replacing the following Credo rule:Credo.Check.Readability.LargeNumbers
- Exceptions while parsing code now appropriately render filename rather than
nofile:xx
- Fixed opaque
Zipper.path()
typespec implementation mismatches (thanks @sega-yarkin) - Made
ex_doc
dev only, removing it as a dependency for users of Styler
- Initial release of Styler
- Added
Aliases
style, replacing the following Credo rules:Credo.Check.Readability.AliasOrder
Credo.Check.Readability.MultiAlias
Credo.Check.Readability.UnnecessaryAliasExpansion
- Added
Pipes
style, replacing the following Credo rules:Credo.Check.Readability.BlockPipe
Credo.Check.Readability.SinglePipe
Credo.Check.Refactor.PipeChainStart
- Added
Defs
style (currently disabled by default)