pws 1.0.6 → 1.0.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cc1bda6125f66bd7dab182c1f36e041ed31c508a
4
- data.tar.gz: bd1b9682fc619df19892b53bf6ffc3697bfa9b2c
3
+ metadata.gz: 1762a8aa9fd10476edc6dc58eac65743c48bb98e
4
+ data.tar.gz: ef02df2119997cc751f8061487a55131a0d2eb60
5
5
  SHA512:
6
- metadata.gz: d9ff5f1633c6b41bec56714684fc7ddc38068b4f5e31a33d151bf0cfc575e6ade4e42313d2e847d3dde06357a015111d82d124f1a2c0a5f31a0626df062c6057
7
- data.tar.gz: 47dff7dc77be80f60ad44407877ad849b9ea79ab0fe7846711e8b7ec5932c4f8704e2d596fe0b3aac318ac2392608b290dd44f9584e117698e0573ffdef314b2
6
+ metadata.gz: f53c3a1eead665a1dc38d33e6f06b3446eeeb95ad4b4a89472ed50e3ad4c9186086d4a5116db43dab8f50caadec3f2b9675b6d2e72ea0b03fa8ec0a3369d386a
7
+ data.tar.gz: 9459aa812e2d36c0f66f5f13ce116f84a9c100b9721feaa9bfda977ae42dbe5f8fbbd595477b78607dfdbce9b2e1c6d82fc13d88103dafacef7b593073660f00
@@ -1,3 +1,8 @@
1
+ == 1.0.7
2
+ * Ruby 2.4 compat (explicitely only pass 32 bytes of the encryption key)
3
+ * Update clipboard dependency to 1.1.1
4
+ * Explicitely write and read password file as binary to avoid Ruby encoding exceptions under some circumstances
5
+
1
6
  == 1.0.6
2
7
  * Ruby 2.2 compat (remove digest/hmac)
3
8
 
@@ -1,4 +1,4 @@
1
- Copyright (c) 2010-2015 Jan Lelis
1
+ Copyright (c) 2010-2017 Jan Lelis
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -47,4 +47,4 @@ Contributors
47
47
 
48
48
  J-\_-L
49
49
  ---
50
- © 2010-2015 Jan Lelis, MIT license
50
+ © 2010-2017 Jan Lelis, MIT license
data/lib/pws.rb CHANGED
@@ -229,7 +229,7 @@ class PWS
229
229
  if File.file?(@filename)
230
230
  print %[Access password safe at #@filename | ]
231
231
  @password = password || ask_for_password(%[master password])
232
- encrypted_data = File.read(@filename)
232
+ encrypted_data = File.read(@filename, mode: "rb")
233
233
 
234
234
  @data = Format.read(
235
235
  encrypted_data,
@@ -253,7 +253,7 @@ class PWS
253
253
  format: @options[:out],
254
254
  iterations: @options[:iterations],
255
255
  )
256
- File.open(@filename, 'w'){ |f| f.write(encrypted_data) }
256
+ File.open(@filename, 'wb'){ |f| f.write(encrypted_data) }
257
257
  update_abbrevs!
258
258
  end
259
259
 
@@ -21,7 +21,7 @@ class PWS
21
21
  iv, encrypted_data = saved_data.unpack('a16 a*')
22
22
  PWS::Encryptor.decrypt(
23
23
  encrypted_data,
24
- key: sha(options[:password]),
24
+ key: sha(options[:password])[0...32],
25
25
  iv: iv,
26
26
  )
27
27
  end
@@ -41,7 +41,7 @@ class PWS
41
41
 
42
42
  encrypted_data = Encryptor.encrypt(
43
43
  unencrypted_data,
44
- key: encryption_key,
44
+ key: encryption_key[0...32],
45
45
  iv: iv,
46
46
  )
47
47
 
@@ -90,7 +90,7 @@ class PWS
90
90
  begin
91
91
  unencrypted_data = Encryptor.decrypt(
92
92
  encrypted_data,
93
- key: encryption_key,
93
+ key: encryption_key[0...32],
94
94
  iv: iv,
95
95
  )
96
96
  rescue OpenSSL::Cipher::CipherError
@@ -1,3 +1,3 @@
1
1
  class PWS
2
- VERSION = '1.0.6'
2
+ VERSION = '1.0.7'
3
3
  end
@@ -13,20 +13,16 @@ Gem::Specification.new do |s|
13
13
  s.summary = "pws is a CLI password safe."
14
14
  s.description = "pws is a command-line password safe. Please run `pws --help` for usage information."
15
15
  s.files = Dir.glob(%w[{lib,test}/**/*.rb bin/* [A-Z]*.{txt,rdoc} ext/**/*.{rb,c} features/**/*]) + %w{Rakefile pws.gemspec}
16
- s.extra_rdoc_files = ["README.md", "LICENSE.txt", "CHANGELOG.md"]
16
+ s.extra_rdoc_files = ["README.md", "MIT-LICENSE.txt", "CHANGELOG.md"]
17
17
  s.license = 'MIT'
18
18
  s.executables = ['pws']
19
- s.add_dependency 'clipboard', '~> 1.0.5'
19
+ s.add_dependency 'clipboard', '~> 1.1.1'
20
20
  s.add_dependency 'paint', '>= 0.8.7'
21
21
  s.add_dependency 'pbkdf2-ruby'
22
- s.add_development_dependency 'rake'
23
- s.add_development_dependency 'aruba'
24
- s.add_development_dependency 'cucumber'
25
- s.add_development_dependency 'rspec'
26
- s.add_development_dependency 'guard-cucumber'
27
- s.add_development_dependency 'guard-rspec'
28
- # s.add_development_dependency 'irbtools'
29
- # s.add_development_dependency 'byebug'
22
+ s.add_development_dependency 'rake', '< 13'
23
+ s.add_development_dependency 'aruba', '= 0.5.4'
24
+ s.add_development_dependency 'cucumber', '~> 2.4.0'
25
+ s.add_development_dependency 'rspec', '~> 2.99'
30
26
 
31
27
  len = s.homepage.size
32
28
  s.post_install_message = \
metadata CHANGED
@@ -1,154 +1,125 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pws
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Lelis
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-01 00:00:00.000000000 Z
11
+ date: 2017-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: clipboard
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: 1.0.5
20
- type: :runtime
18
+ version: 1.1.1
19
+ name: clipboard
21
20
  prerelease: false
21
+ type: :runtime
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.5
26
+ version: 1.1.1
27
27
  - !ruby/object:Gem::Dependency
28
- name: paint
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - ">="
32
31
  - !ruby/object:Gem::Version
33
32
  version: 0.8.7
34
- type: :runtime
33
+ name: paint
35
34
  prerelease: false
35
+ type: :runtime
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.8.7
41
41
  - !ruby/object:Gem::Dependency
42
- name: pbkdf2-ruby
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - ">="
46
45
  - !ruby/object:Gem::Version
47
46
  version: '0'
48
- type: :runtime
47
+ name: pbkdf2-ruby
49
48
  prerelease: false
49
+ type: :runtime
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
- - - ">="
58
+ - - "<"
60
59
  - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
60
+ version: '13'
61
+ name: rake
63
62
  prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: aruba
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
63
  type: :development
77
- prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - ">="
66
+ - - "<"
81
67
  - !ruby/object:Gem::Version
82
- version: '0'
68
+ version: '13'
83
69
  - !ruby/object:Gem::Dependency
84
- name: cucumber
85
70
  requirement: !ruby/object:Gem::Requirement
86
71
  requirements:
87
- - - ">="
72
+ - - '='
88
73
  - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
74
+ version: 0.5.4
75
+ name: aruba
91
76
  prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rspec
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
77
  type: :development
105
- prerelease: false
106
78
  version_requirements: !ruby/object:Gem::Requirement
107
79
  requirements:
108
- - - ">="
80
+ - - '='
109
81
  - !ruby/object:Gem::Version
110
- version: '0'
82
+ version: 0.5.4
111
83
  - !ruby/object:Gem::Dependency
112
- name: guard-cucumber
113
84
  requirement: !ruby/object:Gem::Requirement
114
85
  requirements:
115
- - - ">="
86
+ - - "~>"
116
87
  - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
88
+ version: 2.4.0
89
+ name: cucumber
119
90
  prerelease: false
91
+ type: :development
120
92
  version_requirements: !ruby/object:Gem::Requirement
121
93
  requirements:
122
- - - ">="
94
+ - - "~>"
123
95
  - !ruby/object:Gem::Version
124
- version: '0'
96
+ version: 2.4.0
125
97
  - !ruby/object:Gem::Dependency
126
- name: guard-rspec
127
98
  requirement: !ruby/object:Gem::Requirement
128
99
  requirements:
129
- - - ">="
100
+ - - "~>"
130
101
  - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :development
102
+ version: '2.99'
103
+ name: rspec
133
104
  prerelease: false
105
+ type: :development
134
106
  version_requirements: !ruby/object:Gem::Requirement
135
107
  requirements:
136
- - - ">="
108
+ - - "~>"
137
109
  - !ruby/object:Gem::Version
138
- version: '0'
139
- description: pws is a command-line password safe. Please run `pws --help` for usage
140
- information.
110
+ version: '2.99'
111
+ description: pws is a command-line password safe. Please run `pws --help` for usage information.
141
112
  email: mail@janlelis.de
142
113
  executables:
143
114
  - pws
144
115
  extensions: []
145
116
  extra_rdoc_files:
146
117
  - README.md
147
- - LICENSE.txt
118
+ - MIT-LICENSE.txt
148
119
  - CHANGELOG.md
149
120
  files:
150
121
  - CHANGELOG.md
151
- - LICENSE.txt
122
+ - MIT-LICENSE.txt
152
123
  - README.md
153
124
  - Rakefile
154
125
  - bin/pws
@@ -201,9 +172,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
201
172
  - !ruby/object:Gem::Version
202
173
  version: '0'
203
174
  requirements: []
204
- rubyforge_project:
205
- rubygems_version: 2.2.2
206
- signing_key:
175
+ rubyforge_project:
176
+ rubygems_version: 2.6.10
177
+ signing_key:
207
178
  specification_version: 4
208
179
  summary: pws is a CLI password safe.
209
180
  test_files: []