diff --git a/Include/patchlevel.h b/Include/patchlevel.h
index a62d6c649eef431895431312d95edc1ee6d12e63..2864a86c16bfb2ce534f2c762193f4236907da4f 100644
--- a/Include/patchlevel.h
+++ b/Include/patchlevel.h
@@ -19,11 +19,11 @@
 #define PY_MAJOR_VERSION        3
 #define PY_MINOR_VERSION        9
 #define PY_MICRO_VERSION        0
-#define PY_RELEASE_LEVEL        PY_RELEASE_LEVEL_BETA
-#define PY_RELEASE_SERIAL       5
+#define PY_RELEASE_LEVEL        PY_RELEASE_LEVEL_GAMMA
+#define PY_RELEASE_SERIAL       1
 
 /* Version as a string */
-#define PY_VERSION              "3.9.0b5+"
+#define PY_VERSION              "3.9.0rc1"
 /*--end constants--*/
 
 /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
diff --git a/Lib/pydoc_data/topics.py b/Lib/pydoc_data/topics.py
index 8e5b722b498c4731b87c766ead3ba901e52836a6..08326400864c5b8529507d8b44a1ba036023d6f5 100644
--- a/Lib/pydoc_data/topics.py
+++ b/Lib/pydoc_data/topics.py
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Autogenerated by Sphinx on Mon Jul 20 19:44:38 2020
+# Autogenerated by Sphinx on Tue Aug 11 19:08:56 2020
 topics = {'assert': 'The "assert" statement\n'
            '**********************\n'
            '\n'
diff --git a/Lib/test/test_importlib/test_util.py b/Lib/test/test_importlib/test_util.py
index 17de46666acba86306ed809fa3ceeeb79ca9e1ea..d6c10ed3d8c5c470bb80fef3dd7bc0f659915b53 100644
--- a/Lib/test/test_importlib/test_util.py
+++ b/Lib/test/test_importlib/test_util.py
@@ -861,7 +861,7 @@ def test_magic_number(self):
         in advance. Such exceptional releases will then require an
         adjustment to this test case.
         """
-        EXPECTED_MAGIC_NUMBER = 3413
+        EXPECTED_MAGIC_NUMBER = 3425
         actual = int.from_bytes(importlib.util.MAGIC_NUMBER[:2], 'little')
 
         msg = (
diff --git a/Misc/NEWS.d/3.9.0rc1.rst b/Misc/NEWS.d/3.9.0rc1.rst
new file mode 100644
index 0000000000000000000000000000000000000000..667a6f982481ef484e771fe62313dbe651688654
--- /dev/null
+++ b/Misc/NEWS.d/3.9.0rc1.rst
@@ -0,0 +1,187 @@
+.. bpo: 38156
+.. date: 2020-07-20-17-01-17
+.. nonce: ptcdRy
+.. release date: 2020-08-11
+.. section: Core and Builtins
+
+Handle interrupts that come after EOF correctly in ``PyOS_StdioReadline``.
+
+..
+
+.. bpo: 41497
+.. date: 2020-08-07-06-06-29
+.. nonce: aBtsWz
+.. section: Library
+
+Fix potential UnicodeDecodeError in dis module.
+
+..
+
+.. bpo: 41490
+.. date: 2020-08-05-23-16-39
+.. nonce: 6z47A_
+.. section: Library
+
+Update :mod:`ensurepip` to install pip 20.2.1 and setuptools 49.2.1.
+
+..
+
+.. bpo: 41467
+.. date: 2020-08-04-00-20-30
+.. nonce: Z8DgTL
+.. section: Library
+
+On Windows, fix asyncio ``recv_into()`` return value when the socket/pipe is
+closed (:exc:`BrokenPipeError`): return ``0`` rather than an empty byte
+string (``b''``).
+
+..
+
+.. bpo: 41425
+.. date: 2020-08-03-01-59-48
+.. nonce: KJo6zF
+.. section: Library
+
+Make tkinter doc example runnable.
+
+..
+
+.. bpo: 41384
+.. date: 2020-07-26-21-18-43
+.. nonce: MlzIgV
+.. section: Library
+
+Raise TclError instead of TypeError when an unknown option is passed to
+tkinter.OptionMenu.
+
+..
+
+.. bpo: 38731
+.. date: 2020-07-25-23-18-51
+.. nonce: Am4wp2
+.. section: Library
+
+Fix :exc:`NameError` in command-line interface of :mod:`py_compile`.
+
+..
+
+.. bpo: 41317
+.. date: 2020-07-23-01-18-34
+.. nonce: O17Z6x
+.. section: Library
+
+Use add_done_callback() in asyncio.loop.sock_accept() to unsubscribe reader
+early on cancellation.
+
+..
+
+.. bpo: 41364
+.. date: 2020-07-21-21-45-55
+.. nonce: 5O-k7A
+.. section: Library
+
+Reduce import overhead of :mod:`uuid`.
+
+..
+
+.. bpo: 41341
+.. date: 2020-07-20-19-13-17
+.. nonce: wqrj8C
+.. section: Library
+
+Recursive evaluation of `typing.ForwardRef` in `get_type_hints`.
+
+..
+
+.. bpo: 41182
+.. date: 2020-07-01-17-33-50
+.. nonce: FPFI0N
+.. section: Library
+
+selector: use DefaultSelector based upon implementation
+
+..
+
+.. bpo: 40726
+.. date: 2020-05-22-12-45-58
+.. nonce: 7oBdMw
+.. section: Library
+
+Handle cases where the ``end_lineno`` is ``None`` on
+:func:`ast.increment_lineno`.
+
+..
+
+.. bpo: 41045
+.. date: 2020-07-27-20-46-17
+.. nonce: GFF6Ul
+.. section: Documentation
+
+Add documentation for debug feature of f-strings.
+
+..
+
+.. bpo: 41314
+.. date: 2020-07-25-14-20-00
+.. nonce: yrjko0
+.. section: Documentation
+
+Changed the release when ``from __future__ import annotations`` becomes the
+default from ``4.0`` to ``3.10`` (following a change in PEP 563).
+
+..
+
+.. bpo: 41492
+.. date: 2020-08-06-16-59-10
+.. nonce: 2FQ9cM
+.. section: Windows
+
+Fixes the description that appears in UAC prompts.
+
+..
+
+.. bpo: 40948
+.. date: 2020-07-28-12-39-32
+.. nonce: ISUFO6
+.. section: Windows
+
+Improve post-install message to direct people to the "py" command.
+
+..
+
+.. bpo: 41412
+.. date: 2020-07-28-11-55-43
+.. nonce: ME20KB
+.. section: Windows
+
+The installer will now fail to install on Windows 7 and Windows 8. Further,
+the UCRT dependency is now always downloaded on demand.
+
+..
+
+.. bpo: 40741
+.. date: 2020-07-20-23-26-26
+.. nonce: C9sc_d
+.. section: Windows
+
+Update Windows release to include SQLite 3.32.3.
+
+..
+
+.. bpo: 41468
+.. date: 2020-08-09-13-42-55
+.. nonce: zkP0_Y
+.. section: IDLE
+
+Improve IDLE run crash error message (which users should never see).
+
+..
+
+.. bpo: 41373
+.. date: 2020-07-24-17-49-58
+.. nonce: YQIPu_
+.. section: IDLE
+
+Save files loaded with no line ending, as when blank, or different line
+endings, by setting its line ending to the system default. Fix regression in
+3.8.4 and 3.9.0b4.
diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-07-20-17-01-17.bpo-38156.ptcdRy.rst b/Misc/NEWS.d/next/Core and Builtins/2020-07-20-17-01-17.bpo-38156.ptcdRy.rst
deleted file mode 100644
index 254d13cf3ed3a7ff186c3760d9de74103c84f06d..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Core and Builtins/2020-07-20-17-01-17.bpo-38156.ptcdRy.rst	
+++ /dev/null
@@ -1 +0,0 @@
-Handle interrupts that come after EOF correctly in ``PyOS_StdioReadline``.
diff --git a/Misc/NEWS.d/next/Documentation/2020-07-25-14-20-00.bpo-41314.yrjko0.rst b/Misc/NEWS.d/next/Documentation/2020-07-25-14-20-00.bpo-41314.yrjko0.rst
deleted file mode 100644
index 48f9c933828b0d5946e76de031f52319c1a95f37..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Documentation/2020-07-25-14-20-00.bpo-41314.yrjko0.rst
+++ /dev/null
@@ -1 +0,0 @@
-Changed the release when ``from __future__ import annotations`` becomes the default from ``4.0`` to ``3.10`` (following a change in PEP 563).
diff --git a/Misc/NEWS.d/next/Documentation/2020-07-27-20-46-17.bpo-41045.GFF6Ul.rst b/Misc/NEWS.d/next/Documentation/2020-07-27-20-46-17.bpo-41045.GFF6Ul.rst
deleted file mode 100644
index dfc9891bb89f27896678e80d1cd50b6e36539eec..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Documentation/2020-07-27-20-46-17.bpo-41045.GFF6Ul.rst
+++ /dev/null
@@ -1 +0,0 @@
-Add documentation for debug feature of f-strings.
\ No newline at end of file
diff --git a/Misc/NEWS.d/next/IDLE/2020-07-24-17-49-58.bpo-41373.YQIPu_.rst b/Misc/NEWS.d/next/IDLE/2020-07-24-17-49-58.bpo-41373.YQIPu_.rst
deleted file mode 100644
index b50a72fe676a8262d592a3e5bda15503e56d3824..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/IDLE/2020-07-24-17-49-58.bpo-41373.YQIPu_.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Save files loaded with no line ending, as when blank, or different line
-endings, by setting its line ending to the system default. Fix regression in
-3.8.4 and 3.9.0b4.
diff --git a/Misc/NEWS.d/next/IDLE/2020-08-09-13-42-55.bpo-41468.zkP0_Y.rst b/Misc/NEWS.d/next/IDLE/2020-08-09-13-42-55.bpo-41468.zkP0_Y.rst
deleted file mode 100644
index e41c7d574905cd5540f3bb954359545c5db6756b..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/IDLE/2020-08-09-13-42-55.bpo-41468.zkP0_Y.rst
+++ /dev/null
@@ -1 +0,0 @@
-Improve IDLE run crash error message (which users should never see).
diff --git a/Misc/NEWS.d/next/Library/2020-05-22-12-45-58.bpo-40726.7oBdMw.rst b/Misc/NEWS.d/next/Library/2020-05-22-12-45-58.bpo-40726.7oBdMw.rst
deleted file mode 100644
index 7409eb3d80df6449b1bda1c8d4e1cd041f5ebb83..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-05-22-12-45-58.bpo-40726.7oBdMw.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Handle cases where the ``end_lineno`` is ``None`` on
-:func:`ast.increment_lineno`.
diff --git a/Misc/NEWS.d/next/Library/2020-07-01-17-33-50.bpo-41182.FPFI0N.rst b/Misc/NEWS.d/next/Library/2020-07-01-17-33-50.bpo-41182.FPFI0N.rst
deleted file mode 100644
index ae31db512abdc1d5bf2c8d2980b4ab287105cd50..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-07-01-17-33-50.bpo-41182.FPFI0N.rst
+++ /dev/null
@@ -1 +0,0 @@
-selector: use DefaultSelector based upon implementation
diff --git a/Misc/NEWS.d/next/Library/2020-07-20-19-13-17.bpo-41341.wqrj8C.rst b/Misc/NEWS.d/next/Library/2020-07-20-19-13-17.bpo-41341.wqrj8C.rst
deleted file mode 100644
index c78b24d2faae72039c43683a5d9a1696f111f503..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-07-20-19-13-17.bpo-41341.wqrj8C.rst
+++ /dev/null
@@ -1 +0,0 @@
-Recursive evaluation of `typing.ForwardRef` in `get_type_hints`.
\ No newline at end of file
diff --git a/Misc/NEWS.d/next/Library/2020-07-21-21-45-55.bpo-41364.5O-k7A.rst b/Misc/NEWS.d/next/Library/2020-07-21-21-45-55.bpo-41364.5O-k7A.rst
deleted file mode 100644
index f136e892ae5fe09d4b7937cfa23832deafa0fc26..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-07-21-21-45-55.bpo-41364.5O-k7A.rst
+++ /dev/null
@@ -1 +0,0 @@
-Reduce import overhead of :mod:`uuid`.
diff --git a/Misc/NEWS.d/next/Library/2020-07-23-01-18-34.bpo-41317.O17Z6x.rst b/Misc/NEWS.d/next/Library/2020-07-23-01-18-34.bpo-41317.O17Z6x.rst
deleted file mode 100644
index 1af985e90e3e9894c422d7047fba5c1736341e22..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-07-23-01-18-34.bpo-41317.O17Z6x.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Use add_done_callback() in asyncio.loop.sock_accept() to unsubscribe reader
-early on cancellation.
diff --git a/Misc/NEWS.d/next/Library/2020-07-25-23-18-51.bpo-38731.Am4wp2.rst b/Misc/NEWS.d/next/Library/2020-07-25-23-18-51.bpo-38731.Am4wp2.rst
deleted file mode 100644
index 61c583dd1bdab70252f4fd5277d552d43f92d7cd..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-07-25-23-18-51.bpo-38731.Am4wp2.rst
+++ /dev/null
@@ -1 +0,0 @@
-Fix :exc:`NameError` in command-line interface of :mod:`py_compile`.
diff --git a/Misc/NEWS.d/next/Library/2020-07-26-21-18-43.bpo-41384.MlzIgV.rst b/Misc/NEWS.d/next/Library/2020-07-26-21-18-43.bpo-41384.MlzIgV.rst
deleted file mode 100644
index d797374a09e6f60f4c625985ffc41b5258b73a24..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-07-26-21-18-43.bpo-41384.MlzIgV.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Raise TclError instead of TypeError when an unknown option is passed to
-tkinter.OptionMenu.
diff --git a/Misc/NEWS.d/next/Library/2020-08-03-01-59-48.bpo-41425.KJo6zF.rst b/Misc/NEWS.d/next/Library/2020-08-03-01-59-48.bpo-41425.KJo6zF.rst
deleted file mode 100644
index 617df72faeb37f15458d92e63a812761f0cde846..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-08-03-01-59-48.bpo-41425.KJo6zF.rst
+++ /dev/null
@@ -1 +0,0 @@
-Make tkinter doc example runnable.
diff --git a/Misc/NEWS.d/next/Library/2020-08-04-00-20-30.bpo-41467.Z8DgTL.rst b/Misc/NEWS.d/next/Library/2020-08-04-00-20-30.bpo-41467.Z8DgTL.rst
deleted file mode 100644
index f12693e117631a16c1ffa06f53612f9dfb82d8aa..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-08-04-00-20-30.bpo-41467.Z8DgTL.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-On Windows, fix asyncio ``recv_into()`` return value when the socket/pipe is
-closed (:exc:`BrokenPipeError`): return ``0`` rather than an empty byte
-string (``b''``).
diff --git a/Misc/NEWS.d/next/Library/2020-08-05-23-16-39.bpo-41490.6z47A_.rst b/Misc/NEWS.d/next/Library/2020-08-05-23-16-39.bpo-41490.6z47A_.rst
deleted file mode 100644
index e89180db0042937831d3ced3c7d362096dae2968..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-08-05-23-16-39.bpo-41490.6z47A_.rst
+++ /dev/null
@@ -1 +0,0 @@
-Update :mod:`ensurepip` to install pip 20.2.1 and setuptools 49.2.1.
diff --git a/Misc/NEWS.d/next/Library/2020-08-07-06-06-29.bpo-41497.aBtsWz.rst b/Misc/NEWS.d/next/Library/2020-08-07-06-06-29.bpo-41497.aBtsWz.rst
deleted file mode 100644
index 2c863ed7ffa3fadcd831e8dd1df2a55258ced746..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Library/2020-08-07-06-06-29.bpo-41497.aBtsWz.rst
+++ /dev/null
@@ -1 +0,0 @@
-Fix potential UnicodeDecodeError in dis module.
\ No newline at end of file
diff --git a/Misc/NEWS.d/next/Windows/2020-07-20-23-26-26.bpo-40741.C9sc_d.rst b/Misc/NEWS.d/next/Windows/2020-07-20-23-26-26.bpo-40741.C9sc_d.rst
deleted file mode 100644
index 69b7cce43803c691c776642a4f1b2ee62aa48344..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Windows/2020-07-20-23-26-26.bpo-40741.C9sc_d.rst
+++ /dev/null
@@ -1 +0,0 @@
-Update Windows release to include SQLite 3.32.3.
diff --git a/Misc/NEWS.d/next/Windows/2020-07-28-11-55-43.bpo-41412.ME20KB.rst b/Misc/NEWS.d/next/Windows/2020-07-28-11-55-43.bpo-41412.ME20KB.rst
deleted file mode 100644
index 274264ad876d3caa53b7a743f73dc49304751f24..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Windows/2020-07-28-11-55-43.bpo-41412.ME20KB.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-The installer will now fail to install on Windows 7 and Windows 8. Further,
-the UCRT dependency is now always downloaded on demand.
diff --git a/Misc/NEWS.d/next/Windows/2020-07-28-12-39-32.bpo-40948.ISUFO6.rst b/Misc/NEWS.d/next/Windows/2020-07-28-12-39-32.bpo-40948.ISUFO6.rst
deleted file mode 100644
index f8831d8c13701cb241b0a41810a54ff03ac81b0c..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Windows/2020-07-28-12-39-32.bpo-40948.ISUFO6.rst
+++ /dev/null
@@ -1 +0,0 @@
-Improve post-install message to direct people to the "py" command.
diff --git a/Misc/NEWS.d/next/Windows/2020-08-06-16-59-10.bpo-41492.2FQ9cM.rst b/Misc/NEWS.d/next/Windows/2020-08-06-16-59-10.bpo-41492.2FQ9cM.rst
deleted file mode 100644
index 065803e2c207593f0830f62162a2fc27424f364e..0000000000000000000000000000000000000000
--- a/Misc/NEWS.d/next/Windows/2020-08-06-16-59-10.bpo-41492.2FQ9cM.rst
+++ /dev/null
@@ -1 +0,0 @@
-Fixes the description that appears in UAC prompts.
diff --git a/README.rst b/README.rst
index b9d15ef3eacf8f147bf6ca6bc21a41dfb8309a8d..ae09fea3469f4ae97882203098688fe647698c90 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-This is Python version 3.9.0 beta 5
-===================================
+This is Python version 3.9.0 release candidate 1
+================================================
 
 .. image:: https://travis-ci.org/python/cpython.svg?branch=3.9
    :alt: CPython build status on Travis CI