forked from tima/perl-amazon-s3
/
ChangeLog
561 lines (508 loc) · 17.6 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
Mon Apr 22 15:14:36 2024 Rob Lauer <rlauer6@comcast.net>
[2.0.1]:
* VERSION: 2.0.1
* NEWS.md: notes on version 2
* README.md: generated
* src/main/perl/lib/Amazon/S3/BucketV2.pm.in
- pod tweaks and additions
- whitespace
Tue Dec 26 07:58:33 2023 Rob Lauer <rlauer6@comcast.net>
[0.66]:
* README.md: generated
* src/main/perl/lib/Amazon/S3/Constants.pm.in
- + $HTTP_NO_CONTENT, $HTTP_PARTIAL_CONTENT
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
(upload_part_of_multipart_upload): refactored, use create_api_uri()
(get_key_v2): new
(get_key): support list or hashref as args include uri_params
(_get_key): refactored
(get_key_filename): refactored, accept hash of args
* src/main/perl/lib/Amazon/S3.pm.in
- pod tweaks
- refactoring, use methods from Amazon::S3::Util
- some support for express one-zone
(use_express_one_zone): new
(add_bucket): refactored to use _add_bucket()
(_add_bucket): new
(list_directory_buckets): new
(list_object_versions): refactored using create_api_uri()
(signer): support for express one-zone
(_make_request)
- set Content-Length header
- only set content if we have data
* src/main/perl/lib/Amazon/S3/Util.pm.in
(create_query_string): refactored
(create_api_uri): new
* s3-perl.pl
- new options, availability-zone, modified-since
(list_directory_buckets): new
(create_bucket): support expresss one-zone
(list_object_versions): new
Thu Nov 30 13:56:08 2023 Rob Lauer <rlauer6@comcast.net>
[0.66]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* src/main/perl/lib/Amazon/S3.pm.in: pod updates
* README.md: generated
* src/main/perl/lib/Amazon/S3/BucketV2.pm.in: new
* src/main/perl/lib/Amazon/S3/Util.pm.in: new
* src/main/perl/lib/Makefile.am: add above to build
* src/main/perl/lib/Amazon/S3.pm.in
- refactoring
- updated pod
(add_bucket): allow additional headers
(delete_bucket): likewise
(list_bucket)
- likewise
- allow query parameters
(_validate_acl_short): refactored
(_make_request): refactored
(adjust_region): refactored
(_do_http): refactored
(_send_request_expect_nothing): refactored
(_send_request_expect_nothing_probed): refactored
(_remember_errors): refactored
(_add_auth_header): refactored
(_merge_meta): refactored
(_encode): refactored
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
- refactored
(new): refactored
(_uri): refactored
(add_key): allow for additional headers
(upload_mulipart_object)
- refactored
- allow additional headers
(initiate_multipart_upload): likewise
(upload_part_of_multipart_upload): likewise
(make_xml_document_simple): replaced with _create_multipart_upload_request()
(get_key): call _get_key() now
(_get_key)
- renamed from get_key()
- allow additional headers
(copy_object): refactored
(delete_keys)
- refactored
- allow additional headers
* src/main/perl/lib/Amazon/S3/Constants.pm.in
- + $AWS_METADATA_BASE_URL
- + markers for ListObjectVersions
* src/main/perl/t/01-api.t
- create private bucket first, then delete public access block
(list_all)
- refactored
- allow additional headers
(get_acl)
- refactored
- allow additional headers
(get_location_constraint): refactored
(_create_multipart_upload_request): new
Tue Nov 28 17:42:44 2023 Rob Lauer <rlauer6@comcast.net>
[0.65]:
* src/main/perl/lib/Amazon/S3.pm.in
(signer)
- get token from creds object always
Thu Jul 20 07:47:36 2023 Rob Lauer <rlauer6@comcast.net>
[0.64 - get_location_constraint() ]:
* VERSION: bump
* NEWS.md: updated
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
(get_location_constraint): content already decoded
Mon Apr 17 08:07:13 2023 Rob Lauer <rlauer6@comcast.net>
[0.63 - pass -key to Crypt::CBC]:
* src/mai/perl/lib/Amazon/S3.pm.in
(_decrypt): pass encryption key as -key and -pass
Fri Apr 14 08:29:32 2023 Rob Lauer <rlauer6@comcast.net>
[0.62 - list_bucket, buckets]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* src/main/perl/lib/Amazon/S3.pm.in
- minor pod updates
(buckets)
- return if null or error, not _remember_errors()
(list_bucket): likewise
* src/main/perl/t/01-api: diag before bailing out
* src/main/perl/t/04-list-buckets.t
- added test for listing non-existent bucket
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
- minor pod tweak, alphabetize methods
Wed Mar 29 08:12:48 2023 Rob Lauer <rlauer6@comcast.net>
[0.61 - delete_keys(), refactoring]:
* s3-perl.pl
- added ASCII table output, refactored
* NEWS.md: updated
* src/main/perl/lib/Amazon/S3.pm.in
- some perlcritic refactoring
- pod updates
(list_bucket): use different markers for v1, v2
(list_bucket_all)
- throw $EVAL_ERROR "The server has stopped responding"
(_make_request): light refactoring
(_sendrequest): accept keep_root and pass to _xpc_of_content()
(_xpc_of_content): NoAttr => $TRUE
(_remember_errors): return false if no error
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
- some perlcritic refactoring
(add_key): check reftype properly
(set_acl): send conten-length
* src/main/perl/lib/Amazon/S3/Constants.pm.in
- additional constants for refactoring
- move subs from t/01-api.t to S3TestUtils.pm
* src/main/perl/t/01-api.t: refactoring
* src/main/perl/t/02-logger.t: likewise
* src/main/perl/t/03-region.t: likewise
* src/main/perl/t/04-list-buckets.t: likewise
* src/main/perl/t/05-multipart-upload.t: likewise
* src/main/perl/t/06-list-multipart-uploads.t: likewise
* src/main/perl/test.localstack: converted to bash script
* src/main/perl/S3TestUtils.pm: new
* cpan/buildspec.yml: add above to distribution
Mon Mar 27 10:47:54 2023 Rob Lauer <rlauer6@comcast.net>
[0.61 - delete_keys()]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* configure.ac: add check for make-cpan-dist.pl
* cpan/Makefile.am: use automake var for above
* src/main/perl/lib/Amazon/S3/.pm.in
(_make_request): don't encode the query string twice
(_send_request): precendence wrt regexp
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
(delete_keys): new
(_format_delete_keys): new
* src/main/perl/lib/Amazon/S3/Constants.pm.in
- new constants to support delete_keys() method
* src/main/perl/lib/Makefile.am: stop make on error
* src/main/perl/t/01-api.t: added tests for delete_keys()
* src/main/perl/test.localstack: save logs
Fri Feb 10 07:47:22 2023 Rob Lauer <rlauer6@comcast.net>>
[0.60 - logging]:
* VERSION: bump
* NEWS.md: updated
* bootstrap: support M.rr style versions
* src/main/perl/lib/Amazon/S3.pm.in
- removed all end of block indicators inserted by perltidy
(new)
- only consider 'debug' flag when internal logger used
* src/main/perl/lib/Amazon/S3.pm.in
(new): new
* configure.ac
- fix email addres
- remove -Wall to prevent warning during configure
* s3-perl.pl: new
* src/main/perl/test.localstack: new
* .gitignore: added some of the files created by `make cpan`
Wed Jan 25 11:54:59 2023 Rob Lauer <rlauer6@comcast.net>
[0.59 - copy_object]:
* VERSION: bump
* README.md: generated
* src/main/perl/lib/Amazon/S3.pm.in
- minor pod changes
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
(copy_object): new
* src/main/perl/Makefile.am: corrected comments re: make test
* cpan/Makefile.am: PROJECT_HOME
[unit tests]:
* src/main/perl/t/01-api.t
- added unit test for copy_object()
* src/main/perl/t/04-list-buckets.t
- use AMAZON_S3_HOST from environment not S3_HOST
* README-TESTING.md
- corrected way make test invoked
Mon Dec 19 09:25:04 2022 Rob Lauer <rlauer6@comcast.net>
[0.58 - min perl required]:
* VERSION: bump
* cpan/buildspec.yml: min perl 5.10
* cpan/requires: JSON::PP
Sat Dec 3 14:09:29 2022 Rob Lauer <rlauer6@comcast.net>
[0.57 - rpm packaging]:
* VERSION: bump
* perl-Amazon-S3.spec.in
(Requires): Net::Amazon::Signature::V4
* src/main/perl/lib/Makefile.am
- install Amazon::S3::Signature::V4 to correct directory
Tue Nov 29 10:39:43 2022 Rob Lauer <rlauer6@comcast.net>
[0.56 - minor bug, 0.55 issues #8]:
* buildspec.yml: files should be relative to project home
* VERSION: bump
* NEWS.md: updated
* README-TESTING.md: more documentation
* Makefile.am: rpm, not rpmbuild directory
* src/main/perl/Makefile.am: comments re: testing
* src/main/perl/t/04-list-buckets.t
- enable debug mode if $ENV{DEBUG}
- dump response if error
* src/main/perl/lib/Amazon/S3.pm.in
- pod tweaks
(new)
- set -key and -pass for legacy Crypt::CBC
(buckets): avoid return explicit undef
(list_bucket)
- remove undefined hash members from input
(_make_request)
- use URI to set path, host, port if domain bucket ame
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
(last_response): typo, should be last_response(), not last_reponse()
(_uri): minor refactoring for clarity
(add_key): likewise, return a return code
(_add_key): minor refactoring
(get_key): minor refactoring, do not return explicit undef
(delete_key): minor refactoring for clarity
(set_acl): likewise
(get_acl)
- likewise
- return undef if 404 rather than croak
* docker-compose.yml: new
Mon Aug 1 15:44:04 2022 Rob Lauer <rlauer6@comcast.net>
[0.55 - bucket region]:
* requires: latest version of most modules
* src/main/perl/lib/Amazon/S3.pm.in
- pod tweaks, corrections
- don't specify a minimum version of perl
(new): set default region to 'us-east-1', again
(get_bucket_location): $bucket, not $self
(buckets)
- verify region option
- pass hash of options and region to _send_request
(add_bucket)
- do not add region constraint if us-east-1
- refactored, send region to _send_request_expect_nothing
(delete_bucket): likewise refactored
(list_bucket): likewise refactored
(_make_request): use region() method of signer
(_do_http): debug statements, set last_reponse, reset_errors
(_do_http_no_redirect): likewise
(_send_request_expect_nothing): likewise
(_send_request_expect_nothing_probed)
- accept hash argument
- debug statements
- croak if redirect, but no Location
(error): new
(reset_errors): new
(_remember_error): set error
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
- pod tweaks, corrections
(new)
- + logger attribute
- + verify_region attribute, verify region if true
(_uri): remove leading '/'
(add_key): correct region if 301 response
(upload_multipart_object): debug messages
(upload_part_of_multipart_upload): likewise
(complete_multipart_upload): likewise
(get_key): remove redundant debug message
(delete_key): pass region to _send_request_expect_nothing
(set_acl): likewise
* src/main/perl/t/01-api.t: do not bailout on early tests
(error): new
(last_response): new
* src/main/perl/t/03-region.t: default region is us-east-1
Fri Jul 22 14:47:30 2022 Rob Lauer <rlauer6@comcast.net>
[0.55 - testing, revert to XML::Simple]:
* src/main/perl/t/01-api.t: remove /r option in regex
* src/main/perl/t/04-list-buckets: likewise
* src/main/perl/lib/Amazon/S3.pm: use XML::Simple
* src/main/perl/lib/Amazon/S3/Bucket.pm.in: likewise
(make_xml_document_simple): new
* src/main/perl/t/06-list-multipart-uploads.t: XML::Simple
* configure.ac: remove Lib::XML, Lib::XML::Simple, add XML::Simple
* cpan/requires: likewise
* TODO.md: new
Thu Jul 21 11:14:16 2022 Rob Lauer <rlauer6@comcast.net>
[0.55 - CI/CD]:
* .github/workflows/build.yml: remove make cpan
* README.md: generated
* src/main/perl/lib/Amazon/S3.pm.in: update badge
Thu Jul 21 10:53:03 2022 Rob Lauer <rlauer6@comcast.net>
[0.55 - CI/CD]:
* .github/workflows/build.yml
* README.md: generated
* configure.ac: typo, IO::Scalar
* cpan/requires
- IO::Scalar, JSON:PP, Pod::Markdown
* src/main/perl/lib/Amazon/S3.pm.in: add badge
* NEWS.md: update
Mon Jul 18 16:27:41 2022 Rob Lauer <rlauer6@comcast.net>
[0.55 - regional buckets]:
* NEWS.md: new
* src/main/perl/lib/Amazon/S3/Constants.pm.in
- + $MIN_MULTIPART_UPLOAD_CHUNK_SIZE
* src/main/perl/lib/Amazon/S3.pm.in
- document Signature V4 changes/implications
- use new Amazon::S3::Signature::V4 object
(_make_request): accept hash ref as argument
(get_bucket_location): new
(reset_signer_region): new
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
- document multipart methods
- send region in all _make_request calls
(_send_request): check if arg is a request
(new)
- accept region argument
- set bucket region if region not passed
(upload_multipart_object): new
* src/main/perl/lib/Amazon/S3/Signature/V4: new
* src/main/perl/lib/Makefile.am: add above to build
* src/main/perl/t/05-multpart-upload.t: new
* src/main/perl/t/06-list-multpart-upload.t: new
Thu Jul 14 06:34:56 2022 Rob Lauer <rlauer6@comcast.net>>
[0.55 - use XML::LibXML]:
* VERSION: bump
* src/main/perl/lib/Amazon/S3.pm.in: use XML::LibXML, not XML::Simple
- perlcritic cleanups
- pod cleanup
(new)
- cache_signer
- encrypt credentials
(get_default_region): new
(get_aws_access_key_id): new
(get_aws_secret_access_key): new
(get_token): new
(_decrypt): new
(_encrypt): new
(signer)
- accesses _signer now
- set default region to caller's value or default
(buckets): set region to us-east-1 temporarily
(debug): new convenience method for level => 'debug'
(_make_request): allow disabling of domain buckets
* src/main/perl/lib/Amazon/S3/Bucket.pm.in: comment tweak
* src/main/perl/lib/Amazon/S3/Constant.pm.in: $DOT
* src/main/perl/t/01-api.t: set $dns_bucket_names to true?
* cpan/test-requires: +Test::Output
* cpan/requires: -Test::Output
* configure.ac
- ads_PERL_MODULE XML::LibXML::Simple, XML::LibXML, Test::Output
Wed Jul 13 13:09:04 2022 Rob Lauer <rlauer6@comcast.net>
[0.54 - merge timmullin changes]:
* src/main/perl/lib/Amazon/S3.pm.in: see commit history
- use XML::LibXML
* src/main/perl/lib/Amazon/Bucket.pm.in: see commit history
Tue Jun 21 12:57:31 2022 Rob Lauer <rlauer6@comcast.net>
[0.53 - unit test perl > 5.010]:
* VERSION: bump
* cpan/requires: sorted
* src/main/perl/lib/Amazon/S3.pm.in
- use 5.010
Sun Jun 19 08:19:19 2022 Rob Lauer <rlauer6@comast.net>
[0.52 - specify version of List::Util required]:
* cpan/requires: List::Util
* cpan/Makefile.am: option of --no-core
Sat Jun 18 07:05:14 2022 Rob Lauer <rlauer6@comcast.net>
[0.51 - unit tests]:
* src/main/perl/t/02-logger.t: remove Log::Log4perl from test
Fri Jun 17 09:48:16 2022 Rob Lauer <rlauer6@comcast.net>
[0.50 - version requirements]:
* cpan/Makefile.am: --no-core
* configure.ac: remove version requirements
* cpan/test-requires: add without core modules
* cpan/requires: remove core modules
Fri Jun 17 07:21:22 2022 Rob Lauer <rlauer6@comcast.net>
[0.49]:
* Makefile.am
- make rpm
- use abs_builddir
- src, not dist now
* configure.ac
- get version from VERSION
- don't treat warnings as errors
- output package version
- check for rpmbuild, pod2markdown, scandeps-static.pl
- update dependencies
* src/main/perl/lib/Amazon/S3.pm.in
- new logging option
- mv'd from dist/lib/Amazon/S3.pm
- documenation updates
- refactoring, perlcritic cleanups
- use Amazon::S3::Constants
- allow passing credentials class
(_make_request): check dns_bucket_names option
(dns_bucket_names): new
(get_logger): new
(level): new
(get_credentials): new
(new)
- secure defaults to true
(region): new
(list_bucket_v2): new
(list_bucket_all_v2): new
(last_response): new
* src/main/perl/lib/Amazon/S3/Bucket.pm.in
- mv'd from dist/lib/Amazon/S3/Bucket.pm
- revert using XML::Simple
- use Amazon::S3::Constants
- perlcritic cleanup
- perltidy
(_uri): support DNS bucket names
(list_v2): new
(list_all_v2): new
* src/main/perl/lib/Makefile.am: new
* src/main/perl/Makefile.am: new
* src/main/Makefile.am: new
* src/Makefile.am: new
* cpan/Makfile.am: new
* cpan/requires: new
* cpan/test-requires: new
* src/main/perl/t/01-api.t
- env vars for controlling tests1
- mv'd from dist/t/01api.t
- refactored test
- support AWS mocking services
- enable/disable regional testing
- added list_vs test
- create tempfile instead of using t/README
* src/main/perl/t/02-logging.t: new
* src/main/perl/t/03-region.t: new
* src/main/perl/t/04-list-bucket.t: new
* .gitignore: *.pm
* ChangeLog: mv'd from dist/CHANGES
* README-TESTING.md: new
* README-BUILD.md: new
* VERSION: new
* bootstrap: new
* autotools/ads_PERL_INCLUDES.m4: new
* autotools/ads_PERL_LIBDIR.m4: new
* autotools/ads_PERL_MODULE.m4: new
* autotools/ads_PROG_PERL.m4: new
* autotools/am_rpm_build_mode.m4: new
* autotools/ax_am_conditional_example.m4: new
* autotools/ax_deps_check.m4: new
* autotools/ax_distcheck_hack.m4: new
* autotools/ax_rpmbuild_check.m4: new
Revision history for Perl module Amazon::S3:
0.48 Sep 17 2021
- remove leading '/' from bucket name
- modify tests for not s3.amazonaws.com hosts (e.g. minio)
0.47 Feb 4 2019
- update dependencies (XML::LibXML)
0.46 Jan 19 2019
- use temporary credentials
- error string
-
0.45 Aug 14 2009
- Applied patch to support any S3 end points (Tokuhiro Matsuno)
- Applied patches to not die when 0 or 1 buckets are return also (Tokuhiro Matsuno)
0.441 Jun 16 2008
- Added handling to get_key_filename where the key is used as the file
name if one is not provided.
0.44 Jun 08 2008
- Applied patch for fixing non-xml error parsing (Harold Sinclair)
- Ported changes from Net::Amazon::S3 0.42-0.44. These include:
- Fix bug with storing files consisting of "0" (Martin Atkins)
- Use of IO::File and binmode() to support Windows (Gabriel Weinberg)
- Add exponential backoff upon temporary errors with the new
retry option. (Leon Brocard)
0.41.2 Jan 20 2008
- Added documentation fixes that where causing
99-pod-coverage.t to fail.
0.411 Jan 19 2008
- initial release into CPAN
- Fork of Net::Amazon::S3 0.41
- Renamed packages
- Replaced XML::LibXML and XML::LibXML::XPathContext
with XML::Simple
- Ran perltidy over code
- Removed deprecated methods from Amazon::S3
- Revised documentation and README