irbtools 3.0.0 → 3.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -0
- data/CONFIGURE.md +18 -0
- data/MIT-LICENSE.txt +1 -1
- data/README.md +2 -2
- data/irbtools.gemspec +7 -7
- data/lib/irbtools/hirb.rb +9 -0
- data/lib/irbtools/libraries.rb +2 -1
- data/lib/irbtools/version.rb +1 -1
- metadata +31 -9
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 97638932440324b1ac2515e752f8246e725a9424b20e2ccdb7e3bf9c19c4d73f
         | 
| 4 | 
            +
              data.tar.gz: 92466a6931a28d47fc933be842347daf9cd5caea37a5929fd125e7031b855b0a
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: a7632dbde24787c8fca33e883b549c8519f9bb4fe18035b788cfd412adfb7a9f255b3b814d24bb71a60f067cb6aabd26c3ab71f2eb5a18c9e2639cdf90715dee
         | 
| 7 | 
            +
              data.tar.gz: cd8474954adc2b449e4bdb99b1631cec1036027158d8b87ad2a2addee4eabc4f984e4135cbd3ebab67ddbf332f3daa2d75bb6a216423202d06d0eb09f385a082
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,5 +1,21 @@ | |
| 1 1 | 
             
            # Irbtools Changelog
         | 
| 2 2 |  | 
| 3 | 
            +
            ## 3.0.5
         | 
| 4 | 
            +
            * Bump methodfinder dependency & update usage (fixes #52)
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            ## 3.0.4
         | 
| 7 | 
            +
            * Loosen Ruby dependency to allow Ruby 3.0
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            ## 3.0.3
         | 
| 10 | 
            +
            * Workaround a HIRB issue for newer IRBs (fixes #48)
         | 
| 11 | 
            +
            * Workaround ORI issue for newer IRBs
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            ## 3.0.2
         | 
| 14 | 
            +
            * Bump wirb to ensure Ruby 2.7 compatibility
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            ## 3.0.1
         | 
| 17 | 
            +
            * Bump fancy_irb to ensure Ruby 2.7 compatiblity
         | 
| 18 | 
            +
             | 
| 3 19 | 
             
            ## 3.0.0
         | 
| 4 20 | 
             
            * Make IRB itself a dependency (default gem)
         | 
| 5 21 | 
             
            * Move: "Every day… IRB" into its own git repository
         | 
    
        data/CONFIGURE.md
    CHANGED
    
    | @@ -3,6 +3,12 @@ | |
| 3 3 |  | 
| 4 4 | 
             
            The welcome message can be customized with `Irbtools.welcome_message=`
         | 
| 5 5 |  | 
| 6 | 
            +
            ### IRB Prompt
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            **irbtools** changes the prompt to *:IRBTOOLS mode*, which uses `>> ` as the prompt, `|  ` for indentation, and ` > ` for continuing a statement. You can switch back to the default IRB prompt with:
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                IRB.conf[:PROMPT_MODE] = :DEFAULT
         | 
| 11 | 
            +
             | 
| 6 12 | 
             
            ### Customize Libraries to Load
         | 
| 7 13 |  | 
| 8 14 | 
             
            It is possible to modify, which libraries to load:
         | 
| @@ -53,3 +59,15 @@ When adding a new library, you should firstly consider some way to load it via | |
| 53 59 | 
             
            `:autoload`. If this is not possible, try loading via `:thread`. If that is
         | 
| 54 60 | 
             
            not possible either, you will need to fallback to the default loading
         | 
| 55 61 | 
             
            mechanism.
         | 
| 62 | 
            +
             | 
| 63 | 
            +
            #### Example
         | 
| 64 | 
            +
             | 
| 65 | 
            +
            Change a [FancyIRB](https://github.com/janlelis/fancy_irb/) setting:
         | 
| 66 | 
            +
             | 
| 67 | 
            +
                require 'irbtools/configure'
         | 
| 68 | 
            +
             | 
| 69 | 
            +
                Irbtools.replace_library_callback :fancy_irb do
         | 
| 70 | 
            +
                  FancyIrb.start rocket_mode: false
         | 
| 71 | 
            +
                end
         | 
| 72 | 
            +
             | 
| 73 | 
            +
                Irbtools.start
         | 
    
        data/MIT-LICENSE.txt
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -1,4 +1,4 @@ | |
| 1 | 
            -
            # Irbtools [](https://badge.fury.io/rb/irbtools) | 
| 1 | 
            +
            # Irbtools [![[version]](https://badge.fury.io/rb/irbtools.svg)](https://badge.fury.io/rb/irbtools)  [![[ci]](https://github.com/janlelis/irbtools/workflows/Test/badge.svg)](https://github.com/janlelis/irbtools/actions?query=workflow%3ATest)
         | 
| 2 2 |  | 
| 3 3 | 
             
            ```ruby
         | 
| 4 4 | 
             
                                                                                             _|          _|
         | 
| @@ -180,5 +180,5 @@ Irbtools.start | |
| 180 180 |  | 
| 181 181 | 
             
            ## J-_-L
         | 
| 182 182 |  | 
| 183 | 
            -
            Copyright (c) 2010- | 
| 183 | 
            +
            Copyright (c) 2010-2021 Jan Lelis <https://janlelis.com> released under the MIT
         | 
| 184 184 | 
             
            license.
         | 
    
        data/irbtools.gemspec
    CHANGED
    
    | @@ -5,11 +5,11 @@ Gem::Specification.new do |s| | |
| 5 5 | 
             
              s.name = 'irbtools'
         | 
| 6 6 | 
             
              s.version = Irbtools::VERSION
         | 
| 7 7 |  | 
| 8 | 
            -
              s.homepage              = 'https:// | 
| 8 | 
            +
              s.homepage              = 'https://irb.tools'
         | 
| 9 9 | 
             
              s.authors               = ["Jan Lelis"]
         | 
| 10 | 
            +
              s.email                 = ["hi@ruby.consulting"]
         | 
| 10 11 | 
             
              s.summary               = 'Irbtools happy IRB.'
         | 
| 11 | 
            -
              s.description           = "Irbtools make working with Ruby's IRB console more productive."
         | 
| 12 | 
            -
              s.email                 = 'mail@janlelis.de'
         | 
| 12 | 
            +
              s.description           = "The Irbtools make working with Ruby's IRB console more fun & productive."
         | 
| 13 13 | 
             
              s.files                 = %w[
         | 
| 14 14 | 
             
                lib/irbtools.rb
         | 
| 15 15 | 
             
                lib/irbtools/version.rb
         | 
| @@ -31,7 +31,7 @@ Gem::Specification.new do |s| | |
| 31 31 | 
             
              ]
         | 
| 32 32 | 
             
              s.license               = 'MIT'
         | 
| 33 33 |  | 
| 34 | 
            -
              s.required_ruby_version = ' | 
| 34 | 
            +
              s.required_ruby_version = '>= 2.0', '< 4.0'
         | 
| 35 35 |  | 
| 36 36 | 
             
              # # #
         | 
| 37 37 | 
             
              # Dependencies
         | 
| @@ -39,8 +39,8 @@ Gem::Specification.new do |s| | |
| 39 39 | 
             
              # Core Functionality
         | 
| 40 40 | 
             
              s.add_dependency %q<irb>,           ">= 0.9.6"
         | 
| 41 41 | 
             
              s.add_dependency %q<every_day_irb>, "~> 2.0"
         | 
| 42 | 
            -
              s.add_dependency %q<fancy_irb>,     "~> 1.1"
         | 
| 43 | 
            -
              s.add_dependency %q<wirb>,          "~> 2.0"
         | 
| 42 | 
            +
              s.add_dependency %q<fancy_irb>,     "~> 1.2", ">= 1.2.1"
         | 
| 43 | 
            +
              s.add_dependency %q<wirb>,          "~> 2.0", ">= 2.2.1"
         | 
| 44 44 | 
             
              s.add_dependency %q<hirb>,          "~> 0.7", ">= 0.7.3"
         | 
| 45 45 | 
             
              s.add_dependency %q<binding.repl>,  "~> 3.0"
         | 
| 46 46 |  | 
| @@ -55,7 +55,7 @@ Gem::Specification.new do |s| | |
| 55 55 | 
             
              s.add_dependency %q<object_shadow>, "~> 1.1"
         | 
| 56 56 | 
             
              s.add_dependency %q<code>,          ">= 0.9.2", "< 2.0"
         | 
| 57 57 | 
             
              s.add_dependency %q<ori>,           "~> 0.1.0"
         | 
| 58 | 
            -
              s.add_dependency %q<methodfinder>,  "~> 2.2"
         | 
| 58 | 
            +
              s.add_dependency %q<methodfinder>,  "~> 2.2", ">= 2.2.2"
         | 
| 59 59 | 
             
              s.add_dependency %q<ruby_version>,  "~> 1.0"
         | 
| 60 60 | 
             
              s.add_dependency %q<ruby_engine>,   "~> 1.0"
         | 
| 61 61 | 
             
              s.add_dependency %q<ruby_info>,     "~> 1.0"
         | 
    
        data/lib/irbtools/hirb.rb
    CHANGED
    
    | @@ -7,6 +7,15 @@ Irbtools.add_library :hirb, thread: :paint do | |
| 7 7 | 
             
                Hirb::Pager.command_pager(what, options = {})
         | 
| 8 8 | 
             
              end
         | 
| 9 9 |  | 
| 10 | 
            +
              # Workaround for newer IRB versions
         | 
| 11 | 
            +
              if defined? IRB::Irb
         | 
| 12 | 
            +
                IRB::Irb.class_eval do
         | 
| 13 | 
            +
                  def output_value(_ = false)
         | 
| 14 | 
            +
                    Hirb::View.view_or_page_output(@context.last_value) || non_hirb_view_output
         | 
| 15 | 
            +
                  end
         | 
| 16 | 
            +
                end
         | 
| 17 | 
            +
              end
         | 
| 18 | 
            +
             | 
| 10 19 | 
             
              # page wirb output hacks
         | 
| 11 20 | 
             
              class Hirb::Pager
         | 
| 12 21 | 
             
                alias original_activated_by? activated_by?
         | 
    
        data/lib/irbtools/libraries.rb
    CHANGED
    
    | @@ -39,6 +39,7 @@ Irbtools.add_library 'object_shadow', thread: :paint do | |
| 39 39 | 
             
              ObjectShadow.include(ObjectShadow::DeepInspect)
         | 
| 40 40 | 
             
            end
         | 
| 41 41 |  | 
| 42 | 
            +
            Irbtools.add_library 'readline', thread: :ori
         | 
| 42 43 | 
             
            Irbtools.add_library 'ori', thread: :ori do
         | 
| 43 44 | 
             
              # TODO Readline history can be empty (issue)
         | 
| 44 45 | 
             
              module ORI::Internals
         | 
| @@ -118,7 +119,7 @@ Irbtools.add_library :clipboard, :autoload => :Clipboard do | |
| 118 119 | 
             
            end
         | 
| 119 120 |  | 
| 120 121 | 
             
            Irbtools.add_library :methodfinder, autoload: :MethodFinder do
         | 
| 121 | 
            -
              MethodFinder:: | 
| 122 | 
            +
              MethodFinder::INSTANCE_METHOD_IGNORELIST[:Object] += [:ri, :vi, :vim, :emacs, :nano, :mate, :mvim, :ed]
         | 
| 122 123 |  | 
| 123 124 | 
             
              def mf(*args, &block)
         | 
| 124 125 | 
             
                args.empty? ? MethodFinder : MethodFinder.find(*args, &block)
         | 
    
        data/lib/irbtools/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: irbtools
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 3.0. | 
| 4 | 
            +
              version: 3.0.5
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Jan Lelis
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2021-05-25 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: irb
         | 
| @@ -44,14 +44,20 @@ dependencies: | |
| 44 44 | 
             
                requirements:
         | 
| 45 45 | 
             
                - - "~>"
         | 
| 46 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            -
                    version: '1. | 
| 47 | 
            +
                    version: '1.2'
         | 
| 48 | 
            +
                - - ">="
         | 
| 49 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 50 | 
            +
                    version: 1.2.1
         | 
| 48 51 | 
             
              type: :runtime
         | 
| 49 52 | 
             
              prerelease: false
         | 
| 50 53 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 54 | 
             
                requirements:
         | 
| 52 55 | 
             
                - - "~>"
         | 
| 53 56 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            -
                    version: '1. | 
| 57 | 
            +
                    version: '1.2'
         | 
| 58 | 
            +
                - - ">="
         | 
| 59 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 60 | 
            +
                    version: 1.2.1
         | 
| 55 61 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 62 | 
             
              name: wirb
         | 
| 57 63 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -59,6 +65,9 @@ dependencies: | |
| 59 65 | 
             
                - - "~>"
         | 
| 60 66 | 
             
                  - !ruby/object:Gem::Version
         | 
| 61 67 | 
             
                    version: '2.0'
         | 
| 68 | 
            +
                - - ">="
         | 
| 69 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 70 | 
            +
                    version: 2.2.1
         | 
| 62 71 | 
             
              type: :runtime
         | 
| 63 72 | 
             
              prerelease: false
         | 
| 64 73 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| @@ -66,6 +75,9 @@ dependencies: | |
| 66 75 | 
             
                - - "~>"
         | 
| 67 76 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 77 | 
             
                    version: '2.0'
         | 
| 78 | 
            +
                - - ">="
         | 
| 79 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 80 | 
            +
                    version: 2.2.1
         | 
| 69 81 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 82 | 
             
              name: hirb
         | 
| 71 83 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -237,6 +249,9 @@ dependencies: | |
| 237 249 | 
             
                - - "~>"
         | 
| 238 250 | 
             
                  - !ruby/object:Gem::Version
         | 
| 239 251 | 
             
                    version: '2.2'
         | 
| 252 | 
            +
                - - ">="
         | 
| 253 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 254 | 
            +
                    version: 2.2.2
         | 
| 240 255 | 
             
              type: :runtime
         | 
| 241 256 | 
             
              prerelease: false
         | 
| 242 257 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| @@ -244,6 +259,9 @@ dependencies: | |
| 244 259 | 
             
                - - "~>"
         | 
| 245 260 | 
             
                  - !ruby/object:Gem::Version
         | 
| 246 261 | 
             
                    version: '2.2'
         | 
| 262 | 
            +
                - - ">="
         | 
| 263 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 264 | 
            +
                    version: 2.2.2
         | 
| 247 265 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 248 266 | 
             
              name: ruby_version
         | 
| 249 267 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -300,8 +318,9 @@ dependencies: | |
| 300 318 | 
             
                - - ">="
         | 
| 301 319 | 
             
                  - !ruby/object:Gem::Version
         | 
| 302 320 | 
             
                    version: '0'
         | 
| 303 | 
            -
            description: Irbtools make working with Ruby's IRB console more productive.
         | 
| 304 | 
            -
            email: | 
| 321 | 
            +
            description: The Irbtools make working with Ruby's IRB console more fun & productive.
         | 
| 322 | 
            +
            email:
         | 
| 323 | 
            +
            - hi@ruby.consulting
         | 
| 305 324 | 
             
            executables: []
         | 
| 306 325 | 
             
            extensions: []
         | 
| 307 326 | 
             
            extra_rdoc_files:
         | 
| @@ -325,7 +344,7 @@ files: | |
| 325 344 | 
             
            - lib/irbtools/minimal.rb
         | 
| 326 345 | 
             
            - lib/irbtools/non_fancy.rb
         | 
| 327 346 | 
             
            - lib/irbtools/version.rb
         | 
| 328 | 
            -
            homepage: https:// | 
| 347 | 
            +
            homepage: https://irb.tools
         | 
| 329 348 | 
             
            licenses:
         | 
| 330 349 | 
             
            - MIT
         | 
| 331 350 | 
             
            metadata: {}
         | 
| @@ -335,16 +354,19 @@ require_paths: | |
| 335 354 | 
             
            - lib
         | 
| 336 355 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 337 356 | 
             
              requirements:
         | 
| 338 | 
            -
              - - " | 
| 357 | 
            +
              - - ">="
         | 
| 339 358 | 
             
                - !ruby/object:Gem::Version
         | 
| 340 359 | 
             
                  version: '2.0'
         | 
| 360 | 
            +
              - - "<"
         | 
| 361 | 
            +
                - !ruby/object:Gem::Version
         | 
| 362 | 
            +
                  version: '4.0'
         | 
| 341 363 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 342 364 | 
             
              requirements:
         | 
| 343 365 | 
             
              - - ">="
         | 
| 344 366 | 
             
                - !ruby/object:Gem::Version
         | 
| 345 367 | 
             
                  version: '0'
         | 
| 346 368 | 
             
            requirements: []
         | 
| 347 | 
            -
            rubygems_version: 3. | 
| 369 | 
            +
            rubygems_version: 3.2.3
         | 
| 348 370 | 
             
            signing_key: 
         | 
| 349 371 | 
             
            specification_version: 4
         | 
| 350 372 | 
             
            summary: Irbtools happy IRB.
         |