utils 0.31.1 → 0.33.0
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/bin/probe +8 -3
- data/lib/utils/irb.rb +15 -1
- data/lib/utils/probe_server.rb +1 -1
- data/lib/utils/version.rb +1 -1
- data/utils.gemspec +6 -6
- metadata +3 -5
- data/bin/ssl_cert_info +0 -35
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 12cef3e32a424a560f550a93f4fbd793ab4ead58999cd091ae62613f681e125f
         | 
| 4 | 
            +
              data.tar.gz: 3eb0225e890989209666e6194db9c1bfcf8e1fadc8c27f8cce9d6a4850c88f31
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: abd0e88886486b7351b772bc90f8f3c5e0bd69cbd903650025ff586456a0a497326d9be87331447d830b8700be5f6bde2da8a3cc37fec99ef53aaf01a2a0f795
         | 
| 7 | 
            +
              data.tar.gz: 9009126fb1c63d1327b16f6fb2cc98c307f1a4ae911c2f23b20b9f4658024e31c88da552a9f3a9be719a62fd7dc6f110d166304758f0baa5b4739f21b0588bd3
         | 
    
        data/bin/probe
    CHANGED
    
    | @@ -20,6 +20,7 @@ Options are | |
| 20 20 | 
             
              -C FOO[=BAR]  set/get env variable on probe server
         | 
| 21 21 | 
             
              -l            start probe as a server
         | 
| 22 22 | 
             
              -u URI        use this DRb URI communication
         | 
| 23 | 
            +
              -f FORMATTER  use FORMATTER to display rspec output
         | 
| 23 24 | 
             
              -h            display this help
         | 
| 24 25 |  | 
| 25 26 | 
             
            Version is #{File.basename($0)} #{Utils::VERSION}.
         | 
| @@ -31,6 +32,7 @@ def cmd(*args) | |
| 31 32 | 
             
              if ENV.key?('BUNDLE_GEMFILE')
         | 
| 32 33 | 
             
                args.unshift 'bundle', 'exec'
         | 
| 33 34 | 
             
              end
         | 
| 35 | 
            +
              p args
         | 
| 34 36 | 
             
              puts args * ' '
         | 
| 35 37 | 
             
              system(*args) or exit $?.exitstatus
         | 
| 36 38 | 
             
            end
         | 
| @@ -76,7 +78,7 @@ def connect_server | |
| 76 78 | 
             
                end
         | 
| 77 79 | 
             
              end
         | 
| 78 80 | 
             
              if $opts[?c]
         | 
| 79 | 
            -
                opts = $opts.subhash( | 
| 81 | 
            +
                opts = $opts.subhash(*%w[n t f]).each_with_object([]) { |(k, v), a|
         | 
| 80 82 | 
             
                  v.full? and a.concat [ "-#{k}", v ]
         | 
| 81 83 | 
             
                }
         | 
| 82 84 | 
             
                probe_server.enqueue opts + $args
         | 
| @@ -93,7 +95,7 @@ if i = ARGV.index('--') | |
| 93 95 | 
             
            else
         | 
| 94 96 | 
             
              $args = ARGV.dup
         | 
| 95 97 | 
             
            end
         | 
| 96 | 
            -
            $opts = go 'lct:n:u:C:h', $args
         | 
| 98 | 
            +
            $opts = go 'lct:n:u:C:f:h', $args
         | 
| 97 99 | 
             
            $opts[?h] and usage
         | 
| 98 100 |  | 
| 99 101 | 
             
            $uri = $opts[?u] || 'drbunix:probe.socket'
         | 
| @@ -117,7 +119,10 @@ when :rspec | |
| 117 119 | 
             
              else
         | 
| 118 120 | 
             
                rspec = [ find_cmd('rspec', 'spec') ]
         | 
| 119 121 | 
             
              end
         | 
| 120 | 
            -
              rspec << '-rutils' | 
| 122 | 
            +
              rspec << '-rutils'
         | 
| 123 | 
            +
              unless $args.any? { |a| a.start_with?('-f') }
         | 
| 124 | 
            +
                rspec << '-f' << ($opts[?f] || 'Utils::LineFormatter')
         | 
| 125 | 
            +
              end
         | 
| 121 126 | 
             
              $args = $args.map do |a|
         | 
| 122 127 | 
             
                if Utils::Editor::FILE_LINENUMBER_REGEXP =~ a
         | 
| 123 128 | 
             
                  $~.captures.compact * ':'
         | 
    
        data/lib/utils/irb.rb
    CHANGED
    
    | @@ -273,6 +273,7 @@ module Utils | |
| 273 273 | 
             
                  def irb_time_watch(duration = 1)
         | 
| 274 274 | 
             
                    start = Time.now
         | 
| 275 275 | 
             
                    pre = nil
         | 
| 276 | 
            +
                    avg = Hash.new
         | 
| 276 277 | 
             
                    loop do
         | 
| 277 278 | 
             
                      cur = [ yield ].flatten
         | 
| 278 279 | 
             
                      unless pre
         | 
| @@ -282,7 +283,20 @@ module Utils | |
| 282 283 | 
             
                      expired = Time.now - start
         | 
| 283 284 | 
             
                      diffs = cur.zip(pre).map { |c, p| c - p }
         | 
| 284 285 | 
             
                      rates = diffs.map { |d| d / duration }
         | 
| 285 | 
            -
                       | 
| 286 | 
            +
                      durs = cur.zip(rates).each_with_index.map { |(c, r), i|
         | 
| 287 | 
            +
                        if r < 0
         | 
| 288 | 
            +
                          x = c.to_f / -r
         | 
| 289 | 
            +
                          a = avg[i].to_f
         | 
| 290 | 
            +
                          a -= a / 2
         | 
| 291 | 
            +
                          a += x / 2
         | 
| 292 | 
            +
                          d = Tins::Duration.new(a)
         | 
| 293 | 
            +
                          ds = d.to_s
         | 
| 294 | 
            +
                          ds.singleton_class { define_method(:to_f) { d.to_f } }
         | 
| 295 | 
            +
                          avg[i] = ds
         | 
| 296 | 
            +
                        end
         | 
| 297 | 
            +
                        avg[i]
         | 
| 298 | 
            +
                      }
         | 
| 299 | 
            +
                      warn "#{expired} #{cur.zip(diffs, rates, durs).map(&:inspect) * ' '} 𝝙 / per sec."
         | 
| 286 300 | 
             
                      pre = cur.map(&:to_f)
         | 
| 287 301 | 
             
                      sleep duration
         | 
| 288 302 | 
             
                    end
         | 
    
        data/lib/utils/probe_server.rb
    CHANGED
    
    
    
        data/lib/utils/version.rb
    CHANGED
    
    
    
        data/utils.gemspec
    CHANGED
    
    | @@ -1,23 +1,23 @@ | |
| 1 1 | 
             
            # -*- encoding: utf-8 -*-
         | 
| 2 | 
            -
            # stub: utils 0. | 
| 2 | 
            +
            # stub: utils 0.33.0 ruby lib
         | 
| 3 3 |  | 
| 4 4 | 
             
            Gem::Specification.new do |s|
         | 
| 5 5 | 
             
              s.name = "utils".freeze
         | 
| 6 | 
            -
              s.version = "0. | 
| 6 | 
            +
              s.version = "0.33.0"
         | 
| 7 7 |  | 
| 8 8 | 
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
         | 
| 9 9 | 
             
              s.require_paths = ["lib".freeze]
         | 
| 10 10 | 
             
              s.authors = ["Florian Frank".freeze]
         | 
| 11 | 
            -
              s.date = "2022- | 
| 11 | 
            +
              s.date = "2022-12-05"
         | 
| 12 12 | 
             
              s.description = "This ruby gem provides some useful command line utilities".freeze
         | 
| 13 13 | 
             
              s.email = "flori@ping.de".freeze
         | 
| 14 | 
            -
              s.executables = ["ascii7".freeze, "blameline".freeze, "check-yaml".freeze, "classify".freeze, "create_cstags".freeze, "create_tags".freeze, "discover".freeze, "edit".freeze, "edit_wait".freeze, "enum".freeze, "fix-brew".freeze, "git-empty".freeze, "git-versions".freeze, "irb_connect".freeze, "json_check".freeze, "long_lines".freeze, "myex".freeze, "number_files".freeze, "on_change".freeze, "path".freeze, "probe".freeze, "rd2md".freeze, "search".freeze, "sedit".freeze, "serve".freeze, "ssh-tunnel".freeze, " | 
| 14 | 
            +
              s.executables = ["ascii7".freeze, "blameline".freeze, "check-yaml".freeze, "classify".freeze, "create_cstags".freeze, "create_tags".freeze, "discover".freeze, "edit".freeze, "edit_wait".freeze, "enum".freeze, "fix-brew".freeze, "git-empty".freeze, "git-versions".freeze, "irb_connect".freeze, "json_check".freeze, "long_lines".freeze, "myex".freeze, "number_files".freeze, "on_change".freeze, "path".freeze, "probe".freeze, "rd2md".freeze, "search".freeze, "sedit".freeze, "serve".freeze, "ssh-tunnel".freeze, "strip_spaces".freeze, "untest".freeze, "utils-utilsrc".freeze, "vcf2alias".freeze]
         | 
| 15 15 | 
             
              s.extra_rdoc_files = ["README.md".freeze, "lib/utils.rb".freeze, "lib/utils/config_file.rb".freeze, "lib/utils/editor.rb".freeze, "lib/utils/file_xt.rb".freeze, "lib/utils/finder.rb".freeze, "lib/utils/grepper.rb".freeze, "lib/utils/irb.rb".freeze, "lib/utils/irb/service.rb".freeze, "lib/utils/line_blamer.rb".freeze, "lib/utils/line_formatter.rb".freeze, "lib/utils/md5.rb".freeze, "lib/utils/patterns.rb".freeze, "lib/utils/probe_server.rb".freeze, "lib/utils/ssh_tunnel_specification.rb".freeze, "lib/utils/version.rb".freeze, "lib/utils/xt/source_location_extension.rb".freeze]
         | 
| 16 | 
            -
              s.files = [".github/workflows/codeql-analysis.yml".freeze, "COPYING".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "bin/ascii7".freeze, "bin/blameline".freeze, "bin/check-yaml".freeze, "bin/classify".freeze, "bin/create_cstags".freeze, "bin/create_tags".freeze, "bin/discover".freeze, "bin/edit".freeze, "bin/edit_wait".freeze, "bin/enum".freeze, "bin/fix-brew".freeze, "bin/git-empty".freeze, "bin/git-versions".freeze, "bin/irb_connect".freeze, "bin/json_check".freeze, "bin/long_lines".freeze, "bin/myex".freeze, "bin/number_files".freeze, "bin/on_change".freeze, "bin/path".freeze, "bin/probe".freeze, "bin/rd2md".freeze, "bin/search".freeze, "bin/sedit".freeze, "bin/serve".freeze, "bin/ssh-tunnel".freeze, "bin/ | 
| 16 | 
            +
              s.files = [".github/workflows/codeql-analysis.yml".freeze, "COPYING".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "bin/ascii7".freeze, "bin/blameline".freeze, "bin/check-yaml".freeze, "bin/classify".freeze, "bin/create_cstags".freeze, "bin/create_tags".freeze, "bin/discover".freeze, "bin/edit".freeze, "bin/edit_wait".freeze, "bin/enum".freeze, "bin/fix-brew".freeze, "bin/git-empty".freeze, "bin/git-versions".freeze, "bin/irb_connect".freeze, "bin/json_check".freeze, "bin/long_lines".freeze, "bin/myex".freeze, "bin/number_files".freeze, "bin/on_change".freeze, "bin/path".freeze, "bin/probe".freeze, "bin/rd2md".freeze, "bin/search".freeze, "bin/sedit".freeze, "bin/serve".freeze, "bin/ssh-tunnel".freeze, "bin/strip_spaces".freeze, "bin/untest".freeze, "bin/utils-utilsrc".freeze, "bin/vcf2alias".freeze, "lib/utils.rb".freeze, "lib/utils/config_file.rb".freeze, "lib/utils/editor.rb".freeze, "lib/utils/file_xt.rb".freeze, "lib/utils/finder.rb".freeze, "lib/utils/grepper.rb".freeze, "lib/utils/irb.rb".freeze, "lib/utils/irb/service.rb".freeze, "lib/utils/line_blamer.rb".freeze, "lib/utils/line_formatter.rb".freeze, "lib/utils/md5.rb".freeze, "lib/utils/patterns.rb".freeze, "lib/utils/probe_server.rb".freeze, "lib/utils/ssh_tunnel_specification.rb".freeze, "lib/utils/version.rb".freeze, "lib/utils/xt/source_location_extension.rb".freeze, "utils.gemspec".freeze]
         | 
| 17 17 | 
             
              s.homepage = "http://github.com/flori/utils".freeze
         | 
| 18 18 | 
             
              s.licenses = ["GPL-2.0".freeze]
         | 
| 19 19 | 
             
              s.rdoc_options = ["--title".freeze, "Utils - Some useful command line utilities".freeze, "--main".freeze, "README.md".freeze]
         | 
| 20 | 
            -
              s.rubygems_version = "3. | 
| 20 | 
            +
              s.rubygems_version = "3.3.26".freeze
         | 
| 21 21 | 
             
              s.summary = "Some useful command line utilities".freeze
         | 
| 22 22 |  | 
| 23 23 | 
             
              if s.respond_to? :specification_version then
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: utils
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.33.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Florian Frank
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2022- | 
| 11 | 
            +
            date: 2022-12-05 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: gem_hadar
         | 
| @@ -151,7 +151,6 @@ executables: | |
| 151 151 | 
             
            - sedit
         | 
| 152 152 | 
             
            - serve
         | 
| 153 153 | 
             
            - ssh-tunnel
         | 
| 154 | 
            -
            - ssl_cert_info
         | 
| 155 154 | 
             
            - strip_spaces
         | 
| 156 155 | 
             
            - untest
         | 
| 157 156 | 
             
            - utils-utilsrc
         | 
| @@ -207,7 +206,6 @@ files: | |
| 207 206 | 
             
            - bin/sedit
         | 
| 208 207 | 
             
            - bin/serve
         | 
| 209 208 | 
             
            - bin/ssh-tunnel
         | 
| 210 | 
            -
            - bin/ssl_cert_info
         | 
| 211 209 | 
             
            - bin/strip_spaces
         | 
| 212 210 | 
             
            - bin/untest
         | 
| 213 211 | 
             
            - bin/utils-utilsrc
         | 
| @@ -252,7 +250,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 252 250 | 
             
                - !ruby/object:Gem::Version
         | 
| 253 251 | 
             
                  version: '0'
         | 
| 254 252 | 
             
            requirements: []
         | 
| 255 | 
            -
            rubygems_version: 3. | 
| 253 | 
            +
            rubygems_version: 3.3.26
         | 
| 256 254 | 
             
            signing_key:
         | 
| 257 255 | 
             
            specification_version: 4
         | 
| 258 256 | 
             
            summary: Some useful command line utilities
         | 
    
        data/bin/ssl_cert_info
    DELETED
    
    | @@ -1,35 +0,0 @@ | |
| 1 | 
            -
            #!/usr/bin/env ruby
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            def cert_info(crt)
         | 
| 4 | 
            -
              check_cmd = 'openssl x509 -inform pem -subject -fingerprint -issuer -sha256 -dates'
         | 
| 5 | 
            -
              IO.popen(check_cmd, 'w+') do |process|
         | 
| 6 | 
            -
                process.write crt
         | 
| 7 | 
            -
                process.close_write
         | 
| 8 | 
            -
                return process.read
         | 
| 9 | 
            -
              end
         | 
| 10 | 
            -
            end
         | 
| 11 | 
            -
             | 
| 12 | 
            -
            def split_certs(input)
         | 
| 13 | 
            -
              inside_cert = false
         | 
| 14 | 
            -
              certs = []
         | 
| 15 | 
            -
              input.each do |line|
         | 
| 16 | 
            -
                case line
         | 
| 17 | 
            -
                when /^-+BEGIN\s+CERTIFICATE-+$/
         | 
| 18 | 
            -
                  certs << line
         | 
| 19 | 
            -
                  inside_cert = true
         | 
| 20 | 
            -
                  next
         | 
| 21 | 
            -
                when /^-+END\s+CERTIFICATE-+$/
         | 
| 22 | 
            -
                  certs.last << line
         | 
| 23 | 
            -
                  inside_cert = false
         | 
| 24 | 
            -
                  next
         | 
| 25 | 
            -
                end
         | 
| 26 | 
            -
                if inside_cert
         | 
| 27 | 
            -
                  certs.last << line
         | 
| 28 | 
            -
                end
         | 
| 29 | 
            -
              end
         | 
| 30 | 
            -
              certs
         | 
| 31 | 
            -
            end
         | 
| 32 | 
            -
             | 
| 33 | 
            -
            split_certs(ARGF).each do |c|
         | 
| 34 | 
            -
              puts "", cert_info(c)
         | 
| 35 | 
            -
            end
         |