diff --git a/src/content/docs/r2/api/s3/api.mdx b/src/content/docs/r2/api/s3/api.mdx index 365825d1e4fed91..236692a6fff9357 100644 --- a/src/content/docs/r2/api/s3/api.mdx +++ b/src/content/docs/r2/api/s3/api.mdx @@ -28,6 +28,18 @@ When using the S3 API, the region for an R2 bucket is `auto`. For compatibility This also applies to the `LocationConstraint` for the `CreateBucket` API. +## Checksum Types + +Checksums have an algorithm and a [type](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#ChecksumTypes). Refer to the table below. + +| Checksum Algorithm | `FULL_OBJECT` | `COMPOSITE` | +| ------------------------- | ------------- | ----------- | +| CRC-64/NVME (`CRC64NVME`) | ✅ | ❌ | +| CRC-32 (`CRC32`) | ❌ | ✅ | +| CRC-32C (`CRC32C`) | ❌ | ✅ | +| SHA-1 (`SHA1`) | ❌ | ✅ | +| SHA-256 (`SHA256`) | ❌ | ✅ | + ## Bucket-level operations The following tables are related to bucket-level operations. diff --git a/src/content/docs/r2/examples/aws/aws-cli.mdx b/src/content/docs/r2/examples/aws/aws-cli.mdx index 5117abe6c679f0e..6e019e82ac05ee6 100644 --- a/src/content/docs/r2/examples/aws/aws-cli.mdx +++ b/src/content/docs/r2/examples/aws/aws-cli.mdx @@ -10,17 +10,6 @@ import { Render } from "~/components"; With the [`aws`](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) CLI installed, you may run [`aws configure`](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config) to configure a new profile. You will be prompted with a series of questions for the new profile's details. -:::note[Compatibility] -Client versions `2.23.0` and `1.37.0` introduced a modification to the default checksum behavior from the client that is currently incompatible with R2 APIs. - -To mitigate, users can use `2.22.35` or `1.36.40`, or alternatively, add the CRC32 checksum flag to the cli command: - -```sh -aws s3api put-object --bucket sdk-example --key sdk.png --body file/path --checksum-algorithm CRC32 -``` - -::: - ```shell aws configure ``` diff --git a/src/content/docs/r2/examples/aws/aws-sdk-go.mdx b/src/content/docs/r2/examples/aws/aws-sdk-go.mdx index bbb77ff1bdd18b4..f8d61c83a67bc5b 100644 --- a/src/content/docs/r2/examples/aws/aws-sdk-go.mdx +++ b/src/content/docs/r2/examples/aws/aws-sdk-go.mdx @@ -10,18 +10,6 @@ import { Render } from "~/components"; This example uses version 2 of the [aws-sdk-go](https://github.com/aws/aws-sdk-go-v2) package. You must pass in the R2 configuration credentials when instantiating your `S3` service client: -:::note[Compatibility] -Client version `1.73.0` introduced a modification to the default checksum behavior from the client that is currently incompatible with R2 APIs. - -To mitigate, users can use `1.72.3` or add the following to their config: - -```go -config.WithRequestChecksumCalculation(0) -config.WithResponseChecksumValidation(0) -``` - -::: - ```go package main diff --git a/src/content/docs/r2/examples/aws/aws-sdk-java.mdx b/src/content/docs/r2/examples/aws/aws-sdk-java.mdx index 1fd21e6027ab745..1a670b6cf0abaf4 100644 --- a/src/content/docs/r2/examples/aws/aws-sdk-java.mdx +++ b/src/content/docs/r2/examples/aws/aws-sdk-java.mdx @@ -10,18 +10,6 @@ import { Render } from "~/components"; This example uses version 2 of the [aws-sdk-java](https://github.com/aws/aws-sdk-java-v2/#using-the-sdk) package. You must pass in the R2 configuration credentials when instantiating your `S3` service client: -:::note[Compatibility] -Client version `2.30.0` introduced a modification to the default checksum behavior from the client that is currently incompatible with R2 APIs. - -To mitigate, users can use `2.29.52` or add the following to their S3Config: - -```java -this.requestChecksumCalculation = "when_required", -this.responseChecksumValidation = "when_required" -``` - -::: - ```java import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider; diff --git a/src/content/docs/r2/examples/aws/aws-sdk-js-v3.mdx b/src/content/docs/r2/examples/aws/aws-sdk-js-v3.mdx index 8e4d1f1c3671488..33e1224b2db7a8e 100644 --- a/src/content/docs/r2/examples/aws/aws-sdk-js-v3.mdx +++ b/src/content/docs/r2/examples/aws/aws-sdk-js-v3.mdx @@ -14,18 +14,6 @@ JavaScript or TypeScript users may continue to use the [`@aws-sdk/client-s3`](ht Currently, you cannot use AWS S3-compatible API while developing locally via `wrangler dev`. ::: -:::note[Compatibility] -Client version `3.729.0` introduced a modification to the default checksum behavior from the client that is currently incompatible with R2 APIs. - -To mitigate, users can use `3.726.1` or add the following to their S3Client config: - -```ts -requestChecksumCalculation: "WHEN_REQUIRED", -responseChecksumValidation: "WHEN_REQUIRED", -``` - -::: - ```ts import { S3Client, diff --git a/src/content/docs/r2/examples/aws/aws-sdk-net.mdx b/src/content/docs/r2/examples/aws/aws-sdk-net.mdx index 75f0ec2c2fa4414..5eabcd8e5317c10 100644 --- a/src/content/docs/r2/examples/aws/aws-sdk-net.mdx +++ b/src/content/docs/r2/examples/aws/aws-sdk-net.mdx @@ -14,18 +14,6 @@ This example uses version 3 of the [aws-sdk-net](https://www.nuget.org/packages/ In this example, you will pass credentials explicitly to the `IAmazonS3` initialization. If you wish, use a shared AWS credentials file or the SDK store in-line with other AWS SDKs. Refer to [Configure AWS credentials](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config-creds.html) for more details. -:::note[Compatibility] -Client version `3.7.963.0` introduced a modification to the default checksum behavior from the client that is currently incompatible with R2 APIs. - -To mitigate, users can use `3.7.962.0` or add the following to their AmazonS3Config: - -```csharp -RequestChecksumCalculation = "WHEN_REQUIRED", -ResponseChecksumValidation = "WHEN_REQUIRED" -``` - -::: - ```csharp private static IAmazonS3 s3Client; diff --git a/src/content/docs/r2/examples/aws/aws-sdk-php.mdx b/src/content/docs/r2/examples/aws/aws-sdk-php.mdx index d956e5999cbfdca..03b366629b5767c 100644 --- a/src/content/docs/r2/examples/aws/aws-sdk-php.mdx +++ b/src/content/docs/r2/examples/aws/aws-sdk-php.mdx @@ -12,18 +12,6 @@ import { Render } from "~/components"; This example uses version 3 of the [aws-sdk-php](https://packagist.org/packages/aws/aws-sdk-php) package. You must pass in the R2 configuration credentials when instantiating your `S3` service client: -:::note[Compatibility] -Client version `3.337.0` introduced a modification to the default checksum behavior from the client that is currently incompatible with R2 APIs. - -To mitigate, users can use `3.336.15` or add the following to their $options: - -```php -'request_checksum_calculation' => 'when_required', -'response_checksum_validation' => 'when_required' -``` - -::: - ```php