Installing PyCall in Julia 1.2 fails on Mac OS X
- Dominant language
- Julia
- Stars
- 1.5k
- Forks
- 186
- PR merge metrics
- No merged PRs in 30d
Description
I tried installing PyCall on a fresh install of Julia 1.2 but got an error stating setuptools can't be removed. Any idea what might be going on:
```
julia> Pkg.add("PyCall")
Cloning default registries into `~/.julia`
Cloning registry from "https://github.com/JuliaRegistries/General.git"
Added registry `General` to `~/.julia/registries/General`
Resolving package versions...
Installed VersionParsing ───── v1.1.3
Installed Tokenize ─────────── v0.5.6
Installed Parsers ──────────── v0.3.7
Installed Compat ───────────── v2.2.0
Installed OrderedCollections ─ v1.1.0
Installed DataStructures ───── v0.17.2
Installed MacroTools ───────── v0.5.1
Installed PyCall ───────────── v1.91.2
Installed Conda ────────────── v1.3.0
Installed CSTParser ────────── v0.6.2
Installed JSON ─────────────── v0.21.0
Updating `~/.julia/environments/v1.2/Project.toml`
[438e738f] + PyCall v1.91.2
Updating `~/.julia/environments/v1.2/Manifest.toml`
[00ebfdb7] + CSTParser v0.6.2
[34da2185] + Compat v2.2.0
[8f4d0f93] + Conda v1.3.0
[864edb3b] + DataStructures v0.17.2
[682c06a0] + JSON v0.21.0
[1914dd2f] + MacroTools v0.5.1
[bac558e1] + OrderedCollections v1.1.0
[69de0a69] + Parsers v0.3.7
[438e738f] + PyCall v1.91.2
[0796e94c] + Tokenize v0.5.6
[81def892] + VersionParsing v1.1.3
[2a0f44e3] + Base64
[ade2ca70] + Dates
[8bb1440f] + DelimitedFiles
[8ba89e20] + Distributed
[b77e0a4c] + InteractiveUtils
[76f85450] + LibGit2
[8f399da3] + Libdl
[37e2e46d] + LinearAlgebra
[56ddb016] + Logging
[d6f4376e] + Markdown
[a63ad114] + Mmap
[44cfe95a] + Pkg
[de0858da] + Printf
[3fa0cd96] + REPL
[9a3f8284] + Random
[ea8e919c] + SHA
[9e88b42a] + Serialization
[1a1011a3] + SharedArrays
[6462fe0b] + Sockets
[2f01184e] + SparseArrays
[10745b16] + Statistics
[8dfed614] + Test
[cf7118a7] + UUIDs
[4ec0a83e] + Unicode
Building Conda ─→ `~/.julia/packages/Conda/kLXeC/deps/build.log`
Building PyCall → `~/.julia/packages/PyCall/ttONZ/deps/build.log`
┌ Error: Error building `PyCall`, showing the last 100 of log:
│ Collecting package metadata (current_repodata.json): ...working... done
│ Solving environment: ...working... done
│
│ ## Package Plan ##
│
│ environment location: /Users/kamesh/.julia/conda/3
│
│ added / updated specs:
│ - conda
│
│
│ The following packages will be downloaded:
│
│ package | build
│ ---------------------------|-----------------
│ asn1crypto-1.0.1 | py37_0 161 KB
│ ca-certificates-2019.8.28 | 0 133 KB
│ certifi-2019.9.11 | py37_0 154 KB
│ chardet-3.0.4 | py37_1003 174 KB
│ conda-4.7.12 | py37_0 3.0 MB
│ conda-package-handling-1.6.0| py37h1de35cc_0 1.3 MB
│ openssl-1.1.1d | h1de35cc_2 2.2 MB
│ pysocks-1.7.1 | py37_0 30 KB
│ sqlite-3.30.0 | ha441bb4_0 2.4 MB
│ tqdm-4.36.1 | py_0 50 KB
│ ------------------------------------------------------------
│ Total: 9.6 MB
│
│ The following packages will be REMOVED:
│
│ bzip2-1.0.8-h1de35cc_0
│ libarchive-3.3.3-h786848e_5
│ libiconv-1.15-hdd342a3_7
│ libxml2-2.9.9-hf6e021a_1
│ lz4-c-1.8.1.2-h1de35cc_0
│ lzo-2.10-h362108e_2
│ pip-19.1.1-py37_0
│ python-libarchive-c-2.8-py37_11
│ python.app-2-py37_9
│ setuptools-41.0.1-py37_0
│ wheel-0.33.4-py37_0
│ zstd-1.3.7-h5bba6e5_0
│
│ The following packages will be UPDATED:
│
│ asn1crypto 0.24.0-py37_0 --> 1.0.1-py37_0
│ ca-certificates 2019.5.15-0 --> 2019.8.28-0
│ certifi 2019.6.16-py37_0 --> 2019.9.11-py37_0
│ chardet 3.0.4-py37_1 --> 3.0.4-py37_1003
│ conda 4.7.10-py37_0 --> 4.7.12-py37_0
│ conda-package-han~ 1.3.11-py37_0 --> 1.6.0-py37h1de35cc_0
│ openssl 1.1.1c-h1de35cc_1 --> 1.1.1d-h1de35cc_2
│ pysocks 1.7.0-py37_0 --> 1.7.1-py37_0
│ sqlite 3.29.0-ha441bb4_0 --> 3.30.0-ha441bb4_0
│ tqdm 4.32.1-py_0 --> 4.36.1-py_0
│
│
│
│ Downloading and Extracting Packages
certifi-2019.9.11 | 154 KB | ########## | 100%
tqdm-4.36.1 | 50 KB | ########## | 100%
conda-package-handli | 1.3 MB | ########## | 100%
asn1crypto-1.0.1 | 161 KB | ########## | 100%
chardet-3.0.4 | 174 KB | ########## | 100%
ca-certificates-2019 | 133 KB | ########## | 100%
openssl-1.1.1d | 2.2 MB | ########## | 100%
conda-4.7.12 | 3.0 MB | ########## | 100%
sqlite-3.30.0 | 2.4 MB | ########## | 100%
pysocks-1.7.1 | 30 KB | ########## | 100%
│ Preparing transaction: ...working... done
│ Verifying transaction: ...working... failed
│
│ RemoveError: 'setuptools' is a dependency of conda and cannot be removed from
│ conda's operating environment.
│
│ ┌ Info: Using the Python distribution in the Conda package by default.
│ └ To use a different Python version, set ENV["PYTHON"]="pythoncommand" and re-run Pkg.build("PyCall").
│ [ Info: Downloading miniconda installer ...
│ [ Info: Installing miniconda ...
│ [ Info: Running `conda config --add channels defaults --file /Users/kamesh/.julia/conda/3/condarc-julia.yml --force` in root environment
│ [ Info: Running `conda update -y conda` in root environment
│ ERROR: LoadError: failed process: Process(setenv(`/Users/kamesh/.julia/conda/3/bin/conda update -y conda`,["CLICOLOR=1", "LSCOLORS=CxFxGxDxbxegedabagGxGx", "PATH=/Applications/Julia-1.2.app/Contents/Resources/julia/bin/:/anaconda3/bin:/anaconda3/condabin:/anaconda3/bin:/opt/local/bin:/opt/local/sbin:/Developer/NVIDIA/CUDA-9.2/bin:/Library/TeX/texbin:/Applications/MATLAB_R2014a.app/bin:/Applications/MATLAB_R2011b.app/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/opt/X11/bin:/Library/TeX/Distributions/.DefaultTeX/Contents/Programs/texbin", "PWD=/Users/kamesh", "XPC_FLAGS=0x0", "_CE_M=", "XPC_SERVICE_NAME=0", "TERM_PROGRAM=Apple_Terminal", "DISPLAY=/private/tmp/com.apple.launchd.H5wPiV35rm/org.macosforge.xquartz:0", "SHELL=/bin/bash" … "Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.btcQWzUiSj/Render", "_CE_CONDA=", "USER=kamesh", "TERM=xterm", "MKL_NUM_THREADS=8", "TERM_PROGRAM_VERSION=421.1", "JULIA_NUM_THREADS=8", "HOME=/Users/kamesh", "OPENBLAS_MAIN_FREE=1", "PYTHONIOENCODING=UTF-8"]), ProcessExited(1)) [1]
│
│ Stacktrace:
│ [1] pipeline_error at ./process.jl:813 [inlined]
│ [2] #run#536(::Bool, ::typeof(run), ::Cmd) at ./process.jl:728
│ [3] run at ./process.jl:726 [inlined]
│ [4] runconda(::Cmd, ::String) at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:113
│ [5] runconda(::Cmd) at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:111
│ [6] _install_conda(::String, ::Bool) at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:172
│ [7] _install_conda(::String) at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:152
│ [8] runconda(::Cmd, ::String) at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:111
│ [9] #add#1(::String, ::typeof(Conda.add), ::String, ::String) at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:184
│ [10] add at /Users/kamesh/.julia/packages/Conda/kLXeC/src/Conda.jl:183 [inlined] (repeats 2 times)
│ [11] top-level scope at /Users/kamesh/.julia/packages/PyCall/ttONZ/deps/build.jl:84
│ [12] include at ./boot.jl:328 [inlined]
│ [13] include_relative(::Module, ::String) at ./loading.jl:1094
│ [14] include(::Module, ::String) at ./Base.jl:31
│ [15] include(::String) at ./client.jl:431
│ [16] top-level scope at none:5
│ in expression starting at /Users/kamesh/.julia/packages/PyCall/ttONZ/deps/build.jl:43
│
│ Full log at /Users/kamesh/.julia/packages/PyCall/ttONZ/deps/build.log
└ @ Pkg.Operations /Users/sabae/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.2/Pkg/src/backwards_compatible_isolation.jl:647
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reproducing the Julia 1.2 installation failure and inspect the referenced Conda build log. Read Conda.jl around lines 111–184 and PyCall's deps/build.jl around line 84 to trace the Conda update; done means a fresh PyCall installation completes without the setuptools RemoveError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100