-
Notifications
You must be signed in to change notification settings - Fork 18
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
Searching commands are incompatible with python 3.8+ #94
Comments
That is interesting, thank you @ryanc16 for flagging and for the detailed report and investigation. This is really helpful. Would you be interested in contributing a pull request by chance? From a quick review of the travis config, we're not currently testing against py38 but clearly it would be valuable to do so. Most users I suspect are still on py36 as that's where QIIME 2 currently is. |
I did some more investigation and came across Issue32892 on the python bug tracker site and this PR on GitHub. In short, the discussion is about the changes to the AST library to change Expressions created using Running it through a debugger I can confirm this is what is happening in this case as well. Notice the replacement of NameError: name 'Constant' is not defined Why that makes it not work, I have no idea. I would think it should know about the @wasade I am open to contributing, however my python experience is limited. I'm not really seeing anything about this, let alone an easy way to fix it, by googling or checking stack overflow. I can work with it some more to try to get something that works. It's possible there might be something that can be done with the At a minimum, it might be a good idea to update the README to mention this project suggests the use of python 3.5 or 3.6, given that it only tests against those versions. That would have been helpful for me when initially trying to get it installed and working. |
Hi @ryanc16, sorry for the delayed response. This is excellent investigative work. I agree that it would make sense to limit the project to < 3.8 for the time being until a fix can be put in here. To be honest, this was my first time using the |
After spending some more time looking through the file, I realized what the problem actually was, based on the error message that was given. After seeing that |
Describe the Issue
Performing any of the searching functions (and possibly others), results in a stack trace being output in the console. After minimal investigation, I believe this is due to changes in the ast (Abstract Syntax Tree) package included with python for parsing/compiling the users query terms done in the
where_expr.py
. It appears this is an issue with version of python 3.8 and newer, as I later tried installing an older version of python (3.7.7) and did not encounter the issue.Steps to Reproduce
Following the README found on the projects GitHub page, performing suggested commands such as:
redbiom search metadata "soil & europe where ph < 7"
results in the following error:
Expected Behavior
Versions
Additional Context
This was performed on a fresh install of Ubuntu Desktop, which apparently now installs python 3.8 by default. After many attempts to get this installed and working with built in python, decided to try using anaconda to install and use on older versions of python. Notice in the code block in the steps to reproduce, running in a conda environment using python 3.8 also results in the error.
Screenshots
N/A
The text was updated successfully, but these errors were encountered: