2018-12-22 23:30:39 +01:00

11 KiB

Changelog

npm history

v2.0.2

12-16-2018 10:48 PST

Fixes

  • fix(types): export GCPEnv type (#569)
  • fix: use post for token revocation (#524)

Dependencies

  • fix(deps): update dependency lru-cache to v5 (#541)

Documentation

  • docs: add ref docs again (#553)
  • docs: clean up the readme (#554)

Internal / Testing Changes

  • chore(deps): update dependency @types/sinon to v7 (#568)
  • refactor: use execa for install tests, run eslint on samples (#559)
  • chore(build): inject yoshi automation key (#566)
  • chore: update nyc and eslint configs (#565)
  • chore: fix publish.sh permission +x (#563)
  • fix(build): fix Kokoro release script (#562)
  • build: add Kokoro configs for autorelease (#561)
  • chore: always nyc report before calling codecov (#557)
  • chore: nyc ignore build/test by default (#556)
  • chore(build): update the prettier and renovate config (#552)
  • chore: update license file (#551)
  • fix(build): fix system key decryption (#547)
  • chore(deps): update dependency typescript to ~3.2.0 (#546)
  • chore(deps): unpin sinon (#544)
  • refactor: drop non-required modules (#542)
  • chore: add synth.metadata (#537)
  • fix: Pin @types/sinon to last compatible version (#538)
  • chore(deps): update dependency gts to ^0.9.0 (#531)
  • chore: update eslintignore config (#530)
  • chore: drop contributors from multiple places (#528)
  • chore: use latest npm on Windows (#527)
  • chore: update CircleCI config (#523)
  • chore: include build in eslintignore (#516)

v2.0.1

Implementation Changes

  • fix: verifyIdToken will never return null (#488)
  • Update the url to application default credentials (#470)
  • Update omitted parameter 'hd' (#467)

Dependencies

  • chore(deps): update dependency nock to v10 (#501)
  • chore(deps): update dependency sinon to v7 (#502)
  • chore(deps): update dependency typescript to v3.1.3 (#503)
  • chore(deps): update dependency gh-pages to v2 (#499)
  • chore(deps): update dependency typedoc to ^0.13.0 (#497)

Documentation

  • docs: Remove code format from Application Default Credentials (#483)
  • docs: replace google/ with googleapis/ in URIs (#472)
  • Fix typo in readme (#469)
  • Update samples and docs for 2.0 (#459)

Internal / Testing Changes

  • chore: update issue templates (#509)
  • chore: remove old issue template (#507)
  • build: run tests on node11 (#506)
  • chore(build): drop hard rejection and update gts in the kitchen test (#504)
  • chores(build): do not collect sponge.xml from windows builds (#500)
  • chores(build): run codecov on continuous builds (#495)
  • chore: update new issue template (#494)
  • build: fix codecov uploading on Kokoro (#490)
  • test: move kitchen sink tests to system-test (#489)
  • Update kokoro config (#482)
  • fix: export additional typescript types (#479)
  • Don't publish sourcemaps (#478)
  • test: remove appveyor config (#477)
  • Enable prefer-const in the eslint config (#473)
  • Enable no-var in eslint (#471)
  • Update CI config (#468)
  • Retry npm install in CI (#465)
  • Update Kokoro config (#462)

v2.0.0

Well hello 2.0 🎉 This release has multiple breaking changes. It also has a lot of bug fixes.

Breaking Changes

Support for node.js 4.x and 9.x has been dropped

These versions of node.js are no longer supported.

The getRequestMetadata method has been deprecated

The getRequestMetadata method has been deprecated on the IAM, OAuth2, JWT, and JWTAccess classes. The getRequestHeaders method should be used instead. The methods have a subtle difference: the getRequestMetadata method returns an object with a headers property, which contains the authorization header. The getRequestHeaders method simply returns the headers.

Old code
const client = await auth.getClient();
const res = await client.getRequestMetadata();
const headers = res.headers;
New code
const client = await auth.getClient();
const headers = await client.getRequestHeaders();

The createScopedRequired method has been deprecated

The createScopedRequired method has been deprecated on multiple classes. The createScopedRequired and createScoped methods on the JWT class were largely in place to help inform clients when scopes were required in an application default credential scenario. Instead of checking if scopes are required after creating the client, instead scopes should just be passed either into the GoogleAuth.getClient method, or directly into the JWT constructor.

Old code
auth.getApplicationDefault(function(err, authClient) {
   if (err) {
     return callback(err);
   }
  if (authClient.createScopedRequired && authClient.createScopedRequired()) {
    authClient = authClient.createScoped([
      'https://www.googleapis.com/auth/cloud-platform'
    ]);
  }
  callback(null, authClient);
});
New code
const client = await auth.getClient({
  scopes: ['https://www.googleapis.com/auth/cloud-platform']
});

The refreshAccessToken method has been deprecated

The OAuth2.refreshAccessToken method has been deprecated. The getAccessToken, getRequestMetadata, and request methods will all refresh the token if needed automatically. There is no need to ever manually refresh the token.

As always, if you run into any problems... please let us know!

Features

  • Set private_key_id in JWT access token header like other google auth libraries. (#450)

Bug Fixes

  • fix: support HTTPS proxies (#405)
  • fix: export missing interfaces (#437)
  • fix: Use new auth URIs (#434)
  • docs: Fix broken link (#423)
  • fix: surface file read streams (#413)
  • fix: prevent unhandled rejections by avoid .catch (#404)
  • fix: use gcp-metadata for compute credentials (#409)
  • Add Code of Conduct
  • fix: Warn when using user credentials from the Cloud SDK (#399)
  • fix: use Buffer.from instead of new Buffer (#400)
  • fix: Fix link format in README.md (#385)

Breaking changes

  • chore: deprecate getRequestMetadata (#414)
  • fix: deprecate the createScopedRequired methods (#410)
  • fix: drop support for node.js 4.x and 9.x (#417)
  • fix: deprecate the refreshAccessToken methods (#411)
  • fix: deprecate the getDefaultProjectId method (#402)
  • fix: drop support for node.js 4 (#401)

Build / Test changes

  • Run synth to make build tools consistent (#455)
  • Add a package.json for samples and cleanup README (#454)
  • chore(deps): update dependency typedoc to ^0.12.0 (#453)
  • chore: move examples => samples + synth (#448)
  • chore(deps): update dependency nyc to v13 (#452)
  • chore(deps): update dependency pify to v4 (#447)
  • chore(deps): update dependency assert-rejects to v1 (#446)
  • chore: ignore package-lock.json (#445)
  • chore: update renovate config (#442)
  • chore(deps): lock file maintenance (#443)
  • chore: remove greenkeeper badge (#440)
  • test: throw on deprecation
  • chore: add intelli-espower-loader for running tests (#430)
  • chore(deps): update dependency typescript to v3 (#432)
  • chore(deps): lock file maintenance (#431)
  • test: use strictEqual in tests (#425)
  • chore(deps): lock file maintenance (#428)
  • chore: Configure Renovate (#424)
  • chore: Update gts to the latest version 🚀 (#422)
  • chore: update gcp-metadata for isAvailable fix (#420)
  • refactor: use assert.reject in the tests (#415)
  • refactor: cleanup types for certificates (#412)
  • test: run tests with hard-rejection (#397)
  • cleanup: straighten nested try-catch (#394)
  • test: getDefaultProjectId should prefer config (#388)
  • chore(package): Update gts to the latest version 🚀 (#387)
  • chore(package): update sinon to version 6.0.0 (#386)

Upgrading to 1.x

The 1.x release includes a variety of bug fixes, new features, and breaking changes. Please take care, and see the release notes for a list of breaking changes, and the upgrade guide.