Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installing github dependencies broken on main #997

Closed
lukaszsamson opened this issue Jun 5, 2023 · 5 comments · Fixed by #1013
Closed

Installing github dependencies broken on main #997

lukaszsamson opened this issue Jun 5, 2023 · 5 comments · Fixed by #1013

Comments

@lukaszsamson
Copy link

Versions

elixir

Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit]

Elixir 1.14.5 (compiled with Erlang/OTP 25)

hex

main@15f9e6605295b61ce8ffe8e64501afc09afac622

To reproduce

Mix.install([{:elixir_ls, github: "elixir-lsp/elixir-ls", tag: "v0.14.6"}])

Result

* Getting elixir_ls (https://github.com/elixir-lsp/elixir-ls.git - v0.14.6)
remote: Enumerating objects: 10404, done.        
remote: Counting objects: 100% (10404/10404), done.        
remote: Compressing objects: 100% (3633/3633), done.        
remote: Total 10404 (delta 6692), reused 10055 (delta 6501), pack-reused 0        
* Getting elixir_sense (https://github.com/elixir-lsp/elixir_sense.git - 71efd1e2efbac43e6c98c525cc879ddd747ac62e)
remote: Enumerating objects: 10083, done.        
remote: Counting objects: 100% (1605/1605), done.        
remote: Compressing objects: 100% (577/577), done.        
remote: Total 10083 (delta 1161), reused 1280 (delta 1017), pack-reused 8478        
* Getting erl2ex (https://github.com/dazuma/erl2ex.git)
remote: Enumerating objects: 1431, done.        
remote: Total 1431 (delta 0), reused 0 (delta 0), pack-reused 1431        
origin/HEAD set to master
* Getting dialyxir_vendored (https://github.com/elixir-lsp/dialyxir.git - 896fa45817c6a1be8ec408577c88ab52c27f6851)
remote: Enumerating objects: 3198, done.        
remote: Counting objects: 100% (386/386), done.        
remote: Compressing objects: 100% (179/179), done.        
remote: Total 3198 (delta 181), reused 359 (delta 169), pack-reused 2812        
* Getting jason_v (https://github.com/elixir-lsp/jason.git - c81537e2a5e1acacb915cf339fe400357e3c2aaa)
remote: Enumerating objects: 1553, done.        
remote: Counting objects: 100% (229/229), done.        
remote: Compressing objects: 100% (87/87), done.        
remote: Total 1553 (delta 160), reused 148 (delta 142), pack-reused 1324        
* Getting path_glob_vendored (https://github.com/elixir-lsp/path_glob.git - origin/vendored)
remote: Enumerating objects: 395, done.        
remote: Counting objects: 100% (395/395), done.        
remote: Compressing objects: 100% (200/200), done.        
remote: Total 395 (delta 179), reused 361 (delta 149), pack-reused 0        
* Getting mix_task_archive_deps (https://github.com/elixir-lsp/mix_task_archive_deps.git)
remote: Enumerating objects: 265, done.        
remote: Counting objects: 100% (57/57), done.        
remote: Compressing objects: 100% (27/27), done.        
remote: Total 265 (delta 20), reused 57 (delta 20), pack-reused 208        
origin/HEAD set to master
Failed to fetch record for elixir_ls_utils from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
Failed to fetch record for elixir_ls_debugger from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
Failed to fetch record for elixir_ls from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
** (Mix.Error) No package with name elixir_ls (from: mix.exs) in registry
    (mix 1.14.5) lib/mix.ex:513: Mix.raise/2
    (hex 2.0.7-dev) lib/hex/remote_converger.ex:319: Hex.RemoteConverger.verify_package_req/4
    (elixir 1.14.5) lib/enum.ex:975: Enum."-each/2-lists^foreach/1-0-"/2
    (hex 2.0.7-dev) lib/hex/remote_converger.ex:304: Hex.RemoteConverger.verify_input/2
    (hex 2.0.7-dev) lib/hex/remote_converger.ex:51: Hex.RemoteConverger.converge/2
    (mix 1.14.5) lib/mix/dep/converger.ex:118: Mix.Dep.Converger.all/4
    (mix 1.14.5) lib/mix/dep/converger.ex:74: Mix.Dep.Converger.converge/4
    iex:1: (file)
iex(1)> Failed to fetch record for jason_v from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
@supersimple
Copy link
Member

Hi @lukaszsamson are you still able to reproduce this?
I just attempted, using the same elixir/otp versions and did not have an issue.
I am going to close for now, but please respond if it is still an issue and I will reopen and investigate further.

@lukaszsamson
Copy link
Author

lukaszsamson commented Aug 28, 2023

@supersimple @ericmj Still an issue and it breaks ElixirLS install. I just installed main@ 1881f9f and retried the repro steps

elixir --version
Erlang/OTP 25 [erts-13.2.2.2] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit]

Elixir 1.15.4 (compiled with Erlang/OTP 25)

mix archive.install github hexpm/hex branch main
* Getting new package (https://github.com/hexpm/hex.git - origin/main)
remote: Enumerating objects: 13716, done.        
remote: Counting objects: 100% (1171/1171), done.        
remote: Compressing objects: 100% (578/578), done.        
remote: Total 13716 (delta 707), reused 940 (delta 543), pack-reused 12545        
All dependencies are up to date
Compiling 1 file (.xrl)
Compiling 14 files (.erl)
Compiling 81 files (.ex)
Generated hex app
Generated archive "hex-2.0.7-dev.ez" with MIX_ENV=prod
Found existing entry: /Users/lukaszsamson/.mix/archives/hex-2.0.6
Are you sure you want to replace it with "hex-2.0.7-dev.ez"? [Yn] y
* creating /Users/lukaszsamson/.mix/archives/hex-2.0.7-dev
iex
Erlang/OTP 25 [erts-13.2.2.2] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit]

Interactive Elixir (1.15.4) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> Mix.install([{:elixir_ls, github: "elixir-lsp/elixir-ls", tag: "v0.14.6"}])
* Getting elixir_ls (https://github.com/elixir-lsp/elixir-ls.git - v0.14.6)
remote: Enumerating objects: 10867, done.        
remote: Counting objects: 100% (2389/2389), done.        
remote: Compressing objects: 100% (756/756), done.        
remote: Total 10867 (delta 1838), reused 1924 (delta 1585), pack-reused 8478        
* Getting elixir_sense (https://github.com/elixir-lsp/elixir_sense.git - 71efd1e2efbac43e6c98c525cc879ddd747ac62e)
remote: Enumerating objects: 11367, done.        
remote: Counting objects: 100% (2895/2895), done.        
remote: Compressing objects: 100% (987/987), done.        
remote: Total 11367 (delta 2073), reused 2493 (delta 1892), pack-reused 8472        
* Getting erl2ex (https://github.com/dazuma/erl2ex.git)
remote: Enumerating objects: 1431, done.        
remote: Total 1431 (delta 0), reused 0 (delta 0), pack-reused 1431        
origin/HEAD set to master
* Getting dialyxir_vendored (https://github.com/elixir-lsp/dialyxir.git - 896fa45817c6a1be8ec408577c88ab52c27f6851)
remote: Enumerating objects: 3198, done.        
remote: Counting objects: 100% (386/386), done.        
remote: Compressing objects: 100% (172/172), done.        
remote: Total 3198 (delta 180), reused 362 (delta 176), pack-reused 2812        
* Getting jason_v (https://github.com/elixir-lsp/jason.git - c81537e2a5e1acacb915cf339fe400357e3c2aaa)
remote: Enumerating objects: 1553, done.        
remote: Counting objects: 100% (229/229), done.        
remote: Compressing objects: 100% (99/99), done.        
remote: Total 1553 (delta 156), reused 150 (delta 130), pack-reused 1324        
* Getting path_glob_vendored (https://github.com/elixir-lsp/path_glob.git - origin/vendored)
remote: Enumerating objects: 395, done.        
remote: Counting objects: 100% (395/395), done.        
remote: Compressing objects: 100% (200/200), done.        
remote: Total 395 (delta 179), reused 361 (delta 149), pack-reused 0        
* Getting mix_task_archive_deps (https://github.com/elixir-lsp/mix_task_archive_deps.git)
remote: Enumerating objects: 265, done.        
remote: Counting objects: 100% (57/57), done.        
remote: Compressing objects: 100% (27/27), done.        
remote: Total 265 (delta 20), reused 57 (delta 20), pack-reused 208        
origin/HEAD set to master
Failed to fetch record for elixir_ls from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
Failed to fetch record for elixir_ls_debugger from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
Failed to fetch record for elixir_ls_utils from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it
** (Mix.Error) No package with name elixir_ls (from: mix.exs) in registry
    (mix 1.15.4) lib/mix.ex:577: Mix.raise/2
    (hex 2.0.7-dev) lib/hex/remote_converger.ex:319: Hex.RemoteConverger.verify_package_req/4
    (elixir 1.15.4) lib/enum.ex:984: Enum."-each/2-lists^foreach/1-0-"/2
    (hex 2.0.7-dev) lib/hex/remote_converger.ex:304: Hex.RemoteConverger.verify_input/2
    (hex 2.0.7-dev) lib/hex/remote_converger.ex:51: Hex.RemoteConverger.converge/2
    (mix 1.15.4) lib/mix/dep/converger.ex:141: Mix.Dep.Converger.all/4
    (mix 1.15.4) lib/mix/dep/converger.ex:74: Mix.Dep.Converger.converge/4
    iex:1: (file)
iex(1)> Failed to fetch record for jason_v from registry (using cache instead)
This could be because the package does not exist, it was spelled incorrectly or you don't have permissions to it

Compare it with 2.0.6

mix local.hex   
Found existing entry: /Users/lukaszsamson/.mix/archives/hex-2.0.7-dev
Are you sure you want to replace it with "https://builds.hex.pm/installs/1.14.0/hex-2.0.6.ez"? [Yn] y
* creating /Users/lukaszsamson/.mix/archives/hex-2.0.6

iex          
Erlang/OTP 25 [erts-13.2.2.2] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit]

Interactive Elixir (1.15.4) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> Mix.install([{:elixir_ls, github: "elixir-lsp/elixir-ls", tag: "v0.14.6"}])

...
Generated language_server app
:ok

@supersimple supersimple reopened this Aug 28, 2023
@lukaszsamson
Copy link
Author

I did a bisect and the commit that broke that was 8619cc8 @ericmj

@ericmj
Copy link
Member

ericmj commented Feb 9, 2024

@lukaszsamson Can you try with mix archive.install github hexpm/hex branch ericmj/fix-umbrella-deps to see if it fixes your issue?

@lukaszsamson
Copy link
Author

@ericmj I can confirm your patch is fixing the issue. Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants