diff --git a/PKGBUILD b/PKGBUILD
index 32e0d5a383e4c14fc5b35c05fcf9f28af64afd7d..3f1c7494dda5193f727b6f9389f082ae4c68668a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,44 +2,35 @@
 
 _name=aiosmtpd
 pkgname=python-aiosmtpd
-pkgver=1.4.2
-pkgrel=3
+pkgver=1.4.3
+pkgrel=1
 pkgdesc="An asyncio based SMTP server"
-arch=('any')
+arch=(any)
 url="https://github.com/aio-libs/aiosmtpd"
-license=('Apache')
-depends=('python-atpublic' 'python-attrs')
-makedepends=('python-setuptools')
-checkdepends=('python-pytest' 'python-pytest-mock')
-source=("https://files.pythonhosted.org/packages/source/${_name::1}/${_name}/${_name}-${pkgver}.tar.gz"
-        python310.patch)
-sha512sums=('b910ae4c00b52f59b9f2199b296a1b76caa7567cbcd2e27c73d4ec894e9b48cd8190090083ce33b87dc924c4394a6425506355951208af65b89a6c1abe371114'
-            '68d65360fcf4efa23b000536eba141c4af15206595183efb415a1f75c82eb025e697cce8c99d437a462fb38a3a37f3e0980ba0be8e730f8d8b0c95fb85c12d62')
-b2sums=('9a725d3aa28943afbb14fb6792e0115cf4bc257250da815183c9c9e6b293cf71ac836cc811f50e48bc450d3f629f74d1948aaef78d44852bc96fb3daf0398605'
-        '527f7b695560c8d1ae4f86409a2af529f25ef786aa3c6f69c3cd5d2bdab78f399195edf62f8eaae09d422f129d3ec3ef166368e6c0cd4e4f0ed26e6c8a7c80eb')
-
-prepare() {
-  mv -v "${_name}-$pkgver" "$pkgname-$pkgver"
-
-  # https://github.com/aio-libs/aiosmtpd/pull/294
-  patch -Np1 -d "$pkgname-$pkgver" <python310.patch
-}
+license=(Apache)
+depends=(python-atpublic python-attrs python-typing-extensions)
+makedepends=(python-build python-installer python-setuptools python-wheel)
+checkdepends=(python-pytest python-pytest-mock)
+source=(https://files.pythonhosted.org/packages/source/${_name::1}/$_name/$_name-$pkgver.tar.gz)
+sha512sums=('f1aab75c80c1434a0944eb391fe2aaff82fe318f178aa1cd75bf6ca8589967aaccd8fcdd4f1619c0b9a89760f15d6207eef58a76adb2867493272f7d962d42a5')
+b2sums=('e101efcab06869cf20e671df419155120fc5f35163096df27412038ec8e3d340accc4834db3067ef91c670ce4de1ba70283de9d804fb88f96971d2d325b45a7a')
 
 build() {
-  cd "$pkgname-$pkgver"
-  python setup.py build
+  cd $_name-$pkgver
+  python -m build --wheel --no-isolation
 }
 
 check() {
-  cd "$pkgname-$pkgver"
-  export PYTHONPATH="build:${PYTHONPATH}"
-  pytest -v --ignore=aiosmtpd/qa/
+  cd $_name-$pkgver
+  pytest -vv --ignore=aiosmtpd/qa/
 }
 
 package() {
-  cd "$pkgname-$pkgver"
-  python setup.py install --skip-build \
-                          --optimize=1 \
-                          --root="${pkgdir}"
+  local _site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
+
+  cd $_name-$pkgver
+  python -m installer --destdir="$pkgdir" dist/*.whl
   install -vDm 644 README.rst -t "${pkgdir}/usr/share/doc/${pkgname}"
+  # remove unneeded stuff: https://github.com/aio-libs/aiosmtpd/issues/356
+  rm -frv "$pkgdir/$_site_packages/$_name/"{docs,qa,tests}
 }