diff --git a/CHANGELOG.md b/CHANGELOG.md
index 82015ac..c4a657b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,45 @@
 # Changelog
 
+## [2.0.0](https://www.github.com/googleapis/google-api-python-client/compare/v1.12.8...v2.0.0) (2021-03-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* **deps:** require 3.6+ (#961)
+
+### Features
+
+* Add support for using static discovery documents ([#1109](https://www.github.com/googleapis/google-api-python-client/issues/1109)) ([32d1c59](https://www.github.com/googleapis/google-api-python-client/commit/32d1c597b364e2641eca33ccf6df802bb218eea1))
+* Update synth.py to copy discovery files from discovery-artifact-manager ([#1104](https://www.github.com/googleapis/google-api-python-client/issues/1104)) ([af918e8](https://www.github.com/googleapis/google-api-python-client/commit/af918e8ef422438aaca0c468de8b3b2c184d884e))
+
+
+### Bug Fixes
+
+* Catch ECONNRESET and other errors more reliably ([#1147](https://www.github.com/googleapis/google-api-python-client/issues/1147)) ([ae9cd99](https://www.github.com/googleapis/google-api-python-client/commit/ae9cd99134160a5540e6f8d6d33d855122854e10))
+* **deps:** add upper-bound google-auth dependency ([#1180](https://www.github.com/googleapis/google-api-python-client/issues/1180)) ([c687f42](https://www.github.com/googleapis/google-api-python-client/commit/c687f4207b9c574e539a7eab75201a58f2e91f35))
+* handle error on service not enabled ([#1117](https://www.github.com/googleapis/google-api-python-client/issues/1117)) ([c691283](https://www.github.com/googleapis/google-api-python-client/commit/c6912836e88eea45aef7d515383e549082d37717))
+* Improve support for error_details ([#1126](https://www.github.com/googleapis/google-api-python-client/issues/1126)) ([e6a1da3](https://www.github.com/googleapis/google-api-python-client/commit/e6a1da3542e230e5287863f339ce1d28292cd92f))
+* MediaFileUpload error if file does not exist ([#1127](https://www.github.com/googleapis/google-api-python-client/issues/1127)) ([2c6d029](https://www.github.com/googleapis/google-api-python-client/commit/2c6d0297851c806ef850ca23686c51ca5878ac48))
+* replace deprecated socket.error with OSError ([#1161](https://www.github.com/googleapis/google-api-python-client/issues/1161)) ([b7b9986](https://www.github.com/googleapis/google-api-python-client/commit/b7b9986fe13c483eeefb77673b4091911978ee46))
+* Use logging level info when file_cache is not available ([#1125](https://www.github.com/googleapis/google-api-python-client/issues/1125)) ([0b32e69](https://www.github.com/googleapis/google-api-python-client/commit/0b32e69900eafec2cd1197ba054d4f9a765a3f29))
+
+
+### Miscellaneous Chores
+
+* **deps:** require 3.6+ ([#961](https://www.github.com/googleapis/google-api-python-client/issues/961)) ([8325d24](https://www.github.com/googleapis/google-api-python-client/commit/8325d24acaa2b2077acaaea26ea5fafb6dd856c5))
+
+
+### Documentation
+
+* add networkconnectivity v1alpha1 ([#1176](https://www.github.com/googleapis/google-api-python-client/issues/1176)) ([91b61d3](https://www.github.com/googleapis/google-api-python-client/commit/91b61d3272de9b5aebad0cf1eb76ca53c24f22f9))
+* Delete redundant oauth-web.md ([#1142](https://www.github.com/googleapis/google-api-python-client/issues/1142)) ([70bc6c9](https://www.github.com/googleapis/google-api-python-client/commit/70bc6c9db99eed5af7536b87448bd9323db9320b))
+* fix MediaIoBaseUpload broken link ([#1112](https://www.github.com/googleapis/google-api-python-client/issues/1112)) ([334b6e6](https://www.github.com/googleapis/google-api-python-client/commit/334b6e6d9e4924398e57bad2e53747584abf8cf4))
+* fix regression with incorrect args order in docs ([#1141](https://www.github.com/googleapis/google-api-python-client/issues/1141)) ([4249a7b](https://www.github.com/googleapis/google-api-python-client/commit/4249a7b92e891d1ecaf93944ca9c062ffbd54f77))
+* fix typo in thread safety example code ([#1100](https://www.github.com/googleapis/google-api-python-client/issues/1100)) ([5ae088d](https://www.github.com/googleapis/google-api-python-client/commit/5ae088dc027b89517b896a89a0aeb2ca80f492cf))
+* Reduce noisy changes in docs regen ([#1135](https://www.github.com/googleapis/google-api-python-client/issues/1135)) ([b1b0c83](https://www.github.com/googleapis/google-api-python-client/commit/b1b0c83ae0737e7b63cb77e4e7757213a216b88e))
+* update docs/dyn ([#1096](https://www.github.com/googleapis/google-api-python-client/issues/1096)) ([c2228be](https://www.github.com/googleapis/google-api-python-client/commit/c2228be4630e279e02a25b51566a0f93b67aa499))
+* update guidance on service accounts ([#1120](https://www.github.com/googleapis/google-api-python-client/issues/1120)) ([b2ea122](https://www.github.com/googleapis/google-api-python-client/commit/b2ea122c40ccac09c9e7b0b29f6b2bcca6db107b))
+
 ### [1.12.8](https://www.github.com/googleapis/google-api-python-client/compare/v1.12.7...v1.12.8) (2020-11-18)
 
 
diff --git a/README.md b/README.md
index ff24486..45ca037 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,10 @@
 
 These client libraries are officially supported by Google.  However, the libraries are considered complete and are in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features.
 
+## Version 2.0 Release
+The 2.0 release of `google-api-python-client` is a significant upgrade compared
+to v1. Please see the [Migration Guide](UPGRADING.md) for more information.
+
 ## Documentation
 
 See the [docs folder](docs/README.md) for more detailed instructions and additional documentation.
@@ -66,6 +70,6 @@
 
 ## Contributing
 
-Please see our [Contribution Guide](CONTRIBUTING.rst). 
-In particular, we love pull requests - but please make sure to sign 
+Please see our [Contribution Guide](CONTRIBUTING.rst).
+In particular, we love pull requests - but please make sure to sign
 the contributor license agreement.
diff --git a/UPGRADING.md b/UPGRADING.md
new file mode 100644
index 0000000..475bd9f
--- /dev/null
+++ b/UPGRADING.md
@@ -0,0 +1,64 @@
+# 2.0.0 Migration Guide
+
+The 2.0 release of `google-api-python-client` is a significant upgrade as only
+python 3.6 and newer is supported. If you are not able to upgrade python, then
+please continue to use version 1.x as we will continue supporting python 2.7+ in
+[v1](https://github.com/googleapis/google-api-python-client/tree/v1).
+
+In addition, discovery documents will no longer be retrieved dynamically when
+you call  `discovery.build()`. The discovery documents will instead be retrieved
+from the client library directly. Existing code written for earlier versions of
+this library will not require updating. We believe this new default behaviour
+will provide a more predictable experience for users. If always using the latest
+version of a service definition is more important than reliability, users should
+set the `static_discovery` argument of `discovery.build()` to `False` to
+retrieve the service definition from the internet.
+
+If you experience issues or have questions, please file an [issue](https://github.com/googleapis/google-api-python-client/issues).
+
+## Supported Python Versions
+
+> **WARNING**: Breaking change
+
+The 2.0.0 release requires Python 3.6+, as such you must upgrade to Python 3.6+
+to use version 2.0.0.
+
+## Method Calls
+
+**Note**: Existing code written for earlier versions of this library will not
+require updating. You should only update your code if always using the latest
+version of a service definition is more important than reliability.
+
+> **WARNING**: Breaking change
+
+The 2.0.0 release no longer retrieves discovery documents dynamically on each
+call to `discovery.build()`. Instead, discovery documents are retrieved from
+the client library itself.
+
+Under the hood, the `discovery.build()` function retrieves a discovery artifact
+in order to construct the service object. The breaking change is that the
+`discovery.build()` function will no longer retrieve discovery artifacts
+dynamically. Instead it will use service definitions shipped in the library.
+
+
+**Before:**
+```py
+from googleapiclient.discovery import build
+
+# Retrieve discovery artifacts from the internet
+with build('drive', 'v3') as service:
+    # ...
+```
+
+**After:**
+```py
+from googleapiclient.discovery import build
+
+# Retrieve discovery artifacts from the client library
+with build('drive', 'v3') as service:
+    # ...
+
+# Retrieve discovery artifacts from the internet
+with build('drive', 'v3', static_discovery=False) as service:
+    # ...
+```
diff --git a/setup.py b/setup.py
index f498181..0f9a543 100644
--- a/setup.py
+++ b/setup.py
@@ -46,7 +46,7 @@
 with io.open(readme_filename, encoding="utf-8") as readme_file:
     readme = readme_file.read()
 
-version = "1.12.8"
+version = "2.0.0"
 
 setup(
     name="google-api-python-client",
