Thu Nov 28 06:23:59 2024 Rob Lauer <rlauer6@comcast.net>
[2.1.0]:
* VERSION: bump
* NEWS: updated
* README.md: generated
* .perlcriticrc: removed
* .perltidyrc: removed
* cpan-dist/Makefile
- remove path from make-cpan-dist
- JSON, not JSON::PP
- set TIDY to tidy modules
* src/main/perl/lib/Amazon/API.pm
- pod tweaks
(new)
- set default log level to 'error'
(decode_response)
- check if called as botocore api
* cpan/requires: + Term::ReadKey
* docker/docker-compose.yml: add additional services
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(help): move pager down after possible error
(main): make perltidy default false
(stringify): new
(render_stub): use above
(create_stub): warn about Perl::Tidy
* src/main/perl/lib/Amazon/API/Botocore/Pod.pm.in
- perlcritic refactors
- pod tweaks
* src/main/perl/lib/Amazon/API/Botocore/Shape.pm.in: whitespace
* src/main/perl/lib/Amazon/API/Botocore/Shape/Serializer.pm.in
- perlcritic refactors
- whitespace
* src/main/perl/lib/Amazon/API/Botocore/Shape/Utils.pm.in
- whitespace
- refactor so pod2man doesn't complain
* src/main/perl/lib/Amazon/API/Template.pm.in
- whitespace
- use 'g' instead of while()
* src/examples/README.md: tweaks
Tue Nov 19 07:48:26 2024 Rob Lauer <rlauer6@comcast.net>
[2.0.15]:
* VERSION: bump
* README.md: generated
* cpan/buildspec.yml
- fix src/examples
* src/examples/README.md: cleanup
* src/main/perl/lib/Amazon/API/Botocore.pm.in
- whitespace
(render_stub): fix filehandle issue
* src/main/perl/lib/Amazon/API.pm.in
(new)
- pass log_level from options to _set_default_logger
- init_log_level
(init_log_level):new
(_set_default_logger): init log level from options
Sun Apr 21 07:58:26 2024 Rob Lauer <rlauer6@comcast.net>
[2.0.14]:
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* src/main/perl/lib/README.md: likewise
* src/main/perl/lib/Amazon/API.pm.in
(invoke_api)
- test for limit_key (all service do not have limit_key)
* src/main/perl/lib/Makefile.am
- make README.md from Amazon/API.pm, not .pm.in
Mon Jan 29 15:17:28 2024 Rob Lauer <rlauer6@comcast.net>
[2.0.13]:
* VERSION: bump
* README.md: generated
* src/main/perl/lib/README.md: likewise
* cpan/requires: Pod::Find
* src/main/perl/lib/Amazon/API/Botocore.pm.in: whitespace
* src/main/perl/lib/Amazon/API.pm.in: likewise, added badge to pod
Fri Oct 13 17:02:15 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.12]:
* .gitignore
- cpan/resources
- cpan-dist/services, service-listing.json
- src/main/bash/bin/create-service
- don't ignore docker-rpm/Makefile
* VERSION: bump
* README.md: generated
* NEWS: updated
* .gitignore: added generated README, README.html files
* cpan-dist/Makefile
- clear error message when required env vars not present
- require Text::ASCIITable for listing
* cpan-dist/README.md
- added Quickstart section
- minor tweaks
* docker/docker-compose.yaml: docker-compose for LocalStack
* src/main/perl/lib/README.md: likewise
* src/examples/APIExample.pm
(dump_json): new
(version): new
(service): new
* src/examples/README.md: tweaks
* src/examples/sqs.pm: refactored
* src/examples/ec2.pm: likewise
* src/examples/ecr.pm: likewise
* src/examples/cloudwatch-events.pm: likewise
* src/examples/secrets-manager.pm: likewise
* src/examples/ssm.pm: likewise
* src/examples/sts.pm: likewise
* src/main/perl/lib/Amazon/API.pm.in
- export 'service' method
- add more documenation around serialization failures
(service): new
(set_log_level): only set level if logger is actually set
(decode_response)
- SuppressEmpty when decoding XML
- add serialize flag to prevent serialization
- return decoded output if not botocore output
(invoke_api)
- added log messages
- try to detect when to pass through parameters vs serializing via botocore
- only use paginator if there is a paginator for the method being invoked
- set parameters to {} as default for non-botocore/application-json calls
- delete limit_key from result
- return result_key contents for paged results
(_set_defaults): added option no_passkey_warning
(serialize_content)
- set parameters to an empty array as default for query protocol
* src/main/perl/lib/README.md: generated
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(help): fix for shape documentation
* src/main/perl/lib/Amazon/API/Botocore/Pod.pm.in
- note about custom module names
* src/main/perl/lib/Amazon/API/Botocore/Shape/Serializer.pm.in
- serialization fixes
(_serialize_structure)
- pass along exists flag if element exists in content
- added more debugging information
- use member name as key or just use serialized data
- set location name as locationName, location or member name
- always set serialized datat to hash member now ????
(_serialize_list)
- skip undefined elements
- pass along exists flag
(serialize)
- return undef if undefined data for strings
- return undef if undefined data for boolean
- fix for timestamp type
- implement flattened maps
- return undef for empty hashes and arrays
* src/main/perl/lib/Amazon/API/Botocore/Shape.pm.in
- refactoring, serialization fixes
- optional logger object
(new)
- add arg is_response, to avoid calling _init_value() for response object
(_init_map): return raw value if is_flattened
(get_shape_type): new
(finalize): refactored with dispatcher
(finalize_map): new
(finalize_list): new
(finalize_structure): new
(_create_key_value_list): new
* src/main/perl/lib/Amazon/API/Botocore/Shape/Utils.pm.in
- add methods is_array, is_code, is_hash, is_regexp, is_scalar, _is_type
- changed new() method in template to only store value if a value passed
(create_module_name): don't alter names with upper case (they're custom)
* src/main/bash/bin/create-service.sh.in
- use realpath for BOTOCORE_PATH
- get description from service, not module name
* src/main/perl/lib/Amazon/API/Constants.pm.in
- added SUCCESS, FAILURE
Mon Aug 21 14:33:58 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.11]:
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* src/main/perl/lib/Amazon/API/Botocore/Shape/Serializer.pm.in
(serialize)
- format with nanoseconds only if present in timestamp
- fixed regexp related to above
* src/main/perl/lib/Amazon/API.pm.in
(init_botocore_request)
- disable creation of Botocore request object if !use_botocore or
if request is not a HASH ref
- remove marker when using paginator
* src/examples/ec2.pm
- fixed non-Botocore request (DescribeSubnets, DescribeSecurityGroups)
Mon May 22 07:34:06 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.10]:
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* src/main/perl/lib/README.md: likewise
* src/main/perl/lib/Amazon/API.pm.in
- include badge in pod
(create_urlencoded_content): url_encode query string parameters
* src/main/perl/lib/Amazon/API/Botocore/Shape.pm.in
(_init_value): include blob in valid types
* src/main/perl/lib/Amazon/API/Botocore/Shape/Utils.pm.in
(__DATA__)
- update shape template (new()) to initialize structures when undefined
Sun May 21 13:17:30 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.9]:
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* src/main/perl/lib/Amazon/API.pm.in
(invoke_api)
- set paginator parameters from $parameters before it is unloaded
- only serialize content if it exists
(create_url_encoded_content): actually uri encode the parameters
* docker/Makefile.docker
- user NOCACHE if set in environment
Sat May 13 08:52:29 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.8]:
* VERSION: bump
* NEWS.md: updated
* configure: generated
* README.md: likewise
* README-BUILD.md: explain --enable-rpm-build-mode
* requires
- any version of Pod::Parser?
- bump version of Amazon::Credentials
* cpan/Makefile.am: top_srcdir, not ..
* .gitignore: *.tag, *.log
* docker/Dockerfile.create-service: new
* docker/Dockerfile.rpm-build: new
* docker/Makefile.docker: new
* docker/README.md: new
* docker/build-dist: new
* docker/create-cpan-dist: new
* docker/package-create-service.lst: new
* docker/package-rpm-build.lst: new
* docker/rpm-build: new
* create-service-sh.in: -f option (force)
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(format_columns): use 80 if no tty
Sun May 7 14:02:56 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.7 - remove DateTime dependency]:
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* src/main/bash/bin/create-service.sh.in
- exit if error from amazon-api
- pass BOTOCORE_PATH to amazon-api
- pass BOTOCORE_PATH to create_cpan_distribution
* src/main/perl/lib/Amazon/API/Botocore/Shape/Serializer.pm.in
(serialize): replace DateTime with POSIX::strftime
Thu Apr 20 15:33:09 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.6 - create-service]:
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* src/main/perl/lib/Amazon/API.pm.in
(_create_stealth_logger)
- uc level to create subname
- detect existing method correctly by looking for CODE in typeglob
Sun Mar 26 17:25:06 2023 Rob Lauer <rlauer6@comcast.net>>
[2.0.5 - create-service]:
* VERSION: bump
* README.md: generated
* src/main/bash/bin/create-service.sh.in
- missing @ in automake @scandeps@ variable
- don't remove temp dir if DEBUG mode
Fri Mar 17 14:19:55 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.4 - create-service]:
* NEWS.md: updated
* VERSION: bump
* configure.ac
(AC_PATH_PROG): scandeps-static.pl
(do_subst_command):
- scandeps, make_cpan_dist
* src/main/bash/bin/Makefile.am
- add create-service to build
- set automake variables scandeps, make_cpan_dist
* src/main/bash/bin/create-service.sh.in: new
Fri Mar 10 08:41:44 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.3 - Readonly]:
* VERSION: bump
* README.md: generated
* bootstrap: use config options if found
* src/main/perl/lib/Amazon/API.pm.in
- Readonly => Readonly::Scalar
(_set_default_logger)
- add ability to log to files
- use default layout pattern
- add DEBUG, etc to package AND sub-classes?
(_create_stealth_logger): new
* src/main/perl/lib/Amazon/API/Botocore.pm.in: Readonly => Readonly::Scalar
* src/main/perl/lib/Amazon/API/Botocore/Shape/Utils.pm.in: likewise
* src/main/perl/lib/Amazon/API/Constants.pm.in: likewise
* src/main/perl/lib/Amazon/API/Pod/Parser.pm.in: likewise
* src/main/perl/lib/Amazon/API/Pod/Simple/Text.pm.in: likewise
* src/main/perl/lib/Amazon/API/Template.pm.in: likewise
Sat Feb 25 10:18:34 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.2 - Log::Log4perl]:
* VERSION: bump
* cpan/requires: + Log::Log4perl
* NEWS: updated
* README.md: generated
Tue Feb 21 07:04:44 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.1 - Pod::Parser]:
* VERSION: bump
* cpan/requires: add Pod::Parser any version
* README.md: generated
* NEWS: updated
Sat Feb 18 18:04:56 2023 Rob Lauer <rlauer6@comcast.net>
[2.0.0 - Botocore release to CPAN]:
* README.md: generated
* VERSION: bump
Sat Feb 18 17:50:44 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.9]:
* src/main/perl/lib/Amazon/API.pm.in
- pod edits
* src/main/perl/lib/Amazon/API/Botocore/Pod.pm.in: likewise
* README.md: generated
* README-BUILD.md: likewise
* src/main/perl/lib/README.md: likewise
* requirements.json: order only change
Wed Jan 25 18:41:03 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.8 - documentation, blob]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(get_service_descriptions): lc service
(fetch_boto_services)
- better die message when no botocore path found
(create_stub): lc service
(help): likewise
* src/main/perl/lib/Amazon/API/Botocore/Shape/Serializer.pm.in
(serialize): handle blob type
* src/main/perl/lib/Makefile.am: README.md
* src/main/perl/lib/README.md: generated from above
Wed Jan 25 16:24:11 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.7 - logging]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* src/main/perl/lib/Amazon/API.pm.in
(BEGIN): import log levels
(invoke_api)
- only retrieve paginators if they're present
- return raw results if we're not using paginator
(_set_default_logger): use levels from $LOG4PERL_LOG_LEVELS
Fri Jan 20 17:56:53 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.6 - Log::Log4perl]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* Makefile.requirements: --no-include-require
* autotools/ax_requirements_check.m4: generated
* requirements.json: generated
* .gitignore: remove src/main/perl/lib/Amazon/API/Botocore/Shape directory
* cpan/buildspec.yml
- min perl version 5.010
- no core modules
* cpan/requires
- require Amazon::Credentials 1.16
- remove version number from most modules
- + List::Utils 1.33
- + XML::Simple
- + JSON
- + URL::Encode
- + Pod::Simple
- - core modules, Perl::Tidy, Pod::Find
* src/main/perl/lib/Amazon/API.pm.in
- explain new logging method in pod
- require Log::Log4perl
(new)
- call _set_default_logger before setting log level
(set_log_level): new
(invoke_api): remove null/blank paginator keys
(_set_default_logger)
- use Log::Log4perl, custom logger, or nothing
(_set_defaults)
- removed code that formerly set 'debug' for Amazon::Credentials
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(BEGIN)
- stub Stealth loggers if no Log::Log4perl
- use Log::Log4perl Stealth loggers if Log::Log4perl available
* src/main/perl/lib/Amazon/API/Signature4.pm.in: whitespace
* src/main/perl/lib/Amazon/API/Botocore/Shape/Serializer.pm.in: new
* src/main/perl/lib/Amazon/API/Botocore/Shape/Utils.pm.in: new
Mon Jan 16 13:44:53 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.5 - paginator]:
* VERSION: bump
* NEWS.md: updated
* README.md: generated
* src/main/perl/lib/Amazon/API.pm.in
(new)
- +use_paginator, raise_serialization_error
(_set_defaults)
- set use_paginator default to true
(decode_response)
- return raw response if exception during serialization
(invoke_api):
- automatically paginate if use_paginate is true
- return raw content if exception in serialization/pagination
* src/examples/sqs.pm
- add tags to example
(serialize_content)
- don't serialize parameters with nokeys if content-type is xml
Mon Jan 16 10:17:33 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.4 - paginator]:
* VERSION: bump
* NEWS.md: updated
* src/main/perl/lib/Amazon/API.pm.in
- minor formatting changes
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(paginator): new
(help)
- set $service from 'service' option
- look for $service or service name created by create_module_name
(render_stub)
- prep for on-the-fly generation of pod from help
Sat Jan 14 17:33:47 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.3 - POST content]:
* VERSION: bump
* NEWS.md: updated
* src/main/perl/lib/Amazon/API.pm.in
(init_botocore_request)
- set content to undef for non-POST operations if no parameters
Wed Jan 11 13:13:04 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.2 - CPAN dist maker]:
* VERSION: bump
* NEWS.md: updated
* cpan-dist/.gitignore: new
* cpan-dist/README.md: new
* cpan-dist/buildspec.yml.in: new
* cpan-dist/requires: new
* cpan/Makefile.am: use @MAKE_CPAN_DIST@
* src/main/bash/bin/amazon-api.sh.in: bash exit code
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(fetch_boto_services): follow symlinks
[requirements]:
* autotools/ads_PERL_MODULE.m4: report missing/out of date modules
* configure.ac
- likewise
(AC_PATH_PROG): scandeps-static.pl, make-cpan-dist.pl
* bootstrap: create Perl requirements
* Makefile.requirements: new
* autotools/ax_requirements_check.m4: new (generated)
* requirements.json: new (generated)
Wed Jan 11 10:52:54 2023 Rob Lauer <rlauer6@comcast.net>
[1.4.1 - Botocore fixes]:
* VERSION: bump
* README.md: generated
* NEWS.md: update
* src/main/perl/lib/Amazon/API/Botocore.pm.in
(render_stub)
- don't create path here, it's done upstream
- don't create method pod if no output-path
(get_service_descriptions): croak if unknown service
(main)
- create output path for service if it does not exist
Sat Jan 7 06:02:07 2023 Rob Lauer <rlauer6@comcast.net>>
[1.4.0 - Botocore enhancements]:
* .gitignore
- perltidy.err
- Amazon/API/Botocore/Shape/*
- src/main/perl/lib/test/* (moved all temp test files here)
- src/main/bash/bin/amazon-api.sh, amazon-api
* VERSION: bump
* README.md: generated
* NEWS.md: updated
* configure.ac
- added bash/bin to build
* src/main/Makefile.am: likewise
* src/main/perl/lib/Amazon/API/Constants.pm.in
- $COMMA, $DASH
[Botocore enhancements/fixes]:
* src/main/perl/lib/Amazon/API.pm.in
- use JSON, not JSON::PP
- pod updates
(new)
- if the API class isa botocore api, set a serializer
(get_api_service): new
(decode_response)
- ForceContent 1 for parsing XML into models
- serializer needs to know service now
- execute Botocore serializer if botocore api
(get_botocore_action): new
(is_botocore_shape): new
(is_param_type): new
(is_query_param): new
(is_uri_param): new
(create_botocore_request): new
(init_botocore_request)
- use Botocore metadata to create request object
(_set_defaults)
- get_decode_always, not set_
- use local region or region from credentials
(is_botocore_api): new
(serialize_content): new
(invoke_api): serialize response if botocore api
(submit): add request_uri to URL if rest-json/xml
(param_n): move to Amazon::API::Botocore::Shape::Utils::param_n
(create_url_encoded_content): allow array as arg in parameter list
(_set_content_type): use map of content types (API_TYPES)
(_set_default_logger): add pattern
(create_service_url): use botocore metadata if available
(_set_request_content): set charset to utf for POST
* src/main/perl/lib/Amazon/API/Botocore.pm.in
- export create_module_name, create_service_shapes,
fetch_boto_services, get_service_descriptions
(help): user IO::Pager if available
(render_stub)
- get paginators
- don't render pod if --no-pod option selected
- fixes for pod errors
(get_api_descriptions)
- fetch_paginators
- add documentation for servcie
- add shapes metadata
(describe): JSON, not JSON::PP
(create_stub): pass %options to render_stub()
(main)
- new options, pod, pager, output-path (replaces file)
- defaults for new options
- synonyms for create-stub(s), create-shape(s)
(template)
- set default region to us-east-1
- utf8 encoding for pod
* src/main/perl/lib/Amazon/API/Botocore/Pod.pm.in
(pod)
- new options --pager, --pod, --output-path
- beefed up usage
* src/main/perl/lib/Amazon/API/Botocore/Shape.pm.in
* src/main/perl/lib/Amazon/API/Template.pm.in
[CPAN build]:
* cpan/Makefile.am
- project-root option for make-cpan-dist.pl
* cpan/buildspec.yml
(dependencies): path deprecated, now requires:
(provide): list new files added to project
[unit tests]:
* src/main/perl/t/00-botocore-template-var.t
- moved to_template_var to separate module (Amazon::API::Template)
[refactoring/enhancing Botocore support]:
* src/main/bash/Makefile.am: new
* src/main/bash/bin/Makefile.am: new
* src/main/bash/bin/amazon-api.sh.in: new
* perl-Amazon-API.spec.in: add above to rpm
* src/main/perl/lib/Amazon/API/Botocore/Shape.pm.in: new
* src/main/perl/lib/Amazon/API/Pod/Parser.pm.in: new
* src/main/perl/lib/Amazon/API/Pod/Simple/Text.pm.in: new
* src/main/perl/lib/Amazon/API/Template.pm.in: new
* src/main/perl/lib/Makefile.am: add above to build
* src/main/perl/lib/modules.inc: likewise
* src/main/perl/lib/directories.inc: likewise
[examples]:
* README.md: beefed up
* src/examples/ecr.pm: use APIExample base
* src/examples/sts.pm: likewise
* src/examples/cloudwatch-events.pm: minor formatting changes
* src/examples/ec2.pm: likewise
* src/examples/ssm.pm: likewise
* src/examples/secrets-manager.pm: likewise
* src/examples/sqs.pm: likewise, param_n shoudl be called as class method
* src/examples/README.md:typos
* src/examples/APIExample.pm
- perlcritic refactoring
- export booleans used by examples
(help)
- usage
- use pager
* src/main/perl/lib/Amazon/API/Error.pm.in
- use JSON, not JSON:PP
- use XML::Simple
(_set_message)
- don't chomp
- check to see if the message is xml before converting
[remove example APIs]:
* src/main/perl/lib/modules.inc remove AMAZON_API_PERLMODULES
* src/main/perl/lib/directories.inc
* src/main/perl/lib/Makefile.am
* src/main/perl/lib/Amazon/API/CloudWatchLogs.pm.in: removed
* src/main/perl/lib/Amazon/API/EC2.pm.in: likewise
* src/main/perl/lib/Amazon/API/ECR.pm.in: likewise
* src/main/perl/lib/Amazon/API/ECS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SQS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SSM.pm.in: likewise
* src/main/perl/lib/Amazon/API/STS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SecretsManager.pm.in: likewise
Wed Jul 13 14:07:41 2022 Rob Lauer <rlauer6@comcast.net>
[1.3.5 - unit test fun]:
* VERSION: bump
* README.md: generated
* .gitignore: remove test-requires
* cpan/test-requires: new
* cpan/Makefile.am: don't cleanup above
* cpan/builspec.yml: ...and yes add test-requires
* cpan/requires: remove core file version numbers
Mon Jul 11 13:10:37 2022 Rob Lauer <rlauer6@comcast.net>
[1.3.4 - Amazon::API::Error, force_array]:
* VERSION: bump
* src/main/perl/lib/Amazon/API
(print_error): ref precendence
(_set_defaults):
- see if force_array is defined before enforcing legacy behavior
Tue Jun 7 02:20:34 2022 Rob Lauer <rlauer6@comcast.net>
[1.3.3 - Pod::Find]:
* Makefile.am: pod2markdown
* README.md: generated file
* VERSION: bump
* configure.ac: @POD2MARKDOWN@
* src/main/perl/lib/Amazon/API.pm.in
- force_array
(decode_response)
- use force_array flag
- test response with ref, can
* cpan/requires: new
Mon Jun 6 09:01:12 2022 Rob Lauer <rlauer6@comcast.net>
[1.3.2 - 01-urlencode.t]:
* VERSION: bump
* README.md: generated file
* src/main/perl/lib/Amazon/API.pm.in
- lastest version of Class::Accessor's import overrides Exporter
* cpan/buildspec.yml: +core modules
Fri Jun 3 14:54:08 2022 Rob Lauer <rlauer6@comcast.net>
[1.3.1 - ForceArray]:
* src/main/perl/lib/Amazon/API.pm.in
(decode_response)
- ForceArray => ['item'] : 'items' in returned XML should be converted to arrays
(_set_defaults)
- decode_always true if decode_always undefined
Thu Apr 28 17:32:18 2022 Rob Lauer <rlauer6@comcast.net>
[1.3.0 - Botocore]:
* VERSION: bump
* README-BUILD.md: rename from README.md
* README.md: built from Amazon::API pod
* Makefile.am: build rule for above
* NEWS.md: updated info
* .gitignore:
- prove.*, test-suite.log
- *.pc
- botcore directory
* cpan/buildspec.yml
- + dependencies
* cpan/Makefile.am
- cleanup distribution directory
(CLEANFILES):
- requires
* src/main/perl/lib/Amazon/API/Signature4.pm.in
- export parse_service_url
(parse_service_url): new
(scope): new
(_scope): refactored, use parse_service_url
* src/main/perl/lib/Amazon/API.pm.in
- replace many characters with Readonly values (ex: $UNDERSCORE)
- perl 5.10
- refactoring, perlcritic improvements
- export create_urlencode_content
- remove accessors for credentials
- remove use constant
(_create_query_string): removed
(invoke_api):
- refactored
- use above
- use botocore definition if available
(_format_content): removed
(_set_request_content): refactored
(_set_defaults):
- let Amazon::Credentials handle credentials
- do not pass debug flag to Amazon::Credentials
(submit): use get_valid_token
(create_urlencoded_content): new
(_create_service_url): new
(_set_content_type): new
(init_botocore_request): new
(get_valid_token): new
* src/main/perl/lib/Amazon/API/Constants.pm.in: new
* src/main/perl/lib/Amazon/API/Botocore.pm.in: new
* src/main/perl/lib/Amazon/API/Botocore/Pod.pm.in: new
* src/main/perl/lib/Makefile.am
- add above to build
- revisit dependencies
* src/main/perl/t/00-botocore-template-var.t: new
* src/main/perl/t/01-urlencode.t: new
* src/main/perl/t/02-parse-service-url.t: new
* src/main/perl/lib/modules.inc: new
* src/main/perl/lib/directories.inc: new
* src/examples/sts.pm: new
* src/main/perl/lib/Amazon/API/Error.pm.in: perlcritic cleanup
* src/main/perl/lib/Amazon/API/CloudWatchLogs.pm.in: likewise
* src/main/perl/lib/Amazon/API/EC2.pm.in: likewise, rename module
* src/main/perl/lib/Amazon/API/ECS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SQS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SSM.pm.in: likewise
* src/main/perl/lib/Amazon/API/STS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SecretsManager.pm.in: likewise
Wed Apr 6 14:47:48 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.7 - set region]:
* VERSION: bump
* NEWS.md: updated info
* src/main/perl/lib/Amazon/API/STS.pm.in: new
* src/main/perl/lib/Makefile.am: add above to build
* src/main/perl/lib/Amazon/API.pm.in
(_format_content): application/x-www-form-urlencoded
(_set_request_content): likewise
(_set_defaults): set url after setting region
* src/main/perl/lib/Amazon/Error.pm.in
(_set_message): chomp XML content
* src/examples/ecr.pm: new
Thu Mar 31 11:21:11 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.6 - pod updates, refactoring]:
* VERSION: bump
* NEWS.md: updated
* README.md: tweaks
* src/main/perl/lib/Amazon/API.pm.in
- refactoring
- pod updates
(_create_query_string): new
(_format_content): new
(invoke_api): use above to reduce complexity
(submit): DEBUG
* src/main/perl/lib/Amazon/API/ECR.pm.in: new
* src/main/perl/lib/Makefile.am: add above to build
* cpan/README.md: new
* .gitignore: add cpan/* files
Tue Mar 29 15:01:43 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.5 - bump version]:
* VERSION: bump
Tue Mar 29 11:52:53 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.4 - fix CPAN distribution]:
* cpan/Makefile.am
* cpan/buildspec.yml
* cpan/requires
* src/main/perl/lib/Amazon/API.pm.in: use () for parent
* src/main/perl/lib/Amazon/API/CloudWatchLogs.pm.in
- likewise
- use @PACKAGE_VERSION@ for versioning
* src/main/perl/lib/Amazon/API/ECS.pm.in: likewise
* src/main/perl/lib/Amazon/API/Error.pm.in: likewise
* src/main/perl/lib/Amazon/API/SQS.pm.in: likewise
* src/main/perl/lib/Amazon/API/SSM.pm.in: likewise
* src/main/perl/lib/Amazon/API/SecretsManager.pm.in: likewise
* src/main/perl/lib/Amazon/API/EC2.pm.in
- likewise
- remove use of %API_DEFINITION
* src/main/perl/lib/Makefile.am
- add stub modules to CLEANFILES
Fri Mar 25 17:12:49 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.3 - pass headers]:
* VERSION: bump
* src/main/perl/lib/Amazon/API.pm.in
- export param_n
- pod tweaks
(decode_response): unload arguments
(invoke_api)
- set default content to passed $parameters
- set content to {} if undefined
- added debugging statements
(submit)
- send optional headers too
(param_n): use $idx as indicator of first call
* .perlcritic: documentation exception
* cpan/Makefile.am: only set -x for DEBUG
* README.md: tweaks
* src/examples/README.me: tweaks
* src/examples/ec2.pm
- +DescribeVpcs, DescribeSubnets
* src/examples/secrets-manager.pm
- localize Data::Dumper vars
* src/main/perl/Amazon/API/EC2.pm.in: new
* src/main/perl/Amazon/API/ECS.pm.in: new
* src/main/perl/Amazon/API/SQS.pm.in: new
* src/main/perl/Amazon/API/SSM.pm.in: new
* src/main/perl/Amazon/API/CloudWatchLogs.pm.in: new
* src/main/perl/Amazon/API/SecretsManager.pm.in: new
* src/main/perl/lib/Makefile.am
- add above to build
Fri Mar 4 12:42:35 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.2 - localize Data::Dumper parameters]:
* VERSION: bump
* src/main/perl/lib/Amazon/API.pm.in
- localize Data::Dumper settings
Tue Mar 1 08:23:52 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.1 - requirements]:
* VERSION: bump
* cpan/requires: add Find::ShareDir::Install to dependencies
* cpan/buildspec.yml: dependencies
* cpan/Makefile.am: requires is a dependency for cpan build
* perl-Amazon-API.spec.in: man pages
* README.md: cpan building, examples, badge
* src/examples/README.md: LocalStack
* src/main/perl/lib/Makefile.am: use if/then to avoid bad exit
Sun Feb 20 08:40:43 2022 Rob Lauer <rlauer6@comcast.net>
[1.2.0 - examples, perlcritic cleanup]:
* configure.ac
- use VERSION
- output version
* cpan/Makefile.am:
- add NOCLEANUP, DRYRUN, SCANDEPS, NOVERSION env options
- CLEANFILES
* src/main/perl/Makefile.am: include pwd for perl libraries
* src/main/perl/lib/Makefile.am
- remove echo
* src/main/perl/lib/Amazon/API/Signature4.pm.in
- use // for qw not q{} (perlreq)
- plain versions
- perlcritic cleanup
* Makefile.am: make cpan
* src/main/perl/lib/Amazon/API/Error.pm.in
- move pod to bottom
- perlcritic cleanup
* src/main/perl/lib/Amazon/API.pm.in
- update pod
- move pod to bottom
- extensive perlcritic cleanup
(new)
- don't pass debug to Amazon::Credentials
- don't create signer to avoid storing credentials
(decode_response): new, try *very* hard to decode responses
(get_api_name): removed
(_set_default_logger): new
(_set_defaults)
- allow '' as valid region for global services
(invoke_api):
- support legacy behavior of decoding responses for GET operations
(submit)
- create signer on every invocation to avoid storing credentials
(param_n): new
* .perlcriticrc
* .perltidyrc
* cpan/requires
* cpan/buildspec.yml
- add examples
- resources
Wed Jan 26 14:07:07 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.10]:
* VERSION: new
* configure.ac: use VERSION
* cpan/Makefile.am
- options on command line to control make-cpan-dist
* src/main/perl/Makefile.am: abs path for -I
* requires: new
* cpan/buildspec.yml: dependencies
* src/main/perl/lib/Amazon/API.pm.in
(_create_methods)
- only create method if they do not exists
(invoke_api)
- test passed content-type, not default content-type
Mon Jan 24 15:42:31 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.9]:
* src/main/perl/lib/Amazon/API.pm.in
- pod cleanup, enhancements
- refactoring
Mon Jan 24 15:09:10 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.8]:
* src/main/perl/t/amazon-api.t: get_token()
Mon Jan 24 13:00:55 2022 Rob Lauer <rlauer6@comast.net>
[1.1.8]: Signature4
* src/main/perl/lib/Amazon/API/Signature4.pm.in: new
* src/main/perl/lib/Makefile.am
- add above to build
- add PERL5LIB to include path
* src/main/perl/lib/Amazon/API.pm.in
- use new Signature4 to send service
Sun Jan 23 19:32:42 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.7]:
* src/main/perl/lib/Amazon/API/Error.pm.in: pod tweaks
* src/main/perl/lib/Amazon/API.pm.in
- make Data::Dumper behave in a JSONy way
- added decode_always option
- print_error, raise_error options
(new)
- defaults are print_error, raise_error
- decode_always default is false
(invoke_api)
- save http response
- die with print_error message
- decode responses if decode_always
(print_error): new
Sun Jan 23 07:57:42 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.6]:
* confgure.ac: bump
* src/main/perl/lib/Amazon/API.pm.in
- tweaks to pod
(new)
- use Amazon::Credentials as default credential provider
(invoke_api): assume {} if no parameter and content_type is json
Sat Jan 22 17:52:28 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.5]:
* configure.ac: bump version
* src/main/perl/lib/Amazon/API.pm.in
- JSON::PP
- XML::LibXML::Simple
* src/main/perl/lib/Amazon/Error.pm.in: likewise
* bootstrap: bump, VERSION support
Mon Dec 17 10:16:01 2018 Rob Lauer <rlauer6@comcast.net>
[1.1.4-1]:
* cpan/buildspec.yml: add ChangeLog
* cpan/Makefile.am
- rename tarball if minor relase
- PHONY, not PHONEY
* configure.ac: bump
Fri Dec 7 13:44:32 2018 Rob Lauer <rlauer6@comcast.net>
[1.1.4]:
* configure.ac: bump version
* Makefile.am: cpan
* cpan/Makfile.am: new
* cpan/buildspec.yml: remove ref to git project, build locally
* src/main/perl/Makefile.am: verbose mode for tests, add -v to prove
* src/main/perl/lib/Amazon/API.pm.in
- our $VERSION
(pod): indicate require args in new()
* src/main/perl/t/amazon-api.t: only need 1 test, provide getters()
* bootstrap: new
* ChangeLog: new