ptools 1.3.2 → 1.3.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 567b8c9e88bdaed3107c8248a607801686db5ef0
4
- data.tar.gz: d6ea99f75c65ec236c1606d856a729f9b26b1659
2
+ SHA256:
3
+ metadata.gz: 60d8a2d183abbb54bd0140d4681625c0c6d1aec1a4f03c0de4a63ef7e6b8625e
4
+ data.tar.gz: 8e850bf76e10e887dd089b15a580e63dae8b32f159a7120f4bd2a4700870101c
5
5
  SHA512:
6
- metadata.gz: 210ee8e720a6cf80f8136ff7fb951d24ec7c58880d666a12118e4bc7f85b9daeeba7892a71dbb56f46c81ebf36cb61da2d6d09604399073a1afb45b8f13d6441
7
- data.tar.gz: 3e1f8324bd844ade8ca6dffe4d3b5df19382db1243c27f3278594276365cf25373102f26e909eadb264b306cfcda070bf1e899ed9773eebfaa90f1b9f793aefc
6
+ metadata.gz: 22ed87d408f7f324838f3cd6a88428e28fcc5fcba6356c9c40117ec08be5fbc1dd6f36a1da75cfea6bd4d1ebc8d51bb219a8cff0435c326e89b704552c8464e5
7
+ data.tar.gz: a7a276fc8b777a95edd4ac38cc4637fcde6567f9e321f02bc2b3b094c56556034d465bc60c9f834fd696c3b0928b9c65130ce853275b6b977b4571ec95e20b38
Binary file
@@ -0,0 +1,2 @@
1
+ N�/U����$��0?.����PU�+���`8�pO�1���ޑa|�C�ҥ�O��SwX��t���7�칅�է���Z���6-�4���
2
+ �$ܕD���[�{t;x~���q�6�Pn��X��Т�m^�ȣ��M��^����(4��W�qEI0�?�WAc��C+�`*1�
data/CHANGES CHANGED
@@ -1,3 +1,32 @@
1
+ == 1.3.7 - 24-Jun-2020
2
+ * Fixed a bug where the File.binary? method would bomb on a zero byte file.
3
+ Thanks go to Alexandru Emil Lupu for the spot and patch.
4
+ * Remove Gemfile.lock from repo. You can generate that yourself locally if
5
+ you want.
6
+
7
+ == 1.3.6 - 7-Jun-2020
8
+ * Updated gemspec, added more versions to .travis.yml file, fixed typo.
9
+ Thanks go to Al Snow for the updates.
10
+ * Fixed a bug where the File.binary? method would return true for utf16
11
+ or utf32 encoded files. Thanks go to Andrew McAndre for the spot.
12
+ * Updated cert.
13
+
14
+ == 1.3.5 - 3-Sep-2017
15
+ * The File.image? method now checks against .ico files.
16
+ * Eliminated Fixnum warning that showed up in Ruby 2.4.x.
17
+ * Updated cert.
18
+
19
+ == 1.3.4 - 4-Jul-2017
20
+ * The File.binary? method now lets you set your own percentage for the
21
+ internal heuristic as an optional second argument.
22
+ * The VERSION constant is now frozen.
23
+ * Minor updates to the Rakefile and gemspec.
24
+ * Updated cert file.
25
+
26
+ == 1.3.3 - 25-Sep-2015
27
+ * This gem is now signed.
28
+ * The Rakefile tasks now assume Rubygems 2.x.
29
+
1
30
  == 1.3.2 - 11-Dec-2014
2
31
  * Update to the File.tail method that deals prevents potential line ending
3
32
  issues in JRuby.
data/MANIFEST CHANGED
@@ -1,8 +1,10 @@
1
1
  * CHANGES
2
2
  * README
3
3
  * MANIFEST
4
+ * Gemfile
4
5
  * Rakefile
5
6
  * ptools.gemspec
7
+ * certs/djberg96_pub.pem
6
8
  * lib/ptools.rb
7
9
  * test/test_constants.rb
8
10
  * test/test_head.rb
@@ -17,3 +19,4 @@
17
19
  * test/img/test.gif
18
20
  * test/img/test.jpg
19
21
  * test/img/test.png
22
+ * test/img/test.ico
data/README CHANGED
@@ -47,6 +47,8 @@
47
47
 
48
48
  Thanks go to Matt Hoyle for help with the File.tail method.
49
49
 
50
+ And thanks to any and all contributors!
51
+
50
52
  == Future Plans
51
53
  Add whatever other tools people think might be useful.
52
54
 
@@ -54,7 +56,7 @@
54
56
  Artistic 2.0
55
57
 
56
58
  == Copyright
57
- (C) 2003-2014 Daniel J. Berger
59
+ (C) 2003-2020 Daniel J. Berger
58
60
  All Rights Reserved.
59
61
 
60
62
  == Warranty
data/Rakefile CHANGED
@@ -8,22 +8,18 @@ CLEAN.include("**/*.gem", "**/*.rbc", "**/*coverage*")
8
8
 
9
9
  desc 'Install the ptools package (non-gem)'
10
10
  task :install do
11
- sitelibdir = CONFIG["sitelibdir"]
12
- file = "lib/ptools.rb"
13
- FileUtils.cp(file, sitelibdir, :verbose => true)
11
+ sitelibdir = CONFIG["sitelibdir"]
12
+ file = "lib/ptools.rb"
13
+ FileUtils.cp(file, sitelibdir, :verbose => true)
14
14
  end
15
15
 
16
16
  namespace 'gem' do
17
17
  desc 'Create the ptools gem'
18
18
  task :create => [:clean] do
19
- Dir["*.gem"].each{ |f| File.delete(f) } # Clean first
19
+ require 'rubygems/package'
20
20
  spec = eval(IO.read('ptools.gemspec'))
21
- if Gem::VERSION < "2.0.0"
22
- Gem::Builder.new(spec).build
23
- else
24
- require 'rubygems/package'
25
- Gem::Package.build(spec)
26
- end
21
+ spec.signing_key = File.join(Dir.home, '.ssh', 'gem-private_key.pem')
22
+ Gem::Package.build(spec, true)
27
23
  end
28
24
 
29
25
  desc 'Install the ptools gem'
@@ -0,0 +1,26 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MREwDwYDVQQDDAhkamJl
3
+ cmc5NjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
4
+ MB4XDTE4MDMxODE1MjIwN1oXDTI4MDMxNTE1MjIwN1owPzERMA8GA1UEAwwIZGpi
5
+ ZXJnOTYxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
6
+ bTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBALgfaroVM6CI06cxr0/h
7
+ A+j+pc8fgpRgBVmHFaFunq28GPC3IvW7Nvc3Y8SnAW7pP1EQIbhlwRIaQzJ93/yj
8
+ u95KpkP7tA9erypnV7dpzBkzNlX14ACaFD/6pHoXoe2ltBxk3CCyyzx70mTqJpph
9
+ 75IB03ni9a8yqn8pmse+s83bFJOAqddSj009sGPcQO+QOWiNxqYv1n5EHcvj2ebO
10
+ 6hN7YTmhx7aSia4qL/quc4DlIaGMWoAhvML7u1fmo53CYxkKskfN8MOecq2vfEmL
11
+ iLu+SsVVEAufMDDFMXMJlvDsviolUSGMSNRTujkyCcJoXKYYxZSNtIiyd9etI0X3
12
+ ctu0uhrFyrMZXCedutvXNjUolD5r9KGBFSWH1R9u2I3n3SAyFF2yzv/7idQHLJJq
13
+ 74BMnx0FIq6fCpu5slAipvxZ3ZkZpEXZFr3cIBtO1gFvQWW7E/Y3ijliWJS1GQFq
14
+ 058qERadHGu1yu1dojmFRo6W2KZvY9al2yIlbkpDrD5MYQIDAQABo3cwdTAJBgNV
15
+ HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUFZsMapgzJimzsbaBG2Tm8j5e
16
+ AzgwHQYDVR0RBBYwFIESZGpiZXJnOTZAZ21haWwuY29tMB0GA1UdEgQWMBSBEmRq
17
+ YmVyZzk2QGdtYWlsLmNvbTANBgkqhkiG9w0BAQsFAAOCAYEAW2tnYixXQtKxgGXq
18
+ /3iSWG2bLwvxS4go3srO+aRXZHrFUMlJ5W0mCxl03aazxxKTsVVpZD8QZxvK91OQ
19
+ h9zr9JBYqCLcCVbr8SkmYCi/laxIZxsNE5YI8cC8vvlLI7AMgSfPSnn/Epq1GjGY
20
+ 6L1iRcEDtanGCIvjqlCXO9+BmsnCfEVehqZkQHeYczA03tpOWb6pon2wzvMKSsKH
21
+ ks0ApVdstSLz1kzzAqem/uHdG9FyXdbTAwH1G4ZPv69sQAFAOCgAqYmdnzedsQtE
22
+ 1LQfaQrx0twO+CZJPcRLEESjq8ScQxWRRkfuh2VeR7cEU7L7KqT10mtUwrvw7APf
23
+ DYoeCY9KyjIBjQXfbj2ke5u1hZj94Fsq9FfbEQg8ygCgwThnmkTrrKEiMSs3alYR
24
+ ORVCZpRuCPpmC8qmqxUnARDArzucjaclkxjLWvCVHeFa9UP7K3Nl9oTjJNv+7/jM
25
+ WZs4eecIcUc4tKdHxcAJ0MO/Dkqq7hGaiHpwKY76wQ1+8xAh
26
+ -----END CERTIFICATE-----
@@ -3,7 +3,7 @@ require 'win32/file' if File::ALT_SEPARATOR
3
3
 
4
4
  class File
5
5
  # The version of the ptools library.
6
- PTOOLS_VERSION = '1.3.2'
6
+ PTOOLS_VERSION = '1.3.7'.freeze
7
7
 
8
8
  # :stopdoc:
9
9
 
@@ -23,8 +23,8 @@ class File
23
23
 
24
24
  # :startdoc:
25
25
 
26
- # Returns whether or not the file is an image. Only JPEG, PNG, BMP and
27
- # GIF are checked against.
26
+ # Returns whether or not the file is an image. Only JPEG, PNG, BMP,
27
+ # GIF, and ICO are checked against.
28
28
  #
29
29
  # This method does some simple read and extension checks. For a version
30
30
  # that is more robust, but which depends on a 3rd party C library (and is
@@ -39,8 +39,8 @@ class File
39
39
  # http://en.wikipedia.org/wiki/Magic_number_(programming)
40
40
  #
41
41
  def self.image?(file)
42
- bool = IMAGE_EXT.include?(File.extname(file).downcase) # Match ext
43
- bool = bmp?(file) || jpg?(file) || png?(file) || gif?(file) || tiff?(file) # Check data
42
+ bool = IMAGE_EXT.include?(File.extname(file).downcase)
43
+ bool = bmp?(file) || jpg?(file) || png?(file) || gif?(file) || tiff?(file) || ico?(file)
44
44
  bool
45
45
  end
46
46
 
@@ -79,6 +79,10 @@ class File
79
79
  # It performs a "best guess" based on a simple test of the first
80
80
  # +File.blksize+ characters, or 4096, whichever is smaller.
81
81
  #
82
+ # By default it will check to see if more than 30 percent of the characters
83
+ # are non-text characters. If so, the method returns true. You can configure
84
+ # this percentage by passing your own as a second argument.
85
+ #
82
86
  # Example:
83
87
  #
84
88
  # File.binary?('somefile.exe') # => true
@@ -87,13 +91,15 @@ class File
87
91
  # Based on code originally provided by Ryan Davis (which, in turn, is
88
92
  # based on Perl's -B switch).
89
93
  #
90
- def self.binary?(file)
94
+ def self.binary?(file, percentage = 0.30)
95
+ return false if File.stat(file).zero?
91
96
  return false if image?(file)
97
+ return false if check_bom?(file)
92
98
  bytes = File.stat(file).blksize
93
99
  bytes = 4096 if bytes > 4096
94
100
  s = (File.read(file, bytes) || "")
95
101
  s = s.encode('US-ASCII', :undef => :replace).split(//)
96
- ((s.size - s.grep(" ".."~").size) / s.size.to_f) > 0.30
102
+ ((s.size - s.grep(" ".."~").size) / s.size.to_f) > percentage
97
103
  end
98
104
 
99
105
  # Looks for the first occurrence of +program+ within +path+.
@@ -428,6 +434,20 @@ class File
428
434
 
429
435
  private
430
436
 
437
+ # Returns whether or not the given +text+ contains a BOM marker.
438
+ # If present, we can generally assume it's a text file.
439
+ #
440
+ def self.check_bom?(file)
441
+ text = File.read(file, 4).force_encoding('utf-8')
442
+
443
+ bool = false
444
+ bool = true if text[0,3] == "\xEF\xBB\xBF"
445
+ bool = true if text[0,4] == "\x00\x00\xFE\xFF" || text[0,4] == "\xFF\xFE\x00\x00"
446
+ bool = true if text[0,2] == "\xFF\xFE" || text[0,2] == "\xFE\xFF"
447
+
448
+ bool
449
+ end
450
+
431
451
  def self.nl_for_platform(platform)
432
452
  platform = RbConfig::CONFIG["host_os"] if platform == 'local'
433
453
 
@@ -479,4 +499,8 @@ class File
479
499
 
480
500
  true
481
501
  end
502
+
503
+ def self.ico?(file)
504
+ ["\000\000\001\000", "\000\000\002\000"].include?(IO.read(file, 4, nil, :encoding => 'binary'))
505
+ end
482
506
  end
@@ -1,30 +1,30 @@
1
- require 'rubygems'
2
1
  require 'rbconfig'
3
2
 
4
- Gem::Specification.new do |gem|
5
- gem.name = 'ptools'
6
- gem.version = '1.3.2'
7
- gem.license = 'Artistic 2.0'
8
- gem.author = 'Daniel J. Berger'
9
- gem.email = 'djberg96@gmail.com'
10
- gem.homepage = 'https://github.com/djberg96/ptools'
11
- gem.summary = 'Extra methods for the File class'
12
- gem.test_files = Dir['test/test*']
13
- gem.files = Dir['**/*'] << '.gemtest'
3
+ Gem::Specification.new do |spec|
4
+ spec.name = 'ptools'
5
+ spec.version = '1.3.7'
6
+ spec.license = 'Artistic-2.0'
7
+ spec.author = 'Daniel J. Berger'
8
+ spec.email = 'djberg96@gmail.com'
9
+ spec.homepage = 'https://github.com/djberg96/ptools'
10
+ spec.summary = 'Extra methods for the File class'
11
+ spec.test_files = Dir['test/test*']
12
+ spec.files = Dir['**/*'].reject{ |f| f.include?('git') }
13
+ spec.cert_chain = ['certs/djberg96_pub.pem']
14
14
 
15
- gem.extra_rdoc_files = ['README', 'CHANGES', 'MANIFEST']
15
+ spec.extra_rdoc_files = ['README', 'CHANGES', 'MANIFEST']
16
16
 
17
- gem.description = <<-EOF
17
+ spec.description = <<-EOF
18
18
  The ptools (power tools) library provides several handy methods to
19
19
  Ruby's core File class, such as File.which for finding executables,
20
20
  File.null to return the null device on your platform, and so on.
21
21
  EOF
22
22
 
23
- gem.add_development_dependency('rake')
24
- gem.add_development_dependency('test-unit', '>= 2.5.0')
23
+ spec.add_development_dependency('rake')
24
+ spec.add_development_dependency('test-unit')
25
25
 
26
26
  if File::ALT_SEPARATOR
27
- gem.platform = Gem::Platform.new(['universal', 'mingw32'])
28
- gem.add_dependency('win32-file', '>= 0.7.0')
27
+ spec.platform = Gem::Platform.new(['universal', 'mingw32'])
28
+ spec.add_dependency('win32-file')
29
29
  end
30
30
  end
Binary file
@@ -21,7 +21,9 @@ class TC_Ptools_Binary < Test::Unit::TestCase
21
21
 
22
22
  def setup
23
23
  @txt_file = File.join(@@dirname, 'txt', 'english.txt')
24
+ @emp_file = File.join(@@dirname, 'txt', 'empty.txt')
24
25
  @uni_file = File.join(@@dirname, 'txt', 'korean.txt')
26
+ @utf_file = File.join(@@dirname, 'txt', 'english.utf16')
25
27
  @png_file = File.join(@@dirname, 'img', 'test.png')
26
28
  @jpg_file = File.join(@@dirname, 'img', 'test.jpg')
27
29
  @gif_file = File.join(@@dirname, 'img', 'test.gif')
@@ -37,8 +39,10 @@ class TC_Ptools_Binary < Test::Unit::TestCase
37
39
  end
38
40
 
39
41
  test "File.binary? returns false for text files" do
42
+ assert_false(File.binary?(@emp_file))
40
43
  assert_false(File.binary?(@txt_file))
41
44
  assert_false(File.binary?(@uni_file))
45
+ assert_false(File.binary?(@utf_file))
42
46
  end
43
47
 
44
48
  test "File.binary? returns false for image files" do
@@ -47,6 +51,11 @@ class TC_Ptools_Binary < Test::Unit::TestCase
47
51
  assert_false(File.binary?(@gif_file))
48
52
  end
49
53
 
54
+ test "File.binary? accepts an optional percentage argument" do
55
+ assert_false(File.binary?(@txt_file, 0.50))
56
+ assert_true(File.binary?(@txt_file, 0.05))
57
+ end
58
+
50
59
  test "File.binary? raises an error if the file cannot be found" do
51
60
  assert_raise_kind_of(SystemCallError){ File.binary?('bogus') }
52
61
  end
@@ -15,7 +15,8 @@ class TC_Ptools_Constants < Test::Unit::TestCase
15
15
  end
16
16
 
17
17
  test "PTOOLS_VERSION constant is set to expected value" do
18
- assert_equal('1.3.2', File::PTOOLS_VERSION)
18
+ assert_equal('1.3.7', File::PTOOLS_VERSION)
19
+ assert_true(File::PTOOLS_VERSION.frozen?)
19
20
  end
20
21
 
21
22
  test "IMAGE_EXT constant is set to array of values" do
@@ -27,7 +28,7 @@ class TC_Ptools_Constants < Test::Unit::TestCase
27
28
  assert_not_nil(File::MSWINDOWS)
28
29
  end
29
30
 
30
- test "WIN32EXTS constant is defiend on MS Windows" do
31
+ test "WIN32EXTS constant is defined on MS Windows" do
31
32
  omit_unless(@@windows, "Skipping on Unix systems")
32
33
  assert_not_nil(File::WIN32EXTS)
33
34
  end
@@ -18,6 +18,7 @@ class TC_Ptools_Image < Test::Unit::TestCase
18
18
  @jpg_file = File.join(Dir.pwd, 'img', 'test.jpg')
19
19
  @png_file = File.join(Dir.pwd, 'img', 'test.png')
20
20
  @gif_file = File.join(Dir.pwd, 'img', 'test.gif')
21
+ @ico_file = File.join(Dir.pwd, 'img', 'test.ico')
21
22
  end
22
23
 
23
24
  test "image? method basic functionality" do
@@ -43,6 +44,10 @@ class TC_Ptools_Image < Test::Unit::TestCase
43
44
  assert_true(File.image?(@png_file))
44
45
  end
45
46
 
47
+ test "image? method returns true for an ico" do
48
+ assert_true(File.image?(@ico_file))
49
+ end
50
+
46
51
  test "image? method raises an error if the file does not exist" do
47
52
  assert_raises(Errno::ENOENT, ArgumentError){ File.image?('bogus') }
48
53
  end
File without changes
Binary file
metadata CHANGED
@@ -1,14 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ptools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.2
4
+ version: 1.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel J. Berger
8
8
  autorequire:
9
9
  bindir: bin
10
- cert_chain: []
11
- date: 2014-12-11 00:00:00.000000000 Z
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MREwDwYDVQQDDAhkamJl
14
+ cmc5NjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
15
+ MB4XDTE4MDMxODE1MjIwN1oXDTI4MDMxNTE1MjIwN1owPzERMA8GA1UEAwwIZGpi
16
+ ZXJnOTYxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
17
+ bTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBALgfaroVM6CI06cxr0/h
18
+ A+j+pc8fgpRgBVmHFaFunq28GPC3IvW7Nvc3Y8SnAW7pP1EQIbhlwRIaQzJ93/yj
19
+ u95KpkP7tA9erypnV7dpzBkzNlX14ACaFD/6pHoXoe2ltBxk3CCyyzx70mTqJpph
20
+ 75IB03ni9a8yqn8pmse+s83bFJOAqddSj009sGPcQO+QOWiNxqYv1n5EHcvj2ebO
21
+ 6hN7YTmhx7aSia4qL/quc4DlIaGMWoAhvML7u1fmo53CYxkKskfN8MOecq2vfEmL
22
+ iLu+SsVVEAufMDDFMXMJlvDsviolUSGMSNRTujkyCcJoXKYYxZSNtIiyd9etI0X3
23
+ ctu0uhrFyrMZXCedutvXNjUolD5r9KGBFSWH1R9u2I3n3SAyFF2yzv/7idQHLJJq
24
+ 74BMnx0FIq6fCpu5slAipvxZ3ZkZpEXZFr3cIBtO1gFvQWW7E/Y3ijliWJS1GQFq
25
+ 058qERadHGu1yu1dojmFRo6W2KZvY9al2yIlbkpDrD5MYQIDAQABo3cwdTAJBgNV
26
+ HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUFZsMapgzJimzsbaBG2Tm8j5e
27
+ AzgwHQYDVR0RBBYwFIESZGpiZXJnOTZAZ21haWwuY29tMB0GA1UdEgQWMBSBEmRq
28
+ YmVyZzk2QGdtYWlsLmNvbTANBgkqhkiG9w0BAQsFAAOCAYEAW2tnYixXQtKxgGXq
29
+ /3iSWG2bLwvxS4go3srO+aRXZHrFUMlJ5W0mCxl03aazxxKTsVVpZD8QZxvK91OQ
30
+ h9zr9JBYqCLcCVbr8SkmYCi/laxIZxsNE5YI8cC8vvlLI7AMgSfPSnn/Epq1GjGY
31
+ 6L1iRcEDtanGCIvjqlCXO9+BmsnCfEVehqZkQHeYczA03tpOWb6pon2wzvMKSsKH
32
+ ks0ApVdstSLz1kzzAqem/uHdG9FyXdbTAwH1G4ZPv69sQAFAOCgAqYmdnzedsQtE
33
+ 1LQfaQrx0twO+CZJPcRLEESjq8ScQxWRRkfuh2VeR7cEU7L7KqT10mtUwrvw7APf
34
+ DYoeCY9KyjIBjQXfbj2ke5u1hZj94Fsq9FfbEQg8ygCgwThnmkTrrKEiMSs3alYR
35
+ ORVCZpRuCPpmC8qmqxUnARDArzucjaclkxjLWvCVHeFa9UP7K3Nl9oTjJNv+7/jM
36
+ WZs4eecIcUc4tKdHxcAJ0MO/Dkqq7hGaiHpwKY76wQ1+8xAh
37
+ -----END CERTIFICATE-----
38
+ date:
12
39
  dependencies:
13
40
  - !ruby/object:Gem::Dependency
14
41
  name: rake
@@ -30,14 +57,14 @@ dependencies:
30
57
  requirements:
31
58
  - - ">="
32
59
  - !ruby/object:Gem::Version
33
- version: 2.5.0
60
+ version: '0'
34
61
  type: :development
35
62
  prerelease: false
36
63
  version_requirements: !ruby/object:Gem::Requirement
37
64
  requirements:
38
65
  - - ">="
39
66
  - !ruby/object:Gem::Version
40
- version: 2.5.0
67
+ version: '0'
41
68
  description: |2
42
69
  The ptools (power tools) library provides several handy methods to
43
70
  Ruby's core File class, such as File.which for finding executables,
@@ -50,34 +77,42 @@ extra_rdoc_files:
50
77
  - CHANGES
51
78
  - MANIFEST
52
79
  files:
53
- - ".gemtest"
54
- - CHANGES
55
- - Gemfile
56
- - MANIFEST
57
- - README
58
- - Rakefile
59
- - lib/ptools.rb
60
- - ptools.gemspec
80
+ - test
81
+ - test/test_constants.rb
82
+ - test/txt
83
+ - test/txt/empty.txt
84
+ - test/txt/english.utf16
85
+ - test/txt/english.txt
86
+ - test/txt/korean.txt
87
+ - test/test_head.rb
88
+ - test/test_binary.rb
89
+ - test/img
61
90
  - test/img/test.gif
91
+ - test/img/test.ico
62
92
  - test/img/test.jpg
63
93
  - test/img/test.png
64
- - test/test_binary.rb
65
- - test/test_constants.rb
66
- - test/test_head.rb
67
94
  - test/test_image.rb
68
- - test/test_is_sparse.rb
69
- - test/test_nlconvert.rb
70
95
  - test/test_null.rb
96
+ - test/test_which.rb
71
97
  - test/test_tail.rb
98
+ - test/test_is_sparse.rb
99
+ - test/test_nlconvert.rb
100
+ - test/test_whereis.rb
72
101
  - test/test_touch.rb
73
102
  - test/test_wc.rb
74
- - test/test_whereis.rb
75
- - test/test_which.rb
76
- - test/txt/english.txt
77
- - test/txt/korean.txt
103
+ - CHANGES
104
+ - MANIFEST
105
+ - README
106
+ - ptools.gemspec
107
+ - Rakefile
108
+ - certs
109
+ - certs/djberg96_pub.pem
110
+ - lib
111
+ - lib/ptools.rb
112
+ - Gemfile
78
113
  homepage: https://github.com/djberg96/ptools
79
114
  licenses:
80
- - Artistic 2.0
115
+ - Artistic-2.0
81
116
  metadata: {}
82
117
  post_install_message:
83
118
  rdoc_options: []
@@ -94,21 +129,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
129
  - !ruby/object:Gem::Version
95
130
  version: '0'
96
131
  requirements: []
97
- rubyforge_project:
98
- rubygems_version: 2.4.5
132
+ rubygems_version: 3.0.3
99
133
  signing_key:
100
134
  specification_version: 4
101
135
  summary: Extra methods for the File class
102
136
  test_files:
103
- - test/test_nlconvert.rb
104
- - test/test_wc.rb
137
+ - test/test_constants.rb
105
138
  - test/test_head.rb
139
+ - test/test_binary.rb
140
+ - test/test_image.rb
106
141
  - test/test_null.rb
142
+ - test/test_which.rb
143
+ - test/test_tail.rb
107
144
  - test/test_is_sparse.rb
145
+ - test/test_nlconvert.rb
108
146
  - test/test_whereis.rb
109
- - test/test_binary.rb
110
147
  - test/test_touch.rb
111
- - test/test_tail.rb
112
- - test/test_constants.rb
113
- - test/test_image.rb
114
- - test/test_which.rb
148
+ - test/test_wc.rb
Binary file