Jupyter Lab install fails without Rust?

Suddenly when I install Jupyter Lab with

pip install jupyterlab

I get

Collecting y-py<0.6.0,>=0.5.3
  Using cached y_py-0.5.4.tar.gz (39 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error
  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Cargo, the Rust package manager, is not installed or is not on PATH.
      This package requires Rust and Cargo to compile extensions. Install it through
      the system's package manager or via https://rustup.rs/
      Checking for Rust toolchain....
      [end of output]
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.

Do I really now need to install Rust in order to get Jupyter working (and if so why is this not mentioned in the installation instructions)?

To get up and running today on can try one of:

  • pin to jupyterlab <3.6 (probably recommended)
  • use conda-forge (definitely recommended, but I’m biased, as I help maintain)
  • install rust (not recommended… but one could get it from conda-forge)

Without knowing what the operating system or python that’s causing the issue, one would need to raise an issue on GitHub - y-crdt/ypy: Python bindings to y-crdt to ensure a compatible wheel is built for the particular configuration. But also, one should be sensitive to the maintainers’ position: as free software, it is not always possible to do binary builds for all proprietary platforms in the specific distribution channel some specific workflow would prefer.

1 Like

But I had been using 3.6.1 without issue before. I need to downgrade now?

MBA M2; macOS 13.2.1

Here’s what works: pip install -I y-py==0.5.5

Though I get a warning:

WARNING: The candidate selected for download or install is a yanked version: 'y-py' candidate (version 0.5.5 at https://files.pythonhosted.org/packages/c5/4d/bf71762a6bea88ab2cdf8d6cc2fb608a09303660aa29277abe5d3fbaeddc/y_py-0.5.5-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (from https://pypi.org/simple/y-py/))
Reason for being yanked: Inconsistent wheels

So I guess that’s what changed. The working y-py was downgraded to one that won’t even install.

Crossposted here.

I had to yank ypy v0.5.5 because it had inconsistent wheels. We released v0.6.0 with a breaking change, but JupyterLab currently pins ypy<0.6.0. Yesterday I released v0.5.9, that should fix your issue.