Skip to content

v1.1.0

Compare
Choose a tag to compare
@jecisc jecisc released this 01 Jun 11:36
· 30 commits to master since this release

v1.1.0 (2020-06-01)

General structure

  • Extract each cleaning to its own class (6d5e7c0)
  • Review priority system to use topological sort (971a92b)
  • Add tests (loooots of tests) (6d662de)
  • Add world menu entry (d6ff456)
  • Add a way to select cleaners to call (f2d3f67)
  • Add progress bar (731a013)
  • Use Iterators (1733c12)
  • Add tests for each cleaner working on local methods that trait methods are not duplicated in class (e15dda3)
  • Add tests that extension methods dont have their protocol updated (1cb1e3b)
  • Add tests on cleaners about instanceclass sides cleanings (70e8169)
  • Use tiny logger to log everything that is changed in the code (0bd83ce)
  • Do not rewrite return with the call of the self method infinite loop (676ca7b)
  • Add descriptions of all conditions in the documentation (3fbc17e)
  • Add parameter to set the minimal version of Pharo in which the cleaned project should work (8b16997)
  • Review priorities and add tests to ensure some are in the right order (1067096)
  • Improve test to make it easier to write test about non rewritten methods (5df6518)

New cleaners

  • Add a cleaner to extract an assignation happening in both branches as last statement (0d90455)
  • Add a cleaner extracting returns for conditionals with return as last statement in the two branches (24eb895)
  • Add rewrite for assert true and equivalents (6cb60bc)
  • Cleaner to use only one version of some aliases (because some will be deprecated and others simplifies future cleaners) (7022f3c)
  • Cleaner to remove method with equivalent defined in super class (3671d2a)
  • Add cleaner to classify unclassified methods with automatic categorizer (66e96b4)
  • Add a cleaner rewriting assert: x isEmpty to use assertEmpty: & co (a4443f2)
  • Check for methods in traits already present in a trait they use (c34fc39)
  • Remove some unecessary nodes from the AST (18fce47)
  • Add simplification for ifEmpty:ifNotEmpty: (aad07b1)
  • Introduce a cleaner removing useless conditional branches such as ifNil: [ nil ] (96b851e)
  • Remove assignment to itself (feb98f3)
  • Clean equals nil (725f0a0)
  • Add cleaner to remove unecessary not (f559984)

Enhancements

  • Extract return should run before cut conditional branches (399108c)
  • Reapply ChanelExtractReturnFromAllBranchesCleanerTest on methods who were cleaned in case we can extract more of them (71f3eab)
  • Improve cut branch cleaner to also clean branches with blocks only returning their argument (e38cc05)
  • Add extensions to Pharo AST to make the code more readable (0f02a3a)
  • Improve nil conditions cleaner to have better rewrites (2073166)

Bug fixes

  • Remove nil assignment can fail in case of assignment in an assignment (1472ea8)
  • TestCase renaming should check there is not another class with the same name in the system (d513f1b)