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

six/future #691

Closed
Jorge-C opened this issue Oct 2, 2014 · 8 comments · Fixed by #696
Closed

six/future #691

Jorge-C opened this issue Oct 2, 2014 · 8 comments · Fixed by #696
Assignees
Labels

Comments

@Jorge-C
Copy link
Contributor

Jorge-C commented Oct 2, 2014

future 0.14+ has stopped bundling the six library that we used mainly to deal with StringIO compatibility.

A quick way forward is to either add six to our requirements or write a (tiny) module that has the functionality we were using.

But, the good course of action is to follow what the people taking care of the future package recommend. In fact, we have the same guideline in our documentation, but somehow it was hard to turn into reality.

In the meantime, we can restrict its version to < 0.13 too.

@gregcaporaso
Copy link
Contributor

Thanks @Jorge-C. Does this mean that pip install scikit-bio is currently broken, and that we can only fix with a new release?

@ElDeveloper
Copy link
Contributor

I think that's the case, I am getting some errors when installing
scikit-bio in a new virtual environment.

On (Oct-03-14|12:44), Greg Caporaso wrote:

Thanks @Jorge-C. Does this mean that pip install scikit-bio is currently broken, and that we can only fix with a new release?


Reply to this email directly or view it on GitHub:
#691 (comment)

@Jorge-C
Copy link
Contributor Author

Jorge-C commented Oct 3, 2014

Yeah, unfortunately yes. This was uncovered by this PR in QIIME (thanks @ekopylova!). And unfortunately we could have avoided it by pinning the future version b/c we mentioned this change in the future library when refactoring the IO back in August, but we missed taking action at that point.

@gregcaporaso
Copy link
Contributor

Ok, thanks. What do you guys think the solution is here generally moving forward? We can also get ourselves in trouble by being too restrictive with versions (because we can then end up with incompatible dependencies across packages).

@gregcaporaso gregcaporaso added this to the 0.2.1: IO subpackage milestone Oct 3, 2014
@Jorge-C
Copy link
Contributor Author

Jorge-C commented Oct 3, 2014

I agree with you, maybe it's better to avoid restricting the future version.

We could create a small compat? module that replaces the problematic six.StringIO imports, release a version, then follow the advice from the developers of the future package, and finally remove the compat module.

The main reason for this two step process is that making the changes to distinguish between text and bytes may take some time, so maybe you'd prefer to do a release faster.

@gregcaporaso
Copy link
Contributor

Quick follow up. Needed to get this working locally, so did:

pip uninstall future
pip install future==0.13.1

and back to working install.

@ElDeveloper
Copy link
Contributor

:+:'1: that also worked for me.

Yoshiki Vázquez-Baeza

On Oct 4, 2014, at 6:00 AM, Greg Caporaso notifications@github.com wrote:

Quick follow up. Needed to get this working locally, so did:

pip uninstall future
pip install future==0.13.1
and back to working install.


Reply to this email directly or view it on GitHub.

gregcaporaso added a commit to gregcaporaso/scikit-bio that referenced this issue Oct 5, 2014
jairideout added a commit to jairideout/qiime that referenced this issue Oct 5, 2014
jairideout added a commit that referenced this issue Oct 5, 2014
@gregcaporaso
Copy link
Contributor

We have a temporary fix in place for this now. Going to work on a better fix later today, but for the meantime #692 gets the dev version working again, so we can use travis.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment