3.4.4 - backports, changelog, and version bumps (#5803)

* fixed a circular import error (due to type hints) (#5800)

fixes #5794
closes #5795

* Added a py.typed so mypy prefers us to typeshed (#5802)

closes #5796

* 3.4.4 changelog + version bump

* Update CHANGELOG.rst

Co-authored-by: Paul Kehrer <paul.l.kehrer@gmail.com>

Co-authored-by: Paul Kehrer <paul.l.kehrer@gmail.com>
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index db99d97..b1481a7 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,6 +1,15 @@
 Changelog
 =========
 
+.. _v3-4-4:
+
+3.4.4 - 2021-02-09
+~~~~~~~~~~~~~~~~~~
+
+* Added a ``py.typed`` file so that ``mypy`` will know to use our type
+  annotations.
+* Fixed an import cycle that could be triggered by certain import sequences.
+
 .. _v3-4-3:
 
 3.4.3 - 2021-02-08
diff --git a/MANIFEST.in b/MANIFEST.in
index 4b4ec2d..78889ea 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -7,6 +7,7 @@
 include README.rst
 
 include pyproject.toml
+recursive-include src py.typed
 
 recursive-include docs *
 recursive-include src/_cffi_src *.py *.c *.h
diff --git a/src/cryptography/__about__.py b/src/cryptography/__about__.py
index a885bd2..63adf69 100644
--- a/src/cryptography/__about__.py
+++ b/src/cryptography/__about__.py
@@ -21,7 +21,7 @@
 )
 __uri__ = "https://github.com/pyca/cryptography"
 
-__version__ = "3.4.3"
+__version__ = "3.4.4"
 
 __author__ = "The Python Cryptographic Authority and individual contributors"
 __email__ = "cryptography-dev@python.org"
diff --git a/src/cryptography/hazmat/primitives/serialization/base.py b/src/cryptography/hazmat/primitives/serialization/base.py
index 00334b2..9f7531d 100644
--- a/src/cryptography/hazmat/primitives/serialization/base.py
+++ b/src/cryptography/hazmat/primitives/serialization/base.py
@@ -25,7 +25,7 @@
     return backend.load_pem_public_key(data)
 
 
-def load_pem_parameters(data: bytes, backend=None) -> dh.DHParameters:
+def load_pem_parameters(data: bytes, backend=None) -> "dh.DHParameters":
     backend = _get_backend(backend)
     return backend.load_pem_parameters(data)
 
@@ -42,6 +42,6 @@
     return backend.load_der_public_key(data)
 
 
-def load_der_parameters(data: bytes, backend=None) -> dh.DHParameters:
+def load_der_parameters(data: bytes, backend=None) -> "dh.DHParameters":
     backend = _get_backend(backend)
     return backend.load_der_parameters(data)
diff --git a/src/cryptography/py.typed b/src/cryptography/py.typed
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/cryptography/py.typed
diff --git a/vectors/cryptography_vectors/__about__.py b/vectors/cryptography_vectors/__about__.py
index a03447d..e726f33 100644
--- a/vectors/cryptography_vectors/__about__.py
+++ b/vectors/cryptography_vectors/__about__.py
@@ -18,7 +18,7 @@
 
 __uri__ = "https://github.com/pyca/cryptography"
 
-__version__ = "3.4.3"
+__version__ = "3.4.4"
 
 __author__ = "The Python Cryptographic Authority and individual contributors"
 __email__ = "cryptography-dev@python.org"