Skip to content

Releases: Shopify/spoom

v1.5.0

30 Sep 20:06
6fe8551

Choose a tag to compare

What's Changed

🚧 Breaking Changes

  • Return Gem::Version from Bundle#gem_version_from_gemfile_lock by @KaanOzkan in #608

🐛 Bug Fixes

  • Add deadcode plugin handling for Object#method by @Morriar in #609

🛠 Other Changes

New Contributors

Full Changelog: v1.4.2...v1.5.0

v1.4.2

30 Jul 14:18

Choose a tag to compare

What's Changed

🐛 Bug Fixes

Full Changelog: v1.4.1...v1.4.2

v1.4.1

29 Jul 18:34
cf9c6a7

Choose a tag to compare

What's Changed

🐛 Bug Fixes

Full Changelog: v1.4.0...v1.4.1

v1.4.0

24 Jul 18:17
6087731

Choose a tag to compare

What's Changed

✨ Enhancements

  • Improve deadcode plugin for Minitest by @Morriar in #579
  • Allow nilable Spoom::Location lines and columns attributes by @alexcrocha in #587

🐛 Bug Fixes

New Contributors

Full Changelog: v1.3.3...v1.4.0

v1.3.3

10 Jul 20:56

Choose a tag to compare

What's Changed

✨ Enhancements

  • Handle properties visibility in Model by @Morriar in #560
  • Introduce POSet representation by @Morriar in #558
  • Allow dead code plugins to reason on the classes hierarchy by @Morriar in #568
  • Extract reference indexing from deadcode to model by @Morriar in #570
  • Load custom plugins when running spoom deadcode by @Morriar in #577

🐛 Bug Fixes

  • Fix ERB parsing when running deadcode CLI command by @Morriar in #555
  • Fix dead code path exclusion when passing custom paths by @Morriar in #569
  • Add public accessor for Spoom::Plugins::Base#index by @Morriar in #578

🛠 Other Changes

  • Remove redundant part of test names by @andyw8 in #544
  • Remove Ruby 3.0 from CI matrix by @Morriar in #545
  • Set dependabot open-pull-requests-limit to 100 by @egiurleo in #548
  • Move parsing related classes to Spoom's top level by @Morriar in #556
  • Introduce Model building by @Morriar in #557
  • Make dead code indexing use a Model to index classes by @Morriar in #562
  • Make dead code indexing use a Model to index modules by @Morriar in #563
  • Make dead code indexing use a Model to index constants by @Morriar in #564
  • Make dead code indexing use a Model to index methods by @Morriar in #565
  • Make dead code indexing use a Model to index accessors by @Morriar in #566
  • Clean dead code analysis following migration to Model by @Morriar in #567
  • Deadcode indexing relies on Model::ReferencesVisitor by @Morriar in #571
  • Make all errors raised by spoom subclass Spoom::Error by @Morriar in #580
  • Remove unwanted puts from test output by @Morriar in #581
  • Avoid raising bare runtime errors by @Morriar in #582

Full Changelog: v1.3.2...v1.3.3

v1.3.2

10 Jul 20:55
af103c8

Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • Fix removal of def nodes with a rescue by @Morriar in #543

Full Changelog: v1.3.1...v1.3.2

v1.3.1

02 May 15:47
c5d28a5

Choose a tag to compare

What's Changed

🐛 Bug Fixes

🛠 Other Changes

New Contributors

Full Changelog: v1.3.0...v1.3.1

v1.3.0

26 Mar 21:18
f2b202f

Choose a tag to compare

What's Changed

🚧 Breaking Changes

✨ Enhancements

  • Add plugin to ignore ActionMailer::Preview classes by @Korri in #504
  • various: fix miscellaneous typos by @p-linnane in #509
  • Add CLI commands for detecting and remove dead code by @Morriar in #516

🐛 Bug Fixes

  • Mark methods called by MiniTest.setup as alive by @Morriar in #468

🛠 Other Changes

  • Fix failing CLI test by @andyw8 in #483
  • Better explanation for bump --dry by @Morriar in #490
  • Update Ruby and Bundler by @vinistock in #513
  • Remove dead method delete_line_part by @shopify-codedb in #519
  • Remove dead attr_writer nodes_nesting= by @shopify-codedb in #518
  • Remove dead attr_reader file_name by @shopify-codedb in #517
  • Remove dead method print_with_strictnesses by @shopify-codedb in #522
  • Remove dead method censor_project_path by @shopify-codedb in #523
  • Remove dead method nodes_strictnesses by @shopify-codedb in #525
  • Move all Sorbet related commands as subcommands by @Morriar in #524
  • Migrate dead code detection to Prism by @Morriar in #527

New Contributors

Full Changelog: v1.2.4...v1.3.0

v1.2.4

01 Mar 18:40
99d2d82

Choose a tag to compare

What's Changed

✨ Enhancements

  • Ignore more methods using deadcode plugins by @Morriar in #436
  • Ignore constants, classes and modules from dead code plugins by @Morriar in #437
  • Indexer calls internal methods of plugin base by @Morriar in #441
  • Rename ignore_class_names into ignore_classes_named by @Morriar in #442
  • Introduce more plugin rules by @Morriar in #446
  • Always strip prefix before name comparison with string DSL by @Morriar in #445
  • Make it easy to ignore direct subclasses of a class in dead code plugins by @Morriar in #438
  • Add plugin behavior on on_send by @Morriar in #450
  • Introduce dead code plugin loading mechanism by @Morriar in #453
  • Introduce Spoom::Deadcode::Remover by @Morriar in #452
  • Add minitest backtrace filter by @andyw8 in #457

🐛 Bug Fixes

🛠 Other Changes

Full Changelog: v1.2.3...v1.2.4

v1.2.3

01 Mar 18:49
e16b731

Choose a tag to compare

What's Changed

✨ Enhancements

🐛 Bug Fixes

🛠 Other Changes

  • Fix sorbet-static-and-runtime version in tests by @egiurleo in #406
  • In test_helper, specify Sorbet version as a constant by @egiurleo in #408

New Contributors

Full Changelog: v1.2.2...v1.2.3