python310Packages.raincloudy: Fix build

Due to an improper update during a python-updates cycle this package
broke.

With version 1.2.0 there is now `raincloudy.aio`, which does not get
installed on recent setuptools versions, due to a misconfigured packages
configuration in setup.py.

Also convert the build process to a PEP517 based build using
setuptools and fix the distinfo version by adding setuptools-scm.

Additionally `aiohttp` is an undeclared dependencym, for which a PR has
already been submitted upstream.

+28 -7
+28 -7
pkgs/development/python-modules/raincloudy/default.nix
··· 1 1 { lib 2 + , aiohttp 3 + , aioresponses 2 4 , beautifulsoup4 3 5 , buildPythonPackage 4 6 , fetchFromGitHub 5 7 , html5lib 8 + , pytest-asyncio 9 + , pytest-aiohttp 6 10 , pytestCheckHook 7 11 , pythonOlder 8 12 , requests 9 13 , requests-mock 14 + , setuptools 15 + , setuptools-scm 10 16 , urllib3 11 17 }: 12 18 ··· 24 30 hash = "sha256-qCkBVirM09iA1sXiOB9FJns8bHjQq7rRk8XbRWrtBDI="; 25 31 }; 26 32 33 + nativeBuildInputs = [ 34 + setuptools 35 + setuptools-scm 36 + ]; 37 + 38 + SETUPTOOLS_SCM_PRETEND_VERSION = version; 39 + 40 + postPatch = '' 41 + # https://github.com/vanstinator/raincloudy/pull/60 42 + substituteInPlace setup.py \ 43 + --replace "bs4" "beautifulsoup4" \ 44 + 45 + # fix raincloudy.aio package discovery, by relying on 46 + # autodiscovery instead. 47 + sed -i '/packages=/d' setup.py 48 + ''; 49 + 27 50 propagatedBuildInputs = [ 51 + aiohttp 28 52 requests 29 53 beautifulsoup4 30 54 urllib3 ··· 32 56 ]; 33 57 34 58 nativeCheckInputs = [ 59 + aioresponses 60 + pytest-asyncio 61 + pytest-aiohttp 35 62 pytestCheckHook 36 63 requests-mock 37 64 ]; 38 65 39 - postPatch = '' 40 - # https://github.com/vanstinator/raincloudy/pull/60 41 - substituteInPlace setup.py \ 42 - --replace "bs4" "beautifulsoup4" \ 43 - --replace "html5lib==1.0.1" "html5lib" 44 - ''; 45 - 46 66 pythonImportsCheck = [ 47 67 "raincloudy" 68 + "raincloudy.aio" 48 69 ]; 49 70 50 71 disabledTests = [