pwqgen.rb 0.0.5 → 0.0.6
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/pwqgen.rb +27 -8
- data/lib/pwqgen/pwqgen.rb +4 -3
- data/lib/pwqgen/version.rb +1 -1
- data/pwqgen.rb.gemspec +2 -1
- metadata +31 -17
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: d175c0aa4bddf1e3fab53fac8f870586063c7b5a
         | 
| 4 | 
            +
              data.tar.gz: bbdfe9d63c4dba8103a82a36627c8306a34f0510
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: b6752ea31a2b4b38eb645dc72cc80a67df6d8e6fbb62b2a8408db1359c817b1ead793ef7c4281849999320f11040b99a4190f62f0f17763267ba581be44127f7
         | 
| 7 | 
            +
              data.tar.gz: e79b9d9b5da4f81585c5b9ee65aec19886c7ff1ae945e954c68ccc7d39afc46c4a5b97a2c89c975b3545264777868318f64106f86f18295ec22e6cde76c47d01
         | 
    
        data/bin/pwqgen.rb
    CHANGED
    
    | @@ -10,26 +10,45 @@ doc = <<DOCOPT | |
| 10 10 | 
             
            Generate a random pronouncable passphrase.
         | 
| 11 11 |  | 
| 12 12 | 
             
            Usage:
         | 
| 13 | 
            -
              #{filename} [LENGTH]
         | 
| 13 | 
            +
              #{filename} [options] [LENGTH]
         | 
| 14 14 | 
             
              #{filename} [-h | --help]
         | 
| 15 15 | 
             
              #{filename} [-v | --version]
         | 
| 16 16 |  | 
| 17 17 | 
             
            Arguments:
         | 
| 18 | 
            -
              LENGTH          Number of words in the passphrase | 
| 18 | 
            +
              LENGTH          Number of words in the passphrase [default: 3].
         | 
| 19 | 
            +
              COLS            Number of columns to output.
         | 
| 19 20 |  | 
| 20 21 | 
             
            Options:
         | 
| 21 | 
            -
              - | 
| 22 | 
            -
              - | 
| 22 | 
            +
              -C COLS, --columns COLS   output passphrases in multiple columns
         | 
| 23 | 
            +
              -h, --help                show this help message and exit
         | 
| 24 | 
            +
              -v, --version             show version and exit
         | 
| 23 25 |  | 
| 24 26 | 
             
            DOCOPT
         | 
| 25 27 |  | 
| 26 28 | 
             
            begin
         | 
| 27 29 | 
             
              options = Docopt::docopt(doc, :version => Pwqgen::VERSION)
         | 
| 28 | 
            -
             | 
| 29 | 
            -
               | 
| 30 | 
            -
             | 
| 30 | 
            +
              p options
         | 
| 31 | 
            +
              
         | 
| 32 | 
            +
              if !options["LENGTH"].nil? && options["LENGTH"].to_s.match(/\A[+-]?\d+?(\.\d+)?\Z/)
         | 
| 33 | 
            +
                opts = options["LENGTH"].to_i
         | 
| 34 | 
            +
              end
         | 
| 35 | 
            +
              if options["--columns"].nil?
         | 
| 36 | 
            +
                if opts
         | 
| 37 | 
            +
                  puts Pwqgen.generate(opts)
         | 
| 38 | 
            +
                else
         | 
| 39 | 
            +
                  puts Pwqgen.generate
         | 
| 40 | 
            +
                end
         | 
| 31 41 | 
             
              else
         | 
| 32 | 
            -
                 | 
| 42 | 
            +
                for i in 1..(options["--columns"][0].to_i)
         | 
| 43 | 
            +
                  for j in 1..(options["--columns"][0].to_i)
         | 
| 44 | 
            +
                    if opts
         | 
| 45 | 
            +
                      print Pwqgen.generate(opts) + "\t"
         | 
| 46 | 
            +
                    else
         | 
| 47 | 
            +
                      print Pwqgen.generate + "\t"
         | 
| 48 | 
            +
                    end
         | 
| 49 | 
            +
                  end
         | 
| 50 | 
            +
                  puts ""
         | 
| 51 | 
            +
                end
         | 
| 33 52 | 
             
              end
         | 
| 34 53 | 
             
            rescue Docopt::Exit => e
         | 
| 35 54 | 
             
              puts e.message
         | 
    
        data/lib/pwqgen/pwqgen.rb
    CHANGED
    
    | @@ -1,5 +1,5 @@ | |
| 1 1 | 
             
            require 'pwqgen/wordlist'
         | 
| 2 | 
            -
            require 'securerandom'
         | 
| 2 | 
            +
            require 'sysrandom/securerandom'
         | 
| 3 3 |  | 
| 4 4 | 
             
            # Public: Pwqgen is a Ruby implementation of passwdqc's pwqgen password
         | 
| 5 5 | 
             
            # generator.
         | 
| @@ -42,9 +42,10 @@ module Pwqgen | |
| 42 42 | 
             
            	end
         | 
| 43 43 |  | 
| 44 44 | 
             
            	class Generator
         | 
| 45 | 
            -
            		def initialize
         | 
| 45 | 
            +
            		def initialize(opts = {})
         | 
| 46 | 
            +
            			opts[:separators] ||= "-_!$&*+=23456789"
         | 
| 46 47 | 
             
            			@@wordlist_size = @@wordlist.length
         | 
| 47 | 
            -
            			@@separators =  | 
| 48 | 
            +
            			@@separators = opts[:separators].split(//)
         | 
| 48 49 | 
             
            			@@separators_size = @@separators.length
         | 
| 49 50 | 
             
            			@rand = SecureRandom
         | 
| 50 51 | 
             
            		end
         | 
    
        data/lib/pwqgen/version.rb
    CHANGED
    
    
    
        data/pwqgen.rb.gemspec
    CHANGED
    
    | @@ -18,7 +18,8 @@ Gem::Specification.new do |s| | |
| 18 18 |  | 
| 19 19 | 
             
              s.required_ruby_version = '>= 1.8.7'
         | 
| 20 20 | 
             
              s.required_rubygems_version = ">= 1.3.6"
         | 
| 21 | 
            -
              s.add_runtime_dependency('docopt', "~> 0.5 | 
| 21 | 
            +
              s.add_runtime_dependency('docopt', "~> 0.5")
         | 
| 22 | 
            +
              s.add_runtime_dependency('sysrandom')
         | 
| 22 23 |  | 
| 23 24 | 
             
              s.add_development_dependency 'rake'
         | 
| 24 25 | 
             
              s.add_development_dependency 'rspec'
         | 
    
        metadata
    CHANGED
    
    | @@ -1,69 +1,83 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: pwqgen.rb
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.6
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ronald Ip
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2016-09-07 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: docopt
         | 
| 15 15 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 16 | 
             
                requirements:
         | 
| 17 | 
            -
                - - ~>
         | 
| 17 | 
            +
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 0.5 | 
| 19 | 
            +
                    version: '0.5'
         | 
| 20 20 | 
             
              type: :runtime
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 | 
            -
                - - ~>
         | 
| 24 | 
            +
                - - "~>"
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 0.5 | 
| 26 | 
            +
                    version: '0.5'
         | 
| 27 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            +
              name: sysrandom
         | 
| 29 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 | 
            +
                requirements:
         | 
| 31 | 
            +
                - - ">="
         | 
| 32 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            +
                    version: '0'
         | 
| 34 | 
            +
              type: :runtime
         | 
| 35 | 
            +
              prerelease: false
         | 
| 36 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 | 
            +
                requirements:
         | 
| 38 | 
            +
                - - ">="
         | 
| 39 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            +
                    version: '0'
         | 
| 27 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 42 | 
             
              name: rake
         | 
| 29 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 44 | 
             
                requirements:
         | 
| 31 | 
            -
                - -  | 
| 45 | 
            +
                - - ">="
         | 
| 32 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 47 | 
             
                    version: '0'
         | 
| 34 48 | 
             
              type: :development
         | 
| 35 49 | 
             
              prerelease: false
         | 
| 36 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 51 | 
             
                requirements:
         | 
| 38 | 
            -
                - -  | 
| 52 | 
            +
                - - ">="
         | 
| 39 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 54 | 
             
                    version: '0'
         | 
| 41 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 56 | 
             
              name: rspec
         | 
| 43 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 58 | 
             
                requirements:
         | 
| 45 | 
            -
                - -  | 
| 59 | 
            +
                - - ">="
         | 
| 46 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 61 | 
             
                    version: '0'
         | 
| 48 62 | 
             
              type: :development
         | 
| 49 63 | 
             
              prerelease: false
         | 
| 50 64 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 65 | 
             
                requirements:
         | 
| 52 | 
            -
                - -  | 
| 66 | 
            +
                - - ">="
         | 
| 53 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 68 | 
             
                    version: '0'
         | 
| 55 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 70 | 
             
              name: aruba
         | 
| 57 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 72 | 
             
                requirements:
         | 
| 59 | 
            -
                - -  | 
| 73 | 
            +
                - - ">="
         | 
| 60 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 61 75 | 
             
                    version: '0'
         | 
| 62 76 | 
             
              type: :development
         | 
| 63 77 | 
             
              prerelease: false
         | 
| 64 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 65 79 | 
             
                requirements:
         | 
| 66 | 
            -
                - -  | 
| 80 | 
            +
                - - ">="
         | 
| 67 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 82 | 
             
                    version: '0'
         | 
| 69 83 | 
             
            description: pwqgen.rb is a Ruby implementation of passwdqc's pwqgen, a random pronouncable
         | 
| @@ -74,8 +88,8 @@ executables: | |
| 74 88 | 
             
            extensions: []
         | 
| 75 89 | 
             
            extra_rdoc_files: []
         | 
| 76 90 | 
             
            files:
         | 
| 77 | 
            -
            - .gitignore
         | 
| 78 | 
            -
            - .travis.yml
         | 
| 91 | 
            +
            - ".gitignore"
         | 
| 92 | 
            +
            - ".travis.yml"
         | 
| 79 93 | 
             
            - ChangeLog
         | 
| 80 94 | 
             
            - Gemfile
         | 
| 81 95 | 
             
            - README.md
         | 
| @@ -139,17 +153,17 @@ require_paths: | |
| 139 153 | 
             
            - lib
         | 
| 140 154 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 141 155 | 
             
              requirements:
         | 
| 142 | 
            -
              - -  | 
| 156 | 
            +
              - - ">="
         | 
| 143 157 | 
             
                - !ruby/object:Gem::Version
         | 
| 144 158 | 
             
                  version: 1.8.7
         | 
| 145 159 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 146 160 | 
             
              requirements:
         | 
| 147 | 
            -
              - -  | 
| 161 | 
            +
              - - ">="
         | 
| 148 162 | 
             
                - !ruby/object:Gem::Version
         | 
| 149 163 | 
             
                  version: 1.3.6
         | 
| 150 164 | 
             
            requirements: []
         | 
| 151 165 | 
             
            rubyforge_project: 
         | 
| 152 | 
            -
            rubygems_version: 2. | 
| 166 | 
            +
            rubygems_version: 2.5.1
         | 
| 153 167 | 
             
            signing_key: 
         | 
| 154 168 | 
             
            specification_version: 4
         | 
| 155 169 | 
             
            summary: pwqgen in Ruby
         |