tree 2a06139bde8075e30b90a543e09393fdfb9a829b
parent a8b35b9481ec86d3034367a3248fd0cafab9e3e9
author release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> 1617223682 +0000
committer GitHub <noreply@github.com> 1617223682 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJgZOACCRBK7hj4Ov3rIwAAdHIIAETDqdAJXSwidad5NAbM/dc1
 3H8ZCmq4DjhdMap7SrTRmn36qGvaytIsgD8B4E+FkK5K4AChM5WcCkCsxma0E7P7
 w+N4hhprnc9Vw9/GJhPOtehXry5p4DxEYbX2XhTWDlOv+XxomHTyONkDVwtQ1KW9
 f9/qR2e+Jpo9/6qAk7U50BImLEaDI6Sm1AuVYgtvpn+WXoumwAho231CcEj0s8BG
 rABC6SFLx1SJ//DBGMZ3DKO7BkAqvOZzemI88odJpwoy5f6H/wXNShqX+4nxV4Tj
 7pvow696pEscJ6QP4KuH/63F/3/i4bcTwGbaZQL1NZOcfXWMSj+DxXzLU7uPHMI=
 =DBAU
 -----END PGP SIGNATURE-----
 

chore: release 2.1.0 (#1256)

:robot: I have created a release \*beep\* \*boop\*
---
## [2.1.0](https://www.github.com/googleapis/google-api-python-client/compare/v2.0.2...v2.1.0) (2021-03-31)


### Features

* add status_code property on http error handling ([#1185](https://www.github.com/googleapis/google-api-python-client/issues/1185)) ([db2a766](https://www.github.com/googleapis/google-api-python-client/commit/db2a766bbd976742f6ef10d721d8423c8ac9246d))


### Bug Fixes

* Change default of `static_discovery` when `discoveryServiceUrl` set ([#1261](https://www.github.com/googleapis/google-api-python-client/issues/1261)) ([3b4f2e2](https://www.github.com/googleapis/google-api-python-client/commit/3b4f2e243709132b5ca41a3c23853d5067dfb0ab))
* correct api version in oauth-installed.md ([#1258](https://www.github.com/googleapis/google-api-python-client/issues/1258)) ([d1a255f](https://www.github.com/googleapis/google-api-python-client/commit/d1a255fcbeaa36f615cede720692fea2b9f894db))
* fix .close() ([#1231](https://www.github.com/googleapis/google-api-python-client/issues/1231)) ([a9583f7](https://www.github.com/googleapis/google-api-python-client/commit/a9583f712d13c67aa282d14cd30e00999b530d7c))
* Resolve issue where num_retries would have no effect ([#1244](https://www.github.com/googleapis/google-api-python-client/issues/1244)) ([c518472](https://www.github.com/googleapis/google-api-python-client/commit/c518472e836c32ba2ff5e8480ab5a7643f722d46))


### Documentation

* Distinguish between public/private docs in 2.0 guide ([#1226](https://www.github.com/googleapis/google-api-python-client/issues/1226)) ([a6f1706](https://www.github.com/googleapis/google-api-python-client/commit/a6f17066caf6e911b7e94e8feab52fa3af2def1b))
* Update README to promote cloud client libraries ([#1252](https://www.github.com/googleapis/google-api-python-client/issues/1252)) ([22807c9](https://www.github.com/googleapis/google-api-python-client/commit/22807c92ce754ff3d60f240ec5c38de50c5b654b))
---


This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).