From 515a3e0026cf5cfc9d7176d9de59b159fbfb986e Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Thu, 11 Feb 2021 10:02:17 +0000 Subject: [PATCH 1/4] python37Packages.oauthenticator: 0.12.3 -> 0.13.0 --- pkgs/development/python-modules/oauthenticator/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/oauthenticator/default.nix b/pkgs/development/python-modules/oauthenticator/default.nix index 2394e32403f..8b121248dc2 100644 --- a/pkgs/development/python-modules/oauthenticator/default.nix +++ b/pkgs/development/python-modules/oauthenticator/default.nix @@ -16,11 +16,11 @@ buildPythonPackage rec { pname = "oauthenticator"; - version = "0.12.3"; + version = "0.13.0"; src = fetchPypi { inherit pname version; - sha256 = "f86e18e954ae37796ee149fe01ab0be0707d9e0415d62336ba3447e7b4383461"; + sha256 = "5202adcd96ddbbccbc267da02f2d14e977300c81291aaa77be4fd9f2e27cfa37"; }; checkPhase = '' From d51d55cc7fe4a09ac70a6e6a4152d760f357e658 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 12 Feb 2021 02:07:14 +0100 Subject: [PATCH 2/4] python3Packages.oauthenticator: enable tests --- .../python-modules/oauthenticator/default.nix | 43 ++++++++++--------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/pkgs/development/python-modules/oauthenticator/default.nix b/pkgs/development/python-modules/oauthenticator/default.nix index 8b121248dc2..234c4edd1ae 100644 --- a/pkgs/development/python-modules/oauthenticator/default.nix +++ b/pkgs/development/python-modules/oauthenticator/default.nix @@ -1,41 +1,42 @@ { lib , buildPythonPackage -, jupyterhub -, globus-sdk -, mwoauth -, codecov -, flake8 -, pyjwt -, pytest -, pytestcov -, pytest-tornado -, requests-mock , pythonOlder , fetchPypi +, google_api_python_client +, google-auth-oauthlib +, jupyterhub +, mwoauth +, pyjwt +, pytest-asyncio +, pytestCheckHook +, requests-mock }: buildPythonPackage rec { pname = "oauthenticator"; version = "0.13.0"; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; sha256 = "5202adcd96ddbbccbc267da02f2d14e977300c81291aaa77be4fd9f2e27cfa37"; }; - checkPhase = '' - py.test oauthenticator/tests - ''; + propagatedBuildInputs = [ + jupyterhub + ]; - # No tests in archive - doCheck = false; + pytestFlagsArray = [ "oauthenticator/tests" ]; - checkInputs = [ globus-sdk mwoauth codecov flake8 pytest - pytestcov pytest-tornado requests-mock pyjwt ]; - - propagatedBuildInputs = [ jupyterhub ]; - - disabled = pythonOlder "3.4"; + checkInputs = [ + google_api_python_client + google-auth-oauthlib + mwoauth + pyjwt + pytest-asyncio + pytestCheckHook + requests-mock + ]; meta = with lib; { description = "Authenticate JupyterHub users with common OAuth providers, including GitHub, Bitbucket, and more."; From 31b848653a52a2196a5d0441dd4a8baf2fa2d4f3 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 12 Feb 2021 04:22:18 +0100 Subject: [PATCH 3/4] python3Packages.jupyterhub: 1.1.0 -> 1.3.0 --- .../python-modules/jupyterhub/default.nix | 66 ++++++++++--------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/pkgs/development/python-modules/jupyterhub/default.nix b/pkgs/development/python-modules/jupyterhub/default.nix index 704d9174ebd..38e6394f82f 100644 --- a/pkgs/development/python-modules/jupyterhub/default.nix +++ b/pkgs/development/python-modules/jupyterhub/default.nix @@ -1,33 +1,32 @@ { lib , buildPythonPackage +, pythonOlder , fetchPypi , fetchzip , alembic -, ipython -, jinja2 -, python-oauth2 -, prometheus_client , async_generator +, certipy +, dateutil +, entrypoints +, jinja2 +, jupyter-telemetry +, oauthlib , pamela +, prometheus_client +, requests , sqlalchemy , tornado , traitlets -, requests -, notebook -, pythonOlder , nodePackages -, oauthlib -, certipy -, jupyter-telemetry }: let # js/css assets that setup.py tries to fetch via `npm install` when building - # from source. + # from source. https://github.com/jupyterhub/jupyterhub/blob/master/package.json bootstrap = fetchzip { - url = "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz"; - sha256 = "0r7s54bbf68ri1na9bbabyf12mcpb6zk5ja2q6z82aw1fa4xi3yd"; + url = "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz"; + sha256 = "1ywmxqdccg0mgx0xknrn1hlrfnhcwphc12y9l91zizx26fqfmzgc"; }; font-awesome = fetchzip { @@ -36,30 +35,30 @@ let }; jquery = fetchzip { - url = "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz"; - sha256 = "1j6y18miwzafdj8kfpwbmbn9qvgnbnpc7l4arqrhqj33m04xrlgi"; + url = "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz"; + sha256 = "0yi9ql493din1qa1s923nd5zvd0klk1sx00xj1wx2yambmq86vm9"; }; moment = fetchzip { - url = "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz"; - sha256 = "12gb3p0rz5wyjwykv9g0pix7dd352lx1z7rzdjsf2brhwc4ffyip"; + url = "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz"; + sha256 = "0ifzzla4zffw23g3xvhwx3fj3jny6cjzxfzl1x0317q8wa0c7w5i"; }; requirejs = fetchzip { - url = "https://registry.npmjs.org/requirejs/-/requirejs-2.3.4.tgz"; - sha256 = "0q6mkj0iv341kks06dya6lfs2kdw0n6vc7n4a7aa3ia530fk9vja"; + url = "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz"; + sha256 = "165hkli3qcd59cjqvli9r5f92i0h7czkmhcg1cgwamw2d0b7xibz"; }; in buildPythonPackage rec { pname = "jupyterhub"; - version = "1.1.0"; - disabled = pythonOlder "3.5"; + version = "1.3.0"; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "1mqknz0rxqzx4nc57vscvfh2d4znzlzpy83ancqxdaq3b8i70al5"; + sha256 = "13pf6qhimpaxj20871ff5rvwwan59320cdhhrn9cfh6314971zq5"; }; # Most of this only applies when building from source (e.g. js/css assets are @@ -86,12 +85,7 @@ buildPythonPackage rec { "'${nodePackages.configurable-http-proxy}/bin/configurable-http-proxy'" substituteInPlace setup.py --replace \ - "'npm', 'run', 'lessc', '--'" \ - "'${nodePackages.less}/bin/lessc'" - - substituteInPlace setup.py --replace \ - "'npm', 'install', '--progress=false'" \ - "'true'" + "'npm'" "'true'" declare -A deps deps[bootstrap]=${bootstrap} @@ -109,9 +103,21 @@ buildPythonPackage rec { ''; propagatedBuildInputs = [ - alembic ipython jinja2 pamela python-oauth2 requests sqlalchemy tornado - traitlets prometheus_client async_generator notebook certipy oauthlib + # https://github.com/jupyterhub/jupyterhub/blob/master/requirements.txt + alembic + async_generator + certipy + dateutil + entrypoints + jinja2 jupyter-telemetry + oauthlib + pamela + prometheus_client + requests + sqlalchemy + tornado + traitlets ]; # Disable tests because they take an excessive amount of time to complete. From f7b5a64b17621a48b6893287eaef4798a688cdb1 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 12 Feb 2021 04:25:16 +0100 Subject: [PATCH 4/4] python3Packages.jupyterhub: enable tests --- .../python-modules/jupyterhub/default.nix | 30 +++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/jupyterhub/default.nix b/pkgs/development/python-modules/jupyterhub/default.nix index 38e6394f82f..85f07b182d8 100644 --- a/pkgs/development/python-modules/jupyterhub/default.nix +++ b/pkgs/development/python-modules/jupyterhub/default.nix @@ -18,6 +18,13 @@ , tornado , traitlets , nodePackages +, beautifulsoup4 +, cryptography +, notebook +, pytest-asyncio +, pytestCheckHook +, requests-mock +, virtualenv }: let @@ -120,9 +127,28 @@ buildPythonPackage rec { traitlets ]; - # Disable tests because they take an excessive amount of time to complete. - doCheck = false; + preCheck = '' + substituteInPlace jupyterhub/tests/test_spawner.py --replace \ + "'jupyterhub-singleuser'" "'$out/bin/jupyterhub-singleuser'" + ''; + checkInputs = [ + # https://github.com/jupyterhub/jupyterhub/blob/master/dev-requirements.txt + beautifulsoup4 + cryptography + notebook + pytest-asyncio + pytestCheckHook + requests-mock + virtualenv + ]; + + disabledTests = [ + # Tries to install older versions through pip + "test_upgrade" + # Testcase fails to find requests import + "test_external_service" + ]; meta = with lib; { description = "Serves multiple Jupyter notebook instances";