williamboman / mason.nvim

Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.
Apache License 2.0
7.3k stars 261 forks source link

Install fails for jedi-language-server 0.41.0 #1466

Closed pmaresca closed 2 months ago

pmaresca commented 10 months ago

I've searched open issues for similar requests

I've recently downloaded the latest plugin version of mason.nvim

Problem description

Seems to fail on install of pydantic-core 2.6.3, complains about maturin as well. I tried to locate the generated venv and see if I could complete install myself but it seems to clean it up on failure.

Expected behavior

jedi-language-server installs successfully

Affected packages

jedi-language-server

Mason output

Failed
    ✗ jedi-language-server
      ▼ Displaying full log
        Creating virtual environment…
        Installing pip package jedi-language-server@0.41.0…
        Collecting jedi-language-server==0.41.0
          Using cached jedi_language_server-0.41.0-py3-none-any.whl (26 kB)
        Collecting docstring-to-markdown==0.*
          Using cached docstring_to_markdown-0.12-py3-none-any.whl (18 kB)
        Collecting lsprotocol>=2022.0.0a9
          Using cached lsprotocol-2023.0.0a2-py3-none-any.whl (69 kB)
        Collecting typing-extensions<5.0.0,>=4.5.0; python_version < "3.10"
          Using cached typing_extensions-4.7.1-py3-none-any.whl (33 kB)
        Collecting pydantic<3.0.0,>=2.0.2
          Using cached pydantic-2.3.0-py3-none-any.whl (374 kB)
        Collecting pygls<2.0.0,>=1.0.1
          Using cached pygls-1.0.2-py3-none-any.whl (38 kB)
        Collecting jedi<0.20.0,>=0.19.0
          Using cached jedi-0.19.0-py2.py3-none-any.whl (1.6 MB)
        Collecting cattrs
          Using cached cattrs-23.1.2-py3-none-any.whl (50 kB)
        Collecting attrs>=21.3.0
          Using cached attrs-23.1.0-py3-none-any.whl (61 kB)
        Collecting pydantic-core==2.6.3
          Using cached pydantic_core-2.6.3.tar.gz (337 kB)
          Installing build dependencies: started
          Installing build dependencies: still running...
          Installing build dependencies: finished with status 'done'
          Getting requirements to build wheel: started
          Getting requirements to build wheel: finished with status 'done'
            Preparing wheel metadata: started
            Preparing wheel metadata: finished with status 'done'
        Collecting annotated-types>=0.4.0
          Using cached annotated_types-0.5.0-py3-none-any.whl (11 kB)
        Collecting typeguard<4,>=3
          Using cached typeguard-3.0.2-py3-none-any.whl (30 kB)
        Collecting parso<0.9.0,>=0.8.3
          Using cached parso-0.8.3-py2.py3-none-any.whl (100 kB)
        Collecting exceptiongroup; python_version < "3.11"
          Using cached exceptiongroup-1.1.3-py3-none-any.whl (14 kB)
        Collecting importlib-metadata>=3.6; python_version < "3.10"
          Using cached importlib_metadata-6.8.0-py3-none-any.whl (22 kB)
        Collecting zipp>=0.5
          Using cached zipp-3.16.2-py3-none-any.whl (7.2 kB)
        Building wheels for collected packages: pydantic-core
          Building wheel for pydantic-core (PEP 517): started
          Building wheel for pydantic-core (PEP 517): finished with status 'error'
        Failed to build pydantic-core
          ERROR: Command errored out with exit status 1:
           command: /Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python /Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /var/folders/8l/5gtc3_6d4vg5mzs0bdtv4q3r0000gn/T/tmp9natfi80
               cwd: /private/var/folders/8l/5gtc3_6d4vg5mzs0bdtv4q3r0000gn/T/pip-install-yf_rs7hs/pydantic-core
          Complete output (113 lines):
          Running `maturin pep517 build-wheel -i /Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python --compatibility off`
          📦 Including license file "/private/var/folders/8l/5gtc3_6d4vg5mzs0bdtv4q3r0000gn/T/pip-install-yf_rs7hs/pydantic-core/LICENSE"
          🍹 Building a mixed python/rust project
          🔗 Found pyo3 bindings
          🐍 Found CPython 3.9 at /Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python
          📡 Using build options features, bindings from pyproject.toml
          💻 Using `MACOSX_DEPLOYMENT_TARGET=10.7` for x86_64-apple-darwin by default
             Compiling autocfg v1.1.0
             Compiling proc-macro2 v1.0.64
             Compiling quote v1.0.29
             Compiling unicode-ident v1.0.10
             Compiling target-lexicon v0.12.9
             Compiling python3-dll-a v0.2.9
             Compiling once_cell v1.18.0
             Compiling libc v0.2.147
             Compiling version_check v0.9.4
             Compiling cfg-if v1.0.0
             Compiling rustversion v1.0.13
             Compiling memchr v2.5.0
             Compiling syn v1.0.109
             Compiling tinyvec_macros v0.1.1
             Compiling parking_lot_core v0.9.8
             Compiling tinyvec v1.6.0
             Compiling num-traits v0.2.15
             Compiling lock_api v0.4.10
             Compiling num-integer v0.1.45
             Compiling num-bigint v0.4.3
             Compiling memoffset v0.9.0
             Compiling heck v0.4.1
             Compiling pyo3-build-config v0.19.2
             Compiling serde v1.0.185
             Compiling syn v2.0.28
             Compiling scopeguard v1.1.0
             Compiling smallvec v1.11.0
             Compiling unicode-normalization v0.1.22
             Compiling aho-corasick v1.0.2
             Compiling ahash v0.8.3
             Compiling equivalent v1.0.1
             Compiling percent-encoding v2.3.0
             Compiling hashbrown v0.14.0
             Compiling regex-syntax v0.7.4
             Compiling serde_json v1.0.105
             Compiling unicode-bidi v0.3.13
             Compiling idna v0.4.0
             Compiling indexmap v2.0.0
             Compiling form_urlencoded v1.2.0
             Compiling parking_lot v0.12.1
             Compiling pyo3-ffi v0.19.2
             Compiling pyo3 v0.19.2
             Compiling pydantic-core v2.6.3 (/private/var/folders/8l/5gtc3_6d4vg5mzs0bdtv4q3r0000gn/T/pip-install-yf_rs7hs/pydantic-core)
             Compiling getrandom v0.2.10
             Compiling unindent v0.1.11
             Compiling ryu v1.0.14
             Compiling regex-automata v0.3.6
             Compiling itoa v1.0.8
             Compiling indoc v1.0.9
             Compiling pyo3-macros-backend v0.19.2
             Compiling url v2.4.0
             Compiling uuid v1.4.1
             Compiling base64 v0.21.2
             Compiling strum_macros v0.25.2
             Compiling serde_derive v1.0.185
             Compiling enum_dispatch v0.3.12
             Compiling regex v1.9.3
             Compiling pyo3-macros v0.19.2
             Compiling strum v0.25.0
             Compiling speedate v0.12.0
          error[E0658]: use of unstable library feature 'once_cell'
           --> src/lib.rs:5:5
            |
          5 | use std::sync::OnceLock;
            |     ^^^^^^^^^^^^^^^^^^^
            |
            = note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information

          error[E0658]: use of unstable library feature 'once_cell'
            --> src/lib.rs:40:35
             |
          40 |     static PYDANTIC_CORE_VERSION: OnceLock<String> = OnceLock::new();
             |                                   ^^^^^^^^^^^^^^^^
             |
             = note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information

          error[E0658]: use of unstable library feature 'once_cell'
            --> src/lib.rs:40:54
             |
          40 |     static PYDANTIC_CORE_VERSION: OnceLock<String> = OnceLock::new();
             |                                                      ^^^^^^^^
             |
             = note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information

          error[E0658]: use of unstable library feature 'once_cell'
            --> src/lib.rs:40:54
             |
          40 |     static PYDANTIC_CORE_VERSION: OnceLock<String> = OnceLock::new();
             |                                                      ^^^^^^^^^^^^^
             |
             = note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information

          error[E0658]: use of unstable library feature 'once_cell'
            --> src/lib.rs:42:27
             |
          42 |     PYDANTIC_CORE_VERSION.get_or_init(|| {
             |                           ^^^^^^^^^^^
             |
             = note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information

          For more information about this error, try `rustc --explain E0658`.
          error: could not compile `pydantic-core` due to 5 previous errors
          💥 maturin failed
            Caused by: Failed to build a native library through cargo
            Caused by: Cargo build finished with "exit status: 101": `CARGO_ENCODED_RUSTFLAGS="-C\u{1f}link-arg=-undefined\u{1f}-C\u{1f}link-arg=dynamic_lookup" MACOSX_DEPLOYMENT_TARGET="10.7" PYO3_ENVIRONMENT_SIGNATURE="cpython-3.9-64bit" PYO3_PYTHON="/Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python" PYTHON_SYS_EXECUTABLE="/Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python" "cargo" "rustc" "--features" "pyo3/extension-module" "--message-format" "json-render-diagnostics" "--manifest-path" "/private/var/folders/8l/5gtc3_6d4vg5mzs0bdtv4q3r0000gn/T/pip-install-yf_rs7hs/pydantic-core/Cargo.toml" "--release" "--lib" "--crate-type" "cdylib" "--" "-C" "link-arg=-undefined" "-C" "link-arg=dynamic_lookup" "-C" "link-args=-Wl,-install_name,@rpath/pydantic_core._pydantic_core.cpython-39-darwin.so"`
          Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
          ----------------------------------------
          ERROR: Failed building wheel for pydantic-core
        ERROR: Could not build wheels for pydantic-core which use PEP 517 and cannot be installed directly
        spawn: /Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python failed with exit code 1 and signal 0.

Installation log

[INFO  Fri 25 Aug 13:54:32 2023] ...acker/start/mason.nvim/lua/mason-core/installer/init.lua:184: Executing installer for Package(name=jedi-language-server) {}
[ERROR Fri 25 Aug 13:55:58 2023] ...acker/start/mason.nvim/lua/mason-core/installer/init.lua:249: Installation failed for Package(name=jedi-language-server) error=spawn: /Users/me/.local/share/nvim/mason/packages/jedi-language-server/venv/bin/python failed with exit code 1 and signal 0.

Neovim version (>= 0.7)

NVIM v0.9.1 Build type: Release LuaJIT 2.1.0-beta3

Operating system/version

Darwin MacBook-Pro-6.local.tld 22.5.0 Darwin Kernel Version 22.5.0: Mon Apr 24 20:52:24 PDT 2023; root:xnu-8796.121.2~5/RELEASE_ARM64_T6000 arm64

Healthcheck

mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.6.2
- OK PATH: prepend
- OK Providers: 
  mason.providers.registry-api
  mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2023-08-25-puffy-judge` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- WARNING wget: not available
  - ADVICE:
    - spawn: wget failed with exit code - and signal -. wget is not executable
- OK curl: `curl 7.88.1 (x86_64-apple-darwin22.0) libcurl/7.88.1 (SecureTransport) LibreSSL/3.3.6 zlib/1.2.11 nghttp2/1.51.0`
- OK gzip: `Apple gzip 403.100.6`
- OK tar: `bsdtar 3.5.3 - libarchive 3.5.3 zlib/1.2.11 liblzma/5.0.5 bz2lib/1.0.8 `
- OK bash: `GNU bash, version 3.2.57(1)-release (arm64-apple-darwin22)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- WARNING luarocks: not available
  - ADVICE:
    - spawn: luarocks failed with exit code - and signal -. luarocks is not executable
- WARNING Composer: not available
  - ADVICE:
    - spawn: composer failed with exit code - and signal -. composer is not executable
- WARNING PHP: not available
  - ADVICE:
    - spawn: php failed with exit code - and signal -. php is not executable
- OK Ruby: `ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin22]`
- OK Go: `go version go1.17.1 darwin/amd64`
- OK node: `v14.6.0`
- OK cargo: `cargo 1.69.0 (6e9a83356 2023-04-12)`
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- OK python: `Python 3.9.1`
- OK RubyGem: `3.0.3.1`
- OK java: `java version "1.8.0_241"`
- OK npm: `6.14.6`
- OK pip: `pip 23.2.1 from /Users/peter_maresca/.pyenv/versions/3.9.1/envs/aim-web/lib/python3.9/site-packages/pip (python 3.9)`
- OK python venv: `Ok`
- OK javac: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 35. Remaining: 4965. Limit: 5000. Reset: Fri 25 Aug 14:11:52 2023.

Screenshots

No response

pmaresca commented 10 months ago

Update: I didn't realize that I could specify a lower version if needed with :MasonInstall... It looks like this problem is specific to the 0.41.0 release of jedi. I was able to install 0.40.0 successfully.

pmaresca commented 2 months ago

Looks like jedi removed pydantic in a recent update...install works on the latest jedi server now