minitar 1.0.2 → 1.1.0
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/CHANGELOG.md +285 -0
- data/CONTRIBUTING.md +273 -0
- data/CONTRIBUTORS.md +27 -0
- data/LICENCE.md +39 -0
- data/Manifest.txt +29 -6
- data/README.md +70 -0
- data/Rakefile +74 -19
- data/SECURITY.md +64 -0
- data/docs/ruby.txt +3 -3
- data/lib/minitar/input.rb +69 -56
- data/lib/minitar/output.rb +34 -22
- data/lib/minitar/pax_header.rb +111 -0
- data/lib/minitar/posix_header.rb +96 -57
- data/lib/minitar/reader.rb +65 -70
- data/lib/minitar/version.rb +5 -0
- data/lib/minitar/writer.rb +50 -88
- data/lib/minitar.rb +60 -64
- data/licenses/bsdl.txt +20 -0
- data/licenses/dco.txt +34 -0
- data/licenses/ruby.txt +52 -0
- data/test/fixtures/issue_46.tar.gz +0 -0
- data/test/fixtures/issue_62.tar.gz +0 -0
- data/test/fixtures/tar_input.tgz +0 -0
- data/test/fixtures/test_input_non_strict_octal.tgz +0 -0
- data/test/fixtures/test_input_relative.tgz +0 -0
- data/test/fixtures/test_input_space_octal.tgz +0 -0
- data/test/fixtures/test_minitar.tar.gz +0 -0
- data/test/minitest_helper.rb +12 -1
- data/test/support/minitar_test_helpers/fixtures.rb +38 -0
- data/test/support/minitar_test_helpers/header.rb +130 -0
- data/test/support/minitar_test_helpers/tarball.rb +324 -0
- data/test/support/minitar_test_helpers.rb +36 -0
- data/test/test_filename_boundary_conditions.rb +74 -0
- data/test/test_gnu_tar_compatibility.rb +92 -0
- data/test/test_integration_pack_unpack_cycle.rb +38 -0
- data/test/test_issue_46.rb +5 -23
- data/test/test_issue_62.rb +50 -0
- data/test/test_minitar.rb +168 -39
- data/test/test_pax_header.rb +104 -0
- data/test/test_pax_support.rb +66 -0
- data/test/test_tar_header.rb +289 -75
- data/test/test_tar_input.rb +14 -61
- data/test/test_tar_output.rb +7 -9
- data/test/test_tar_reader.rb +17 -18
- data/test/test_tar_writer.rb +105 -126
- metadata +95 -89
- data/Contributing.md +0 -94
- data/History.md +0 -236
- data/Licence.md +0 -15
- data/README.rdoc +0 -92
- data/test/support/tar_test_helpers.rb +0 -134
- /data/{Code-of-Conduct.md → CODE_OF_CONDUCT.md} +0 -0
metadata
CHANGED
@@ -1,43 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: minitar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Austin Ziegler
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: minitest
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '5.24'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '5.24'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: base64
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0.2'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0.2'
|
41
12
|
- !ruby/object:Gem::Dependency
|
42
13
|
name: hoe
|
43
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -53,61 +24,53 @@ dependencies:
|
|
53
24
|
- !ruby/object:Gem::Version
|
54
25
|
version: '4.0'
|
55
26
|
- !ruby/object:Gem::Dependency
|
56
|
-
name: hoe-
|
27
|
+
name: hoe-halostatue
|
57
28
|
requirement: !ruby/object:Gem::Requirement
|
58
29
|
requirements:
|
59
30
|
- - "~>"
|
60
31
|
- !ruby/object:Gem::Version
|
61
|
-
version: '1
|
62
|
-
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '1.0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: hoe-gemspec2
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
32
|
+
version: '2.1'
|
33
|
+
- - ">="
|
74
34
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
35
|
+
version: 2.1.1
|
76
36
|
type: :development
|
77
37
|
prerelease: false
|
78
38
|
version_requirements: !ruby/object:Gem::Requirement
|
79
39
|
requirements:
|
80
40
|
- - "~>"
|
81
41
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
42
|
+
version: '2.1'
|
43
|
+
- - ">="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 2.1.1
|
83
46
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
47
|
+
name: irb
|
85
48
|
requirement: !ruby/object:Gem::Requirement
|
86
49
|
requirements:
|
87
50
|
- - "~>"
|
88
51
|
- !ruby/object:Gem::Version
|
89
|
-
version: '1.
|
52
|
+
version: '1.0'
|
90
53
|
type: :development
|
91
54
|
prerelease: false
|
92
55
|
version_requirements: !ruby/object:Gem::Requirement
|
93
56
|
requirements:
|
94
57
|
- - "~>"
|
95
58
|
- !ruby/object:Gem::Version
|
96
|
-
version: '1.
|
59
|
+
version: '1.0'
|
97
60
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
61
|
+
name: minitest
|
99
62
|
requirement: !ruby/object:Gem::Requirement
|
100
63
|
requirements:
|
101
64
|
- - "~>"
|
102
65
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
66
|
+
version: '5.16'
|
104
67
|
type: :development
|
105
68
|
prerelease: false
|
106
69
|
version_requirements: !ruby/object:Gem::Requirement
|
107
70
|
requirements:
|
108
71
|
- - "~>"
|
109
72
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
73
|
+
version: '5.16'
|
111
74
|
- !ruby/object:Gem::Dependency
|
112
75
|
name: minitest-autotest
|
113
76
|
requirement: !ruby/object:Gem::Requirement
|
@@ -128,14 +91,14 @@ dependencies:
|
|
128
91
|
requirements:
|
129
92
|
- - "~>"
|
130
93
|
- !ruby/object:Gem::Version
|
131
|
-
version: '1.
|
94
|
+
version: '1.1'
|
132
95
|
type: :development
|
133
96
|
prerelease: false
|
134
97
|
version_requirements: !ruby/object:Gem::Requirement
|
135
98
|
requirements:
|
136
99
|
- - "~>"
|
137
100
|
- !ruby/object:Gem::Version
|
138
|
-
version: '1.
|
101
|
+
version: '1.1'
|
139
102
|
- !ruby/object:Gem::Dependency
|
140
103
|
name: rake
|
141
104
|
requirement: !ruby/object:Gem::Requirement
|
@@ -163,6 +126,9 @@ dependencies:
|
|
163
126
|
- - ">="
|
164
127
|
- !ruby/object:Gem::Version
|
165
128
|
version: '0.0'
|
129
|
+
- - "<"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '7'
|
166
132
|
type: :development
|
167
133
|
prerelease: false
|
168
134
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -170,22 +136,39 @@ dependencies:
|
|
170
136
|
- - ">="
|
171
137
|
- !ruby/object:Gem::Version
|
172
138
|
version: '0.0'
|
139
|
+
- - "<"
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '7'
|
173
142
|
- !ruby/object:Gem::Dependency
|
174
|
-
name:
|
143
|
+
name: simplecov
|
175
144
|
requirement: !ruby/object:Gem::Requirement
|
176
145
|
requirements:
|
177
146
|
- - "~>"
|
178
147
|
- !ruby/object:Gem::Version
|
179
|
-
version: '
|
148
|
+
version: '0.22'
|
180
149
|
type: :development
|
181
150
|
prerelease: false
|
182
151
|
version_requirements: !ruby/object:Gem::Requirement
|
183
152
|
requirements:
|
184
153
|
- - "~>"
|
185
154
|
- !ruby/object:Gem::Version
|
186
|
-
version: '
|
155
|
+
version: '0.22'
|
187
156
|
- !ruby/object:Gem::Dependency
|
188
|
-
name:
|
157
|
+
name: simplecov-lcov
|
158
|
+
requirement: !ruby/object:Gem::Requirement
|
159
|
+
requirements:
|
160
|
+
- - "~>"
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: '0.8'
|
163
|
+
type: :development
|
164
|
+
prerelease: false
|
165
|
+
version_requirements: !ruby/object:Gem::Requirement
|
166
|
+
requirements:
|
167
|
+
- - "~>"
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
version: '0.8'
|
170
|
+
- !ruby/object:Gem::Dependency
|
171
|
+
name: standard
|
189
172
|
requirement: !ruby/object:Gem::Requirement
|
190
173
|
requirements:
|
191
174
|
- - "~>"
|
@@ -199,7 +182,7 @@ dependencies:
|
|
199
182
|
- !ruby/object:Gem::Version
|
200
183
|
version: '1.0'
|
201
184
|
- !ruby/object:Gem::Dependency
|
202
|
-
name: standard-
|
185
|
+
name: standard-minitest
|
203
186
|
requirement: !ruby/object:Gem::Requirement
|
204
187
|
requirements:
|
205
188
|
- - "~>"
|
@@ -213,79 +196,103 @@ dependencies:
|
|
213
196
|
- !ruby/object:Gem::Version
|
214
197
|
version: '1.0'
|
215
198
|
- !ruby/object:Gem::Dependency
|
216
|
-
name:
|
199
|
+
name: standard-thread_safety
|
217
200
|
requirement: !ruby/object:Gem::Requirement
|
218
201
|
requirements:
|
219
202
|
- - "~>"
|
220
203
|
- !ruby/object:Gem::Version
|
221
|
-
version: '0
|
204
|
+
version: '1.0'
|
222
205
|
type: :development
|
223
206
|
prerelease: false
|
224
207
|
version_requirements: !ruby/object:Gem::Requirement
|
225
208
|
requirements:
|
226
209
|
- - "~>"
|
227
210
|
- !ruby/object:Gem::Version
|
228
|
-
version: '0
|
211
|
+
version: '1.0'
|
229
212
|
description: |-
|
230
|
-
The minitar library is a pure-Ruby library that
|
231
|
-
|
232
|
-
|
233
|
-
This is release 0.12. This is likely the last revision before 1.0.
|
213
|
+
The minitar library is a pure-Ruby library that operates on POSIX tar(1) archive
|
214
|
+
files.
|
234
215
|
|
235
216
|
minitar (previously called Archive::Tar::Minitar) is based heavily on code
|
236
|
-
originally written by Mauricio Julio Fernández Pradier for the rpa-base
|
237
|
-
project.
|
217
|
+
originally written by Mauricio Julio Fernández Pradier for the rpa-base project.
|
238
218
|
email:
|
239
219
|
- halostatue@gmail.com
|
240
220
|
executables: []
|
241
221
|
extensions: []
|
242
222
|
extra_rdoc_files:
|
243
|
-
-
|
244
|
-
-
|
245
|
-
-
|
246
|
-
-
|
223
|
+
- CHANGELOG.md
|
224
|
+
- CODE_OF_CONDUCT.md
|
225
|
+
- CONTRIBUTING.md
|
226
|
+
- CONTRIBUTORS.md
|
227
|
+
- LICENCE.md
|
247
228
|
- Manifest.txt
|
248
|
-
- README.
|
229
|
+
- README.md
|
230
|
+
- SECURITY.md
|
249
231
|
- docs/bsdl.txt
|
250
232
|
- docs/ruby.txt
|
233
|
+
- licenses/bsdl.txt
|
234
|
+
- licenses/dco.txt
|
235
|
+
- licenses/ruby.txt
|
251
236
|
files:
|
252
|
-
-
|
253
|
-
-
|
254
|
-
-
|
255
|
-
-
|
237
|
+
- CHANGELOG.md
|
238
|
+
- CODE_OF_CONDUCT.md
|
239
|
+
- CONTRIBUTING.md
|
240
|
+
- CONTRIBUTORS.md
|
241
|
+
- LICENCE.md
|
256
242
|
- Manifest.txt
|
257
|
-
- README.
|
243
|
+
- README.md
|
258
244
|
- Rakefile
|
245
|
+
- SECURITY.md
|
259
246
|
- docs/bsdl.txt
|
260
247
|
- docs/ruby.txt
|
261
248
|
- lib/minitar.rb
|
262
249
|
- lib/minitar/input.rb
|
263
250
|
- lib/minitar/output.rb
|
251
|
+
- lib/minitar/pax_header.rb
|
264
252
|
- lib/minitar/posix_header.rb
|
265
253
|
- lib/minitar/reader.rb
|
254
|
+
- lib/minitar/version.rb
|
266
255
|
- lib/minitar/writer.rb
|
256
|
+
- licenses/bsdl.txt
|
257
|
+
- licenses/dco.txt
|
258
|
+
- licenses/ruby.txt
|
259
|
+
- test/fixtures/issue_46.tar.gz
|
260
|
+
- test/fixtures/issue_62.tar.gz
|
261
|
+
- test/fixtures/tar_input.tgz
|
262
|
+
- test/fixtures/test_input_non_strict_octal.tgz
|
263
|
+
- test/fixtures/test_input_relative.tgz
|
264
|
+
- test/fixtures/test_input_space_octal.tgz
|
265
|
+
- test/fixtures/test_minitar.tar.gz
|
267
266
|
- test/minitest_helper.rb
|
268
|
-
- test/support/
|
267
|
+
- test/support/minitar_test_helpers.rb
|
268
|
+
- test/support/minitar_test_helpers/fixtures.rb
|
269
|
+
- test/support/minitar_test_helpers/header.rb
|
270
|
+
- test/support/minitar_test_helpers/tarball.rb
|
271
|
+
- test/test_filename_boundary_conditions.rb
|
272
|
+
- test/test_gnu_tar_compatibility.rb
|
273
|
+
- test/test_integration_pack_unpack_cycle.rb
|
269
274
|
- test/test_issue_46.rb
|
275
|
+
- test/test_issue_62.rb
|
270
276
|
- test/test_minitar.rb
|
277
|
+
- test/test_pax_header.rb
|
278
|
+
- test/test_pax_support.rb
|
271
279
|
- test/test_tar_header.rb
|
272
280
|
- test/test_tar_input.rb
|
273
281
|
- test/test_tar_output.rb
|
274
282
|
- test/test_tar_reader.rb
|
275
283
|
- test/test_tar_writer.rb
|
276
|
-
homepage: https://github.com/halostatue/minitar
|
284
|
+
homepage: https://github.com/halostatue/minitar
|
277
285
|
licenses:
|
278
286
|
- Ruby
|
279
287
|
- BSD-2-Clause
|
280
288
|
metadata:
|
281
|
-
|
282
|
-
source_code_uri: https://github.com/halostatue/minitar/
|
289
|
+
source_code_uri: https://github.com/halostatue/minitar
|
283
290
|
bug_tracker_uri: https://github.com/halostatue/minitar/issues
|
291
|
+
changelog_uri: https://github.com/halostatue/minitar/blob/main/CHANGELOG.md
|
284
292
|
rubygems_mfa_required: 'true'
|
285
|
-
post_install_message:
|
286
293
|
rdoc_options:
|
287
294
|
- "--main"
|
288
|
-
- README.
|
295
|
+
- README.md
|
289
296
|
require_paths:
|
290
297
|
- lib
|
291
298
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -299,9 +306,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
299
306
|
- !ruby/object:Gem::Version
|
300
307
|
version: '0'
|
301
308
|
requirements: []
|
302
|
-
rubygems_version: 3.
|
303
|
-
signing_key:
|
309
|
+
rubygems_version: 3.6.9
|
304
310
|
specification_version: 4
|
305
|
-
summary: The minitar library is a pure-Ruby library that
|
306
|
-
|
311
|
+
summary: The minitar library is a pure-Ruby library that operates on POSIX tar(1)
|
312
|
+
archive files
|
307
313
|
test_files: []
|
data/Contributing.md
DELETED
@@ -1,94 +0,0 @@
|
|
1
|
-
## Contributing
|
2
|
-
|
3
|
-
I value any contribution to minitar you can provide: a bug report, a feature
|
4
|
-
request, or code contributions. There are a few guidelines for contributing to
|
5
|
-
minitar:
|
6
|
-
|
7
|
-
- Code changes _will not_ be accepted without tests. The test suite is written
|
8
|
-
with [Minitest][Minitest].
|
9
|
-
- Match my coding style.
|
10
|
-
- Use a thoughtfully-named topic branch that contains your change. Rebase your
|
11
|
-
commits into logical chunks as necessary.
|
12
|
-
- Use [quality commit messages][quality commit messages].
|
13
|
-
- Do not change the version number; when your patch is accepted and a release is
|
14
|
-
made, the version will be updated at that point.
|
15
|
-
- Submit a GitHub pull request with your changes.
|
16
|
-
- New or changed behaviours require appropriate documentation.
|
17
|
-
|
18
|
-
### Test Dependencies
|
19
|
-
|
20
|
-
minitar uses Ryan Davis’s [Hoe][Hoe] to manage the release process, and it adds
|
21
|
-
a number of rake tasks. You will mostly be interested in:
|
22
|
-
|
23
|
-
$ rake
|
24
|
-
|
25
|
-
which runs the tests the same way that:
|
26
|
-
|
27
|
-
$ rake test
|
28
|
-
$ rake travis
|
29
|
-
|
30
|
-
will do.
|
31
|
-
|
32
|
-
To assist with the installation of the development dependencies for minitar, I
|
33
|
-
have provided the simplest possible Gemfile pointing to the (generated)
|
34
|
-
`minitar.gemspec` file. This will permit you to do:
|
35
|
-
|
36
|
-
$ bundle install
|
37
|
-
|
38
|
-
to get the development dependencies. If you aleady have `hoe` installed, you can
|
39
|
-
accomplish the same thing with:
|
40
|
-
|
41
|
-
$ rake newb
|
42
|
-
|
43
|
-
This task will install any missing dependencies, run the tests/specs, and
|
44
|
-
generate the RDoc.
|
45
|
-
|
46
|
-
You can run tests with code coverage analysis by running:
|
47
|
-
|
48
|
-
$ rake test:coverage
|
49
|
-
|
50
|
-
### Workflow
|
51
|
-
|
52
|
-
Here's the most direct way to get your work merged into the project:
|
53
|
-
|
54
|
-
- Fork the project.
|
55
|
-
- Clone down your fork (`git clone git://github.com/<username>/minitar.git`).
|
56
|
-
- Create a topic branch to contain your change
|
57
|
-
(`git checkout -b my_awesome_feature`).
|
58
|
-
- Hack away, add tests. Not necessarily in that order.
|
59
|
-
- Make sure everything still passes by running `rake`.
|
60
|
-
- If necessary, rebase your commits into logical chunks, without errors.
|
61
|
-
- Push the branch up (`git push origin my_awesome_feature`).
|
62
|
-
- Create a pull request against halostatue/minitar and describe what your change
|
63
|
-
does and the why you think it should be merged.
|
64
|
-
|
65
|
-
### Contributors
|
66
|
-
|
67
|
-
- Austin Ziegler created minitar, based on work originally written by Mauricio
|
68
|
-
Fernández for rpa-base.
|
69
|
-
|
70
|
-
Thanks to everyone who has contributed to minitar:
|
71
|
-
|
72
|
-
- Akinori MUSHA (knu)
|
73
|
-
- Antoine Toulme
|
74
|
-
- Curtis Sampson
|
75
|
-
- Daniel J. Berger
|
76
|
-
- dearblue
|
77
|
-
- inkstak
|
78
|
-
- John Prince
|
79
|
-
- Jorie Tappa
|
80
|
-
- Kazuyoshi Kato
|
81
|
-
- Kevin McDermott
|
82
|
-
- Matthew Kent
|
83
|
-
- Merten Falk
|
84
|
-
- Michal Suchanek
|
85
|
-
- Mike Furr
|
86
|
-
- ooooooo_q
|
87
|
-
- Pete Fritchman
|
88
|
-
- Vijay (bv-vijay)
|
89
|
-
- Yamamoto Kōhei
|
90
|
-
- Zach Dennis
|
91
|
-
|
92
|
-
[minitest]: https://github.com/seattlerb/minitest
|
93
|
-
[quality commit messages]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
|
94
|
-
[hoe]: https://github.com/seattlerb/hoe
|
data/History.md
DELETED
@@ -1,236 +0,0 @@
|
|
1
|
-
# History
|
2
|
-
|
3
|
-
## 1.0.2 / 2024-08-23
|
4
|
-
|
5
|
-
- Bugfix:
|
6
|
-
|
7
|
-
- Minitar 1.0.1 was released with an unchanged gemspec. Reported by Debashish
|
8
|
-
Biswas in [#65][#65].
|
9
|
-
|
10
|
-
## 1.0.1 / 2024-08-08
|
11
|
-
|
12
|
-
- Bugfix:
|
13
|
-
|
14
|
-
- Resolve a constant lookup issue. The accepted fix has been provided by Aram
|
15
|
-
Price in [#58][#58].
|
16
|
-
|
17
|
-
## 1.0.0 / 2024-08-07
|
18
|
-
|
19
|
-
- Breaking Changes:
|
20
|
-
|
21
|
-
- Minimum Ruby version is 3.1.
|
22
|
-
|
23
|
-
- The `Archive::Tar::Minitar` namespace has been completely removed and
|
24
|
-
`Minitar` is a class instead of a module.
|
25
|
-
|
26
|
-
- Enhancements:
|
27
|
-
|
28
|
-
- Added `Minitar.pack_as_file`, originally proposed by John Prince back in
|
29
|
-
2011 [#7][#7].
|
30
|
-
|
31
|
-
## 0.12.1 / 2024-08-21
|
32
|
-
|
33
|
-
- Reverted @adbbb9b596 to restore compatibility with Ruby < 2.0. Resolves
|
34
|
-
[#63][#63] reported by Robert Schulze.
|
35
|
-
|
36
|
-
## 0.12 / 2024-08-06
|
37
|
-
|
38
|
-
- Properly handle very long GNU filenames, resolving [#46][#46].
|
39
|
-
- Handle very long GNU filenames that are 512 or more bytes, resolving
|
40
|
-
[#45][#45]. Originally implemented in [#47][#47] by Vijay, but accidentally
|
41
|
-
closed.
|
42
|
-
|
43
|
-
## 0.11 / 2022-12-31
|
44
|
-
|
45
|
-
- symlink support is complete. Merged as PR [#42][#42], rebased and built on top
|
46
|
-
of PR [#12][#12] by fetep.
|
47
|
-
|
48
|
-
- kymmt90 fixed a documentation error on `Minitar.pack` in PR [#43][#43].
|
49
|
-
|
50
|
-
- This version is a soft-deprecation of all versions before Ruby 2.7, as they
|
51
|
-
will no longer be tested in CI.
|
52
|
-
|
53
|
-
## 0.10 / 2022-03-26
|
54
|
-
|
55
|
-
- nevesenin fixed an issue with long filename handling. Merged as PR [#40][#40].
|
56
|
-
|
57
|
-
## 0.9 / 2019-09-04
|
58
|
-
|
59
|
-
- jtappa added the ability to skip fsync with a new option to `Minitar.unpack`
|
60
|
-
and `Minitar::Input#extract_entry`. Provide `:fsync => false` as the last
|
61
|
-
parameter to enable. Merged from a modified version of PR [#37][#37].
|
62
|
-
|
63
|
-
## 0.8 / 2019-01-05
|
64
|
-
|
65
|
-
- inkstak resolved an issue introduced in the fix for [#31][#31] by allowing
|
66
|
-
spaces to be considered valid characters in strict octal handling. Octal
|
67
|
-
conversion ignores leading spaces. Merged from a slightly modified version of
|
68
|
-
PR [#35][#35].
|
69
|
-
|
70
|
-
- dearblue contributed PR [#32][#32] providing an explicit call to #bytesize for
|
71
|
-
strings that include multibyte characters. The PR has been modified to be
|
72
|
-
compatible with older versions of Ruby and extend tests.
|
73
|
-
|
74
|
-
- Akinori MUSHA (knu) contributed PR [#36][#36] that treats certain badly
|
75
|
-
encoded regular files (with names ending in `/`) as if they were directories
|
76
|
-
on decode.
|
77
|
-
|
78
|
-
## 0.7 / 2018-02-19
|
79
|
-
|
80
|
-
- Fixed issue [#28][#28] with a modified version of PR [#29][#29] covering the
|
81
|
-
security policy and position for `Minitar`. Thanks so much to ooooooo_q for
|
82
|
-
the report and an initial patch. Additional information was added as
|
83
|
-
[#30][#30].
|
84
|
-
|
85
|
-
- dearblue contributed PR [#33][#33] providing a fix for `Minitar::Reader` when
|
86
|
-
the IO-like object does not have a `#pos` method.
|
87
|
-
|
88
|
-
- Kevin McDermott contributed PR [#34][#34] so that an InvalidTarStream is
|
89
|
-
raised if the tar header is not valid, preventing incorrect streaming of files
|
90
|
-
from a non-tarfile. This is a minor breaking change, so the version has been
|
91
|
-
bumped accordingly.
|
92
|
-
|
93
|
-
- Kazuyoshi Kato contributed PR [#26][#26] providing support for the GNU tar
|
94
|
-
long filename extension.
|
95
|
-
|
96
|
-
- Addressed a potential DOS with negative size fields in tar headers
|
97
|
-
([#31][#31]). This has been handled in two ways: the size field in a tar
|
98
|
-
header is interpreted as a strict octal value and the `Minitar` reader will
|
99
|
-
raise an InvalidTarStream if the size ends up being negative anyway.
|
100
|
-
|
101
|
-
## 0.6.1 / 2017-02-07
|
102
|
-
|
103
|
-
- Fixed issue [#24][#24] where streams were being improperly closed immediately
|
104
|
-
on open unless there was a block provided.
|
105
|
-
|
106
|
-
- Hopefully fixes issue [#23][#23] by releasing archive-tar-minitar after
|
107
|
-
minitar-cli is available.
|
108
|
-
|
109
|
-
## 0.6 / 2017-02-07
|
110
|
-
|
111
|
-
- Breaking Changes:
|
112
|
-
|
113
|
-
- Extracted `bin/minitar` into a new gem, `minitar-cli`. No, I am _not_ going
|
114
|
-
to bump the major version for this. As far as I can tell, few people use the
|
115
|
-
command-line utility anyway. (Installing `archive-tar-minitar` will install
|
116
|
-
both `minitar` and `minitar-cli`, at least until version 1.0.)
|
117
|
-
|
118
|
-
- `Minitar` extraction before 0.6 traverses directories if the tarball
|
119
|
-
includes a relative directory reference, as reported in [#16][#16] by
|
120
|
-
@ecneladis. This has been disallowed entirely and will throw a
|
121
|
-
`SecureRelativePathError` when found. Additionally, if the final destination
|
122
|
-
of an entry is an already-existing symbolic link, the existing symbolic link
|
123
|
-
will be removed and the file will be written correctly (on platforms that
|
124
|
-
support symbolic links).
|
125
|
-
|
126
|
-
- Enhancements:
|
127
|
-
|
128
|
-
- Licence change. After speaking with Mauricio Fernández, we have changed the
|
129
|
-
licensing of this library to Ruby and Simplified BSD and have dropped the
|
130
|
-
GNU GPL license. This takes effect from the 0.6 release.
|
131
|
-
- Printing a deprecation warning for including Archive::Tar to put `Minitar`
|
132
|
-
in the top-level namespace.
|
133
|
-
- Printing a deprecation warning for including `Archive::Tar::Minitar` into a
|
134
|
-
class (`Minitar` will be a class for version 1.0).
|
135
|
-
- Moved `Archive::Tar::PosixHeader` to `Archive::Tar::Minitar::PosixHeader`
|
136
|
-
with a deprecation warning. Do not depend on
|
137
|
-
`Archive::Tar::Minitar::PosixHeader`, as it will be moving to
|
138
|
-
`::Minitar::PosixHeader` in a future release.
|
139
|
-
- Added an alias, `::Minitar`, for `Archive::Tar::Minitar`, opted in with
|
140
|
-
`require 'minitar'`. In future releases, this alias will be enabled by
|
141
|
-
default, and the `Archive::Tar` namespace will be removed entirely for
|
142
|
-
version 1.0.
|
143
|
-
- Modified the handling of `mtime` in `PosixHeader` to do an integer
|
144
|
-
conversion (`#to_i`) so that a Time object can be used instead of the
|
145
|
-
integer value of the time object.
|
146
|
-
- `Writer::RestrictedStream` was renamed to `Writer::WriteOnlyStream` for
|
147
|
-
clarity. No alias or deprecation warning was provided for this as it is an
|
148
|
-
internal implementation detail.
|
149
|
-
- `Writer::BoundedStream` was renamed to `Writer::BoundedWriteStream` for
|
150
|
-
clarity. A deprecation warning is provided on first use because a
|
151
|
-
BoundedWriteStream may raise a `BoundedWriteStream::FileOverflow` exception.
|
152
|
-
- `Writer::BoundedWriteStream::FileOverflow` has been renamed to
|
153
|
-
`Writer::WriteBoundaryOverflow` and inherits from `StandardError` instead of
|
154
|
-
`RuntimeError`. Note that for Ruby 2.0 or higher, an error will be raised
|
155
|
-
when specifying `Writer::BoundedWriteStream::FileOverflow` because
|
156
|
-
`Writer::BoundedWriteStream` has been declared a private constant.
|
157
|
-
- Modified `Writer#add_file_simple` to accept the data for a file in
|
158
|
-
`opts[:data]`. When `opts[:data]` is provided, a stream block must not be
|
159
|
-
provided. Improved the documentation for this method.
|
160
|
-
- Modified `Writer#add_file` to accept `opts[:data]` and transparently call
|
161
|
-
`Writer#add_file_simple` in this case.
|
162
|
-
- Methods that require blocks are no longer required, so the
|
163
|
-
`Archive::Tar::Minitar::BlockRequired` exception has been removed with a
|
164
|
-
warning (this may not work on Ruby 1.8).
|
165
|
-
- Dramatically reduced the number of strings created when creating a POSIX
|
166
|
-
tarball header.
|
167
|
-
- Added a helper, `Input.each_entry` that iterates over each entry in an
|
168
|
-
opened entry object.
|
169
|
-
|
170
|
-
- Bugs:
|
171
|
-
|
172
|
-
- Fix [#2][#2] to handle IO streams that are not seekable, such as pipes,
|
173
|
-
`STDIN`, or `STDOUT`.
|
174
|
-
- Fix [#3][#3] to make the test timezone resilient.
|
175
|
-
- Fix [#4][#4] for supporting the reading of tar files with filenames in the
|
176
|
-
GNU long filename extension format. Ported from @atoulme’s fork, originally
|
177
|
-
provided by Curtis Sampson.
|
178
|
-
- Fix [#6][#6] by making it raise the correct error for a long filename with
|
179
|
-
no path components.
|
180
|
-
- Fix [#13][#13] provided by @fetep fixes an off-by-one error on filename
|
181
|
-
splitting.
|
182
|
-
- Fix [#14][#14] provided by @kzys should fix Windows detection issues.
|
183
|
-
- Fix [#16][#16] as specified above.
|
184
|
-
- Fix an issue where `Minitar.pack` would not include Unix hidden files when
|
185
|
-
creating a tarball.
|
186
|
-
|
187
|
-
- Development:
|
188
|
-
|
189
|
-
- Modernized minitar tooling around Hoe.
|
190
|
-
- Added travis and coveralls.
|
191
|
-
|
192
|
-
## 0.5.2 / 2008-02-26
|
193
|
-
|
194
|
-
- Bugs:
|
195
|
-
- Fixed a Ruby 1.9 compatibility error.
|
196
|
-
|
197
|
-
## 0.5.1 / 2004-09-27
|
198
|
-
|
199
|
-
- Bugs:
|
200
|
-
- Fixed a variable name error.
|
201
|
-
|
202
|
-
## 0.5.0
|
203
|
-
|
204
|
-
- Initial release. Does files and directories. Command does create, extract, and
|
205
|
-
list.
|
206
|
-
|
207
|
-
[#2]: https://github.com/halostatue/minitar/issues/2
|
208
|
-
[#3]: https://github.com/halostatue/minitar/issues/3
|
209
|
-
[#4]: https://github.com/halostatue/minitar/issues/4
|
210
|
-
[#6]: https://github.com/halostatue/minitar/issues/6
|
211
|
-
[#7]: https://github.com/halostatue/minitar/issues/7
|
212
|
-
[#12]: https://github.com/halostatue/minitar/pull/12
|
213
|
-
[#13]: https://github.com/halostatue/minitar/issues/13
|
214
|
-
[#14]: https://github.com/halostatue/minitar/issues/14
|
215
|
-
[#16]: https://github.com/halostatue/minitar/issues/16
|
216
|
-
[#23]: https://github.com/halostatue/minitar/issues/23
|
217
|
-
[#24]: https://github.com/halostatue/minitar/issues/24
|
218
|
-
[#26]: https://github.com/halostatue/minitar/issues/27
|
219
|
-
[#28]: https://github.com/halostatue/minitar/issues/28
|
220
|
-
[#29]: https://github.com/halostatue/minitar/pull/29
|
221
|
-
[#30]: https://github.com/halostatue/minitar/issues/30
|
222
|
-
[#31]: https://github.com/halostatue/minitar/issues/31
|
223
|
-
[#32]: https://github.com/halostatue/minitar/pull/32
|
224
|
-
[#33]: https://github.com/halostatue/minitar/pull/33
|
225
|
-
[#34]: https://github.com/halostatue/minitar/pull/34
|
226
|
-
[#35]: https://github.com/halostatue/minitar/pull/35
|
227
|
-
[#36]: https://github.com/halostatue/minitar/pull/36
|
228
|
-
[#37]: https://github.com/halostatue/minitar/pull/37
|
229
|
-
[#40]: https://github.com/halostatue/minitar/pull/40
|
230
|
-
[#42]: https://github.com/halostatue/minitar/pull/42
|
231
|
-
[#43]: https://github.com/halostatue/minitar/pull/43
|
232
|
-
[#45]: https://github.com/halostatue/minitar/issues/45
|
233
|
-
[#46]: https://github.com/halostatue/minitar/issues/46
|
234
|
-
[#47]: https://github.com/halostatue/minitar/pull/47
|
235
|
-
[#58]: https://github.com/halostatue/minitar/issues/58
|
236
|
-
[#65]: https://github.com/halostatue/minitar/issues/65
|
data/Licence.md
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
## Licence
|
2
|
-
|
3
|
-
minitar is free software that may be redistributed and/or modified under the
|
4
|
-
terms of Ruby’s licence or the Simplified BSD licence.
|
5
|
-
|
6
|
-
- Copyright 2004–2024 Austin Ziegler.
|
7
|
-
- Portions copyright 2004 Mauricio Julio Fernández Pradier.
|
8
|
-
|
9
|
-
### Simplified BSD Licence
|
10
|
-
|
11
|
-
See the file docs/bsdl.txt in the main distribution.
|
12
|
-
|
13
|
-
### Ruby’s Licence
|
14
|
-
|
15
|
-
See the file docs/ruby.txt in the main distribution.
|