Open BoPeng opened 4 years ago
The first problem was that the conda-forge julia package was missing a dependency. I fixed that in https://github.com/conda-forge/staged-recipes/pull/16113 and https://github.com/conda-forge/julia-feedstock/pull/126
Now we are hitting another error in the test phase that I don't yet understand:
===== testing package: sos-julia-0.18.5-pyhd8ed1ab_0 =====
running run_test.py
Ignoring reply not to a5eb5229-3720e6a2740f17db942e0079_1199_2: {'header': {'msg_id': '4f1a0f02-755b3a4ab98b98d3e68e8c3b_1203_5', 'msg_type': 'kernel_info_reply', 'username': 'conda', 'session': '4f1a0f02-755b3a4ab98b98d3e68e8c3b', 'date': datetime.datetime(2021, 9, 23, 9, 26, 21, 838027, tzinfo=tzlocal()), 'version': '5.3'}, 'msg_id': '4f1a0f02-755b3a4ab98b98d3e68e8c3b_1203_5', 'msg_type': 'kernel_info_reply', 'parent_header': {'msg_id': 'a5eb5229-3720e6a2740f17db942e0079_1199_1', 'msg_type': 'kernel_info_request', 'username': 'conda', 'session': 'a5eb5229-3720e6a2740f17db942e0079', 'date': datetime.datetime(2021, 9, 23, 9, 26, 21, 452540, tzinfo=tzlocal()), 'version': '5.3'}, 'metadata': {}, 'content': {'status': 'ok', 'protocol_version': '5.3', 'implementation': 'SOS', 'implementation_version': '0.22.4', 'language_info': {'mimetype': 'text/x-sos', 'name': 'sos', 'file_extension': '.sos', 'pygments_lexer': 'sos', 'codemirror_mode': 'sos', 'nbconvert_exporter': 'sos_notebook.converter.SoS_Exporter'}, 'banner': 'SoS kernel - script of scripts', 'help_links': [{'text': 'Python Reference', 'url': 'https://docs.python.org/3.9'}, {'text': 'IPython Reference', 'url': 'https://ipython.org/documentation.html'}, {'text': 'NumPy Reference', 'url': 'https://docs.scipy.org/doc/numpy/reference/'}, {'text': 'SciPy Reference', 'url': 'https://docs.scipy.org/doc/scipy/reference/'}, {'text': 'Matplotlib Reference', 'url': 'https://matplotlib.org/contents.html'}, {'text': 'SymPy Reference', 'url': 'http://docs.sympy.org/latest/index.html'}, {'text': 'pandas Reference', 'url': 'https://pandas.pydata.org/pandas-docs/stable/'}]}, 'buffers': []}
E
======================================================================
ERROR: testKernel (__main__.TestSoSKernel)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/conda/feedstock_root/build_artifacts/sos-julia_1632388080541/test_tmp/run_test.py", line 15, in testKernel
stdout, stderr = assemble_output(kc.iopub_channel)
File "/home/conda/feedstock_root/build_artifacts/sos-julia_1632388080541/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/python3.9/site-packages/ipykernel/tests/utils.py", line 158, in assemble_output
msg = get_msg(timeout=1)
TypeError: 'ZMQSocketChannel' object is not callable
I built a local version without the tests and uploaded it to https://anaconda.org/izahn/sos-julia . When I try to run it I get this error:
Failed to start kernel "Julia". Kernel died before replying to kernel_info
Error Message:
ERROR: SystemError: opening file "/home/conda/.julia/packages/IJulia/e8kqU/src/kernel.jl": No such file or directory
Stacktrace:
[1] systemerror(p::String, errno::Int32; extrainfo::Nothing)
@ Base ./error.jl:168
[2] #systemerror#62
@ ./error.jl:167 [inlined]
[3] systemerror
@ ./error.jl:167 [inlined]
[4] open(fname::String; lock::Bool, read::Nothing, write::Nothing, create::Nothing, truncate::Nothing, append::Nothing)
@ Base ./iostream.jl:293
[5] open
@ ./iostream.jl:282 [inlined]
[6] open(f::Base.var"#326#327"{String}, args::String; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Base ./io.jl:328
[7] open
@ ./io.jl:328 [inlined]
[8] read
@ ./io.jl:434 [inlined]
[9] _include(mapexpr::Function, mod::Module, _path::String)
@ Base ./loading.jl:1166
[10] include(mod::Module, _path::String)
@ Base ./Base.jl:386
[11] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:285
[12] _start()
@ Base ./client.jl:485
Thanks for your report. I am working on https://github.com/vatlab/sos-notebook/issues/328 which is caused by a newer version of jupyter_client. I will have a look at this once that issue is fixed.
OK great, thank you for the note! I tried one additional thing in case it helps later when you get back to this.
I noticed that the error above was about not finding packages, so I
~/.jula
to /home/conda/.jula
IJulia
, Feather
, DataFrames
, and NamedArray
from the julia command line.jupyter lab
and created an sos julia kernel and tried print("Hello World")
. Here is what I saw:
/home/izahn/mambaforge/envs/julia-test/lib/python3.9/site-packages/sos_notebook/kernel.py:1320: RuntimeWarning: coroutine 'ZMQSocketChannel.msg_ready' was never awaited
while self.KC.shell_channel.msg_ready():
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
/home/izahn/mambaforge/envs/julia-test/lib/python3.9/site-packages/sos_notebook/kernel.py:1321: RuntimeWarning: coroutine 'ZMQSocketChannel.get_msg' was never awaited
self.KC.shell_channel.get_msg()
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
Traceback (most recent call last):
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/site-packages/sos_notebook/kernel.py", line 1956, in <module>
IPKernelApp.launch_instance(kernel_class=SoS_Kernel)
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/site-packages/traitlets/config/application.py", line 846, in launch_instance
app.start()
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 677, in start
self.io_loop.start()
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/site-packages/tornado/platform/asyncio.py", line 199, in start
self.asyncio_loop.run_forever()
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/asyncio/base_events.py", line 596, in run_forever
self._run_once()
File "/home/izahn/mambaforge/envs/julia-test/lib/python3.9/asyncio/base_events.py", line 1875, in _run_once
handle = self._ready.popleft()
IndexError: pop from an empty deque
ok. I fixed sos-notebook
, and installed julia and the Ijulia kernel, and sos-julia, it all seems to be working alright.
I will test the sos-notebook (async branch) a bit more and make a release, then I will release sos-notebook on conda-forge, and we will see if the sos-julia conda recipe will work correctly.
https://github.com/conda-forge/sos-julia-feedstock/pulls
Hopefully someone can have a look.