holzschu / Carnets

Carnets is a stand-alone Jupyter notebook server and client. Edit your notebooks on the go, even where there is no network.
https://holzschu.github.io/Carnets_Jupyter/
BSD 3-Clause "New" or "Revised" License
567 stars 33 forks source link

'Lifelines' library cannot be imported although pure Python #295

Closed nomennominatur closed 1 year ago

nomennominatur commented 1 year ago

Carnets plus dramatically expands the usability of my iPad (can't thank you enough)! I would like to do statistical survival analysis employing the lifelines library, which, according to the project's website is "pure Python". Runs fine on my mac. However, it does not install in Carnets.

%pip install lifelines
Defaulting to user installation because normal site-packages is not writeable
Collecting lifelines
  Using cached lifelines-0.27.4-py3-none-any.whl (349 kB)
Requirement already satisfied: numpy>=1.14.0 in /private/var/containers/Bundle/Application/507FB6DC-4D88-4FD1-86FB-436E9BFC2C91/Carnets-sci.app/Library/lib/python3.11/site-packages (from lifelines) (1.24.0.dev0+1021.g61098c4a4)
Requirement already satisfied: scipy>=1.2.0 in /private/var/containers/Bundle/Application/507FB6DC-4D88-4FD1-86FB-436E9BFC2C91/Carnets-sci.app/Library/lib/python3.11/site-packages (from lifelines) (1.9.3)
Requirement already satisfied: pandas>=1.0.0 in /private/var/containers/Bundle/Application/507FB6DC-4D88-4FD1-86FB-436E9BFC2C91/Carnets-sci.app/Library/lib/python3.11/site-packages/pandas-1.5.2-py3.11-macosx-11.5-x86_64.egg (from lifelines) (1.5.2)
Requirement already satisfied: matplotlib>=3.0 in /private/var/containers/Bundle/Application/507FB6DC-4D88-4FD1-86FB-436E9BFC2C91/Carnets-sci.app/Library/lib/python3.11/site-packages (from lifelines) (3.7.0.dev641+g768ff8450)
Collecting autograd>=1.5
  Using cached autograd-1.5-py3-none-any.whl (48 kB)
Collecting autograd-gamma>=0.3
  Using cached autograd-gamma-0.5.0.tar.gz (4.0 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting formulaic>=0.2.2
  Using cached formulaic-0.5.2-py3-none-any.whl (77 kB)
Collecting future>=0.15.2
  Using cached future-0.18.3.tar.gz (840 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'

  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [35 lines of output]
      Fatal Python error: pyinit_core_reconfigure: failed to read thread state
      Python runtime state: initialized

      Thread 0x0000000171fb7000 (most recent call first):
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/utils/subprocess.py", line 166 in call_subprocess
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/operations/build/metadata_legacy.py", line 64 in generate_metadata
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/req/req_install.py", line 545 in prepare_metadata
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/distributions/sdist.py", line 61 in prepare_distribution_metadata
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 69 in _get_prepared_distribution
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 577 in _prepare_linked_requirement
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 491 in prepare_linked_requirement
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 308 in _prepare_distribution
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 231 in _prepare
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 162 in __init__
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 297 in __init__
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 206 in _make_candidate_from_link
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47 in _iter_built
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143 in <genexpr>
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155 in __bool__
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_vendor/resolvelib/structs.py", line 151 in __bool__
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 172 in _add_to_criteria
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 204 in _get_updated_criteria
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 213 in _attempt_to_pin_criterion
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 373 in resolve
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 481 in resolve
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 92 in resolve
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/commands/install.py", line 419 in run
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/cli/req_command.py", line 247 in wrapper
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/cli/base_command.py", line 160 in exc_logging_wrapper
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/cli/base_command.py", line 214 in _main
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/cli/base_command.py", line 101 in main
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/_internal/cli/main.py", line 70 in main
        File "/var/mobile/Containers/Data/Application/B2679C40-758E-4FDC-B373-A1F999E9ECA2/Library/lib/python3.11/site-packages/pip/__main__.py", line 31 in <module>
        File "<frozen runpy>", line 88 in _run_code
        File "<frozen runpy>", line 198 in _run_module_as_main
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

Note: you may need to restart the kernel to use updated packages.

`

holzschu commented 1 year ago

This is an interesting issue. The crash appears to be when installing "future", and is not caused by a call to a compiler (that is the most common cause for an issue with installation). I tried the installation in two steps: first pip install future, then pip install lifelines, and it worked.

It may have just been because I had just started Carnets-with-Scipy; you might want to close it (using the three dots menu at the center-top of the screen, to completely quit and reinitialize data).

nomennominatur commented 1 year ago

Although still a bit puzzling why, installing future and lifelines sequentially was successful. Cool, this enhances Carnets-with-Scipy even more for me. Thanks!