Skip to content

`bdt create` can't reconcile beat.cmdline with specified devel packages

Running bdt create -vv --python=3.6 beat_editor on master will fail, conda unable to find compatible beat.cmdline & bob-devel versions:

Solving environment: ...working... failed

UnsatisfiableError: The following specifications were found to be in conflict:
  - beat.cmdline
  - bob-devel=2019.02.11
Use "conda search <package> --info" to see the dependencies for each package.

Traceback (most recent call last):
  File "/home/jae/miniconda3/envs/bdt/bin/bdt", line 11, in <module>
    sys.exit(main())
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/bob/devtools/scripts/bdt.py", line 42, in _decorator
    value = view_func(*args, **kwargs)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/bob/devtools/scripts/create.py", line 145, in create
    dry_run, use_local)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/bob/devtools/build.py", line 285, in conda_create
    run_cmdline(cmd)
  File "/home/jae/miniconda3/envs/bdt/lib/python3.6/site-packages/bob/devtools/bootstrap.py", line 118, in run_cmdline
    (' '.join(cmd), p.returncode))
RuntimeError: command `/home/jae/miniconda3/bin/conda create --yes --name beat_editor_2 --override-channels --channel=http://www.idiap.ch/software/bob/conda/label/beta --channel=http://www.idiap.ch/software/bob/conda --channel=defaults beat-devel=2019.02.11.* beat.cmdline bob-devel=2019.02.11.* bob.buildout bob.extension ca-certificates certifi coverage docopt flask flask-cors flask-restful ipdb jinja2 libedit libffi libgcc libgcc-ng libstdcxx-ng mr.developer ncurses nodejs nodejs nose openssl pip python python>=3.6,<3.7.0a0 readline setuptools setuptools simplejson sphinx sphinx_rtd_theme sqlite tk wheel xz zlib' exited with error state (1)

I'm not sure if this is a beat.editor, beat.cmdline, or bob.devtools issue, so I'm opening it here first since this is where I encountered it.

After messing around with everything, I found a hack to fix this - change the pinned versions of bob_devel and beat_devel in miniconda3/envs/bdt/lib/python3.6/site-packages/bob/devtools/data/conda_build_config.yaml:52 to use versions released in 2018:

# This version of bob-devel will be used at test time of packages:
bob_devel:
  - 2018.*
#2019.02.11

# This version of beat-devel will be used at test time of packages. Notice it
# uses bob-devel and should have a version that is greater or equal its value
beat_devel:
  - 2018.*
#2019.02.11

Hopefully this is just a conda config issue for beat.editor or beat.cmdline, but maybe we need a custom config.yaml to pass to the --config flag in bdt create?

(I encountered this error when working on #201 (closed))

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information