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 instance WhiteBoxTools in 2.3.1 #63

Closed
fragalfernando opened this issue May 23, 2024 · 13 comments
Closed

Unable to instance WhiteBoxTools in 2.3.1 #63

fragalfernando opened this issue May 23, 2024 · 13 comments

Comments

@fragalfernando
Copy link

Starting from yesterday I am unable to create instances of WhiteBoxTools in Python 3. I get this error:

FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.8/dist-packages/whitebox/WBT/img'

It looks like something related to this package:

WhiteboxTools_linux_amd64.zip

root@bdfd55668517:/src# python3
Python 3.8.10 (default, Mar 13 2023, 10:26:41) 
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from whitebox import WhiteboxTools
>>> wbt = WhiteboxTools()
Downloading WhiteboxTools pre-compiled binary for first time use ...
Decompressing WhiteboxTools_linux_amd64.zip ...
WhiteboxTools package directory: /usr/local/lib/python3.8/dist-packages/whitebox
Unexpected error: <class 'FileNotFoundError'>
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.8/dist-packages/whitebox/whitebox_tools.py", line 278, in __init__
    download_wbt()
  File "/usr/local/lib/python3.8/dist-packages/whitebox/whitebox_tools.py", line 157, in download_wbt
    shutil.copytree(init_img_dir, new_img_dir)
  File "/usr/lib/python3.8/shutil.py", line 555, in copytree
    with os.scandir(src) as itr:
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.8/dist-packages/whitebox/WBT/img'

Thanks!

@markwang0
Copy link

markwang0 commented May 23, 2024

I have the same error with a python environment I created today. It is v2.3.1 and on macOS

>>> from whitebox.whitebox_tools import WhiteboxTools
>>> wbt = WhiteboxTools()
Downloading WhiteboxTools pre-compiled binary for first time use ...
Decompressing WhiteboxTools_darwin_amd64.zip ...
WhiteboxTools package directory: /Users/markwang/micromamba/envs/pygeoflood-hlm-env/lib/python3.11/site-packages/whitebox
Unexpected error: <class 'FileNotFoundError'>
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/markwang/micromamba/envs/pygeoflood-hlm-env/lib/python3.11/site-packages/whitebox/whitebox_tools.py", line 278, in __init__
    download_wbt()
  File "/Users/markwang/micromamba/envs/pygeoflood-hlm-env/lib/python3.11/site-packages/whitebox/whitebox_tools.py", line 157, in download_wbt
    shutil.copytree(init_img_dir, new_img_dir)
  File "/Users/markwang/micromamba/envs/pygeoflood-hlm-env/lib/python3.11/shutil.py", line 571, in copytree
    with os.scandir(src) as itr:
         ^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/Users/markwang/micromamba/envs/pygeoflood-hlm-env/lib/python3.11/site-packages/whitebox/WBT/img'

Also, the error doesn't happen when I use a conda environment created 2 weeks ago (also v2.3.1). Thank you!

@ekimd
Copy link

ekimd commented May 23, 2024

Same here, starting yesterday.

@giswqs
Copy link
Member

giswqs commented May 23, 2024

Thank you for reporting. I will try to update it tonight

@jblindsay
Copy link
Collaborator

That' my bad, @giswqs I should have told you that we were planning a release of the backend. There are just so many moving parts in releasing a new version of WbT, which is one of the reasons why it's been so darn long.

@giswqs
Copy link
Member

giswqs commented May 23, 2024

No problem, @jblindsay! Already great to see new WBT releases! Thank you for your great work.

I looked into the issue and I think the problem is because the file strcuture of WBT binaries have changed. The WBT directory used to be under the root directory, but now WBT is a subdirectory udner something like WhiteboxTools_linux_amd64, depending on the operating systems. I will update the automated routine to use the new file structure.

v2.3.0
image

v2.4.0
image

@jblindsay
Copy link
Collaborator

Ah yes, this is certainly a change that I made recently and didn't think about the consequences for the frontends. This is the result of significant changes to the build script and the fact that we are now compiling to our targets using Github Actions.

@giswqs
Copy link
Member

giswqs commented May 23, 2024

I just released v2.3.2, which should resolve the issue. If everything works well, I can update the version to v2.4.0, the same as the WBT backend version.

@ekimd
Copy link

ekimd commented May 23, 2024

I got the same error with v2.3.2

/root/python3.11/lib/python3.11/site-packages/whitebox/download_wbt.py:18: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  import pkg_resources
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/root/python3.11/lib/python3.11/site-packages/whitebox/download_wbt.py", line 222, in <module>
    download_wbt()
  File "/root/python3.11/lib/python3.11/site-packages/whitebox/download_wbt.py", line 145, in download_wbt
    shutil.copytree(init_img_dir, new_img_dir)
  File "/usr/lib/python3.11/shutil.py", line 558, in copytree
    with os.scandir(src) as itr:
         ^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/root/python3.11/lib/python3.11/site-packages/whitebox/WBT/img'

@giswqs
Copy link
Member

giswqs commented May 23, 2024

Interesting! It passed the GitHub Actions. Will look into it again

@jblindsay
Copy link
Collaborator

We're hoping that this will greatly simplify the process of releasing new versions.

@giswqs
Copy link
Member

giswqs commented May 24, 2024

Try v2.3.3. It should be fixed now. #65

@ekimd
Copy link

ekimd commented May 24, 2024

It works--thank you so much! Your fast response time is amazing!

@giswqs
Copy link
Member

giswqs commented May 24, 2024

Great to hear that it is working now. Closing this issue for now.

@giswqs giswqs closed this as completed May 24, 2024
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

No branches or pull requests

5 participants