Skip to content
Snippets Groups Projects
Commit 7f63d37c authored by Amir MOHAMMADI's avatar Amir MOHAMMADI
Browse files

Merge branch 'matplotlib222' into 'master'

Update the dependencies

See merge request !84
parents 5af59fa2 d047eb40
No related branches found
No related tags found
1 merge request!84Update the dependencies
......@@ -10,6 +10,5 @@ ssl_verify: false
quiet: true
channels:
- https://www.idiap.ch/software/bob/conda/label/beta
- https://www.idiap.ch/software/bob/conda/label/stable
- https://www.idiap.ch/software/bob/conda
- defaults
......@@ -95,38 +95,25 @@ def which(env, program):
def get_rendered_recipe(args):
with tempfile.TemporaryDirectory(dir=args.recipe, suffix='.tmp') as d:
print('$ mkdir -p %s' % (d,))
# writes a temporary recipe without bob-devel
orig = os.path.join(args.recipe, 'meta.yaml')
contents = open(orig).read()
result = re.search(r'requirements:\s*\n.+host:\s*\n', contents, re.DOTALL)
contents = contents[:result.end()] + \
' - bob-devel {{ bob_devel }}.*\n' + \
contents[result.end():]
destfile = os.path.join(d, 'meta.yaml')
print('$ cp %s -> %s' % (orig, destfile))
print('$ edit %s # add bob-devel to host section' % (destfile,))
with open(destfile, 'wt') as f:
f.write(contents)
cmd = [
args.conda, 'render',
'--variant-config-files', args.config,
'--python', args.python, d
]
print(('$ CONDARC=%s ' % args.condarc) + ' '.join(cmd))
output = subprocess.check_output(cmd, env=args.env)
print('$ rm -rf %s' % (d,))
return yaml.load(output)
cmd = [
args.conda, 'render',
'--variant-config-files', args.config,
'--python', args.python, args.recipe
]
print(('$ CONDARC=%s ' % args.condarc) + ' '.join(cmd))
output = subprocess.check_output(cmd, env=args.env)
return yaml.load(output)
def remove_pins(deps):
return [l.split()[0] for l in deps]
def parse_dependencies(args):
recipe = get_rendered_recipe(args)
return recipe['requirements'].get('host', []) + \
recipe['requirements'].get('build', []) + \
return remove_pins(recipe['requirements'].get('build', [])) + \
remove_pins(recipe['requirements'].get('host', [])) + \
recipe['requirements'].get('run', []) + \
recipe.get('test', {}).get('requires', []) + \
['bob.buildout', 'mr.developer', 'ipdb'] # packages required for local dev
......@@ -148,8 +135,6 @@ def conda_create(args, packages):
specs = []
for k in packages:
k = ' '.join(k.split()[:2]) # remove eventual build string
if not k.startswith('bob'):
k = k.split()[0] # get whatever is compatible for those
if any(elem in k for elem in '><|'):
specs.append(k.replace(' ', ''))
else:
......@@ -168,7 +153,7 @@ def conda_create(args, packages):
raise RuntimeError('environment `%s\' exists in `%s\' - use '
'--overwrite to overwrite' % (args.name, envdir))
cmd = [args.conda, 'create', '--yes', '--name', args.name] + specs
cmd = [args.conda, 'create', '--yes', '--name', args.name] + sorted(specs)
print(('$ CONDARC=%s ' % args.condarc) + ' '.join(cmd))
status = subprocess.call(cmd, env=args.env)
......
......@@ -38,117 +38,100 @@ zip_keys:
- fortran_compiler_version # [win]
- python # [win]
# Here we list the **minimum** version of our dependencies that we support.
# We keep a list of **all of them** here to make sure everything goes as
# expected in our conda build process.
# Ideally we want to build and test against older versions of dependencies.
# Most of the pin numbers come from the anaconda package.
# Here is the version of dependencies are used when building packages (build
# and host requirements). We keep a list of **all of them** here to make sure
# everything goes as expected in our conda build process. For the version of
# packages that are used for testing packages, see the recipe of bob-devel.
# The version here do not necessarily match the versions in bob-devel.
# This version of bob-devel will be used at test time of packages:
bob_devel:
- 2018.04.04
- 2018.04.06
## The build time only dependencies.
## Updaing these to the latest version all the time is OK.
# The build time only dependencies (build requirements).
# Updating these to the latest version all the time is OK and a good idea.
# These versions should match the versions inside bob-devel as well (if they
# overlap) so update them in both places.
cmake:
- 3.9.4
coverage:
- 4.4.2
pkg_config:
- 0.29.2
cython:
- 0.28.1
## The dependencies that we link against
# The dependencies that we link against (host requirements).
# Ideally we want to build against the oldest possible version of packages when
# we are linking against them. It is best to keep this in sync with:
# https://github.com/AnacondaRecipes/aggregate/blob/master/conda_build_config.yaml
numpy:
- 1.13.3
hdf5:
- 1.10 # [not ppc64le]
freetype:
- 2.8
jpeg:
- 9b
libpng:
- 1.6.32
libtiff:
- 4.0.9
mkl:
- 2018.0.0
sqlite:
- 3.20.1
xz:
- 5.2.3
zlib:
- 1.2.11
# non-anaconda
- 1.9 # [unix]
- 1.11 # [win]
boost:
- 1.65.1
cyvlfeat:
- 0.4.6
ffmpeg:
- 3.4
fftw:
- 3.3.7
freetype:
- 2.8
giflib:
- 5.1.4
hdf5:
- 1.10
jpeg:
- 9b
libblitz:
- 1.0.1
libmatio:
- 1.5.11
libogg:
- 1.3.2
libpng:
- 1.6.32
libsvm:
- 3.22
libtiff:
- 4.0.9
mkl:
- 2018.0.0
openfst:
- 1.6.1
speexdsp:
- 1.2rc3
speex:
- 1.2.0
sox:
- 14.4.2
speex:
- 1.2.0
speexdsp:
- 1.2rc3
sqlite:
- 3.20.1
vlfeat:
- 0.9.21
xz:
- 5.2.3
zlib:
- 1.2.11
## The dependencies that are needed for runtime only
# anaconda
click:
- 6.7
curl:
- 7.55.1
cython:
- 0.26.1
matplotlib:
- 2.1.0
nose:
- 1.3.7
pillow:
- 4.2.1
scipy:
- 0.19
setuptools:
- 38.4.0
six:
- 1.11.0
sphinx:
- 1.6.3
sqlalchemy:
- 1.1.13
# non-anaconda
# The dependencies that are needed for runtime only (run requirements).
# These versions **should** match the versions inside bob-devel recipe.
caffe:
- 1.0
click:
- 6.7
click_plugins:
- 1.0.3
coverage:
- 4.5.1
dlib:
- 19.7
docopt:
- 0.6.2
ipdb:
- 0.10.2
jinja2:
- 2.10
kaldi:
- r7271.1a4dbf6
keras:
- 2.1.2
madmom:
- 0.15.1
matplotlib:
- 2.2.2
menpo:
- 0.8.1
menpofit:
......@@ -157,8 +140,12 @@ mne:
- 0.15.2
mr_developer:
- 1.38
nose:
- 1.3.7
opencv:
- 3.3.1
pillow:
- 4.3.0
pyedflib:
- 0.1.11
pyyaml:
......@@ -167,14 +154,22 @@ schema:
- 0.6.7
scikit_image:
- 0.13.1
scipy:
- 1.0.1
setuptools:
- 39.0.1
six:
- 1.11.0
sphinx:
- 1.7.2
sphinx_rtd_theme:
- 0.2.4
tensorflow:
- 1.4.1
sqlalchemy:
- 1.2.6
tabulate:
- 0.8.2
virtualenv:
- 15.1.0
tensorflow:
- 1.5.0
zc_buildout:
- 2.11.2
zc_recipe_egg:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment