jupyterlab / hatch-jupyter-builder

A hatch plugin to help build Jupyter packages

Home Page:https://hatch-jupyter-builder.readthedocs.io/en/latest/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Conflict between homebrew yarn and node package installed yarn RESOLVED

paddymul opened this issue · comments

Description

I tried to install a development copy of my widget into a new environment and I started receiving yarn error messages:

    File "/private/var/folders/th/jfr8ccjx09g2j_18ty_t3xnh0000gn/T/pip-build-env-5brsgk98/normal/lib/python3.11/site-packages/hatch_jupyter_builder/utils.py", line 229, in run
      return subprocess.check_call(cmd, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/Users/paddy/opt/anaconda3/envs/buckaroo-ipyr-dev/lib/python3.11/subprocess.py", line 413, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['/opt/homebrew/bin/yarn', 'install']' died with <Signals.SIGSEGV: 11>.
  error: subprocess-exited-with-error
  
  × Preparing editable metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: /Users/paddy/opt/anaconda3/envs/buckaroo-ipyr-dev/bin/python /Users/paddy/opt/anaconda3/envs/buckaroo-ipyr-dev/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py prepare_metadata_for_build_editable /var/folders/th/jfr8ccjx09g2j_18ty_t3xnh0000gn/T/tmptfzvgnu3
  cwd: /Users/paddy/buckaroo
  Preparing editable metadata (pyproject.toml) ... error
error: metadata-generation-failed

even though running yarn install worked successfully.

Previously I had tried to remove the homebrew installed node on my system and release it with the https://nodejs.org/en/download packaged node.

I checked for the executable of node npm and yarn with which yarn
yarn pointed at /opt/homebrew/bin/yarn and node pointed at /usr/local/bin/node

I moved yarn and npm with mv /opt/homebrew/bin/npm /opt/homebrew/bin/npm_old mv /opt/homebrew/bin/yarn /opt/homebrew/bin/yarn_old

and verified that my path then pointed at /usr/local/bin/npm

finally I ran npm install -g yarn.

After that
pip install -ve . worked properly.

I think my environment was messed up. I'm writing this bug report to help anyone else who runs across this problem when developing a widget.

installing yarn via conda may have worked. This is the recommended technique by ipyreact
conda create -n ipyreact-dev -c conda-forge nodejs yarn python jupyterlab