diff --git a/conda-reqs/chipyard.yaml b/conda-reqs/chipyard.yaml index dc9ffe7f..d1d9eab9 100644 --- a/conda-reqs/chipyard.yaml +++ b/conda-reqs/chipyard.yaml @@ -89,7 +89,7 @@ dependencies: - graphviz - expect - dtc - - verilator==5.006 + - verilator==5.008 - screen - elfutils - libdwarf-dev==0.0.0.20190110_28_ga81397fc4 # from ucb-bar channel - using mainline libdwarf-feedstock @@ -131,7 +131,7 @@ dependencies: - pytest-mock - moto - mypy - - s3fs + - s3fs==0.4.2 - aiohttp - pip: - sure diff --git a/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml b/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml index 05562274..4899b455 100644 --- a/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml +++ b/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml @@ -21,7 +21,7 @@ metadata: - url: nodefaults used_env_vars: [] content_hash: - linux-64: a0210a6f65ea09b3ab5cc2314143367ec9c5483a46d222bc7a20c8186d151b78 + linux-64: 86382a6fa6e58883c85e482f6c209ab347df1461d7c5706f28b95813412dfe94 platforms: - linux-64 sources: @@ -2863,14 +2863,14 @@ package: dependencies: python: '>=3.6' hash: - md5: 56d08bbebf5b3719ca2b1688fcfd98a4 - sha256: 177ce344fc9668cc1e7daa637ef375f6765e60fbb52e83a5744a0513751200aa + md5: 99e28be5a278e2319834d7dc99e7bfdd + sha256: f3a64306fa0f405f10f4108d7ff42043d6fd393f940f9e98e395a3756687fc98 manager: conda name: pyjwt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.6.0-pyhd8ed1ab_0.tar.bz2 - version: 2.6.0 + url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.7.0-pyhd8ed1ab_0.conda + version: 2.7.0 - category: main dependencies: python: '>=3.3' @@ -3258,14 +3258,14 @@ package: perl: '' python: '' hash: - md5: 1a0130b3de431ee4dd26734a234a1cde - sha256: 12971e7e175a7dfb70d4afcf76e38d1ed21a979d49e215d439e7392de221a14d + md5: efb0e7909f1a41159856e688e216bd26 + sha256: c24f5fc704ee3c0737456e7a4b8f75114b25a51812c6f801a22ed43652e0b211 manager: conda name: verilator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/verilator-5.006-h07cc95c_1.conda - version: '5.006' + url: https://conda.anaconda.org/conda-forge/linux-64/verilator-5.008-h514fc35_1.conda + version: '5.008' - category: main dependencies: python: '' @@ -3399,19 +3399,6 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.15.0-pyhd8ed1ab_0.conda version: 3.15.0 -- category: main - dependencies: - python: '>=3.6' - typing_extensions: '>=4.0' - hash: - md5: 59c40397276a286241c65faec5e1be3c - sha256: be2dbd6710438fa48b83bf06841091227276ae545d145dfe5cb5149c6484e951 - manager: conda - name: aioitertools - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.11.0-pyhd8ed1ab_0.tar.bz2 - version: 0.11.0 - category: main dependencies: frozenlist: '>=1.1.0' @@ -3911,14 +3898,14 @@ package: ruamel.yaml.clib: '>=0.1.2' setuptools: '' hash: - md5: 157668515b1d28a41eb44fa3e3b59c99 - sha256: 8e4f7a3a5bbe45257b35f03b167dcdea941ef71944204fb9b9e85eef41d07413 + md5: 522b3d9f069af18d947bd43b57817ba0 + sha256: f1deff6ee893729e4c1b1005a60fea55907bbdbca2d3c88263ac65ff3ea25c55 manager: conda name: ruamel.yaml optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.24-py39hd1e30aa_0.conda - version: 0.17.24 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.25-py39hd1e30aa_0.conda + version: 0.17.25 - category: main dependencies: colorama: '' @@ -4886,14 +4873,14 @@ package: python-dateutil: '>=2.1,<3.0.0' urllib3: '>=1.25.4,<1.27' hash: - md5: c23737efb6d9e44fa00795cded4f5ed9 - sha256: 38e65d48b017160bbcc455159616e1025ca48a8e54304d5f9448d304837021e2 + md5: 7da51e7dabbb80ebe3064e9343e8e818 + sha256: 1806dfc46c9f4b51ff56575025e7e5491ee630a6be5997dd1536009585da4c4c manager: conda name: botocore optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.29.76-pyhd8ed1ab_0.conda - version: 1.29.76 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.29.131-pyhd8ed1ab_0.conda + version: 1.29.131 - category: main dependencies: cairo: '>=1.16.0,<2.0a0' @@ -4940,22 +4927,6 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/requests-2.29.0-pyhd8ed1ab_0.conda version: 2.29.0 -- category: main - dependencies: - aiohttp: '>=3.3.1' - aioitertools: '>=0.5.1' - botocore: '>=1.29.76,<1.29.77' - python: '>=3.7' - wrapt: '>=1.10.10' - hash: - md5: 7e3b07efee162390a72ef004440198c1 - sha256: 1e301342489a5c01fcc823e27a7b835eb7a953f827ff0d4253fb4493476f1569 - manager: conda - name: aiobotocore - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.5.0-pyhd8ed1ab_0.conda - version: 2.5.0 - category: main dependencies: botocore: '>=1.11.3' @@ -5141,7 +5112,7 @@ package: version: 5.1.1 - category: main dependencies: - botocore: 1.29.76 + botocore: 1.29.131 colorama: '>=0.2.5,<0.4.5' docutils: '>=0.10,<0.17' python: '>=3.9,<3.10.0a0' @@ -5150,29 +5121,29 @@ package: rsa: '>=3.1.2,<4.8' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 3e52b218096dbd584a2cf1901f24510d - sha256: 073953b59b66a10b85f2517efbbde2b0381f9efeab8373a7e09080bdd56c6b85 + md5: 06f90a852ccad1f28aefe0216299b50a + sha256: e26260e3439d5a1b350fe9b244230c0ed2356a4ee873ddbb59a1f2cfa839b627 manager: conda name: awscli optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.27.76-py39hf3d152e_0.conda - version: 1.27.76 + url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.27.131-py39hf3d152e_0.conda + version: 1.27.131 - category: main dependencies: - botocore: '>=1.29.76,<1.30.0' + botocore: '>=1.29.131,<1.30.0' jmespath: '>=0.7.1,<2.0.0' python: '>=3.7' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 5246a3712ba575428ab1e4cf8c5e289d - sha256: bd52736dcdcf9a46d7fd93baea1140b0185af3880bdfef78b9d62fdf586b65fc + md5: f51fe6d09662dc8ec9672be8567b7430 + sha256: 888fa362ba6db8b881a200539c1cc4379379ec1937168e5e475245fa1a3544c7 manager: conda name: boto3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.26.76-pyhd8ed1ab_0.conda - version: 1.26.76 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.26.131-pyhd8ed1ab_0.conda + version: 1.26.131 - category: main dependencies: cachecontrol: 0.12.11 pyhd8ed1ab_1 @@ -5233,21 +5204,6 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/msal_extensions-1.0.0-pyhd8ed1ab_0.tar.bz2 version: 1.0.0 -- category: main - dependencies: - aiobotocore: '>=2.5.0,<2.5.1' - aiohttp: '' - fsspec: 2023.5.0 - python: '>=3.8' - hash: - md5: 16c0229152ad1a1bf64e2eed3c6798a6 - sha256: 645b77bff02b6f8652e8ae5cd945aeb68366a153c9d42642ca1a248455931197 - manager: conda - name: s3fs - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/s3fs-2023.5.0-pyhd8ed1ab_0.conda - version: 2023.5.0 - category: main dependencies: livereload: '>=2.3.0' @@ -5383,6 +5339,20 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/mypy_boto3_ec2-1.26.129-pyhd8ed1ab_0.conda version: 1.26.129 +- category: main + dependencies: + boto3: '' + fsspec: '>=0.6.0' + python: '>=3.5' + hash: + md5: ead328eb12f01d88706126ba061e7a69 + sha256: 7a4cb574ff7edf773e5e4c396733dcb08ffcfd6e4f8b27e5b84b35fd4666ef5b + manager: conda + name: s3fs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/s3fs-0.4.2-py_0.tar.bz2 + version: 0.4.2 - category: main dependencies: docutils: <0.19 diff --git a/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml b/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml index 07547627..22681575 100644 --- a/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml +++ b/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml @@ -21,7 +21,7 @@ metadata: - url: nodefaults used_env_vars: [] content_hash: - linux-64: 376bb38de2024431bd645f2a9478402e6b12432072e1bb9efa36e900580de566 + linux-64: 92c3e7798f0b770b5c7c3ccb9bb821f7aca74819a9dba397e47d752af976b25f platforms: - linux-64 sources: @@ -2846,14 +2846,14 @@ package: dependencies: python: '>=3.6' hash: - md5: 56d08bbebf5b3719ca2b1688fcfd98a4 - sha256: 177ce344fc9668cc1e7daa637ef375f6765e60fbb52e83a5744a0513751200aa + md5: 99e28be5a278e2319834d7dc99e7bfdd + sha256: f3a64306fa0f405f10f4108d7ff42043d6fd393f940f9e98e395a3756687fc98 manager: conda name: pyjwt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.6.0-pyhd8ed1ab_0.tar.bz2 - version: 2.6.0 + url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.7.0-pyhd8ed1ab_0.conda + version: 2.7.0 - category: main dependencies: python: '>=3.3' @@ -3260,14 +3260,14 @@ package: perl: '' python: '' hash: - md5: 1a0130b3de431ee4dd26734a234a1cde - sha256: 12971e7e175a7dfb70d4afcf76e38d1ed21a979d49e215d439e7392de221a14d + md5: efb0e7909f1a41159856e688e216bd26 + sha256: c24f5fc704ee3c0737456e7a4b8f75114b25a51812c6f801a22ed43652e0b211 manager: conda name: verilator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/verilator-5.006-h07cc95c_1.conda - version: '5.006' + url: https://conda.anaconda.org/conda-forge/linux-64/verilator-5.008-h514fc35_1.conda + version: '5.008' - category: main dependencies: python: '' @@ -3887,14 +3887,14 @@ package: ruamel.yaml.clib: '>=0.1.2' setuptools: '' hash: - md5: 016fdbee5680173ec0ffa6b71317fc7f - sha256: 3f96af373139edd176fd6b8478f3b8934005674f50e2a0422e355b77c9152e27 + md5: 475a6b5d3a01fc0d7d494ccd94db0b1d + sha256: 90ea9bbd357fa206ac07623f57d990adb318a43bc402a85d31bcb907552e2b5e manager: conda name: ruamel.yaml optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.24-py310h2372a71_0.conda - version: 0.17.24 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.25-py310h2372a71_0.conda + version: 0.17.25 - category: main dependencies: colorama: '' @@ -4848,14 +4848,14 @@ package: python-dateutil: '>=2.1,<3.0.0' urllib3: '>=1.25.4,<1.27' hash: - md5: b6cdb2c025e2a44462c7f0f4ee1502a8 - sha256: 1a92aaf1e978b1a219726fd9747cd43d43aed2d3aee9932be0d8b79a66e5ea83 + md5: 7da51e7dabbb80ebe3064e9343e8e818 + sha256: 1806dfc46c9f4b51ff56575025e7e5491ee630a6be5997dd1536009585da4c4c manager: conda name: botocore optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.29.130-pyhd8ed1ab_0.conda - version: 1.29.130 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.29.131-pyhd8ed1ab_0.conda + version: 1.29.131 - category: main dependencies: cairo: '>=1.16.0,<2.0a0' @@ -5087,7 +5087,7 @@ package: version: 5.1.1 - category: main dependencies: - botocore: 1.29.130 + botocore: 1.29.131 colorama: '>=0.2.5,<0.4.5' docutils: '>=0.10,<0.17' python: '>=3.10,<3.11.0a0' @@ -5096,29 +5096,29 @@ package: rsa: '>=3.1.2,<4.8' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 73d250b9c5952035e0583db4a5b91895 - sha256: af8a05666cfc0376c503d9ec9bbec05205d699226c12d598a719325c249fb688 + md5: a8803614b98f834dd8e9239b1c172bb1 + sha256: 627c4db1e6c5e2febb5b9a7acf92b68a3c26afc26800700b510e076c46c02129 manager: conda name: awscli optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.27.130-py310hff52083_0.conda - version: 1.27.130 + url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.27.131-py310hff52083_0.conda + version: 1.27.131 - category: main dependencies: - botocore: '>=1.29.130,<1.30.0' + botocore: '>=1.29.131,<1.30.0' jmespath: '>=0.7.1,<2.0.0' python: '>=3.7' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: b41eaaaf0f77cce83052e5cfa841251c - sha256: 29588b211401de9dc34318bbb00eeb946e6961afb74f1097ec1ed24948300116 + md5: f51fe6d09662dc8ec9672be8567b7430 + sha256: 888fa362ba6db8b881a200539c1cc4379379ec1937168e5e475245fa1a3544c7 manager: conda name: boto3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.26.130-pyhd8ed1ab_0.conda - version: 1.26.130 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.26.131-pyhd8ed1ab_0.conda + version: 1.26.131 - category: main dependencies: cachecontrol: 0.12.11 pyhd8ed1ab_1 diff --git a/scripts/build-setup.sh b/scripts/build-setup.sh index a09f4359..02e1fd81 100755 --- a/scripts/build-setup.sh +++ b/scripts/build-setup.sh @@ -114,11 +114,12 @@ if run_step "1"; then # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 CONDA_REQS=$CYDIR/conda-reqs CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs + # must match with the file generated by generate-conda-lockfile.sh LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml if [ "$USE_UNPINNED_DEPS" = true ]; then - # auto-gen the lockfile - conda-lock -f $CONDA_REQS/chipyard.yaml -f $CONDA_REQS/$TOOLCHAIN_TYPE.yaml --lockfile $LOCKFILE + # auto-gen the lockfiles + $CYDIR/scripts/generate-conda-lockfiles.sh fi # use conda-lock to create env diff --git a/scripts/generate-conda-lockfiles.sh b/scripts/generate-conda-lockfiles.sh new file mode 100755 index 00000000..f2e81106 --- /dev/null +++ b/scripts/generate-conda-lockfiles.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash + +set -ex + +CUR_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +REQS_DIR="$CUR_DIR/../conda-reqs" +if [ ! -d "$REQS_DIR" ]; then + echo "$REQS_DIR does not exist, make sure you're calling this script from chipyard/" + exit 1 +fi + +for TOOLCHAIN_TYPE in riscv-tools esp-tools; do + # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 + LOCKFILE=$REQS_DIR/conda-lock-reqs/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml + + conda-lock -f "$REQS_DIR/chipyard.yaml" -f "$REQS_DIR/$TOOLCHAIN_TYPE.yaml" -p linux-64 --lockfile $LOCKFILE +done