intake / intake/python-snappy

`python setup.py install` doesn't install `snappy._snappy_cffi` module

Offen
#83 6 Kommentare 6 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
490
Forks
104
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Related: #78, #69

## Repro
macOS 10.14.5, in a virtualenv with Python 3.6.9, python-snappy v0.5.4 (commit 602e9c10d743f71bef0bac5e4c4dffa17340d7b3)

1. `git clone https://github.com/andrix/python-snappy`
2. `cd python-snappy`
3. `git checkout master`
4. `python setup.py build`
5. `python setup.py install`

Testing in IPython fails with the following error:

```
In [1]: import snappy
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
~/Documents/python-snappy/snappy/snappy.py in ()
47 try:
---> 48 from ._snappy import UncompressError, compress, decompress, \
49 isValidCompressed, uncompress, _crc32c

ModuleNotFoundError: No module named 'snappy._snappy'

During handling of the above exception, another exception occurred:

ModuleNotFoundError Traceback (most recent call last)
in ()
----> 1 import snappy

~/Documents/python-snappy/snappy/__init__.py in ()
1 from __future__ import absolute_import
2
----> 3 from .snappy import (
4 compress,
5 decompress,

~/Documents/python-snappy/snappy/snappy.py in ()
49 isValidCompressed, uncompress, _crc32c
50 except ImportError:
---> 51 from .snappy_cffi import UncompressError, compress, decompress, \
52 isValidCompressed, uncompress, _crc32c
53

~/Documents/python-snappy/snappy/snappy_cffi.py in ()
1 from __future__ import absolute_import
2
----> 3 from ._snappy_cffi import ffi, lib
4
5 try:

ModuleNotFoundError: No module named 'snappy._snappy_cffi'
```

## Workaround
1. `python setup.py bdist_egg`
2. `cd dist`
3. `unzip python_snappy-0.5.4-py3.6-macosx-10.14-x86_64.egg`
4. `cd snappy`
5. `cp _snappy_cffi.abi3.so "${VIRTUAL_ENV}/lib/python3.6/site-packages/snappy/"`

After performing the above steps, it is now possible to `import snappy` in a python shell without error.

(might also need to copy `_snappy.py` and `_snappy.cpython-36m-darwin.so`; not sure)

It appears that `python setup.py install` does not install these files.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Reproduce the failure with the listed Python 3.6 virtualenv steps, then compare `python setup.py install` with the working `bdist_egg` path. Inspect `setup.py` and the reported `snappy._snappy_cffi`, `_snappy`, and compiled extension files; done means a direct install allows `import snappy` without manually copying files.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
build-system
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.