All Versions
Latest Version
Avg Release Cycle
247 days
Latest Release
1512 days ago

Changelog History

  • v1.4.1 Changes

    April 23, 2020
    • Pauses singleton method recording inside a super_module_included block to avoid replaying on submodules
  • v1.4.0 Changes

    April 06, 2020
    • πŸ‘Œ Support aliased methods
    • Support safely calling self.included(base) in super module via super_module_included {|base| ... }
  • v1.3.1 Changes

    March 28, 2020
    • πŸ›  Fixed issue with super module containing class methods with default arguments
  • v1.3.0 Changes

    March 24, 2020
    • ⬇️ Dropped support for SuperModule 2 Beta syntax, reverting to V1 syntax as the default
    • Added included_super_module method to allow modules to call it if they need to redefine self.included for meta-programming.
  • v1.2.2 Changes

    August 06, 2019
    • 😌 Relaxed dependency on method_source gem version
  • v1.2.1 Changes

    October 23, 2017
    • Standalone super module usage (e.g. direct class method invocation)
  • v1.2.0 Changes

    May 03, 2016
    • πŸ†• New super_module(name) syntax
    • 🐎 Much simpler implementation with guaranteed correctness and no performance hit
    • πŸ–¨ Less memory footprint by not requiring method_source Ruby gem for v2 syntax
    • Backwards compatibility with v1 syntax
  • v1.1.1 Changes

    April 09, 2015
    • βž• Added support for private and protected methods
    • βž• Added many more RSpec test cases, including testing of empty and comment containing singleton methods
  • v1.1.0 Changes

    April 08, 2015
    • Brand new self-friendly algorithm that ensures true mixing of super module singleton methods into the including base class or module, thus always returning the actual base class or module self when invoking a super module inherited singleton method (thanks to Banister for reporting previous limitation on Reddit and providing suggestions)
    • New included_super_modules inherited singleton method that provides developer with a list of all included super modules similar to the Ruby included_modules method.
    • No more use for method_missing (Thanks to Marc-AndrΓ© Lafortune for bringing up as a previous limitation in AirPair article reviews)
    • New dependency on Banister's method_source library to have the self-friendly algorithm eval inherited class method sources into the including base class or module.
    • Refactorings, including break-up of the original SuperModule into 3 modules in separate files
    • More RSpec test coverage, including additional method definition scenarios, such as when adding dynamically via class_eval and define_method
  • v1.0.0

    March 27, 2014