mhogg / pyoctree

Octree structure containing a 3D triangular mesh model
MIT License
86 stars 19 forks source link

Missing dependency on numpy in setup.py #28

Closed csbubbles closed 6 years ago

csbubbles commented 6 years ago

When you install pyoctree with pip, it fails with an error like this:

Collecting pyoctree==v0.2.4 (from -r requirements.txt (line 13))
  Downloading https://files.pythonhosted.org/packages/94/d2/848f4fbaae1a5262029238bccf8130cd3ffd1bed62a19f219adc023a95ee/pyoctree-0.2.4.tar.gz (2.2MB)
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-armvsun8/pyoctree/setup.py", line 11, in <module>
        import numpy
    ModuleNotFoundError: No module named 'numpy'

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-armvsun8/pyoctree/

It happens because numpy is not declared using install_requires parameter in setup.py. Can you please add that dependency and fix the issue?

setup(
    name = 'pyoctree',
    version = __version__,
    # ...
    ext_modules = ext_modules,
    cmdclass = cmdclass,
    install_requires = ["numpy"], # <<< this line is missing
)
mhogg commented 6 years ago

Sure thing. I will add this in the 0.2.5 version. Thanks, Michael

csbubbles commented 6 years ago

Awesome, thank you Michael!

mhogg commented 6 years ago

No problem. Should of had it there already, but I always have numpy installed so I never worried.

csbubbles commented 6 years ago

I am having this problem trying to install it with pip.

It can see that 0.2.7 was released:

$ pip search pyoctree

pyoctree (0.2.7)  - Octree structure containing 3D triangular mesh model

However, it cannot install it:

$ pip install pyoctree==0.2.7

Collecting pyoctree==0.2.7
  Could not find a version that satisfies the requirement pyoctree==0.2.7 (from versions: 0.1.0, 0.1.1, 0.1.2, 0.2.0, 0.2.1, 0.2.2, 0.2.4)
No matching distribution found for pyoctree==0.2.7

The verbose mode says that the released version is incompatible with the Python version I am using (getting the same error when using Python 2.7 and 3.6). Check the last lines of the log below ("it is not compatible with this Python" message at the end of lines for versions 2.5, 2.6 and 2.7):

$ pip install pyoctree==0.2.7 -vvv

Created temporary directory: /private/var/folders/r9/d3kkplcx0gn76g_4kyrspy4w0000gn/T/pip-ephem-wheel-cache-AOCGpb
Created temporary directory: /private/var/folders/r9/d3kkplcx0gn76g_4kyrspy4w0000gn/T/pip-req-tracker-kIpsQj
Created requirements tracker '/private/var/folders/r9/d3kkplcx0gn76g_4kyrspy4w0000gn/T/pip-req-tracker-kIpsQj'
Created temporary directory: /private/var/folders/r9/d3kkplcx0gn76g_4kyrspy4w0000gn/T/pip-install-aL8kY4
Collecting pyoctree==0.2.7
  1 location(s) to search for versions of pyoctree:
  * https://pypi.org/simple/pyoctree/
  Getting page https://pypi.org/simple/pyoctree/
  Looking up "https://pypi.org/simple/pyoctree/" in the cache
  Current age based on date: 178
  Freshness lifetime from max-age: 600
  Freshness lifetime from request max-age: 600
  The response is "fresh", returning cached response
  600 > 178
  Analyzing links from page https://pypi.org/simple/pyoctree/
    Found link https://files.pythonhosted.org/packages/34/1a/1225e4219a9692699b62c6a014142c678c38ab766fb7c9e421e9d5b22e02/pyoctree-0.1.0.zip#sha256=c93d219bb62708227d3cd18bfae45ab62437fbe04fdaf9968a5c1793dedb27e3 (from https://pypi.org/simple/pyoctree/), version: 0.1.0
    Found link https://files.pythonhosted.org/packages/b8/6b/bc3b71e3a852b6bd30b80489daf0a17a28e16806071bb92f6053cbf1035d/pyoctree-0.1.1.zip#sha256=e1eced7f53561c08de4d0fefc48b755737006cfcb98ed2c3bcd3014b9defdc05 (from https://pypi.org/simple/pyoctree/), version: 0.1.1
    Skipping link 

...

    Found link https://files.pythonhosted.org/packages/62/cf/cde6b411521b51523b60b91f3da28bccb8a47e0253e061c8679ba9bec666/pyoctree-0.2.2.tar.gz#sha256=f5ab9727fd40d37609306bedfbb78600709fb70a003cb7a8cd83fddbcbfe40d6 (from https://pypi.org/simple/pyoctree/), version: 0.2.2
    Skipping link https://files.pythonhosted.org/packages/b8/81/74a13e0b94a6bf38b8d8bf1a49d34ee1940892044d5c30df3676f2aebb75/pyoctree-0.2.4-cp27-cp27m-win_amd64.whl#sha256=36a029f5462ce44ac47746c91e09844a55dc01fde8af5e27b6232792c4cec37f (from https://pypi.org/simple/pyoctree/); it is not compatible with this Python
    Skipping link https://files.pythonhosted.org/packages/db/8d/8f3f0303796674e6d3536b7cc91675de0d4c618e5bb141125c7da008eadd/pyoctree-0.2.4-cp36-cp36m-win_amd64.whl#sha256=a1702d13adfe8a6bcabea02f6e6278c320437ecc8cd1055cd7d771af7ae51f70 (from https://pypi.org/simple/pyoctree/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/94/d2/848f4fbaae1a5262029238bccf8130cd3ffd1bed62a19f219adc023a95ee/pyoctree-0.2.4.tar.gz#sha256=703b8b9123df81b4866a458f359711b6a5015b02b2d018fbf57d3ec445b3a12d (from https://pypi.org/simple/pyoctree/), version: 0.2.4
    Skipping link https://files.pythonhosted.org/packages/20/00/446362e635b78013957ac72bce631ad2a1369300324c001494a258554383/pyoctree-0.2.5-cp36-cp36m-win_amd64.whl#sha256=36fb9364438032ddc7dd941739325ff7e9da8227bfc36fe579fb43f94bd35b83 (from https://pypi.org/simple/pyoctree/); it is not compatible with this Python
    Skipping link https://files.pythonhosted.org/packages/c2/25/053008a768ea66ec5c6d5612214d2ddc4b38436656e5d8a3423cb3e0cbc2/pyoctree-0.2.6-cp36-cp36m-win_amd64.whl#sha256=6a9f7857cb3f31b27c56d328884e96f428a1dde126bbb7716e83401de87781ae (from https://pypi.org/simple/pyoctree/); it is not compatible with this Python
    Skipping link https://files.pythonhosted.org/packages/f0/05/23b51083020def64e2aea7f88122e7d30bdbfbd0b691d213ba699d2b834b/pyoctree-0.2.7-cp36-cp36m-win_amd64.whl#sha256=ef5d82c19a0f0c8bcb029a97111b095bc292d43763f1eaac5b146f412ed981cc (from https://pypi.org/simple/pyoctree/); it is not compatible with this Python

Ran with Python 2.7.10 and 3.6.3 with the same outcome. pip's version is 18.0.

Do you want me to create another ticket as this issue seems unrelated to the dependencies in setup.py?

mhogg commented 6 years ago

Yes, please create a separate issue. Question - Have you tried the wheel from the releases page? https://github.com/mhogg/pyoctree/releases

Note that I am using Python 3.6.3 from Anaconda and didn't get any issues installing from pypi via pip during testing.

csbubbles commented 6 years ago

Sorry for a delay, I got a little busy. I've just tried, it didn't work. Let me create another ticket in a minute, and I will add that info there.

csbubbles commented 6 years ago

Here is the fix: https://github.com/mhogg/pyoctree/pull/31. Please take a look when you have time. I explained the problem and the solution in the description.

PS There is another issue, by the way, with Cython. If you don't have it pre-installed, python setup.py install fails (see the screenshot below). pyoctree/pyoctree.cpp is not found in that case. But it seems to be a separate issue, let's please first fix numpy.

screen shot 2018-08-18 at 5 06 53 pm
mhogg commented 6 years ago

Hi, pyoctree.cpp is available in the source code on pypi, but it is not on Github. I should make it available on Github as well to prevent this error. Cheers, Michael

On Sun, 19 Aug 2018 at 10:11 Maxim Novikov notifications@github.com wrote:

Here is the fix: #31 https://github.com/mhogg/pyoctree/pull/31. Please take a look when you have time. I explained the problem and the solution in the description.

PS There is another issue, by the way, with Cython. If you don't have it pre-installed, python setup.py install fails (see the screenshot below). pyoctree/pyoctree.cpp is not found in that case. But it seems to be a separate issue, let's please first fix numpy.

[image: screen shot 2018-08-18 at 5 06 53 pm] https://user-images.githubusercontent.com/56697/44304182-5885d880-a309-11e8-8159-ff619120a485.png

— You are receiving this because you modified the open/close state.

Reply to this email directly, view it on GitHub https://github.com/mhogg/pyoctree/issues/28#issuecomment-414093997, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdn-nd1Ya99f6omShcRHv9nUYvyTsbbks5uSK0WgaJpZM4VvGQX .

csbubbles commented 6 years ago

Sounds good, thank you!

Will you please release a new version (0.2.9 or something) on PyPI? With the latest fix that you merged, I mean.

csbubbles commented 6 years ago

@mhogg I can see you released 0.2.9, but it doesn't seem to have the latest source code:

screen shot 2018-08-20 at 5 01 54 pm
mhogg commented 6 years ago

See 0.2.10. Should have it all. -Michael

csbubbles commented 6 years ago

Confirmed. Got 0.2.10 installed using pip with no issues. Thank you so much Michael!

PS I believe https://github.com/mhogg/pyoctree/issues/30 could be closed now as well.