Skip to content
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

refactor: Move tests from tape to mocha #296

Merged
merged 1 commit into from
Feb 17, 2017

Conversation

traviskaufman
Copy link
Contributor

@traviskaufman traviskaufman commented Feb 16, 2017

Implements all of #143 except for cross-browser testing.

This commit migrates all of our testing infrastructure from tape over to
mocha. We were hitting tape's limits in terms of usability for MDC-Web,
and this gives us a clean break.

Note that most of the changes here were done using an automated script
that can be found at
https://gist.github.com/traviskaufman/59476a12b65925d06b048b61b8ef085c

Note that there are some bugs in the code but I double-checked and it
looked like everything transpiled correctly.

Improvements over the old infrastructure

  • Massive speedup in test runtime. Our full suite executes in ~6s
    (locally), which is about 3x faster than before.
  • No pollution from TAP console output, only the results from the karma
    reporter are logged to the command line.
  • A way better debugging experience. You can now exclude one or more
    tests, or include one or more tests, a big step up from test.only()
    that existed before. Furthermore, the Karma Debug UI now uses mocha's
    html reporter, which produces beautiful output and allows you to drill
    down into individual tests and only run them, view the test code in
    the browser, and more.
  • All of the ease and usability of mocha (returning promises for async
    tests, a rich set of configuration options, top-level exception
    handling within tests, etc.)
  • A more robust assertion library using chai, including better error
    reporting when assertions fail.

What Changes

Spec Descriptions

Instead of

// math.test.js

import test from 'tape';

test('1 + 1 equals 2', (t) => {
  t.equal(1 + 1, 2);
  t.end();
});

You write

// math.test.js

import {assert} from 'chai';

suite('MDCMath');

test('1 + 1 equals 2', () => {
  assert.equal(1 + 1, 2);
});

There is one suite() function per file, which is a top-level
description of the tests this file contains. Suites should always start
with MDC, which is enforced by eslint.

Testdouble verifications

Instead of writing

t.doesNotThrow(() => td.verify(mockAdapter.addClass('foo')));

You write

td.verify(mockAdapter.addClass('foo');

tape assertion methods vs. chai's assertion methods

  • t.true -> assert.isOk
  • t.false -> assert.isNotOk
  • everything other assertion method pretty much stays the same. Plus, we
    have even more robust methods to work with thanks to chai.

Next steps

@traviskaufman traviskaufman force-pushed the chore/refactor-test-infrastructure branch 2 times, most recently from 45d4f73 to 1270156 Compare February 16, 2017 22:01
Copy link
Contributor

@sgomes sgomes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks fantastic! So happy to see this merged, thanks @traviskaufman! A big +1 from me!

Implements all of #5 except for cross-browser testing.

This commit migrates all of our testing infrastructure from tape over to
mocha. We were hitting tape's limits in terms of usability for MDC-Web,
and this gives us a clean break.

Note that most of the changes here were done using an automated script
that can be found at
https://gist.github.com/traviskaufman/59476a12b65925d06b048b61b8ef085c

Note that there are some bugs in the code but I double-checked and it
looked like everything transpiled correctly.

 ## Improvements over the old infrastructure

- _Massive_ speedup in test runtime. Our full suite executes in ~6s
  (locally), which is about 3x faster than before.
- No pollution from TAP console output, only the results from the karma
  reporter are logged to the command line.
- A way better debugging experience. You can now exclude one or more
  tests, or include one or more tests, a big step up from test.only()
  that existed before. Furthermore, the Karma Debug UI now uses mocha's
  html reporter, which produces beautiful output and allows you to drill
  down into individual tests and only run them, view the test code in
  the browser, and more.
- All of the ease and usability of mocha (returning promises for async
  tests, a rich set of configuration options, top-level exception
  handling within tests, etc.)
- A more robust assertion library using chai, including better error
  reporting when assertions fail.

 ## What Changes

 ### Spec Descriptions

Instead of

```js
// math.test.js

import test from 'tape';

test('1 + 1 equals 2', (t) => {
  t.equal(1 + 1, 2);
  t.end();
});
```

You write

```js
// math.test.js

import {assert} from 'chai';

suite('MDCMath');

test('1 + 1 equals 2', () => {
  assert.equal(1 + 1, 2);
});
```

There is one `suite()` function per file, which is a top-level
description of the tests this file contains. Suites should always start
with `MDC`, which is enforced by eslint.

 ### Testdouble verifications

Instead of writing

```js
t.doesNotThrow(() => td.verify(mockAdapter.addClass('foo')));
```

You write

```js
td.verify(mockAdapter.addClass('foo');
```

 ### tape assertion methods vs. chai's assertion methods

- `t.true` -> `assert.isOk`
- `t.false` -> `assert.isNotOk`
- everything other assertion method pretty much stays the same. Plus, we
  have even more robust methods to work with thanks to chai.

 ## Next steps

- Re-enabling SauceLabs cross-browser testing, which is the final part
  of #5.
@traviskaufman traviskaufman force-pushed the chore/refactor-test-infrastructure branch from 1270156 to 77ab05d Compare February 17, 2017 17:26
@traviskaufman
Copy link
Contributor Author

Rebased master and update mdc-form-field tests. Will merge as soon as TravisCI goes green.

@traviskaufman traviskaufman merged commit 5a90277 into master Feb 17, 2017
@traviskaufman traviskaufman deleted the chore/refactor-test-infrastructure branch February 17, 2017 17:31
cristobalchao pushed a commit that referenced this pull request Feb 24, 2017
Implements all of #5 except for cross-browser testing.

This commit migrates all of our testing infrastructure from tape over to
mocha. We were hitting tape's limits in terms of usability for MDC-Web,
and this gives us a clean break.

Note that most of the changes here were done using an automated script
that can be found at
https://gist.github.com/traviskaufman/59476a12b65925d06b048b61b8ef085c

Note that there are some bugs in the code but I double-checked and it
looked like everything transpiled correctly.

 ## Improvements over the old infrastructure

- _Massive_ speedup in test runtime. Our full suite executes in ~6s
  (locally), which is about 3x faster than before.
- No pollution from TAP console output, only the results from the karma
  reporter are logged to the command line.
- A way better debugging experience. You can now exclude one or more
  tests, or include one or more tests, a big step up from test.only()
  that existed before. Furthermore, the Karma Debug UI now uses mocha's
  html reporter, which produces beautiful output and allows you to drill
  down into individual tests and only run them, view the test code in
  the browser, and more.
- All of the ease and usability of mocha (returning promises for async
  tests, a rich set of configuration options, top-level exception
  handling within tests, etc.)
- A more robust assertion library using chai, including better error
  reporting when assertions fail.

 ## What Changes

 ### Spec Descriptions

Instead of

```js
// math.test.js

import test from 'tape';

test('1 + 1 equals 2', (t) => {
  t.equal(1 + 1, 2);
  t.end();
});
```

You write

```js
// math.test.js

import {assert} from 'chai';

suite('MDCMath');

test('1 + 1 equals 2', () => {
  assert.equal(1 + 1, 2);
});
```

There is one `suite()` function per file, which is a top-level
description of the tests this file contains. Suites should always start
with `MDC`, which is enforced by eslint.

 ### Testdouble verifications

Instead of writing

```js
t.doesNotThrow(() => td.verify(mockAdapter.addClass('foo')));
```

You write

```js
td.verify(mockAdapter.addClass('foo');
```

 ### tape assertion methods vs. chai's assertion methods

- `t.true` -> `assert.isOk`
- `t.false` -> `assert.isNotOk`
- everything other assertion method pretty much stays the same. Plus, we
  have even more robust methods to work with thanks to chai.

 ## Next steps

- Re-enabling SauceLabs cross-browser testing, which is the final part
  of #5.
acdvorak pushed a commit that referenced this pull request Jan 18, 2019
## The devDependency [@google-cloud/datastore](https://github.com/googleapis/nodejs-datastore) was updated from `2.0.0` to `3.0.1`.
This version is **not covered** by your **current version range**.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.

---

<details>
<summary>Release Notes for v3.0.1</summary>

<p>01-15-2019 13:20 PST</p>
<h3>Bug fixes</h3>
<ul>
<li>fix: ship the build directory (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/300" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/300/hovercard">#300</a>)</li>
</ul>
<h3>Internal / Testing Changes</h3>
<ul>
<li>build: check broken links in generated docs (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/292" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/292/hovercard">#292</a>)</li>
</ul>
</details>

<details>
<summary>Commits</summary>
<p>The new version differs by 3 commits.</p>
<ul>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/401b2e1c03c1cb1340d1c7249a1f435dc17d74cb"><code>401b2e1</code></a> <code>Release v3.0.1 (#301)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/177b11b3819b98debcf157b040d282c2b9b8d9ca"><code>177b11b</code></a> <code>fix: ship the build directory (#300)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/70ea500726d7a48a768433703c94e9fbb7c53f9d"><code>70ea500</code></a> <code>build: check broken links in generated docs (#292)</code></li>
</ul>
<p>See the <a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/compare/f839e581b0396b830cc3bae31d107f57414394d4...401b2e1c03c1cb1340d1c7249a1f435dc17d74cb">full diff</a></p>
</details>

---

<details>
<summary>Release Notes for v3.0.0</summary>

<p>01-14-2019 20:31 PST</p>
<p><strong>This release has breaking changes!</strong> The import style of this library has changed to be consistent with <a href="https://hacks.mozilla.org/2018/03/es-modules-a-cartoon-deep-dive/" rel="nofollow">es modules</a>.</p>
<h4>Old busted code</h4>
<div class="highlight highlight-source-js"><pre><span class="pl-k">const</span> <span class="pl-c1">Datastore</span> <span class="pl-k">=</span> <span class="pl-c1">require</span>(<span class="pl-s"><span class="pl-pds">'</span>@google-cloud/datastore<span class="pl-pds">'</span></span>)();
<span class="pl-c"><span class="pl-c">//</span> or...</span>
<span class="pl-k">const</span> <span class="pl-c1">Datastore</span> <span class="pl-k">=</span> <span class="pl-c1">require</span>(<span class="pl-s"><span class="pl-pds">'</span>@google-cloud/datastore<span class="pl-pds">'</span></span>);
<span class="pl-k">const</span> <span class="pl-c1">ds</span> <span class="pl-k">=</span> <span class="pl-k">new</span> <span class="pl-en">Datastore</span>();</pre></div>
<h4>New hot code</h4>
<div class="highlight highlight-source-js"><pre><span class="pl-k">const</span> {<span class="pl-c1">Datastore</span>} <span class="pl-k">=</span> <span class="pl-c1">require</span>(<span class="pl-s"><span class="pl-pds">'</span>@google-cloud/datastore<span class="pl-pds">'</span></span>);
<span class="pl-k">const</span> <span class="pl-c1">ds</span> <span class="pl-k">=</span> <span class="pl-k">new</span> <span class="pl-en">Datastore</span>();</pre></div>
<p>Please take care to update your imports accordingly!</p>
<h3>Dependencies</h3>
<ul>
<li>fix(deps): update dependency google-gax to ^0.23.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/296" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/296/hovercard">#296</a>)</li>
<li>fix(deps): update dependency google-gax to ^0.22.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/248" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/248/hovercard">#248</a>)</li>
<li>fix(deps): update dependency concat-stream to v2 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/290" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/290/hovercard">#290</a>)</li>
<li>refactor: remove async module usage (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/272" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/272/hovercard">#272</a>)</li>
<li>fix(deps): update dependency through2 to v3 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/237" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/237/hovercard">#237</a>)</li>
<li>chore: remove unused dependencies (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/226" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/226/hovercard">#226</a>)</li>
<li>fix(deps): update dependency google-proto-files to ^0.17.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/210" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/210/hovercard">#210</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>fix(docs): fix namespace causing 404s (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/294" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/294/hovercard">#294</a>)</li>
<li>fix(docs): remove unused long running operations types</li>
<li>docs: Update doc comment showing structure of entity (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/276" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/276/hovercard">#276</a>)</li>
<li>docs: update readme badges (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/269" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/269/hovercard">#269</a>)</li>
<li>refactor(samples): Samples to use async/await</li>
<li>docs: update auto-generated jsdoc comments (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/245" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/245/hovercard">#245</a>)</li>
</ul>
<h3>Internal / Testing Changes</h3>
<ul>
<li>refactor: sprinkle some types about (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/291" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/291/hovercard">#291</a>)</li>
<li>chore(deps): update dependency @types/sinon to v7.0.2 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/289" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/289/hovercard">#289</a>)</li>
<li>chore(deps): update dependency @types/sinon to v7 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/286" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/286/hovercard">#286</a>)</li>
<li>refactor(ts): enable lint and fix (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/287" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/287/hovercard">#287</a>)</li>
<li>chore(build): inject yoshi automation key (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/285" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/285/hovercard">#285</a>)</li>
<li>chore: update nyc and eslint configs (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/284" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/284/hovercard">#284</a>)</li>
<li>chore: fix publish.sh permission +x (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/282" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/282/hovercard">#282</a>)</li>
<li>fix(build): fix Kokoro release script (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/281" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/281/hovercard">#281</a>)</li>
<li>build: add Kokoro configs for autorelease (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/280" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/280/hovercard">#280</a>)</li>
<li>chore: always nyc report before calling codecov (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/275" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/275/hovercard">#275</a>)</li>
<li>chore: nyc ignore build/test by default (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/274" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/274/hovercard">#274</a>)</li>
<li>chore: update license file (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/271" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/271/hovercard">#271</a>)</li>
<li>refactor: run gts fix (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/265" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/265/hovercard">#265</a>)</li>
<li>chore(deps): update dependency typescript to ~3.2.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/264" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/264/hovercard">#264</a>)</li>
<li>fix(build): fix system key decryption (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/266" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/266/hovercard">#266</a>)</li>
<li>refactor(samples): convert sample tests from ava to mocha (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/259" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/259/hovercard">#259</a>)</li>
<li>fix: Pin @types/sinon to last compatible version (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/256" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/256/hovercard">#256</a>)</li>
<li>chore: add synth.metadata (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/254" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/254/hovercard">#254</a>)</li>
<li>refactor(ts): enable noImplicitThis (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/250" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/250/hovercard">#250</a>)</li>
<li>chore(deps): update dependency gts to ^0.9.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/247" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/247/hovercard">#247</a>)</li>
<li>chore: update eslintignore config (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/246" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/246/hovercard">#246</a>)</li>
<li>refactor(ts): use es module imports (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/244" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/244/hovercard">#244</a>)</li>
<li>chore(deps): update dependency @google-cloud/nodejs-repo-tools to v3 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/243" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/243/hovercard">#243</a>)</li>
<li>chore: drop contributors from multiple places (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/241" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/241/hovercard">#241</a>)</li>
<li>chore(deps): update dependency @types/is to v0.0.21 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/240" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/240/hovercard">#240</a>)</li>
<li>chore: use latest npm on Windows (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/239" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/239/hovercard">#239</a>)</li>
<li>refactor(ts): convert to typescript (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/236" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/236/hovercard">#236</a>)</li>
<li>chore: update CircleCI config (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/235" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/235/hovercard">#235</a>)</li>
<li>chore: include build in eslintignore (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/232" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/232/hovercard">#232</a>)</li>
<li>chore(deps): update dependency eslint-plugin-node to v8 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/227" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/227/hovercard">#227</a>)</li>
<li>chore: update issue templates (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/225" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/225/hovercard">#225</a>)</li>
<li>chore: remove old issue template (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/223" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/223/hovercard">#223</a>)</li>
<li>build: run tests on node11 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/222" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/222/hovercard">#222</a>)</li>
<li>chores(build): do not collect sponge.xml from windows builds (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/221" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/221/hovercard">#221</a>)</li>
<li>chores(build): run codecov on continuous builds (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/220" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/220/hovercard">#220</a>)</li>
<li>chore: update new issue template (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/219" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/219/hovercard">#219</a>)</li>
<li>build: fix codecov uploading on Kokoro (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/213" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/213/hovercard">#213</a>)</li>
<li>fix(deps): update dependency sinon to v7 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/212" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/212/hovercard">#212</a>)</li>
<li>Update kokoro config (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/207" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/207/hovercard">#207</a>)</li>
<li>chore(deps): update dependency eslint-plugin-prettier to v3 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/206" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/206/hovercard">#206</a>)</li>
</ul>
</details>

<details>
<summary>Commits</summary>
<p>The new version differs by 54 commits.</p>
<ul>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/f839e581b0396b830cc3bae31d107f57414394d4"><code>f839e58</code></a> <code>Release v3.0.0 (#298)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/f0b665c0c2c8c2241af2c321212574fb78d63f4a"><code>f0b665c</code></a> <code>fix(deps): update dependency google-gax to ^0.23.0 (#296)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/f4e4410fa1f930ce196ee809d150c07c1e86875d"><code>f4e4410</code></a> <code>fix(docs): fix namespace causing 404s (#294)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/8608c7ee73b80a6e55f05cb3d687a9b32b1b2bd9"><code>8608c7e</code></a> <code>fix(docs): remove unused long running operations types</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/4bbe64ff09e28ffac063714def174860388f136c"><code>4bbe64f</code></a> <code>refactor: sprinkle some types about (#291)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/78d776f68cef67471a318a37dba08e6ad2e535a7"><code>78d776f</code></a> <code>fix(deps): update dependency concat-stream to v2 (#290)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/b3db31e4ca17684012efe47e0745d6927a587d5e"><code>b3db31e</code></a> <code>chore(deps): update dependency @types/sinon to v7.0.2 (#289)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/42d6f705b3ed39d25574c820dc92efc935fd92b1"><code>42d6f70</code></a> <code>refactor: remove async module usage (#272)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/97d847df17ff45947e495bc5e54f466106003186"><code>97d847d</code></a> <code>chore(deps): update dependency @types/sinon to v7 (#286)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/717b818e25f1b7bb014b614d0be234102804ed37"><code>717b818</code></a> <code>refactor(ts): enable lint and fix (#287)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/dcb7f651a4d9d3298f44eeb45f735b1713c073ff"><code>dcb7f65</code></a> <code>chore(build): inject yoshi automation key (#285)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/35a081d6e8bd146d05d04a1ea47ca7fd2dfc1c4b"><code>35a081d</code></a> <code>chore: update nyc and eslint configs (#284)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/4f91d8f7c91cc1d0360c84a5d4d7a0ede978addb"><code>4f91d8f</code></a> <code>chore: fix publish.sh permission +x (#282)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/1072247740128ae04380d2ca3cc57895a52e5208"><code>1072247</code></a> <code>fix(build): fix Kokoro release script (#281)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/b5579c28ab0c938f65e61be667ea65a8cacf4cf2"><code>b5579c2</code></a> <code>build: add Kokoro configs for autorelease (#280)</code></li>
</ul>
<p>There are 54 commits in total.</p>
<p>See the <a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/compare/a0406f2e897e59944d9f82d9997955aa32f7df13...f839e581b0396b830cc3bae31d107f57414394d4">full diff</a></p>
</details>

<details>
  <summary>FAQ and help</summary>

  There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>

---


Your [Greenkeeper](https://greenkeeper.io) bot 🌴
adrianschmidt pushed a commit to Lundalogik/material-components-web that referenced this pull request Jan 23, 2019
…onents#4251)

## The devDependency [@google-cloud/datastore](https://github.com/googleapis/nodejs-datastore) was updated from `2.0.0` to `3.0.1`.
This version is **not covered** by your **current version range**.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.

---

<details>
<summary>Release Notes for v3.0.1</summary>

<p>01-15-2019 13:20 PST</p>
<h3>Bug fixes</h3>
<ul>
<li>fix: ship the build directory (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/300" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/300/hovercard">material-components#300</a>)</li>
</ul>
<h3>Internal / Testing Changes</h3>
<ul>
<li>build: check broken links in generated docs (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/292" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/292/hovercard">material-components#292</a>)</li>
</ul>
</details>

<details>
<summary>Commits</summary>
<p>The new version differs by 3 commits.</p>
<ul>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/401b2e1c03c1cb1340d1c7249a1f435dc17d74cb"><code>401b2e1</code></a> <code>Release v3.0.1 (material-components#301)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/177b11b3819b98debcf157b040d282c2b9b8d9ca"><code>177b11b</code></a> <code>fix: ship the build directory (material-components#300)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/70ea500726d7a48a768433703c94e9fbb7c53f9d"><code>70ea500</code></a> <code>build: check broken links in generated docs (material-components#292)</code></li>
</ul>
<p>See the <a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/compare/f839e581b0396b830cc3bae31d107f57414394d4...401b2e1c03c1cb1340d1c7249a1f435dc17d74cb">full diff</a></p>
</details>

---

<details>
<summary>Release Notes for v3.0.0</summary>

<p>01-14-2019 20:31 PST</p>
<p><strong>This release has breaking changes!</strong> The import style of this library has changed to be consistent with <a href="https://hacks.mozilla.org/2018/03/es-modules-a-cartoon-deep-dive/" rel="nofollow">es modules</a>.</p>
<h4>Old busted code</h4>
<div class="highlight highlight-source-js"><pre><span class="pl-k">const</span> <span class="pl-c1">Datastore</span> <span class="pl-k">=</span> <span class="pl-c1">require</span>(<span class="pl-s"><span class="pl-pds">'</span>@google-cloud/datastore<span class="pl-pds">'</span></span>)();
<span class="pl-c"><span class="pl-c">//</span> or...</span>
<span class="pl-k">const</span> <span class="pl-c1">Datastore</span> <span class="pl-k">=</span> <span class="pl-c1">require</span>(<span class="pl-s"><span class="pl-pds">'</span>@google-cloud/datastore<span class="pl-pds">'</span></span>);
<span class="pl-k">const</span> <span class="pl-c1">ds</span> <span class="pl-k">=</span> <span class="pl-k">new</span> <span class="pl-en">Datastore</span>();</pre></div>
<h4>New hot code</h4>
<div class="highlight highlight-source-js"><pre><span class="pl-k">const</span> {<span class="pl-c1">Datastore</span>} <span class="pl-k">=</span> <span class="pl-c1">require</span>(<span class="pl-s"><span class="pl-pds">'</span>@google-cloud/datastore<span class="pl-pds">'</span></span>);
<span class="pl-k">const</span> <span class="pl-c1">ds</span> <span class="pl-k">=</span> <span class="pl-k">new</span> <span class="pl-en">Datastore</span>();</pre></div>
<p>Please take care to update your imports accordingly!</p>
<h3>Dependencies</h3>
<ul>
<li>fix(deps): update dependency google-gax to ^0.23.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/296" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/296/hovercard">material-components#296</a>)</li>
<li>fix(deps): update dependency google-gax to ^0.22.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/248" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/248/hovercard">material-components#248</a>)</li>
<li>fix(deps): update dependency concat-stream to v2 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/290" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/290/hovercard">material-components#290</a>)</li>
<li>refactor: remove async module usage (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/272" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/272/hovercard">material-components#272</a>)</li>
<li>fix(deps): update dependency through2 to v3 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/237" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/237/hovercard">material-components#237</a>)</li>
<li>chore: remove unused dependencies (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/226" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/226/hovercard">material-components#226</a>)</li>
<li>fix(deps): update dependency google-proto-files to ^0.17.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/210" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/210/hovercard">material-components#210</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>fix(docs): fix namespace causing 404s (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/294" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/294/hovercard">material-components#294</a>)</li>
<li>fix(docs): remove unused long running operations types</li>
<li>docs: Update doc comment showing structure of entity (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/276" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/276/hovercard">material-components#276</a>)</li>
<li>docs: update readme badges (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/269" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/269/hovercard">material-components#269</a>)</li>
<li>refactor(samples): Samples to use async/await</li>
<li>docs: update auto-generated jsdoc comments (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/245" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/245/hovercard">material-components#245</a>)</li>
</ul>
<h3>Internal / Testing Changes</h3>
<ul>
<li>refactor: sprinkle some types about (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/291" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/291/hovercard">material-components#291</a>)</li>
<li>chore(deps): update dependency @types/sinon to v7.0.2 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/289" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/289/hovercard">material-components#289</a>)</li>
<li>chore(deps): update dependency @types/sinon to v7 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/286" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/286/hovercard">material-components#286</a>)</li>
<li>refactor(ts): enable lint and fix (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/287" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/287/hovercard">material-components#287</a>)</li>
<li>chore(build): inject yoshi automation key (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/285" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/285/hovercard">material-components#285</a>)</li>
<li>chore: update nyc and eslint configs (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/284" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/284/hovercard">material-components#284</a>)</li>
<li>chore: fix publish.sh permission +x (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/282" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/282/hovercard">material-components#282</a>)</li>
<li>fix(build): fix Kokoro release script (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/281" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/281/hovercard">material-components#281</a>)</li>
<li>build: add Kokoro configs for autorelease (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/280" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/280/hovercard">material-components#280</a>)</li>
<li>chore: always nyc report before calling codecov (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/275" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/275/hovercard">material-components#275</a>)</li>
<li>chore: nyc ignore build/test by default (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/274" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/274/hovercard">material-components#274</a>)</li>
<li>chore: update license file (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/271" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/271/hovercard">material-components#271</a>)</li>
<li>refactor: run gts fix (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/265" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/265/hovercard">material-components#265</a>)</li>
<li>chore(deps): update dependency typescript to ~3.2.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/264" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/264/hovercard">material-components#264</a>)</li>
<li>fix(build): fix system key decryption (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/266" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/266/hovercard">material-components#266</a>)</li>
<li>refactor(samples): convert sample tests from ava to mocha (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/259" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/259/hovercard">material-components#259</a>)</li>
<li>fix: Pin @types/sinon to last compatible version (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/256" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/256/hovercard">material-components#256</a>)</li>
<li>chore: add synth.metadata (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/254" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/254/hovercard">material-components#254</a>)</li>
<li>refactor(ts): enable noImplicitThis (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/250" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/250/hovercard">material-components#250</a>)</li>
<li>chore(deps): update dependency gts to ^0.9.0 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/247" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/247/hovercard">material-components#247</a>)</li>
<li>chore: update eslintignore config (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/246" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/246/hovercard">material-components#246</a>)</li>
<li>refactor(ts): use es module imports (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/244" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/244/hovercard">material-components#244</a>)</li>
<li>chore(deps): update dependency @google-cloud/nodejs-repo-tools to v3 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/243" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/243/hovercard">material-components#243</a>)</li>
<li>chore: drop contributors from multiple places (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/241" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/241/hovercard">material-components#241</a>)</li>
<li>chore(deps): update dependency @types/is to v0.0.21 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/240" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/240/hovercard">material-components#240</a>)</li>
<li>chore: use latest npm on Windows (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/239" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/239/hovercard">material-components#239</a>)</li>
<li>refactor(ts): convert to typescript (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/236" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/236/hovercard">material-components#236</a>)</li>
<li>chore: update CircleCI config (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/235" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/235/hovercard">material-components#235</a>)</li>
<li>chore: include build in eslintignore (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/232" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/232/hovercard">material-components#232</a>)</li>
<li>chore(deps): update dependency eslint-plugin-node to v8 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/227" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/227/hovercard">material-components#227</a>)</li>
<li>chore: update issue templates (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/225" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/225/hovercard">material-components#225</a>)</li>
<li>chore: remove old issue template (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/223" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/223/hovercard">material-components#223</a>)</li>
<li>build: run tests on node11 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/222" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/222/hovercard">material-components#222</a>)</li>
<li>chores(build): do not collect sponge.xml from windows builds (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/221" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/221/hovercard">material-components#221</a>)</li>
<li>chores(build): run codecov on continuous builds (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/220" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/220/hovercard">material-components#220</a>)</li>
<li>chore: update new issue template (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/219" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/219/hovercard">material-components#219</a>)</li>
<li>build: fix codecov uploading on Kokoro (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/213" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/213/hovercard">material-components#213</a>)</li>
<li>fix(deps): update dependency sinon to v7 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/212" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/212/hovercard">material-components#212</a>)</li>
<li>Update kokoro config (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/207" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/207/hovercard">material-components#207</a>)</li>
<li>chore(deps): update dependency eslint-plugin-prettier to v3 (<a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/pull/206" data-hovercard-type="pull_request" data-hovercard-url="/googleapis/nodejs-datastore/pull/206/hovercard">material-components#206</a>)</li>
</ul>
</details>

<details>
<summary>Commits</summary>
<p>The new version differs by 54 commits.</p>
<ul>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/f839e581b0396b830cc3bae31d107f57414394d4"><code>f839e58</code></a> <code>Release v3.0.0 (material-components#298)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/f0b665c0c2c8c2241af2c321212574fb78d63f4a"><code>f0b665c</code></a> <code>fix(deps): update dependency google-gax to ^0.23.0 (material-components#296)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/f4e4410fa1f930ce196ee809d150c07c1e86875d"><code>f4e4410</code></a> <code>fix(docs): fix namespace causing 404s (material-components#294)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/8608c7ee73b80a6e55f05cb3d687a9b32b1b2bd9"><code>8608c7e</code></a> <code>fix(docs): remove unused long running operations types</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/4bbe64ff09e28ffac063714def174860388f136c"><code>4bbe64f</code></a> <code>refactor: sprinkle some types about (material-components#291)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/78d776f68cef67471a318a37dba08e6ad2e535a7"><code>78d776f</code></a> <code>fix(deps): update dependency concat-stream to v2 (material-components#290)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/b3db31e4ca17684012efe47e0745d6927a587d5e"><code>b3db31e</code></a> <code>chore(deps): update dependency @types/sinon to v7.0.2 (material-components#289)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/42d6f705b3ed39d25574c820dc92efc935fd92b1"><code>42d6f70</code></a> <code>refactor: remove async module usage (material-components#272)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/97d847df17ff45947e495bc5e54f466106003186"><code>97d847d</code></a> <code>chore(deps): update dependency @types/sinon to v7 (material-components#286)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/717b818e25f1b7bb014b614d0be234102804ed37"><code>717b818</code></a> <code>refactor(ts): enable lint and fix (material-components#287)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/dcb7f651a4d9d3298f44eeb45f735b1713c073ff"><code>dcb7f65</code></a> <code>chore(build): inject yoshi automation key (material-components#285)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/35a081d6e8bd146d05d04a1ea47ca7fd2dfc1c4b"><code>35a081d</code></a> <code>chore: update nyc and eslint configs (material-components#284)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/4f91d8f7c91cc1d0360c84a5d4d7a0ede978addb"><code>4f91d8f</code></a> <code>chore: fix publish.sh permission +x (material-components#282)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/1072247740128ae04380d2ca3cc57895a52e5208"><code>1072247</code></a> <code>fix(build): fix Kokoro release script (material-components#281)</code></li>
<li><a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/commit/b5579c28ab0c938f65e61be667ea65a8cacf4cf2"><code>b5579c2</code></a> <code>build: add Kokoro configs for autorelease (material-components#280)</code></li>
</ul>
<p>There are 54 commits in total.</p>
<p>See the <a href="https://urls.greenkeeper.io/googleapis/nodejs-datastore/compare/a0406f2e897e59944d9f82d9997955aa32f7df13...f839e581b0396b830cc3bae31d107f57414394d4">full diff</a></p>
</details>

<details>
  <summary>FAQ and help</summary>

  There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>

---


Your [Greenkeeper](https://greenkeeper.io) bot 🌴


(cherry picked from commit 9d46c20)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants