Releases: paws-r/paws
Releases · paws-r/paws
paws.common-v0.7.2
Performance: 🚀
- improve performance of restxml_unmarshal up to ~ x3
New Feature: 💡
- support global endpoint_url in config file and environmental variables (#764), thanks to @James-G-Hill for raising issue
Bug Fix: 🐞
- fix rest_unmarshal_location_elements only skip header if location is not found (#761)
- ensure custom endpoints aren't modified
paws.common-v0.7.1
Performance: 🚀
- minor performance enhancements
- convert
json_convert_string
tocpp
for significant performance improvement (#754) - convert components of
resolve_endpoint
tocpp
to get a x2 performance enhancements
New Feature: 💡
Bug Fix: 🐞
- fix MIME type for AWS BedrockRuntime Client (#749), thanks to @alex23lemm for raising issue.
paws-v0.5.0
New Methods for paws categories:
- accessanalyzer
- appfabric
- apprunner
- arczonalshift
- backup
- bedrock
- bedrockruntime
- billingconductor
- cloudtraildataservice
- cloudwatchinternetmonitor
- cloudwatchlogs
- cloudwatchobservabilityaccessmanager
- codecatalyst
- codecommit
- codegurusecurity
- codestarconnections
- comprehend
- connect
- connectcases
- connectwisdomservice
- controltower
- costandusagereportservice
- customerprofiles
- datazone
- detective
- docdbelastic
- drs
- ec2
- ecr
- efs
- eks
- elasticache
- elbv2
- emr
- entityresolution
- eventbridgepipes
- eventbridgescheduler
- finspace
- fis
- fsx
- globalaccelerator
- glue
- guardduty
- Imagebuilder
- ivsrealtime
- kafka
- kendraranking
- kinesis
- lakeformation
- lexmodelsv2
- licensemanagerlinuxsubscriptions
- lookoutequipment
- marketplacecatalog
- neptunedata
- omics
- opensearchingestion
- opensearchservice
- opensearchserviceserverless
- paymentcryptographycontrolplane
- paymentcryptographydataplane
- pcaconnectorad
- personalizeevents
- personalizeruntime
- pinpointsmsvoicev2
- prometheusservice
- quicksight
- rds
- redshift
- redshiftserverless
- rekognition
- resourceexplorer
- route53recoverycontrolconfig
- s3
- s3control
- sagemaker
- sagemakergeospatialcapabilities
- sagemakermetrics
- secretsmanager
- securitylake
- servicediscovery
- sfn
- ssm
- ssmincidents
- ssmsap
- ssoadmin
- supportapp
- telconetworkbuilder
- textract
- transcribeservice
- verifiedpermissions
- vpclattice
- wellarchitected
- workmail
- workspaces
Remove Api methods:
- Macie
paws.common-v0.7.0
New Features: 💡
Example of how to use SSECustomerKey
and SSECustomerAlgorithm
library(paws)
KEY <- openssl::rand_bytes(32)
BUCKET <- 'mybucket'
client <- s3()
resp1 <- client$put_object(
Bucket=BUCKET,
Key='encrypt-key-1',
Body=charToRaw('foobar'),
SSECustomerKey= KEY,
SSECustomerAlgorithm='AES256'
)
resp2 <- client$get_object(
Bucket=BUCKET,
Key='encrypt-key-1',
SSECustomerKey=KEY,
SSECustomerAlgorithm='AES256'
)
resp2$Body |> rawToChar()
#> [1] "foobar"
# saving key to file for later use:
temp_file <- tempfile()
writeBin(KEY, temp_file)
resp3 <- client$put_object(
Bucket=BUCKET,
Key='encrypt-key-2',
Body=charToRaw('did it work?'),
SSECustomerKey=readBin(temp_file, "raw", n = file.size(temp_file)),
SSECustomerAlgorithm='AES256'
)
resp4 <- client$get_object(
Bucket=BUCKET,
Key='encrypt-key-2',
SSECustomerKey=readBin(temp_file, "raw", n = file.size(temp_file)),
SSECustomerAlgorithm='AES256'
)
resp4$Body |> rawToChar()
#> [1] "did it work?"
Created on 2024-01-09 with reprex v2.0.2
- add pagination StopOnSameToken option (#721) aligns with aws-sdk-js-v3 implementation (https://github.com/aws/aws-sdk-js-v3/releases/tag/v3.78.0). Thanks to @wlandau for raising error in paginate.
Example:
library(paws)
client = cloudwatchlogs()
pages <- paws.common::paginate(
client$get_log_events(
logGroupName = "/aws/sagemaker/NotebookInstances",
logStreamName = "paws-demo/jupyter.log",
startFromHead = TRUE
),
StopOnSameToken = TRUE
)
length(pages)
#> [1] 9
Created on 2024-01-09 with reprex v2.0.2
- support AWS_CONTAINER_CREDENTIALS_FULL_URI environmental variable. This supports services like sagemaker serverless endpoints (#737). Thanks to @ncullen93 for raising issue and testing.
Bug Fix: 🐞
- fix aws-global region when resolving endpoint (#730). Thanks to @atheriel for identifying the issue.
- fix default region for service s3 (#730). Thanks to @atheriel for identifying the issue.
Internal: ⚙️
- tidy up internal function jmespath_index
paws.common 0.6.4
Build Fixes 🐛
- ensure xml build structure is correctly flattened (#597)
- fix cache failing to initialize on certain environments. Restrict scope of cached environment variables to only those starting with
AWS_*
(#706, @fh-mthomson) - fix issue of sorting query mapping causing misalignment (#711). Thanks to @matthias-Q for raising issue.
paws.common 0.6.3
- minor performance improvement for
read_ini
- cache
read_ini
for improved performance - cache unix os environment variables to improve performance on unix systems.
- support
web_identity_token_file
in AWS config file thanks to @liuquinlin for implementation. - fix paginate functions failing to receive argument inputs when called within a function (#696). Thanks to @fh-mthomson for identifying issue.
- fix
NULL
methodas.POSIXct.default
for older versions of R (#698). Thanks to @gp-dev-pw for identifying issue - fix
escape
function by removing protocol check (#701)
paws.common-v0.6.2
paws.common-v0.6.1
Feature:
- support nested content within ini files (#667) Configuration and credential file settings
Bug Fix:
- fix how nested structure are parsed from xml (#675)
paws-v0.4.0
New Features:
- Helper functions
config
,credentails
,cred
. These functions build paws config allowing for code complete (linked issues: #421).
library(paws)
client <- s3(config(credentials(profile = "paws")))
- Support paginator for paws methods paws paginators (linked issues: #30 #487).
library(paws)
client <- s3()
# list client paginators
list_paginators(client)
#> [1] "list_multipart_uploads" "list_object_versions" "list_objects"
#> [4] "list_objects_v2" "list_parts"
# paginate over
resp <- client$list_objects_v2("my-bucket") |> paginate()
Created on 2023-09-15 with reprex v2.0.2
- Generating pre-signed using s3v4 signature version (linked issues: #645).
library(paws)
client <- s3(config(signature_version = "s3v4"))
client$generate_presigned_url("list_objects", params = list(Bucket = "my-bucket"))
New methods:
applicationinsights:
- applicationinsights_add_workload
- applicationinsights_list_workloads
- applicationinsights_remove_workload
- applicationinsights_update_problem
- applicationinsights_update_workload
appstream:
- appstream_associate_app_block_builder_app_block
- appstream_create_app_block_builder_streaming_url
- appstream_create_app_block_builder
- appstream_delete_app_block_builder
- appstream_describe_app_block_builder_app_block_associations
- appstream_describe_app_block_builders
- appstream_disassociate_app_block_builder_app_block
- appstream_start_app_block_builder
- appstream_stop_app_block_builder
- appstream_update_app_block_builder
auditmanager:
backup:
cloudformation:
codecommit:
cognitoidentityprovider:
- cognitoidentityprovider_get_log_delivery_configuration
- cognitoidentityprovider_set_log_delivery_configuration
computeoptimizer:
connect:
- connect_associate_traffic_distribution_group_user
- connect_delete_queue
- connect_delete_routing_profile
- connect_disassociate_traffic_distribution_group_user
- connect_list_traffic_distribution_group_users
- connect_search_resource_tags
- connect_update_routing_profile_agent_availability_timer
connectparticipant:
costexplorer:
customerprofile:
elasticache:
emr:
health:
iam:
inspector2:
- inspector2_batch_get_code_snippet
- inspector2_batch_get_finding_details
- inspector2_cancel_sbom_export
- inspector2_create_sbom_export
- inspector2_get_encryption_key
- inspector2_get_sbom_export
- inspector2_reset_encryption_key
- inspector2_update_encryption_key
ivs:
kafka:
kendra:
lexmodelsv2:
- lexmodelsv2_list_intent_metrics
- lexmodelsv2_list_intent_paths
- lexmodelsv2_list_intent_stage_metrics
- lexmodelsv2_list_session_analytics_data
- lexmodelsv2_list_session_metrics
- lexmodelsv2_list_utterance_analytics_data
- lexmodelsv2_list_utterance_metrics
lookoutequipment:
- lookoutequipment_delete_resource_policy
- lookoutequipment_describe_model_version
- lookoutequipment_describe_resource_policy
- lookoutequipment_import_dataset
- lookoutequipment_import_model_version
- lookoutequipment_list_model_versions
- lookoutequipment_put_resource_policy
- lookoutequipment_update_active_model_version
managedgrafana:
mq:
personalize:
pi:
- pi_create_performance_analysis_report
- pi_delete_performance_analysis_report
- pi_get_performance_analysis_report
- [pi_list_tags_for_reso...
paws.common-v0.6.0
Performance:
- use known interface when parsing xml (#619) improving performance by 3-6x. Thanks to @mgirlich for raising, implementing initial method and testing. 🚀
Enhancements:
- add expiration parameter to
creds
- add
signature_version
toconfig
(#645) - add the ability to
paginate
paws methods (#30). Note: this prep work for paws 0.4.0 - overwrite file destination when writing to disk. This mimics python's boto3 sdk behaviour.
- add standard retry handler (#520). Thanks to @wlandau for testing.
Example:
install.packages('paws', repos = c(pawsr = 'https://paws-r.r-universe.dev', CRAN = 'https://cloud.r-project.org'))
# Note: using paws v0.4.0 to paginate over AWS call to demonstrate the new retry functionality
library(paws)
client <- sagemaker()
resp <- client$list_processing_jobs() |> paginate()
#> ERROR [2023-08-31 15:44:41.206]: Request failed. Retrying in 0.016 seconds...
#> ERROR [2023-08-31 15:44:41.229]: Request failed. Retrying in 3.026 seconds...
#> ERROR [2023-08-31 15:44:44.289]: Request failed. Retrying in 2.505 seconds...
#> Error: ThrottlingException (HTTP 400). Rate exceeded
library(paws)
# increasing max number of retries from default 3 to 10.
client <- s3(config = list(max_retries = 10))