rubysl-find 2.0.0 → 2.0.1

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
2
  SHA1:
3
- metadata.gz: cf2a227cc5643e7a95d850d9abec8f35f737aff3
4
- data.tar.gz: 9198cf07d5d1287c3245bf2ff9a616776fe99375
3
+ metadata.gz: a8ffdd90f6209b685421aa328e311704f66fc5ce
4
+ data.tar.gz: 30b7868defe307cc98b629eeb0e8751fead76910
5
5
  SHA512:
6
- metadata.gz: 8bf789232ee31993532da8646e8859ad184d6d15a16e2e74344fa6f7301e12d0e5eed70e3f8e84c529f778fbb578fe37de3c899d3d18661c876d6fa17a478c6e
7
- data.tar.gz: f56b6bea0ad59a8b207deb2f1053172932f4db9a577da41a1552dd45abc9529072c27c87371a61c506c72677254779bcc320ecd9933fd9ccbd1244083320285d
6
+ metadata.gz: b7304f623a335f4b1e1972db1fc699c0a6de8023e37ffda8df55f41e5397e576b7962f31ee743c36254f50dc375b0c2fabbbb3cee31be8dafa66029265f241da
7
+ data.tar.gz: f53044e55c6864ee613e4c54f8e064c66a8d4762347066779d037df994ce8500c9b798964038c2bcf3d6b868fe5276a8b4d5ae8ab325c949926e64ef4e1d29b8
@@ -1,7 +1,14 @@
1
1
  language: ruby
2
2
  env:
3
3
  - RUBYLIB=lib
4
- script: bundle exec mspec
4
+ - RUBYLIB=
5
+ script: mspec spec
5
6
  rvm:
6
- - 1.9.3
7
- - rbx-nightly-19mode
7
+ - 2.0.0
8
+ - rbx-2.1.1
9
+ matrix:
10
+ exclude:
11
+ - rvm: 2.0.0
12
+ env: RUBYLIB=lib
13
+ - rvm: rbx-2.1.1
14
+ env: RUBYLIB=
@@ -37,30 +37,36 @@ module Find
37
37
  def find(*paths) # :yield: path
38
38
  block_given? or return enum_for(__method__, *paths)
39
39
 
40
- paths.collect!{|d| raise Errno::ENOENT unless File.exist?(d); d.dup}
41
- while file = paths.shift
42
- catch(:prune) do
43
- yield file.dup.taint
44
- begin
45
- s = File.lstat(file)
46
- rescue Errno::ENOENT, Errno::EACCES, Errno::ENOTDIR, Errno::ELOOP, Errno::ENAMETOOLONG
47
- next
48
- end
49
- if s.directory? then
40
+ fs_encoding = Encoding.find("filesystem")
41
+
42
+ paths.collect!{|d| raise Errno::ENOENT unless File.exist?(d); d.dup}.each do |path|
43
+ enc = path.encoding == Encoding::US_ASCII ? fs_encoding : path.encoding
44
+ ps = [path]
45
+ while file = ps.shift
46
+ catch(:prune) do
47
+ yield file.dup.taint
50
48
  begin
51
- fs = Dir.entries(file)
49
+ s = File.lstat(file)
52
50
  rescue Errno::ENOENT, Errno::EACCES, Errno::ENOTDIR, Errno::ELOOP, Errno::ENAMETOOLONG
53
51
  next
54
52
  end
55
- fs.sort!
56
- fs.reverse_each {|f|
57
- next if f == "." or f == ".."
58
- f = File.join(file, f)
59
- paths.unshift f.untaint
60
- }
53
+ if s.directory? then
54
+ begin
55
+ fs = Dir.entries(file, encoding: enc)
56
+ rescue Errno::ENOENT, Errno::EACCES, Errno::ENOTDIR, Errno::ELOOP, Errno::ENAMETOOLONG
57
+ next
58
+ end
59
+ fs.sort!
60
+ fs.reverse_each {|f|
61
+ next if f == "." or f == ".."
62
+ f = File.join(file, f)
63
+ ps.unshift f.untaint
64
+ }
65
+ end
61
66
  end
62
67
  end
63
68
  end
69
+ nil
64
70
  end
65
71
 
66
72
  #
@@ -1,5 +1,5 @@
1
1
  module RubySL
2
2
  module Find
3
- VERSION = "2.0.0"
3
+ VERSION = "2.0.1"
4
4
  end
5
5
  end
@@ -16,7 +16,10 @@ Gem::Specification.new do |spec|
16
16
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
17
17
  spec.require_paths = ["lib"]
18
18
 
19
+ spec.required_ruby_version = "~> 2.0"
20
+
19
21
  spec.add_development_dependency "bundler", "~> 1.3"
20
22
  spec.add_development_dependency "rake", "~> 10.0"
21
23
  spec.add_development_dependency "mspec", "~> 1.5"
22
- end
24
+ spec.add_development_dependency "rubysl-prettyprint", "~> 2.0"
25
+ end
metadata CHANGED
@@ -1,57 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubysl-find
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Shirai
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-03 00:00:00.000000000 Z
11
+ date: 2013-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '10.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: mspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '1.5'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.5'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rubysl-prettyprint
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.0'
55
69
  description: Ruby standard library find.
56
70
  email:
57
71
  - brixen@gmail.com
@@ -59,8 +73,8 @@ executables: []
59
73
  extensions: []
60
74
  extra_rdoc_files: []
61
75
  files:
62
- - .gitignore
63
- - .travis.yml
76
+ - ".gitignore"
77
+ - ".travis.yml"
64
78
  - Gemfile
65
79
  - LICENSE
66
80
  - README.md
@@ -80,12 +94,12 @@ require_paths:
80
94
  - lib
81
95
  required_ruby_version: !ruby/object:Gem::Requirement
82
96
  requirements:
83
- - - '>='
97
+ - - "~>"
84
98
  - !ruby/object:Gem::Version
85
- version: '0'
99
+ version: '2.0'
86
100
  required_rubygems_version: !ruby/object:Gem::Requirement
87
101
  requirements:
88
- - - '>='
102
+ - - ">="
89
103
  - !ruby/object:Gem::Version
90
104
  version: '0'
91
105
  requirements: []
@@ -95,3 +109,4 @@ signing_key:
95
109
  specification_version: 4
96
110
  summary: Ruby standard library find.
97
111
  test_files: []
112
+ has_rdoc: