Repository: jupyterlab/jupyterlab-git (language: python)

Issue:
Installation on CI takes very long time (25 minutes!) due to dependency resolution issues
See https://github.com/jupyterlab/jupyterlab-git/actions/runs/9092321766/job/24988787136?pr=1327

![image](https://github.com/jupyterlab/jupyterlab-git/assets/5832902/16242865-12d0-4a21-bc24-a0591592b4b6)

It seems that possibly `notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0` is the problem as this conflicts with jupyter-server.

I think it is only required for tests, which are skipped:

https://github.com/jupyterlab/jupyterlab-git/blob/d4b0f639e56855635b3358b1b2415a39d154394a/jupyterlab_git/tests/test_hybridcontents.py#L11-L15

Since on the main branch this extension is only compatible with Lab 4.x and Notebook 7.x and hence jupyter-server v2 I propose to drop `hybridcontents` test dependency and possibly remove these tests as https://github.com/viaduct-ai/hybridcontents is still only compatible with old notebook, and there is a cost for tests running for so long (especially that integration tests only kick in after build is complete).

Any thoughts @Zsailer @fcollonval?

<details>

```
+ python -m pip install '.[dev,test]'
Processing /home/runner/work/jupyterlab-git/jupyterlab-git
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: jupyter-server<3,>=2.0.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab_git==0.50.0) (2.14.0)
Collecting nbdime~=4.0.1 (from jupyterlab_git==0.50.0)
  Downloading nbdime-4.0.1-py3-none-any.whl.metadata (9.5 kB)
Requirement already satisfied: nbformat in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab_git==0.50.0) (5.10.4)
Requirement already satisfied: packaging in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab_git==0.50.0) (24.0)
Requirement already satisfied: pexpect in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab_git==0.50.0) (4.9.0)
Requirement already satisfied: traitlets~=5.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab_git==0.50.0) (5.14.3)
Collecting black (from jupyterlab_git==0.50.0)
  Downloading black-24.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (77 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.1/77.1 kB 3.8 MB/s eta 0:00:00
Requirement already satisfied: jupyterlab~=4.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab_git==0.50.0) (4.2.0)
Collecting pre-commit (from jupyterlab_git==0.50.0)
  Downloading pre_commit-3.5.0-py2.py3-none-any.whl.metadata (1.3 kB)
Collecting coverage (from jupyterlab_git==0.50.0)
  Downloading coverage-7.5.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (8.2 kB)
Collecting hybridcontents (from jupyterlab_git==0.50.0)
  Downloading hybridcontents-0.4.0.tar.gz (15 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting jupytext (from jupyterlab_git==0.50.0)
  Downloading jupytext-1.16.2-py3-none-any.whl.metadata (13 kB)
Collecting pytest (from jupyterlab_git==0.50.0)
  Downloading pytest-8.2.0-py3-none-any.whl.metadata (7.5 kB)
Collecting pytest-asyncio (from jupyterlab_git==0.50.0)
  Downloading pytest_asyncio-0.23.6-py3-none-any.whl.metadata (3.9 kB)
Collecting pytest-cov (from jupyterlab_git==0.50.0)
  Downloading pytest_cov-5.0.0-py3-none-any.whl.metadata (27 kB)
Collecting pytest-jupyter>=0.6.0 (from pytest-jupyter[server]>=0.6.0; extra == "test"->jupyterlab_git==0.50.0)
  Downloading pytest_jupyter-0.10.1-py3-none-any.whl.metadata (9.3 kB)
Requirement already satisfied: anyio>=3.1.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (4.3.0)
Requirement already satisfied: argon2-cffi>=21.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (23.1.0)
Requirement already satisfied: jinja2>=3.0.3 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (3.1.4)
Requirement already satisfied: jupyter-client>=7.4.4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (8.6.1)
Requirement already satisfied: jupyter-core!=5.0.*,>=4.12 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (5.7.2)
Requirement already satisfied: jupyter-events>=0.9.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.10.0)
Requirement already satisfied: jupyter-server-terminals>=0.4.4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.5.3)
Requirement already satisfied: nbconvert>=6.4.4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (7.16.4)
Requirement already satisfied: overrides>=5.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (7.7.0)
Requirement already satisfied: prometheus-client>=0.9 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.20.0)
Requirement already satisfied: pyzmq>=24 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (26.0.3)
Requirement already satisfied: send2trash>=1.8.2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.8.3)
Requirement already satisfied: terminado>=0.8.3 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.18.1)
Requirement already satisfied: tornado>=6.2.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (6.4)
Requirement already satisfied: websocket-client>=1.7 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.8.0)
Requirement already satisfied: async-lru>=1.0.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.0.4)
Requirement already satisfied: httpx>=0.25.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.27.0)
Requirement already satisfied: importlib-metadata>=4.8.3 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (7.1.0)
Requirement already satisfied: importlib-resources>=1.4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (6.4.0)
Requirement already satisfied: ipykernel>=6.5.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (6.29.4)
Requirement already satisfied: jupyter-lsp>=2.0.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.2.5)
Requirement already satisfied: jupyterlab-server<3,>=2.27.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.27.1)
Requirement already satisfied: notebook-shim>=0.2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.2.4)
Requirement already satisfied: tomli>=1.2.2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.0.1)
Collecting colorama (from nbdime~=4.0.1->jupyterlab_git==0.50.0)
  Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)
Collecting gitpython!=2.1.4,!=2.1.5,!=2.1.6 (from nbdime~=4.0.1->jupyterlab_git==0.50.0)
  Downloading GitPython-3.1.43-py3-none-any.whl.metadata (13 kB)
Collecting jupyter-server-mathjax>=0.2.2 (from nbdime~=4.0.1->jupyterlab_git==0.50.0)
  Downloading jupyter_server_mathjax-0.2.6-py3-none-any.whl.metadata (2.1 kB)
Requirement already satisfied: pygments in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbdime~=4.0.1->jupyterlab_git==0.50.0) (2.18.0)
Requirement already satisfied: requests in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbdime~=4.0.1->jupyterlab_git==0.50.0) (2.31.0)
Requirement already satisfied: fastjsonschema>=2.15 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbformat->jupyterlab_git==0.50.0) (2.19.1)
Requirement already satisfied: jsonschema>=2.6 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbformat->jupyterlab_git==0.50.0) (4.22.0)
Collecting iniconfig (from pytest->jupyterlab_git==0.50.0)
  Downloading iniconfig-2.0.0-py3-none-any.whl.metadata (2.6 kB)
Collecting pluggy<2.0,>=1.5 (from pytest->jupyterlab_git==0.50.0)
  Using cached pluggy-1.5.0-py3-none-any.whl.metadata (4.8 kB)
Requirement already satisfied: exceptiongroup>=1.0.0rc8 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from pytest->jupyterlab_git==0.50.0) (1.2.1)
Collecting click>=8.0.0 (from black->jupyterlab_git==0.50.0)
  Using cached click-8.1.7-py3-none-any.whl.metadata (3.0 kB)
Collecting mypy-extensions>=0.4.3 (from black->jupyterlab_git==0.50.0)
  Downloading mypy_extensions-1.0.0-py3-none-any.whl.metadata (1.1 kB)
Collecting pathspec>=0.9.0 (from black->jupyterlab_git==0.50.0)
  Using cached pathspec-0.12.1-py3-none-any.whl.metadata (21 kB)
Requirement already satisfied: platformdirs>=2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from black->jupyterlab_git==0.50.0) (4.2.2)
Requirement already satisfied: typing-extensions>=4.0.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from black->jupyterlab_git==0.50.0) (4.11.0)
Requirement already satisfied: six>=1.9.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from hybridcontents->jupyterlab_git==0.50.0) (1.16.0)
Collecting notebook>=4.0 (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading notebook-7.1.3-py3-none-any.whl.metadata (10 kB)
Collecting markdown-it-py>=1.0 (from jupytext->jupyterlab_git==0.50.0)
  Using cached markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB)
Collecting mdit-py-plugins (from jupytext->jupyterlab_git==0.50.0)
  Downloading mdit_py_plugins-0.4.1-py3-none-any.whl.metadata (2.8 kB)
Requirement already satisfied: pyyaml in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupytext->jupyterlab_git==0.50.0) (6.0.1)
Requirement already satisfied: ptyprocess>=0.5 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from pexpect->jupyterlab_git==0.50.0) (0.7.0)
Collecting cfgv>=2.0.0 (from pre-commit->jupyterlab_git==0.50.0)
  Downloading cfgv-3.4.0-py2.py3-none-any.whl.metadata (8.5 kB)
Collecting identify>=1.0.0 (from pre-commit->jupyterlab_git==0.50.0)
  Downloading identify-2.5.36-py2.py3-none-any.whl.metadata (4.4 kB)
Collecting nodeenv>=0.11.1 (from pre-commit->jupyterlab_git==0.50.0)
  Downloading nodeenv-1.8.0-py2.py3-none-any.whl.metadata (21 kB)
Collecting virtualenv>=20.10.0 (from pre-commit->jupyterlab_git==0.50.0)
  Using cached virtualenv-20.26.2-py3-none-any.whl.metadata (4.4 kB)
Requirement already satisfied: idna>=2.8 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from anyio>=3.1.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (3.7)
Requirement already satisfied: sniffio>=1.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from anyio>=3.1.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.3.1)
Requirement already satisfied: argon2-cffi-bindings in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from argon2-cffi>=21.1->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (21.2.0)
Collecting gitdb<5,>=4.0.1 (from gitpython!=2.1.4,!=2.1.5,!=2.1.6->nbdime~=4.0.1->jupyterlab_git==0.50.0)
  Downloading gitdb-4.0.11-py3-none-any.whl.metadata (1.2 kB)
Requirement already satisfied: certifi in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from httpx>=0.25.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (2024.2.2)
Requirement already satisfied: httpcore==1.* in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from httpx>=0.25.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (1.0.5)
Requirement already satisfied: h11<0.15,>=0.13 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from httpcore==1.*->httpx>=0.25.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.14.0)
Requirement already satisfied: zipp>=0.5 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from importlib-metadata>=4.8.3->jupyterlab~=4.0->jupyterlab_git==0.50.0) (3.18.1)
Requirement already satisfied: comm>=0.1.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.2.2)
Requirement already satisfied: debugpy>=1.6.5 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (1.8.1)
Requirement already satisfied: ipython>=7.23.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (8.12.3)
Requirement already satisfied: matplotlib-inline>=0.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.1.7)
Requirement already satisfied: nest-asyncio in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (1.6.0)
Requirement already satisfied: psutil in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (5.9.8)
Requirement already satisfied: MarkupSafe>=2.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jinja2>=3.0.3->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.1.5)
Requirement already satisfied: attrs>=22.2.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0) (23.2.0)
Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0) (2023.12.1)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0) (1.3.10)
Requirement already satisfied: referencing>=0.[28](https://github.com/jupyterlab/jupyterlab-git/actions/runs/9092321766/job/24988787136?pr=1327#step:7:29).4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0) (0.35.1)
Requirement already satisfied: rpds-py>=0.7.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0) (0.18.1)
Requirement already satisfied: python-dateutil>=2.8.2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-client>=7.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.9.0.post0)
Requirement already satisfied: python-json-logger>=2.0.4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.0.7)
Requirement already satisfied: rfc3339-validator in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.1.4)
Requirement already satisfied: rfc3986-validator>=0.1.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.1.1)
Requirement already satisfied: babel>=2.10 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab-server<3,>=2.27.1->jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.15.0)
Requirement already satisfied: json5>=0.9.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jupyterlab-server<3,>=2.27.1->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.9.25)
Collecting mdurl~=0.1 (from markdown-it-py>=1.0->jupytext->jupyterlab_git==0.50.0)
  Using cached mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)
Requirement already satisfied: beautifulsoup4 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (4.12.3)
Requirement already satisfied: bleach!=5.0.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (6.1.0)
Requirement already satisfied: defusedxml in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.7.1)
Requirement already satisfied: jupyterlab-pygments in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.3.0)
Requirement already satisfied: mistune<4,>=2.0.3 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (3.0.2)
Requirement already satisfied: nbclient>=0.5.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.10.0)
Requirement already satisfied: pandocfilters>=1.4.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.5.1)
Requirement already satisfied: tinycss2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.3.0)
Requirement already satisfied: setuptools in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from nodeenv>=0.11.1->pre-commit->jupyterlab_git==0.50.0) (56.0.0)
Collecting jupyterlab~=4.0 (from jupyterlab_git==0.50.0)
  Downloading jupyterlab-4.1.8-py3-none-any.whl.metadata (16 kB)
Collecting nbval (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading nbval-0.11.0-py2.py3-none-any.whl.metadata (6.7 kB)
Collecting pytest-console-scripts (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading pytest_console_scripts-1.4.1-py3-none-any.whl.metadata (11 kB)
Collecting pytest-timeout (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading pytest_timeout-2.3.1-py3-none-any.whl.metadata (20 kB)
Collecting pytest-tornasync (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading pytest_tornasync-0.6.0.post2-py3-none-any.whl.metadata (4.8 kB)
Requirement already satisfied: charset-normalizer<4,>=2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from requests->nbdime~=4.0.1->jupyterlab_git==0.50.0) (3.3.2)
Requirement already satisfied: urllib3<3,>=1.21.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from requests->nbdime~=4.0.1->jupyterlab_git==0.50.0) (2.2.1)
Collecting distlib<1,>=0.3.7 (from virtualenv>=20.10.0->pre-commit->jupyterlab_git==0.50.0)
  Using cached distlib-0.3.8-py2.py3-none-any.whl.metadata (5.1 kB)
Collecting filelock<4,>=3.12.2 (from virtualenv>=20.10.0->pre-commit->jupyterlab_git==0.50.0)
  Using cached filelock-3.14.0-py3-none-any.whl.metadata (2.8 kB)
Requirement already satisfied: pytz>=2015.7 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from babel>=2.10->jupyterlab-server<3,>=2.27.1->jupyterlab~=4.0->jupyterlab_git==0.50.0) (2024.1)
Requirement already satisfied: webencodings in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from bleach!=5.0.0->nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (0.5.1)
Collecting smmap<6,>=3.0.1 (from gitdb<5,>=4.0.1->gitpython!=2.1.4,!=2.1.5,!=2.1.6->nbdime~=4.0.1->jupyterlab_git==0.50.0)
  Downloading smmap-5.0.1-py3-none-any.whl.metadata (4.3 kB)
Requirement already satisfied: backcall in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.2.0)
Requirement already satisfied: decorator in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (5.1.1)
Requirement already satisfied: jedi>=0.16 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.19.1)
Requirement already satisfied: pickleshare in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.7.5)
Requirement already satisfied: prompt-toolkit!=3.0.37,<3.1.0,>=3.0.[30](https://github.com/jupyterlab/jupyterlab-git/actions/runs/9092321766/job/24988787136?pr=1327#step:7:31) in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (3.0.43)
Requirement already satisfied: stack-data in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.6.3)
Requirement already satisfied: fqdn in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.5.1)
Requirement already satisfied: isoduration in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (20.11.0)
Requirement already satisfied: jsonpointer>1.13 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.4)
Requirement already satisfied: uri-template in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.3.0)
Requirement already satisfied: webcolors>=1.11 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.13)
Collecting flaky (from jupyter-server[test]<3,>=2.4.0; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading flaky-3.8.1-py2.py3-none-any.whl.metadata (7.4 kB)
Collecting hatch (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached hatch-1.11.0-py3-none-any.whl.metadata (5.4 kB)
Collecting openapi-core~=0.18.0 (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading openapi_core-0.18.2-py3-none-any.whl.metadata (6.3 kB)
Collecting openapi-spec-validator<0.8.0,>=0.6.0 (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading openapi_spec_validator-0.7.1-py3-none-any.whl.metadata (5.7 kB)
Collecting pytest (from jupyterlab_git==0.50.0)
  Downloading pytest-7.4.4-py3-none-any.whl.metadata (7.9 kB)
Collecting requests-mock (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading requests_mock-1.12.1-py2.py3-none-any.whl.metadata (4.1 kB)
Collecting ruamel-yaml (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading ruamel.yaml-0.18.6-py3-none-any.whl.metadata (23 kB)
Collecting sphinxcontrib-spelling (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading sphinxcontrib_spelling-8.0.0-py3-none-any.whl.metadata (2.9 kB)
Collecting strict-rfc3339 (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading strict-rfc3339-0.7.tar.gz (17 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting werkzeug (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading werkzeug-3.0.3-py3-none-any.whl.metadata (3.7 kB)
Requirement already satisfied: cffi>=1.0.1 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from argon2-cffi-bindings->argon2-cffi>=21.1->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.16.0)
Requirement already satisfied: soupsieve>1.2 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from beautifulsoup4->nbconvert>=6.4.4->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.5)
Requirement already satisfied: pycparser in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from cffi>=1.0.1->argon2-cffi-bindings->argon2-cffi>=21.1->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.22)
Requirement already satisfied: parso<0.9.0,>=0.8.3 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from jedi>=0.16->ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.8.4)
Collecting asgiref<4.0.0,>=3.6.0 (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading asgiref-3.8.1-py3-none-any.whl.metadata (9.3 kB)
Collecting isodate (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading isodate-0.6.1-py2.py3-none-any.whl.metadata (9.6 kB)
Collecting jsonschema-spec<0.3.0,>=0.2.3 (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading jsonschema_spec-0.2.4-py3-none-any.whl.metadata (4.3 kB)
Collecting more-itertools (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached more_itertools-10.2.0-py3-none-any.whl.metadata (34 kB)
Collecting openapi-schema-validator<0.7.0,>=0.6.0 (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading openapi_schema_validator-0.6.2-py3-none-any.whl.metadata (5.3 kB)
Collecting parse (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading parse-1.20.1-py2.py3-none-any.whl.metadata (22 kB)
Collecting jsonschema-path<0.4.0,>=0.3.1 (from openapi-spec-validator<0.8.0,>=0.6.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading jsonschema_path-0.3.2-py3-none-any.whl.metadata (4.3 kB)
Collecting lazy-object-proxy<2.0.0,>=1.7.1 (from openapi-spec-validator<0.8.0,>=0.6.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading lazy_object_proxy-1.10.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.8 kB)
Requirement already satisfied: wcwidth in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30->ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.2.13)
Collecting hatchling>=1.24.2 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached hatchling-1.24.2-py3-none-any.whl.metadata (3.8 kB)
Collecting hyperlink>=21.0.0 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached hyperlink-21.0.0-py2.py3-none-any.whl.metadata (1.5 kB)
Collecting keyring>=23.5.0 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached keyring-25.2.1-py3-none-any.whl.metadata (20 kB)
Collecting rich>=11.2.0 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached rich-13.7.1-py3-none-any.whl.metadata (18 kB)
Collecting shellingham>=1.4.0 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting tomli-w>=1.0 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached tomli_w-1.0.0-py3-none-any.whl.metadata (4.9 kB)
Collecting tomlkit>=0.11.1 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached tomlkit-0.12.5-py3-none-any.whl.metadata (2.7 kB)
Collecting userpath~=1.7 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached userpath-1.9.2-py3-none-any.whl.metadata (3.0 kB)
Collecting uv>=0.1.35 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached uv-0.1.44-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (32 kB)
Collecting zstandard<1 (from hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached zstandard-0.22.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.9 kB)
Requirement already satisfied: arrow>=0.15.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from isoduration->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (1.3.0)
Collecting ruamel.yaml.clib>=0.2.7 (from ruamel-yaml->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading ruamel.yaml.clib-0.2.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl.metadata (2.2 kB)
Collecting PyEnchant>=3.1.1 (from sphinxcontrib-spelling->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading pyenchant-3.2.2-py3-none-any.whl.metadata (3.8 kB)
Collecting Sphinx>=3.0.0 (from sphinxcontrib-spelling->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading sphinx-7.1.2-py3-none-any.whl.metadata (5.8 kB)
Requirement already satisfied: executing>=1.2.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from stack-data->ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.0.1)
Requirement already satisfied: asttokens>=2.1.0 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from stack-data->ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (2.4.1)
Requirement already satisfied: pure-eval in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from stack-data->ipython>=7.23.1->ipykernel>=6.5.0->jupyterlab~=4.0->jupyterlab_git==0.50.0) (0.2.2)
Requirement already satisfied: types-python-dateutil>=2.8.10 in /opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages (from arrow>=0.15.0->isoduration->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0) (2.9.0.20240[31](https://github.com/jupyterlab/jupyterlab-git/actions/runs/9092321766/job/24988787136?pr=1327#step:7:32)6)
Collecting trove-classifiers (from hatchling>=1.24.2->hatch->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached trove_classifiers-2024.4.10-py3-none-any.whl.metadata (2.2 kB)
Collecting pathable<0.5.0,>=0.4.1 (from jsonschema-path<0.4.0,>=0.3.1->openapi-spec-validator<0.8.0,>=0.6.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading pathable-0.4.3-py3-none-any.whl.metadata (1.9 kB)
Collecting referencing>=0.28.4 (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0)
  Downloading referencing-0.31.1-py3-none-any.whl.metadata (2.7 kB)
INFO: pip is looking at multiple versions of jsonschema-spec to determine which version is compatible with other requirements. This could take a while.
Collecting jsonschema-spec<0.3.0,>=0.2.3 (from openapi-core~=0.18.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading jsonschema_spec-0.2.3-py3-none-any.whl.metadata (4.3 kB)
Collecting jsonschema-path<0.4.0,>=0.3.1 (from openapi-spec-validator<0.8.0,>=0.6.0->jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading jsonschema_path-0.3.1-py3-none-any.whl.metadata (4.3 kB)
INFO: pip is looking at multiple versions of jsonschema-path to determine which version is compatible with other requirements. This could take a while.
Collecting openapi-core~=0.18.0 (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading openapi_core-0.18.1-py3-none-any.whl.metadata (6.3 kB)
Collecting openapi-spec-validator<0.8.0,>=0.6.0 (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.[50](https://github.com/jupyterlab/jupyterlab-git/actions/runs/9092321766/job/24988787136?pr=1327#step:7:51).0)
  Downloading openapi_spec_validator-0.6.0-py3-none-any.whl.metadata (5.3 kB)
Collecting importlib-resources>=1.4.0 (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0)
  Downloading importlib_resources-5.13.0-py3-none-any.whl.metadata (4.2 kB)
Collecting openapi-core~=0.18.0 (from jupyterlab-server[test]<3,>=2.22.1; extra == "test"->notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Downloading openapi_core-0.18.0-py3-none-any.whl.metadata (6.3 kB)
Collecting jupyterlab-server[test]<3,>=2.22.1 (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached jupyterlab_server-2.27.1-py3-none-any.whl.metadata (5.9 kB)
INFO: pip is still looking at multiple versions of jsonschema-spec to determine which version is compatible with other requirements. This could take a while.
Collecting jupyter-server[test]<3,>=2.4.0 (from notebook[test]>=4.0->hybridcontents->jupyterlab_git==0.50.0)
  Using cached jupyter_server-2.14.0-py3-none-any.whl.metadata (8.4 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading jupyter_server-2.13.0-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.12.5-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.12.4-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.12.3-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.12.2-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.12.1-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.12.0-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.11.2-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.11.1-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.10.1-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.10.0-py3-none-any.whl.metadata (8.4 kB)
  Downloading jupyter_server-2.9.1-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.9.0-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.8.0-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.7.3-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.7.2-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.7.1-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.7.0-py3-none-any.whl.metadata (8.6 kB)
  Downloading jupyter_server-2.6.0-py3-none-any.whl.metadata (8.5 kB)
  Downloading jupyter_server-2.5.0-py3-none-any.whl.metadata (8.7 kB)
  Downloading jupyter_server-2.4.0-py3-none-any.whl.metadata (8.7 kB)
Collecting jsonschema[format-nongpl]>=4.18.0 (from jupyter-events>=0.9.0->jupyter-server<3,>=2.0.1->jupyterlab_git==0.50.0)
  Using cached jsonschema-4.22.0-py3-none-any.whl.metadata (8.2 kB)
  Downloading jsonschema-4.21.1-py3-none-any.whl.metadata (7.8 kB)
  Downloading jsonschema-4.21.0-py3-none-any.whl.metadata (8.0 kB)
  Downloading jsonschema-4.20.0-py3-none-any.whl.metadata (8.1 kB)
  Downloading jsonschema-4.19.2-py3-none-any.whl.metadata (7.9 kB)
  Downloading jsonschema-4.19.1-py3-none-any.whl.metadata (7.9 kB)
  Downloading jsonschema-4.19.0-py3-none-any.whl.metadata (8.2 kB)
  Downloading jsonschema-4.18.6-py3-none-any.whl.metadata (7.8 kB)
  Downloading jsonschema-4.18.5-py3-none-any.whl.metadata (7.7 kB)
  Downloading jsonschema-4.18.4-py3-none-any.whl.metadata (7.8 kB)
  Downloading jsonschema-4.18.3-py3-none-any.whl.metadata (7.9 kB)
  Downloading jsonschema-4.18.2-py3-none-any.whl.metadata (7.8 kB)
  Downloading jsonschema-4.18.1-py3-none-any.whl.metadata (7.8 kB)
  Downloading jsonschema-4.18.0-py3-none-any.whl.metadata (10 kB)
Collecting jsonschema-specifications>=2023.03.6 (from jsonschema>=2.6->nbformat->jupyterlab_git==0.50.0)
  Using cached jsonschema_specifications-2023.12.1-py3-none-any.whl.metadata (3.0 kB)
  Downloading jsonschema_specifications-2023.11.2-py3-none-any.whl.metadata (3.0 kB)
```

</details>


Discussion / hints:
It sounds reasonable to drop it
Yes, this sounds reasonable to me as well. Thanks @krassowski!

Fix patch:
diff --git a/pyproject.toml b/pyproject.toml
index e63f989d..29fab7a5 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -44,7 +44,6 @@ test = [
     "pytest-asyncio",
     "pytest-cov",
     "pytest-jupyter[server]>=0.6.0",
-    "hybridcontents",
     "jupytext",
 ]
 ui-tests = [


Test patch:
diff --git a/jupyterlab_git/tests/test_hybridcontents.py b/jupyterlab_git/tests/test_hybridcontents.py
deleted file mode 100644
index b4cf6813..00000000
--- a/jupyterlab_git/tests/test_hybridcontents.py
+++ /dev/null
@@ -1,71 +0,0 @@
-from pathlib import Path
-from unittest.mock import MagicMock
-
-import pytest
-import tornado
-from jupyter_server.services.contents.largefilemanager import LargeFileManager
-
-from jupyterlab_git.handlers import GitHandler
-
-
-pytest.importorskip("hybridcontents")
-# FIXME requires hybridcontents update to Jupyter Server 2
-pytestmark = pytest.mark.skipif(
-    True, reason="hybridcontents is not compatible with Jupyter Server 2"
-)
-
-
-@pytest.fixture
-def jp_server_config(jp_server_config, tmp_path):
-    main = tmp_path / "main"
-    main.mkdir()
-    second = tmp_path / "second"
-    second.mkdir()
-    return {
-        "ServerApp": {
-            "jpserver_extensions": {"jupyterlab_git": True},
-            "contents_manager_class": "hybridcontents.HybridContentsManager",
-        },
-        "HybridContentsManager": {
-            "manager_classes": {
-                "": LargeFileManager,
-                "directory": LargeFileManager,
-            },
-            "manager_kwargs": {
-                "": {"root_dir": str(main)},
-                "directory": {"root_dir": str(second)},
-            },
-        },
-    }
-
-
-@pytest.mark.parametrize(
-    "path, with_cm",
-    (
-        ("urlf", False),
-        ("url/to/path", False),
-        ("url/to/path", True),
-        ("directory/url/to/path", False),
-        ("directory/url/to/path", True),
-    ),
-)
-def test_hybridcontents_url2localpath(path, with_cm, jp_web_app, tmp_path):
-    if path.startswith("directory"):
-        fullpath = tmp_path / "second" / Path(path).relative_to("directory")
-    else:
-        fullpath = tmp_path / "main" / path
-    fullpath.parent.mkdir(parents=True, exist_ok=True)
-    fullpath.touch()
-
-    req = tornado.httputil.HTTPServerRequest()
-    req.connection = MagicMock()
-    handler = GitHandler(jp_web_app, req)
-    out = handler.url2localpath(path, with_cm)
-    if with_cm:
-        p = out[0]
-        assert out[1] != handler.contents_manager
-        assert isinstance(out[1], LargeFileManager)
-    else:
-        p = out
-
-    assert str(fullpath) == p