View Source Changelog
main
main
v0-7-11
v0.7.11
fixes
Fixes
- fix crash from
mix stylerunning plugins as part of formatting (no longer runs formatter plugins)
improvements
Improvements
- single-quote charlists are rewritten to use the
~csigil ('foo'->~c'foo') (h/t @fhunleth) mix stylewarns the user that Styler is primarily meant to be used as a plugin
v0-7-10
v0.7.10
fixes-1
Fixes
- fix crash when encountering single-quote charlists (h/t @fhunleth)
improvements-1
Improvements
- single-quote charlists are rewritten to use the
~csigil ('foo'->~c'foo') - when encountering
_ = bar ->, replace it withbar ->
v0-7-9
v0.7.9
fixes-2
Fixes
- Fix a toggle state resulting from (ahem, nonsense) code like
_ = bar ->encountering ParameterPatternMatching style
v0-7-8
v0.7.8
fixes-3
Fixes
- Fix crash trying to remove 0-arity parens from metaprogramming ala
def unquote(foo)()
v0-7-7
v0.7.7
improvements-2
Improvements
- Rewrite
Enum.into/2,3intoMap.new/1,2when the collectable is%{}orMap.new/0
v0-7-6
v0.7.6
fixes-4
Fixes
- Fix crash when single pipe had inner defs (h/t @michallepicki)
v0-7-5
v0.7.5
fixes-5
Fixes
- Fix bug from
ParameterPatternMatchingimplementation that re-ordered pattern matching incond do->clauses
v0-7-4
v0.7.4
features
Features
- Implement
Credo.Check.Readability.PreferImplicitTry - Implement
Credo.Check.Consistency.ParameterPatternMatchingfordef|defp|fn|case
v0-7-3
v0.7.3
features-1
Features
- Remove parens from 0-arity function definitions (
Credo.Check.Readability.ParenthesesOnZeroArityDefs)
v0-7-2
v0.7.2
features-2
Features
- Rewrite
case ... true -> ...; _ -> ...toifstatements as well
v0-7-1
v0.7.1
features-3
Features
- Rewrite
case ... true / else ->to beifstatements
v0-7-0
v0.7.0
features-4
Features
Styler.Style.Simple:- Optimize
Enum.reverse(foo) ++ bartoEnum.reverse(foo, bar)
- Optimize
Styler.Style.Pipes:- Rewrite
|> (& ...).()to|> then(& ...)(Credo.Check.Readability.PipeIntoAnonymousFunctions) - Add parens to 1-arity pipe functions (
Credo.Check.Readability.OneArityFunctionInPipe) - Optimize
a |> Enum.reverse() |> Enum.concat(enum)toEnum.reverse(a, enum)
- Rewrite
v0-6-1
v0.6.1
improvements-3
Improvements
- Better error handling:
mix formatwill still format files if a style fails
fixes-6
Fixes
mix style: only run on.exand.exsfilesModuleDirectives: now expandsalias __MODULE__.{A, B}(h/t @adriankumpf)
v0-6-0
v0.6.0
features-5
Features
mix style: brought back to life for folks who want to incrementally introduce Styler
fixes-7
Fixes
Styler.Style.Pipes:- include
x in yand^foo(for ecto) as a valid pipe starts - work even harder to keep rewrites on one line
- include
v0-5-2
v0.5.2
fixes-8
Fixes
ModuleDirectives: handle dynamic module namesPipes: includeEcto.Query.fromandQuery.fromas valid pipe starts
v0-5-1
v0.5.1
improvements-4
Improvements
- Sped up styling just a little bit
v0-5-0
v0.5.0
improvements-5
Improvements
Stylernow implementsMix.Task.Format, meaning it is now an Elixir formatter plugin. See the README for new installation & usage instructions
breaking-change-wooo
Breaking Change! Wooo!
- the
mix styletask has been removed
v0-4-1
v0.4.1
improvements-6
Improvements
Pipesrewrites|> Enum.into(%{}[, mapper])andEnum.into(Map.new()[, mapper])toMap.new/1,2calls
v0-4-0
v0.4.0
improvements-7
Improvements
Pipesrewrites some two-step processes into one, fixing these credo issues in pipe chains:Credo.Check.Refactor.FilterCountCredo.Check.Refactor.MapJoinCredo.Check.Refactor.MapInto
fixes-9
Fixes
ModuleDirectiveshandles even weirder places to hide your aliases (anonymous functions, in this case)Pipestries even harder to keep single-pipe rewrites of invocations on one line
v0-3-1
v0.3.1
fixes-10
Fixes
Pipes- fixed omission of
==as a valid pipe start operator (h/t @peake100 for the issue) - fixed rewrite of
a |> b, wherebwas invoked without parenthesis
- fixed omission of
v0-3-0
v0.3.0
improvements-8
Improvements
- Enabled
Defsstyle and overhauled it to properly handles comments - Optimized and tweaked
ModuleDirectivesstyle- Now culls newlines between "groups" of the same directive
- sorts
@behaviourdirectives - orders directives within non defmodule contexts (eg, a
def do) if there's at least onealias|require|use|import
fixes-11
Fixes
Pipeswill try to keep single-pipe rewrites on one line
v0-2-0
v0.2.0
improvements-9
Improvements
- Added
ModuleDirectivesstyle- Note that this is potentially destructive in some rare cases. See moduledoc for more.
- This supersedes the
Aliasesstyle, which has been removed.
mix style -reads and writes to stdin/stdout
fixes-12
Fixes
Pipesstyle is now aware ofunlessblocks
v0-1-1
v0.1.1
improvements-10
Improvements
- Lots of README tweaking =)
- Optimized some Zipper operations
- Added
Simplestyle, replacing the following Credo rule:Credo.Check.Readability.LargeNumbers
fixes-13
Fixes
- Exceptions while parsing code now appropriately render filename rather than
nofile:xx - Fixed opaque
Zipper.path()typespec implementation mismatches (thanks @sega-yarkin) - Made
ex_docdev only, removing it as a dependency for users of Styler
v0-1-0
v0.1.0
improvements-11
Improvements
- Initial release of Styler
- Added
Aliasesstyle, replacing the following Credo rules:Credo.Check.Readability.AliasOrderCredo.Check.Readability.MultiAliasCredo.Check.Readability.UnnecessaryAliasExpansion
- Added
Pipesstyle, replacing the following Credo rules:Credo.Check.Readability.BlockPipeCredo.Check.Readability.SinglePipeCredo.Check.Refactor.PipeChainStart
- Added
Defsstyle (currently disabled by default)