pathname2 1.7.2-universal-mingw32 → 1.8.4-universal-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- checksums.yaml.gz.sig +3 -0
- data.tar.gz.sig +0 -0
- data/{CHANGES → CHANGES.md} +181 -148
- data/Gemfile +3 -0
- data/LICENSE +177 -0
- data/{MANIFEST → MANIFEST.md} +41 -38
- data/README.md +98 -0
- data/Rakefile +5 -8
- data/benchmarks/bench_pathname.rb +99 -99
- data/certs/djberg96_pub.pem +26 -0
- data/lib/pathname2.rb +1147 -1140
- data/pathname2.gemspec +44 -36
- data/test/test_pathname.rb +486 -484
- data/test/test_version.rb +17 -13
- data/test/windows/test_facade.rb +5 -5
- metadata +65 -25
- metadata.gz.sig +0 -0
- data/README +0 -98
data/test/test_version.rb
CHANGED
@@ -1,13 +1,17 @@
|
|
1
|
-
########################################################################
|
2
|
-
# test_version.rb
|
3
|
-
#
|
4
|
-
# Universal test file that tests for the proper version number.
|
5
|
-
########################################################################
|
6
|
-
require 'pathname2'
|
7
|
-
require 'test-unit'
|
8
|
-
|
9
|
-
class TC_Pathname_Version < Test::Unit::TestCase
|
10
|
-
test "version is set to expected value" do
|
11
|
-
assert_equal('1.
|
12
|
-
end
|
13
|
-
|
1
|
+
########################################################################
|
2
|
+
# test_version.rb
|
3
|
+
#
|
4
|
+
# Universal test file that tests for the proper version number.
|
5
|
+
########################################################################
|
6
|
+
require 'pathname2'
|
7
|
+
require 'test-unit'
|
8
|
+
|
9
|
+
class TC_Pathname_Version < Test::Unit::TestCase
|
10
|
+
test "version is set to expected value" do
|
11
|
+
assert_equal('1.8.4', Pathname::VERSION)
|
12
|
+
end
|
13
|
+
|
14
|
+
test "version is frozen" do
|
15
|
+
assert_true(Pathname::VERSION.frozen?)
|
16
|
+
end
|
17
|
+
end
|
data/test/windows/test_facade.rb
CHANGED
@@ -51,11 +51,11 @@ class TC_Pathname_Facade < Test::Unit::TestCase
|
|
51
51
|
assert_respond_to(@path, :sysopen)
|
52
52
|
end
|
53
53
|
|
54
|
-
test "
|
55
|
-
assert_respond_to(@path, :
|
56
|
-
assert_nothing_raised{ @path.
|
57
|
-
assert_true(Pathname.new("C:\\").
|
58
|
-
assert_false(Pathname.new("X:\\foo\\bar\\baz").
|
54
|
+
test "exist? facade works as expected" do
|
55
|
+
assert_respond_to(@path, :exist?)
|
56
|
+
assert_nothing_raised{ @path.exist? }
|
57
|
+
assert_true(Pathname.new("C:\\").exist?)
|
58
|
+
assert_false(Pathname.new("X:\\foo\\bar\\baz").exist?)
|
59
59
|
end
|
60
60
|
|
61
61
|
def teardown
|
metadata
CHANGED
@@ -1,69 +1,96 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pathname2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.4
|
5
5
|
platform: universal-mingw32
|
6
6
|
authors:
|
7
7
|
- Daniel J. Berger
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
|
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: facade
|
15
42
|
requirement: !ruby/object:Gem::Requirement
|
16
43
|
requirements:
|
17
|
-
- -
|
44
|
+
- - ">="
|
18
45
|
- !ruby/object:Gem::Version
|
19
46
|
version: '0'
|
20
47
|
type: :runtime
|
21
48
|
prerelease: false
|
22
49
|
version_requirements: !ruby/object:Gem::Requirement
|
23
50
|
requirements:
|
24
|
-
- -
|
51
|
+
- - ">="
|
25
52
|
- !ruby/object:Gem::Version
|
26
53
|
version: '0'
|
27
54
|
- !ruby/object:Gem::Dependency
|
28
55
|
name: test-unit
|
29
56
|
requirement: !ruby/object:Gem::Requirement
|
30
57
|
requirements:
|
31
|
-
- -
|
58
|
+
- - ">="
|
32
59
|
- !ruby/object:Gem::Version
|
33
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
67
|
version: '0'
|
41
68
|
- !ruby/object:Gem::Dependency
|
42
69
|
name: rake
|
43
70
|
requirement: !ruby/object:Gem::Requirement
|
44
71
|
requirements:
|
45
|
-
- -
|
72
|
+
- - ">="
|
46
73
|
- !ruby/object:Gem::Version
|
47
74
|
version: '0'
|
48
75
|
type: :development
|
49
76
|
prerelease: false
|
50
77
|
version_requirements: !ruby/object:Gem::Requirement
|
51
78
|
requirements:
|
52
|
-
- -
|
79
|
+
- - ">="
|
53
80
|
- !ruby/object:Gem::Version
|
54
81
|
version: '0'
|
55
82
|
- !ruby/object:Gem::Dependency
|
56
83
|
name: ffi
|
57
84
|
requirement: !ruby/object:Gem::Requirement
|
58
85
|
requirements:
|
59
|
-
- -
|
86
|
+
- - ">="
|
60
87
|
- !ruby/object:Gem::Version
|
61
88
|
version: '0'
|
62
89
|
type: :runtime
|
63
90
|
prerelease: false
|
64
91
|
version_requirements: !ruby/object:Gem::Requirement
|
65
92
|
requirements:
|
66
|
-
- -
|
93
|
+
- - ">="
|
67
94
|
- !ruby/object:Gem::Version
|
68
95
|
version: '0'
|
69
96
|
description: |2
|
@@ -77,22 +104,30 @@ description: |2
|
|
77
104
|
email: djberg96@gmail.com
|
78
105
|
executables: []
|
79
106
|
extensions: []
|
80
|
-
extra_rdoc_files:
|
81
|
-
- README
|
82
|
-
- CHANGES
|
83
|
-
- MANIFEST
|
107
|
+
extra_rdoc_files: []
|
84
108
|
files:
|
85
|
-
-
|
86
|
-
- MANIFEST
|
87
|
-
- README
|
88
|
-
- Rakefile
|
109
|
+
- benchmarks
|
89
110
|
- benchmarks/bench_pathname.rb
|
90
111
|
- benchmarks/bench_plus.rb
|
112
|
+
- certs
|
113
|
+
- certs/djberg96_pub.pem
|
114
|
+
- CHANGES.md
|
115
|
+
- examples
|
91
116
|
- examples/example_pathname.rb
|
117
|
+
- Gemfile
|
118
|
+
- lib
|
92
119
|
- lib/pathname2.rb
|
120
|
+
- LICENSE
|
121
|
+
- MANIFEST.md
|
93
122
|
- pathname2.gemspec
|
123
|
+
- Rakefile
|
124
|
+
- README.md
|
125
|
+
- spec
|
126
|
+
- spec/unix
|
127
|
+
- test
|
94
128
|
- test/test_pathname.rb
|
95
129
|
- test/test_version.rb
|
130
|
+
- test/windows
|
96
131
|
- test/windows/test_append.rb
|
97
132
|
- test/windows/test_aref.rb
|
98
133
|
- test/windows/test_ascend.rb
|
@@ -123,25 +158,30 @@ files:
|
|
123
158
|
- test/windows/test_undecorate_bang.rb
|
124
159
|
homepage: https://github.com/djberg96/pathname2
|
125
160
|
licenses:
|
126
|
-
-
|
127
|
-
metadata:
|
161
|
+
- Apache-2.0
|
162
|
+
metadata:
|
163
|
+
homepage_uri: https://github.com/djberg96/pathname2
|
164
|
+
bug_tracker_uri: https://github.com/djberg96/pathname2/issues
|
165
|
+
changelog_uri: https://github.com/djberg96/pathname2/blob/ffi/CHANGES.md
|
166
|
+
documentation_uri: https://github.com/djberg96/pathname2/wiki
|
167
|
+
source_code_uri: https://github.com/djberg96/pathname2
|
168
|
+
wiki_uri: https://github.com/djberg96/pathname2/wiki
|
128
169
|
post_install_message:
|
129
170
|
rdoc_options: []
|
130
171
|
require_paths:
|
131
172
|
- lib
|
132
173
|
required_ruby_version: !ruby/object:Gem::Requirement
|
133
174
|
requirements:
|
134
|
-
- -
|
175
|
+
- - ">="
|
135
176
|
- !ruby/object:Gem::Version
|
136
177
|
version: '0'
|
137
178
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
138
179
|
requirements:
|
139
|
-
- -
|
180
|
+
- - ">="
|
140
181
|
- !ruby/object:Gem::Version
|
141
182
|
version: '0'
|
142
183
|
requirements: []
|
143
|
-
|
144
|
-
rubygems_version: 2.2.2
|
184
|
+
rubygems_version: 3.0.3
|
145
185
|
signing_key:
|
146
186
|
specification_version: 4
|
147
187
|
summary: An alternate implementation of the Pathname class
|
metadata.gz.sig
ADDED
Binary file
|
data/README
DELETED
@@ -1,98 +0,0 @@
|
|
1
|
-
== Description
|
2
|
-
A drop-in replacement for the current Pathname class.
|
3
|
-
|
4
|
-
== Prerequisites
|
5
|
-
* facade
|
6
|
-
* ffi (Windows only)
|
7
|
-
* test-unit (testing only)
|
8
|
-
|
9
|
-
== Installation
|
10
|
-
|
11
|
-
gem install pathname2
|
12
|
-
|
13
|
-
== Synopsis
|
14
|
-
require 'pathname2'
|
15
|
-
|
16
|
-
# Unix
|
17
|
-
path1 = Pathname.new("/foo/bar/baz")
|
18
|
-
path2 = Pathname.new("../zap")
|
19
|
-
|
20
|
-
path1 + path2 # "/foo/bar/zap"
|
21
|
-
path1 / path2 # "/foo/bar/zap" (same as +)
|
22
|
-
path1.exists? # Does this path exist?
|
23
|
-
path1.dirname # "/foo/bar"
|
24
|
-
path1.to_a # ['foo','bar','baz']
|
25
|
-
|
26
|
-
# Windows
|
27
|
-
path1 = Pathname.new("C:/foo/bar/baz")
|
28
|
-
path2 = Pathname.new("../zap")
|
29
|
-
|
30
|
-
path1 + path2 # "C:\\foo\\bar\\zap"
|
31
|
-
path1.root # "C:\\"
|
32
|
-
path1.to_a # ['C:','foo','bar','baz']
|
33
|
-
|
34
|
-
== Windows Notes
|
35
|
-
All forward slashes are converted to backslashes for Pathname objects.
|
36
|
-
|
37
|
-
== Differences between Unix and Windows
|
38
|
-
If your pathname consists solely of ".", or "..", the return
|
39
|
-
value for Pathname#clean will be different. On Win32, "\\" is returned,
|
40
|
-
while on Unix "." is returned. I consider this an extreme edge case and
|
41
|
-
will not worry myself with it.
|
42
|
-
|
43
|
-
== Differences between Pathname in the standard library and this version
|
44
|
-
* It is a subclass of String (and thus, mixes in Enumerable).
|
45
|
-
* It has sensical to_a and root instance methods.
|
46
|
-
* It works on Windows and Unix. The current implementation does not work
|
47
|
-
with Windows path names very well, and not at all when it comes to UNC
|
48
|
-
paths.
|
49
|
-
* The Pathname#cleanpath method works differently - it always returns
|
50
|
-
a canonical pathname. In addition, there is no special consideration
|
51
|
-
for symlinks (yet), though I'm not sure it warrants it.
|
52
|
-
* The Pathname#+ method auto cleans.
|
53
|
-
* It uses a facade for all File and Dir methods, as well as most FileUtils
|
54
|
-
methods.
|
55
|
-
* Pathname#clean works slightly differently. In the stdlib version,
|
56
|
-
Pathname#clean("../a") returns "../a". In this version, it returns "a".
|
57
|
-
This affects other methods, such as Pathname#relative_path_from.
|
58
|
-
* Accepts file urls and converts them to paths automatically, e.g.
|
59
|
-
file:///foo%20bar/baz becomes '/foo/bar/baz'.
|
60
|
-
* Adds a Kernel level +pn+ method as a shortcut.
|
61
|
-
* Allows you to add paths together with the '/' operator.
|
62
|
-
|
63
|
-
== Method Priority
|
64
|
-
Because there is some overlap in method names between File, Dir, and
|
65
|
-
FileUtils, the priority is as follows:
|
66
|
-
|
67
|
-
* File
|
68
|
-
* Dir
|
69
|
-
* FileUtils
|
70
|
-
|
71
|
-
In other words, whichever of these defines a given method first is the
|
72
|
-
method that is used by the pathname2 library.
|
73
|
-
|
74
|
-
== Known Issues
|
75
|
-
In Ruby 1.8.3 and 1.8.4 you will see a failure in the test suite regarding
|
76
|
-
'fu_world_writable?' from FileUtils. You can ignore this. That method is
|
77
|
-
supposed to be private. See ruby-core:7383.
|
78
|
-
|
79
|
-
Any other issues should be reported on the project page at
|
80
|
-
https://github.com/djberg96/pathname2
|
81
|
-
|
82
|
-
== Future Plans
|
83
|
-
Suggestions welcome.
|
84
|
-
|
85
|
-
== License
|
86
|
-
Artistic 2.0
|
87
|
-
|
88
|
-
== Copyright
|
89
|
-
(C) 2003-2014 Daniel J. Berger
|
90
|
-
All rights reserved.
|
91
|
-
|
92
|
-
== Warranty
|
93
|
-
This library is provided "as is" and without any express or
|
94
|
-
implied warranties, including, without limitation, the implied
|
95
|
-
warranties of merchantability and fitness for a particular purpose.
|
96
|
-
|
97
|
-
== Author
|
98
|
-
Daniel J. Berger
|