Skip to content

chore: update beta->gamma in README.md #1210

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 27, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 17 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
# AWS SDK for JavaScript v3 beta
# AWS SDK for JavaScript v3 gamma

![Build Status](https://codebuild.us-west-2.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiMmtFajZWQmNUbEhidnBKN1VncjRrNVI3d0JUcFpGWUd3STh4T3N3Rnljc1BMaEIrYm9HU2t4YTV1RlE1YmlnUG9XM3luY0Ftc2tBc0xTeVFJMkVOa24wPSIsIml2UGFyYW1ldGVyU3BlYyI6IlBDMDl6UEROK1dlU1h1OWciLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=master)
[![codecov](https://codecov.io/gh/aws/aws-sdk-js-v3/branch/master/graph/badge.svg)](https://codecov.io/gh/aws/aws-sdk-js-v3)
[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg)](https://github.com/prettier/prettier)
[![Dependabot Status](https://api.dependabot.com/badges/status?host=github&repo=aws/aws-sdk-js-v3)](https://dependabot.com)

The **AWS SDK for JavaScript v3 beta** is a rewrite of V2 with some great new features. As with version 2, it enables you to easily work with [Amazon Web Services](https://aws.amazon.com/), but has been written in TypeScript and adds several frequently requested features, like modularized packages.
The **AWS SDK for JavaScript v3 gamma** is a rewrite of V2 with some great new features. As with version 2, it enables you to easily work with [Amazon Web Services](https://aws.amazon.com/), but has been written in TypeScript and adds several frequently requested features, like modularized packages.

Many aspects of the SDK have been refactored and cleaned up, in addition to generating service client packages instead of hydrating services at SDK runtime. The v3 beta is your chance to influence the direction of the new AWS SDK for JavaScript. Tell us what you like, tell us what you don’t like by [opening an issue](https://github.com/aws/aws-sdk-js-v3/issues/new/choose). Your feedback matters to us.
Many aspects of the SDK have been refactored and cleaned up, in addition to generating service client packages instead of hydrating services at SDK runtime. The v3 gamma is your chance to influence the direction of the new AWS SDK for JavaScript. Tell us what you like, tell us what you don’t like by [opening an issue](https://github.com/aws/aws-sdk-js-v3/issues/new/choose). Your feedback matters to us.

## Production Readiness

This project is in beta. We want feedback from you, and may make breaking changes in future releases while the SDK is still in beta.
This project is in gamma. We want feedback from you, and may make breaking changes in future releases while the SDK is still in gamma.

The new AWS SDK for JavaScript will also be able to run alongside the version 2.x SDK in the same package to allow partial migration to the new product. As we get close to general availability for version 3, we’ll share a more detailed plan on how we’ll support the 2.x line.

Expand All @@ -20,7 +20,7 @@ The new AWS SDK for JavaScript will also be able to run alongside the version 2.
Let’s walk through setting up a project that depends on DynamoDB from the SDK and makes a simple service call. The following steps use yarn as an example. These steps assume you have Node.js and yarn already installed.

1. Create a new Node.js project.
2. Inside of the project, run: `yarn add @aws-sdk/client-dynamodb@beta`
2. Inside of the project, run: `yarn add @aws-sdk/client-dynamodb@gamma`
3. Create a new file called index.js, create a DynamoDB service client and send a request.

```javascript
Expand Down Expand Up @@ -59,7 +59,7 @@ const { DynamoDB } = require("@aws-sdk/client-dynamodb");

If you use tree shaking to reduce bundle size, using non-modular interface will increase the bundle size as compared to using modular interface.

<!-- Uncomment when numbers are available for beta clients
<!-- Uncomment when numbers are available for gamma clients
In our workshop code, a lambda with DynamoDBClient and a command takes ~18kB while DynamoDB takes ~26 kB ([details](https://github.com/aws-samples/aws-sdk-js-v3-workshop/blob/dc3ad778b04dfe3f8f277dca67162da79c937eca/Exercise1/backend/README.md#reduce-bundle-size-by-just-importing-dynamodb)) -->

## New features
Expand All @@ -68,21 +68,21 @@ In our workshop code, a lambda with DynamoDBClient and a command takes ~18kB whi

The SDK is now split up across multiple packages. The 2.x version of the SDK contained support for every service. This made it very easy to use multiple services in a project. Due to the limitations around reducing the size of the SDK when only using a handful of services or operations, many customers requested having separate packages for each service client. We have also split up the core parts of the SDK so that service clients only pull in what they need. For example, a service sends responses in JSON will no longer need to also have an XML parser as a dependency.

For those that were already importing services as sub-modules from the version 2.x SDK, the import statement doesn’t look too different. Here’s an example of importing the AWS Lambda service in version 2.0 of the SDK, and the beta:
For those that were already importing services as sub-modules from the version 2.x SDK, the import statement doesn’t look too different. Here’s an example of importing the AWS Lambda service in version 2.0 of the SDK, and the gamma:

```javascript
// import the Lambda client constructor in version 2.0 of the SDK
const Lambda = require("aws-sdk/clients/lambda");

// import the Lambda client constructor in version 3.0 beta
// import the Lambda client constructor in version 3.0 gamma
const { Lambda } = require("@aws-sdk/client-lambda");
```

It is also possible to import both versions of the Lambda client by changing the variable name the Lambda constructor is stored in.

### API changes

We’ve made several public API changes to improve consistency, make the SDK easier to use, and remove deprecated or confusing APIs. The following are some of the big changes included in the new AWS SDK for JavaScript v3 beta.
We’ve made several public API changes to improve consistency, make the SDK easier to use, and remove deprecated or confusing APIs. The following are some of the big changes included in the new AWS SDK for JavaScript v3 gamma.

#### Configuration

Expand All @@ -92,7 +92,7 @@ However, these configurations would first be merged automatically into a copy of
Also, calling `AWS.config.update({/* params *})` only updated configuration for service clients instantiated after the update call was made, not any existing clients.

This behavior was a frequent source of confusion, and made it difficult to add configuration to the global object that only affects a subset of service clients in a forward-compatible way.
In v3 beta, there is no longer a global configuration managed by the SDK.
In v3 gamma, there is no longer a global configuration managed by the SDK.
Configuration must be passed to each service client that is instantiated.
It is still possible to share the same configuration across multiple clients but that configuration will not be automatically merged with a global state.

Expand Down Expand Up @@ -154,26 +154,26 @@ All clients have been published to NPM and can be installed as described above.
yarn pack .
```

`yarn pack` will create an archive file in the client package folder, e.g. `aws-sdk-client-dynamodb-v1.0.0-beta.1.tgz`.
`yarn pack` will create an archive file in the client package folder, e.g. `aws-sdk-client-dynamodb-v1.0.0-gamma.1.tgz`.

1. Change directory to the project you are working on and move the archive to the location to store the vendor packages:

```
mv path/to/aws-sdk-js-v3/clients/client-dynamodb/aws-sdk-client-dynamodb-v1.0.0-beta.1.tgz ./path/to/vendors/folder
mv path/to/aws-sdk-js-v3/clients/client-dynamodb/aws-sdk-client-dynamodb-v1.0.0-gamma.1.tgz ./path/to/vendors/folder
```

1. Install the package to your project:

```
yarn add ./path/to/vendors/folder/aws-sdk-client-dynamodb-v1.0.0-beta.1.tgz
yarn add ./path/to/vendors/folder/aws-sdk-client-dynamodb-v1.0.0-gamma.1.tgz
```

### Giving feedback and contributing

You can provide feedback to us in several ways. Both positive and negative feedback is appreciated.
While the SDK is in beta, you may encounter bugs while using it.
While the SDK is in gamma, you may encounter bugs while using it.
If you do, please feel free to [open an issue](https://github.com/aws/aws-sdk-js-v3/issues/new/choose) on our GitHub repository.
Our GitHub issues page also includes work we know still needs to be done before exiting the beta state.
Our GitHub issues page also includes work we know still needs to be done before exiting the gamma state.

#### Feedback

Expand All @@ -182,11 +182,11 @@ This is the preferred mechanism to give feedback so that other customers can eng
Issues you open will be evaluated, and included in our roadmap for the GA launch.

**Gitter channel**. For informal discussion or general feedback, you may join the [Gitter chat](https://gitter.im/aws/aws-sdk-js-v3).
The Gitter channel is also a great place to get help with v3 beta from other developers. JS SDK team doesn't
The Gitter channel is also a great place to get help with v3 gamma from other developers. JS SDK team doesn't
track the discussion daily, so feel free to open a GitHub issue if your question is not answered there.

#### Contributing

You can open pull requests for fixes or additions to the new AWS SDK for JavaScript v3 beta.
You can open pull requests for fixes or additions to the new AWS SDK for JavaScript v3 gamma.
All pull requests must be submitted under the Apache 2.0 license and will be reviewed by an SDK team member prior to merging.
Accompanying unit tests are appreciated. See [Contributing](CONTRIBUTING.md) for more information.