biocore / songbird

Vanilla regression methods for microbiome differential abundance analysis
BSD 3-Clause "New" or "Revised" License
54 stars 25 forks source link

Unable to install songbird and Qiime together #74

Closed gibsramen closed 4 years ago

gibsramen commented 4 years ago

Hello.

I've been trying to install songbird in my existing Qiime environment (r2019.7) but doing so results in an error upon trying to use any Qiime functionality (and also cache refresh).

Traceback (most recent call last):
  File "/miniconda3/envs/nash_mice/bin/qiime", line 11, in <module>
    sys.exit(qiime())
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 716, in main
    with self.make_context(prog_name, args, **extra) as ctx:
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 641, in make_context
    self.parse_args(ctx, args)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/click/command.py", line 43, in parse_args
    return super().parse_args(ctx, args)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 1086, in parse_args
    echo(ctx.get_help(), color=ctx.color)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 516, in get_help
    return self.command.get_help(self)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 879, in get_help
    self.format_help(ctx, formatter)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 898, in format_help
    self.format_options(ctx, formatter)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/click/command.py", line 157, in format_options
    for subcommand in self.list_commands(ctx):
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/commands.py", line 93, in list_commands
    plugins = sorted(self._plugin_lookup)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/commands.py", line 77, in _plugin_lookup
    import q2cli.core.cache
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 403, in <module>
    CACHE = DeploymentCache()
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 61, in __init__
    self._state = self._get_cached_state(refresh=refresh)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 107, in _get_cached_state
    self._cache_current_state(current_requirements)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 200, in _cache_current_state
    state = self._get_current_state()
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 238, in _get_current_state
    plugin_manager = qiime2.sdk.PluginManager()
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/qiime2/sdk/plugin_manager.py", line 44, in __new__
    self._init()
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/qiime2/sdk/plugin_manager.py", line 59, in _init
    plugin = entry_point.load()
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2433, in load
    self.require(*args, **kwargs)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2456, in require
    items = working_set.resolve(reqs, env, installer, extras=self.extras)
  File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/pkg_resources/__init__.py", line 786, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'mock>=2.0.0' distribution was not found and is required by tensorflow-estimator

I also tried creating a fresh conda environment installing songbird first and then Qiime, but the issue persists.

For my purposes I created a separate environment for songbird and used the non-qiime CLI, but this is a bit of a hassle.

Running MacOS Mojave 10.14.5

mortonjt commented 4 years ago

Hmm. I'm assuming that you are running the Readme instructions right?

conda install -c conda-forge songbird

What does the command

which python

give you?

On Wed, Sep 18, 2019, 6:32 PM Gibs notifications@github.com wrote:

Hello.

I've been trying to install songbird in my existing Qiime environment (r2019.7) but doing so results in an error upon trying to use any Qiime functionality (and also cache refresh).

Traceback (most recent call last): File "/miniconda3/envs/nash_mice/bin/qiime", line 11, in sys.exit(qiime()) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 764, in call return self.main(args, kwargs) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 716, in main with self.make_context(prog_name, args, extra) as ctx: File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 641, in make_context self.parse_args(ctx, args) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/click/command.py", line 43, in parse_args return super().parse_args(ctx, args) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 1086, in parse_args echo(ctx.get_help(), color=ctx.color) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 516, in get_help return self.command.get_help(self) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 879, in get_help self.format_help(ctx, formatter) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/click/core.py", line 898, in format_help self.format_options(ctx, formatter) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/click/command.py", line 157, in format_options for subcommand in self.list_commands(ctx): File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/commands.py", line 93, in list_commands plugins = sorted(self._plugin_lookup) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/commands.py", line 77, in _plugin_lookup import q2cli.core.cache File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 403, in CACHE = DeploymentCache() File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 61, in init self._state = self._get_cached_state(refresh=refresh) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 107, in _get_cached_state self._cache_current_state(current_requirements) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 200, in _cache_current_state state = self._get_current_state() File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/q2cli/core/cache.py", line 238, in _get_current_state plugin_manager = qiime2.sdk.PluginManager() File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/qiime2/sdk/plugin_manager.py", line 44, in new self._init() File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/qiime2/sdk/plugin_manager.py", line 59, in _init plugin = entry_point.load() File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/pkg_resources/init.py", line 2433, in load self.require(args, **kwargs) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/pkg_resources/init.py", line 2456, in require items = working_set.resolve(reqs, env, installer, extras=self.extras) File "/miniconda3/envs/nash_mice/lib/python3.6/site-packages/pkg_resources/init.py", line 786, in resolve raise DistributionNotFound(req, requirers) pkg_resources.DistributionNotFound: The 'mock>=2.0.0' distribution was not found and is required by tensorflow-estimator

I also tried creating a fresh conda environment installing songbird first and then Qiime, but the issue persists.

For my purposes I created a separate environment for songbird and used the non-qiime CLI, but this is a bit of a hassle.

Running MacOS Mojave 10.14.5

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/biocore/songbird/issues/74?email_source=notifications&email_token=AA75VXLB7N3HHALJCNMZRMTQKKUBNA5CNFSM4IYEMJ22YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HMIQL4Q, or mute the thread https://github.com/notifications/unsubscribe-auth/AA75VXKPJIFCDYUITONHLFDQKKUBNANCNFSM4IYEMJ2Q .

gibsramen commented 4 years ago

Correct, I ran conda install -c conda-forge songbird from my existing qiime environment (named "nash_mice").

Running which python in this environment returns/miniconda3/envs/nash_mice/bin/python

(Version that showed up when running python was 3.6.7)

mortonjt commented 4 years ago

Ok. I'll need more information. Can you list the packages your environment? See how to generate an environment.yml below

https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html

Also try running

conda clean - - all

In your environment. It's possible that your conda env is corruptted

On Wed, Sep 18, 2019, 6:47 PM Gibs notifications@github.com wrote:

Correct, I ran conda install -c conda-forge songbird from my existing qiime environment (named "nash_mice").

Running which python in this environment returns /miniconda3/envs/nash_mice/bin/python

(Version that showed up when running python was 3.6.7)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/biocore/songbird/issues/74?email_source=notifications&email_token=AA75VXMMZVX4AA7PRKJUIHTQKKVZRA5CNFSM4IYEMJ22YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7BVRPA#issuecomment-532895932, or mute the thread https://github.com/notifications/unsubscribe-auth/AA75VXNTX2L6KWGSW4XZ6PDQKKVZRANCNFSM4IYEMJ2Q .

gibsramen commented 4 years ago

nash_mice.txt

Ran the clean but the problem remains.

mortonjt commented 4 years ago

Hi @gibsramen , I am able to reproduce your error.

The workaround for now is to do the following

conda install mock google-pasta
conda install -c conda-forge songbird

Should have caught this before the conda-forge deploy that came out 2 days ago. Thanks for catching this!

gibsramen commented 4 years ago

No problem! I can confirm that both the Artifact API and CLI work for me with this workaround.

Thanks!

mortonjt commented 4 years ago

Hi @gibsramen , the conda recipe has just been updated

https://github.com/conda-forge/songbird-feedstock/pull/5

It should be working now - please reopen if this doesn't work for you.