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

Install instructions build for the wrong version of python #7

Open
bkreider opened this issue Apr 4, 2019 · 3 comments
Open

Install instructions build for the wrong version of python #7

bkreider opened this issue Apr 4, 2019 · 3 comments

Comments

@bkreider
Copy link

bkreider commented Apr 4, 2019

I created a new environment for intake. The python used for this depends on what version of python is running python. In my case, the environment was created for python py37.

Running conda-build for MongoAdapater had two issues:

  1. The tests require Docker running locally. I removed all of the tests from the meta.yaml.
  2. The version of python that it build was py27.

After I installed my custom built version of MongoAdapter, it downgraded all of my packages resulting in intake failing to import because of a py27/py37 issue:

AttributeError: 'module' object has no attribute 'abc'

My solution was this:

conda build --py 37 MongoAdapter/buildscripts/condarecipe

There is an underlying bug in that Intake that it needs to specify the python version it runs under, so they python version isn't downgraded to conflict with intake.

More install issues

$ python setup.py develop --no-deps
Traceback (most recent call last):
  File "setup.py", line 5, in <module>
    from Cython.Distutils import build_ext
ModuleNotFoundError: No module named 'Cython'

This should have the steps:

  1. git clone
  2. cd intake-mongo
  3. install dependencies - cython -- what else?
  4. python setup.py develop --no-deps
@martindurant
Copy link
Member

Agree that conda build on the package generally shouldn't need to run tests - that should always be handled by CI before any release. Requiring docker for the tests I think is OK, so long as the error you get from not having docker is descriptive.

All packages should be python-3 only by now, since Intake itself doesn't work on py2 any more. Maybe each should be more explicit.

Another fix needed really, is to move this to conda-forge, which I've done for most of the drivers, but not this one.

@martindurant
Copy link
Member

I am confused....

I did

> conda create -n blah intake python
> conda activate blah
> pip install -e .  # in intake-mongo dir
> python
>>> import intake_mongo
>>> intake_mongo.__version__
'0.1.0'

(you don't even need pymongo until you try to read from a mongo source)

@martindurant
Copy link
Member

ping @bkreider

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

2 participants