Skip to content

Commit e9c1bf9

Browse files
committed
Merge branch 'dev' into feature/nikithauc-msal-browser
2 parents 9aeaa4d + 2cdf1f7 commit e9c1bf9

File tree

4 files changed

+189
-188
lines changed

4 files changed

+189
-188
lines changed

.github/workflows/ci_validation.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212

1313
strategy:
1414
matrix:
15-
node-version: [10.x, 12.x, 14.x, 15.x]
15+
node-version: [12.x, 14.x, 16.x]
1616
steps:
1717
- uses: actions/checkout@v2
1818
- name: Use Node.js ${{ matrix.node-version }}

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ The Microsoft Graph JavaScript client library is a lightweight wrapper around th
5959

6060
## Node version requirement
6161

62-
Node.js 10 LTS or higher.
62+
Node.js 12 LTS or higher. The active Long Term Service (LTS) version of Node.js is used for on-going testing of existing and upcoming product features.
6363

6464
## Installation
6565

changelogs/v3-upgrade-guide.md

+50-49
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,72 @@
11
# Microsoft JavaScript SDK v3 upgrade guide
22

3-
- [Breaking Changes](#Breaking-Changes)
4-
- [Enhancements](#Enhancements)
5-
- [Deprecation](#Deprecation)
3+
- [Breaking Changes](#Breaking-Changes)
4+
- [Enhancements](#Enhancements)
5+
- [Deprecation](#Deprecation)
6+
67
## Breaking Changes
78

89
### Supported Node version and TypeScript update
9-
- Microsoft Graph JS SDK requires Node.js 10 LTS or higher.
10-
- Updated to TypeScript 4.x.
1110

12-
### LargeFileUploadTask
13-
- Modified the `FileObject` interface which now contains the `sliceFile` function. Learn more [LargeFileUploadTask](../docs/tasks/LargeFileUploadTask.md).
14-
- The `FileObject` instance passed on creation of the `LargeFileUploadTask` object should contain the implementation of the `sliceFile` function.
15-
- Added new classes `FileUpload` and `StreamUpload` implementing the `FileObject` interface.
11+
- Microsoft Graph JS SDK requires Node.js 12 LTS or higher. The active Long Term Service (LTS) version of Node.js is used for on-going testing of existing and upcoming product features.
12+
- Updated to TypeScript 4.x.
13+
14+
### LargeFileUploadTask
15+
16+
- Modified the `FileObject` interface which now contains the `sliceFile` function. Learn more [LargeFileUploadTask](../docs/tasks/LargeFileUploadTask.md).
17+
- The `FileObject` instance passed on creation of the `LargeFileUploadTask` object should contain the implementation of the `sliceFile` function.
18+
- Added new classes `FileUpload` and `StreamUpload` implementing the `FileObject` interface.
1619

1720
### Removed `timeout` option from `FetchOptions` interface
18-
- Recommended way is to [cancel a request](../docs/CancellingAHTTPRequest.md) by passing a signal.
21+
22+
- Recommended way is to [cancel a request](../docs/CancellingAHTTPRequest.md) by passing a signal.
1923

2024
### Update in the `package.json` entry points.
25+
2126
```json
2227
{
23-
"main": "lib/src/index.js",
24-
"module": "lib/es/src/index.js",
25-
"browser": {
26-
"./lib/es/src/index.js": "./lib/es/src/browser/index.js"
27-
}
28+
"main": "lib/src/index.js",
29+
"module": "lib/es/src/index.js",
30+
"browser": {
31+
"./lib/es/src/index.js": "./lib/es/src/browser/index.js"
32+
}
2833
}
2934
```
35+
3036
## Removed the `graph-es-sdk.js`
31-
- `graph-es-sdk.js` - the bundled file in ES format will not be shipped anymore as the ES modules are being shipped.
32-
- `graph-js-sdk.js` will be shipped as is.
37+
38+
- `graph-es-sdk.js` - the bundled file in ES format will not be shipped anymore as the ES modules are being shipped.
39+
- `graph-js-sdk.js` will be shipped as is.
3340

3441
## Changed folder paths
35-
- Files in `lib/es` have been moved to `lib/es/src`. The `lib` folder contains the transpiled `src` files.
36-
- The `lib` contains the ES and CJS modules as follows:
37-
```
38-
lib
39-
40-
└─── src (CJS modules)
41-
|
42-
43-
└─── es
44-
|___ src (ES modules)
45-
```
46-
- `Range`: `src/Range` changed to `src/tasks/FileUploadTask/Range`.
47-
- `ImplicitMSALAuthenticationProvider`:
48-
- `src/ImplicitMSALAuthenticationProvider` changed to `src/authentication/msal/ImplicitMSALAuthenticationProvider`.
49-
- Alternatively, `ImplicitMSALAuthenticationProvider` can be imported or required from `@microsoft/microsoft-graph-client/authProviders/msal`.
50-
- `MSALAuthenticationProviderOptions`:
51-
- `src/MSALAuthenticationProviderOptions` changed to `src/authentication/msal/MSALAuthenticationProviderOptions`.
52-
- Alternatively, `MSALAuthenticationProviderOptions` can be imported or required from `@microsoft/microsoft-graph-client/authProviders/msal`.
42+
43+
- Files in `lib/es` have been moved to `lib/es/src`. The `lib` folder contains the transpiled `src` files. - The `lib` contains the ES and CJS modules as follows: `lib │ └─── src (CJS modules) | │ └─── es |___ src (ES modules)`
44+
- `Range`: `src/Range` changed to `src/tasks/FileUploadTask/Range`.
45+
- `ImplicitMSALAuthenticationProvider`: - `src/ImplicitMSALAuthenticationProvider` changed to `src/authentication/msal/ImplicitMSALAuthenticationProvider`. - Alternatively, `ImplicitMSALAuthenticationProvider` can be imported or required from `@microsoft/microsoft-graph-client/authProviders/msal`.
46+
- `MSALAuthenticationProviderOptions`: - `src/MSALAuthenticationProviderOptions` changed to `src/authentication/msal/MSALAuthenticationProviderOptions`. - Alternatively, `MSALAuthenticationProviderOptions` can be imported or required from `@microsoft/microsoft-graph-client/authProviders/msal`.
47+
5348
## Enhancements
5449

5550
### Introducing support for `@azure/identity TokenCredentials`
56-
- Added a `TokenCredentialAuthenticationProvider` enabling the use of `@azure/identity` `credential classes` for authentication purposes.
57-
- The `TokenCredentialAuthenticationProvider` enables server-side authentication using `credential classes` such as `ClientSecretCredential` or `ClientCertificateCredential`.
58-
- Find the samples on how to use `TokenCredentialAuthenticationProvider` here - [TokenCredentialAuthenticationProvider samples](../samples/tokenCredentialSamples)
51+
52+
- Added a `TokenCredentialAuthenticationProvider` enabling the use of `@azure/identity` `credential classes` for authentication purposes.
53+
- The `TokenCredentialAuthenticationProvider` enables server-side authentication using `credential classes` such as `ClientSecretCredential` or `ClientCertificateCredential`.
54+
- Find the samples on how to use `TokenCredentialAuthenticationProvider` here - [TokenCredentialAuthenticationProvider samples](../samples/tokenCredentialSamples)
5955

6056
### LargeFileUploadTask
6157

62-
- Added support for Node.js Stream upload. Learn more [LargeFileUploadTask](../docs/tasks/LargeFileUploadTask.md).
63-
- Added capabilities to track the upload progress using `UploadEventHandlers`.
64-
- Resolved a bug to enable large file uploads to Outlook and Print APIs.
58+
- Added support for Node.js Stream upload. Learn more [LargeFileUploadTask](../docs/tasks/LargeFileUploadTask.md).
59+
- Added capabilities to track the upload progress using `UploadEventHandlers`.
60+
- Resolved a bug to enable large file uploads to Outlook and Print APIs.
6561

6662
### Added `browser` field in package.json.
67-
- The `browser` field indicates the entry point for client applications using Microsoft Graph JS SDK library.
63+
64+
- The `browser` field indicates the entry point for client applications using Microsoft Graph JS SDK library.
6865

6966
### Added `customHosts` options
70-
- The `AuthenticationHandler` and `TelemetryHandler` will add or update the request headers only if the request URL is a Graph endpoint or a custom endpoint.
71-
- `customHosts` property in `IOptions`, `IClientOptions` takes in a `Set` of custom hosts.
67+
68+
- The `AuthenticationHandler` and `TelemetryHandler` will add or update the request headers only if the request URL is a Graph endpoint or a custom endpoint.
69+
- `customHosts` property in `IOptions`, `IClientOptions` takes in a `Set` of custom hosts.
7270

7371
```typescript
7472
// Consider the custom request url is https://CUSTOM_HOST.com
@@ -78,13 +76,16 @@ const client = Client.initWithMiddleware({ middleware, customHosts });
7876
```
7977

8078
### Added `GraphClientError`
81-
- `GraphClientError` handles client-side errors encountered within the JavaScript Client SDK whereas, `GraphError` class should be used to handle errors in the response from the Graph API.
79+
80+
- `GraphClientError` handles client-side errors encountered within the JavaScript Client SDK whereas, `GraphError` class should be used to handle errors in the response from the Graph API.
8281

8382
## Deprecation
8483

85-
### Deprecating `ImplicitMSALAuthenticationProvider`
86-
- Use of `ImplicitMSALAuthenticationProvider`, that is,using the implicit authorization flow is not recommended any more. [OAuth 2.0 Implicit Grant](https://oauth.net/2/grant-types/implicit/).
87-
- Alternatively, you can implement a `CustomAuthenticationProvider` with an auth library of your choice. Learn more using the [samples](https://github.com/microsoftgraph/msgraph-sdk-javascript#samples-and-tutorials).
84+
### Deprecating `ImplicitMSALAuthenticationProvider`
85+
86+
- Use of `ImplicitMSALAuthenticationProvider`, that is,using the implicit authorization flow is not recommended any more. [OAuth 2.0 Implicit Grant](https://oauth.net/2/grant-types/implicit/).
87+
- Alternatively, you can implement a `CustomAuthenticationProvider` with an auth library of your choice. Learn more using the [samples](https://github.com/microsoftgraph/msgraph-sdk-javascript#samples-and-tutorials).
8888

8989
### Deprecating the `sliceFile` function of the `LargeFileUploadTask` class.
90-
- The `sliceFile` function has been moved to the `FileObject` interface.
90+
91+
- The `sliceFile` function has been moved to the `FileObject` interface.

0 commit comments

Comments
 (0)