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

Unable to install Timeseries add-on: command failed #261

Closed
wvdvegte opened this issue Nov 22, 2023 · 10 comments · Fixed by #272
Closed

Unable to install Timeseries add-on: command failed #261

wvdvegte opened this issue Nov 22, 2023 · 10 comments · Fixed by #272
Assignees

Comments

@wvdvegte
Copy link

wvdvegte commented Nov 22, 2023

What's wrong?
My colleague is trying to install the Timeseries add-on trough Options -> Add-ons. During installation (after selecting the add-on and clicking OK), error messages appear:
Short error message:
Command failed: python python -m pip install --upgrade --upgrade-strategy=only-if-needed Orange3-Timeseries==0.6.0 exited with non zero status.

Long error message:
Timeseries install error.txt
The problem does not occur with other add-ons

How can we reproduce the problem?
I don't know. I have a Mac with a different processor (M1, not M1 Pro), and have a slightly older OS version (14.1, not 14.4.1) and had no problems installing the add-on

What's your environment?

  • Operating system: Mac OS 14.1.1
  • Orange version: 3.36.2
  • How you installed Orange: 3.35 from DMG, updated through Options menu.
@PrimozGodec
Copy link
Collaborator

orange3-timseries has severe problems with lxml library with some wheels missing:

  • MacOS with Intel processor: lxml build wheels for MacOS SDK 11. Our old installer (for versions <=3.35) included Python built on SDK 10.9. Solution: install a new version of Orange since our new Intel installer fixes the issue. It uses Python built on SDK 11.
  • MacOS with Apple silicon processor: lxml doesn't provide wheels for ARM for Python <=3.10, which causes problems in our installer. We asked them to provide those wheels: https://bugs.launchpad.net/lxml/+bug/1980575. We are waiting for a response.

@wvdvegte
Copy link
Author

So, how does that explain that the Timeseries add-on is present on my Silicon Mac? Does it mean that, unknowingly, I'm running 3.36 for Intel processors through Rosetta 2? If that is the case, I guess I should suggest to my friend that he downloads and installs the Intel version of 3.36 ...

@PrimozGodec
Copy link
Collaborator

There may be two reasons:

  • you are running the Orange 3.36.1 (from Orange 3.36.1 Installer for Intel) through Rosetta.
  • you have appropriate libraries to build LXML on your computer.

So until we (I'm looking into how to get rid of LXML) or LXML solve the problem, the solutions are:

  • Use Orange Intel installer even though you are having Apple silicon. We noticed some problems with this installer on Apple Silicon after updating Python, so it may not work for some.
  • Use the Apple silicon installer and install appropriate libraries to build lxml before installing Time Series addon:
    brew install automake libtool
    /Applications/Orange.app/Contents/MacOS/pip install cython
    

@wvdvegte
Copy link
Author

I'm running 3.36.2 so it must be the second reason. I'm not aware of having ever installed "appropriate libraries to build LXML on your computer", at least not consciously, because I don't even know what LXML is ...

@PrimozGodec PrimozGodec transferred this issue from biolab/orange3 Nov 27, 2023
@kraaidelft
Copy link

brew install automake libtool
/Applications/Orange.app/Contents/MacOS/pip install cython

Doesn't work, I get a:
Error: Git must be installed and in your PATH!
/usr/local/Homebrew/Library/Homebrew/version.rb:368:in `initialize': Version value must be a string; got a NilClass () (TypeError)

@kraaidelft
Copy link

  • Use Orange Intel installer even though you are having Apple silicon. We noticed some problems with this installer on Apple Silicon after updating Python, so it may not work for some.

Orange3 doesn't startup at all.

@kraaidelft
Copy link

  • MacOS with Intel processor: lxml build wheels for MacOS SDK 11. Our old installer (for versions <=3.35) included Python built on SDK 10.9. Solution: install a new version of Orange since our new Intel installer fixes the issue. It uses Python built on SDK 11.

It works

@PrimozGodec
Copy link
Collaborator

So, the current state:

@PrimozGodec
Copy link
Collaborator

We merged the temporary solution from #262 and made a release. Now, orange3-timeseries should install successfully. It will lack the Yahoo finance widget on MacOS. We are working towards getting this widget back as soon as possible by helping lxml maintainer to provide wheels.

@PrimozGodec
Copy link
Collaborator

We re-added the Yahoo widget for Mac users. :) Please update your orang3-timeseries version to 0.6.2 in add-on dialog.

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