diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..cc517978 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +conda-requirements-esp-tools-linux-64.conda-lock.yml linguist-generated=true +conda-requirements-riscv-tools-linux-64.conda-lock.yml linguist-generated=true diff --git a/.github/CI_README.md b/.github/CI_README.md index 2f70449e..30a9e96a 100644 --- a/.github/CI_README.md +++ b/.github/CI_README.md @@ -22,7 +22,7 @@ For example: This specifies that the `prepare-chipyard-cores` job needs the both the `make-keys` and the `setup-complete` steps to be completed before it can run. -Chipyard runs its CI using a docker image created from `dockerfiles/Dockerfile`. +Chipyard runs its CI using a docker image created from `dockerfiles/Dockerfile` and on Berkeley's compute infrastructure. See its [README](../dockerfiles/README.md) for more details. Finally, within each job's `steps:` section, the steps are run sequentially and state persists throughout a job. @@ -71,9 +71,7 @@ Our own composite actions are defined in the `.github/actions//actio This directory contains most the collateral for the Chipyard CI to work. The following is included in `.github/scripts/: directory - `build-toolchains.sh` # build either riscv-tools or esp-tools - `create-hash.sh` # create hashes of riscv-tools/esp-tools to use as hash keys - `remote-do-rtl-build.sh` # use verilator to build a sim executable (remotely) + `remote-do-rtl-build.sh` # use verilator to build a sim executable (remotely) `defaults.sh` # default variables used `check-commit.sh` # check that submodule commits are valid `build-extra-tests.sh` # build default chipyard tests located in tests/ @@ -101,21 +99,9 @@ To get the CI to work correctly you need to create the following GH Repository S | Secret | Value | | -------| ------------- | -| BUILDSERVER | the hostname of the remote build server (likely be a millennium machine) | -| BUILDUSER | the login to use on the build server | | BUILDDIR | the directory to use on the build server | -| SERVERKEY | a private key to access the build server | -The main workflow also constructs and places in the environment a SERVER and a work directyory on that server env using the above secrets. -The SERVER is constructed like this: -```bash -SERVER = ${{ secrets.BUILDUSER }}@${{ secrets.BUILDSERVER }} -``` - -Additionally, you need to add under the "PERMISSIONS" "SSH Permissions" section a private key that is on the build server that you are using. -After adding a private key, it will show a fingerprint that should be added under the jobs that need to be run. - -Note: On the remote server you need to have the `*.pub` key file added to the `authorized_keys` file. +Additionally, you need to install conda on the build servers that exist. Notes on CIRCLE CI ------------------ diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 4d6e6a78..f06cf04d 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -31,7 +31,7 @@ body: description: OS setup for reproducibility placeholder: OS information value: | - Ex: Output of `uname -a` and `lsb_release -a` + Ex: Output of `uname -a` + `lsb_release -a` + `printenv` + `conda list` validations: required: true diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index c1df432a..cc3ee3c4 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -37,6 +37,7 @@ Provide a brief description of the PR immediately below this comment, if the tit - [ ] Did you state the type-of-change/impact? - [ ] Did you delete any extraneous prints/debugging code? - [ ] Did you mark the PR with a `changelog:` label? +- [ ] (If applicable) Did you update the conda `.conda-lock.yml` file if you updated the conda requirements file? - [ ] (If applicable) Did you add documentation for the feature? - [ ] (If applicable) Did you add a test demonstrating the PR? diff --git a/.github/actions/cleanup-conda/action.yml b/.github/actions/cleanup-conda/action.yml new file mode 100644 index 00000000..74dac2ef --- /dev/null +++ b/.github/actions/cleanup-conda/action.yml @@ -0,0 +1,28 @@ +name: cleanup-conda +description: 'Remove extra conda environments' + +runs: + using: "composite" + steps: + - name: Remove extra conda environments + run: | + CONDA_REMOVE_NAMES=$(conda env list | awk '{print $1}' | tail -n +3 | grep "${{ env.conda-env-name-no-time }}" || true) + if [ -z "$CONDA_REMOVE_NAMES" ]; then + echo "No matching conda environments for ${{ env.conda-env-name-no-time }}. Skip removal." + else + echo "Removing $CONDA_REMOVE_NAMES conda environments." + for env in $CONDA_REMOVE_NAMES; do + conda env remove -n $env + done + fi + conda env list | awk '{print $1}' | tail -n +4 | while read envname; do + ENV_DATE=$(echo $envname | sed "s/cy-[[:digit:]]\+-\(.*\)-\(riscv\|esp\)-tools/\1/") + NUM_DIFF=$(( ( $(date +%s) - $(date --date="$ENV_DATE" +%s) )/(60*60*24) )) + if (( $NUM_DIFF > 7 )); then + echo "Removing $envname since it is $NUM_DIFF days old." + conda env remove -n $envname + else + echo "Skipping removal of $envname since it is $NUM_DIFF days old." + fi + done + shell: bash -leo pipefail {0} diff --git a/.github/actions/create-conda-env/action.yml b/.github/actions/create-conda-env/action.yml new file mode 100644 index 00000000..5027ab2d --- /dev/null +++ b/.github/actions/create-conda-env/action.yml @@ -0,0 +1,33 @@ +name: create-conda-env +description: 'Create conda environments if they dont exist' +inputs: + install-collateral: + description: 'Install Spike/Libgloss/etc' + required: false + default: true + +runs: + using: "composite" + steps: + - name: Create conda environments + run: | + if conda env list | grep -q "envs/${{ env.conda-env-name-no-time }}"; then + echo "Using pre-existing conda environments with prefix ${{ env.conda-env-name-no-time }}" + else + echo "Creating a conda environment for each toolchain with the toolchain installed" + conda activate base + conda-lock install -n ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools ./conda-requirements-riscv-tools-linux-64.conda-lock.yml + conda-lock install -n ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-esp-tools ./conda-requirements-esp-tools-linux-64.conda-lock.yml + conda deactivate + + if [[ "${{ inputs.install-collateral }}" == 'true' ]]; then + echo "Add extra toolchain collateral to RISC-V install area" + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + ./scripts/build-toolchain-extra.sh riscv-tools + conda deactivate + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-esp-tools + ./scripts/build-toolchain-extra.sh esp-tools + conda deactivate + fi + fi + shell: bash -leo pipefail {0} diff --git a/.github/actions/git-workaround/action.yml b/.github/actions/git-workaround/action.yml new file mode 100644 index 00000000..c9d923d3 --- /dev/null +++ b/.github/actions/git-workaround/action.yml @@ -0,0 +1,15 @@ +name: git-workaround +description: 'Workaround https://github.com/actions/checkout/issues/766' + +runs: + using: "composite" + steps: + - name: Workaround + run: | + if git config --global -l | grep -q "safe.directory=$GITHUB_WORKSPACE"; then + echo "Skip adding safe directory" + else + echo "Add $GITHUB_WORKSPACE to global git config" + git config --global --add safe.directory "$GITHUB_WORKSPACE" + fi + shell: bash -leo pipefail {0} diff --git a/.github/actions/prepare-rtl/action.yml b/.github/actions/prepare-rtl/action.yml index 25098bfc..74a04037 100644 --- a/.github/actions/prepare-rtl/action.yml +++ b/.github/actions/prepare-rtl/action.yml @@ -13,28 +13,30 @@ inputs: description: type of build required: false default: "sim" + toolchain: + description: toolchain to use + required: false + default: "riscv-tools" runs: using: "composite" steps: - - name: Build RISC-V toolchains - uses: ./.github/actions/toolchain-build - - - uses: actions/cache@v2 + - uses: actions/cache@v3 id: rtl-build-id with: path: | sims/verilator sims/firesim/sim generators/gemmini/software/gemmini-rocc-tests - key: ${{ inputs.group-key }}-${{ github.ref }}-${{ github.sha }} + key: ${{ inputs.group-key }}-${{ github.sha }} - name: Run RTL build if not cached run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-${{ inputs.toolchain }} if [[ "${{ steps.rtl-build-id.outputs.cache-hit }}" != 'true' ]]; then - echo "Cache miss on ${{ inputs.group-key }}-${{ github.ref }}-${{ github.sha }}" + echo "Cache miss on ${{ inputs.group-key }}-${{ github.sha }}" ./.github/scripts/${{ inputs.build-script }} ${{ inputs.group-key }} ${{ inputs.build-type }} else echo "Cache hit do not rebuild RTL for ${{ inputs.group-key }}" fi - shell: bash + shell: bash -leo pipefail {0} diff --git a/.github/actions/run-tests/action.yml b/.github/actions/run-tests/action.yml index 05cc6498..1c554ac4 100644 --- a/.github/actions/run-tests/action.yml +++ b/.github/actions/run-tests/action.yml @@ -12,20 +12,29 @@ inputs: description: rtl build script to use required: false default: "run-tests.sh" + toolchain: + description: toolchain to use + required: false + default: "riscv-tools" runs: using: "composite" steps: - name: Init submodules (since only the RTL is cached) - run: ./scripts/init-submodules-no-riscv-tools.sh --skip-validate - shell: bash + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-${{ inputs.toolchain }} + ./scripts/init-submodules-no-riscv-tools.sh --force + shell: bash -leo pipefail {0} # Note: You shouldn't need the other inputs since it shouldn't build RTL from scratch - name: Build RTL uses: ./.github/actions/prepare-rtl with: group-key: ${{ inputs.group-key }} + toolchain: ${{ inputs.toolchain }} - name: Run RTL tests - run: ./.github/scripts/${{ inputs.run-script }} ${{ inputs.project-key }} - shell: bash + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-${{ inputs.toolchain }} + ./.github/scripts/${{ inputs.run-script }} ${{ inputs.project-key }} + shell: bash -leo pipefail {0} diff --git a/.github/actions/toolchain-build/action.yml b/.github/actions/toolchain-build/action.yml deleted file mode 100644 index c3492054..00000000 --- a/.github/actions/toolchain-build/action.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: toolchain-build -description: 'Build/cache both toolchains' - -runs: - using: "composite" - steps: - - name: Generate hashes - run: .github/scripts/create-hash.sh - shell: bash - - # since "hashFiles" function differs on self-hosted vs GH-A machines - # make sure to cache the GH-A hashFiles result so that self-hosted can use it - - run: | - echo "${{ hashFiles('**/riscv-tools.hash') }}" > riscv-tools.hashFilesOutput - echo "${{ hashFiles('**/esp-tools.hash') }}" > esp-tools.hashFilesOutput - shell: bash - - - name: Cache hashFiles outputs - uses: actions/cache@v2 - with: - path: | - riscv-tools.hashFilesOutput - esp-tools.hashFilesOutput - key: hashFiles-${{ github.sha }} - - - name: Generate cache keys based off hashFiles output - id: genkey - run: | - echo "::set-output name=riscv-tools-cache-key::$(cat riscv-tools.hashFilesOutput)" - echo "::set-output name=esp-tools-cache-key::$(cat esp-tools.hashFilesOutput)" - shell: bash - - - name: Cache riscv-tools - uses: actions/cache@v2 - with: - path: riscv-tools-install - key: riscv-tools-installed-${{ env.tools-cache-version }}-${{ steps.genkey.outputs.riscv-tools-cache-key }} - - - name: Cache esp-tools - uses: actions/cache@v2 - with: - path: esp-tools-install - key: esp-tools-installed-${{ env.tools-cache-version }}-${{ steps.genkey.outputs.esp-tools-cache-key }} - - - name: Build RISC-V toolchain if not cached - run: ./.github/scripts/build-toolchains.sh riscv-tools - shell: bash - - - name: Build ESP RISC-V toolchain if not cached - run: ./.github/scripts/build-toolchains.sh esp-tools - shell: bash diff --git a/.github/scripts/build-extra-tests.sh b/.github/scripts/build-extra-tests.sh index a77f5482..e38b50fe 100755 --- a/.github/scripts/build-extra-tests.sh +++ b/.github/scripts/build-extra-tests.sh @@ -7,9 +7,5 @@ set -ex SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" source $SCRIPT_DIR/defaults.sh -export RISCV="$GITHUB_WORKSPACE/riscv-tools-install" -export LD_LIBRARY_PATH="$RISCV/lib" -export PATH="$RISCV/bin:$PATH" - make -C $LOCAL_CHIPYARD_DIR/tests clean make -C $LOCAL_CHIPYARD_DIR/tests diff --git a/.github/scripts/build-toolchains.sh b/.github/scripts/build-toolchains.sh deleted file mode 100755 index 1f23c408..00000000 --- a/.github/scripts/build-toolchains.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -# create the riscv tools/esp tools binaries -# passed in as - -# turn echo on and error on earliest command -set -ex - -# get shared variables -SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" -source $SCRIPT_DIR/defaults.sh - -if [ ! -d "$HOME/$1-install" ]; then - cd $HOME - - # init all submodules including the tools - CHIPYARD_DIR="$LOCAL_CHIPYARD_DIR" NPROC=$CI_MAKE_NPROC $LOCAL_CHIPYARD_DIR/scripts/build-toolchains.sh $1 - - # de-init the toolchain area to save on space (forced to ignore local changes) - git submodule deinit --force $LOCAL_CHIPYARD_DIR/toolchains/$1 -fi diff --git a/.github/scripts/check-commit.sh b/.github/scripts/check-commit.sh index 756b7a3c..e7af368f 100755 --- a/.github/scripts/check-commit.sh +++ b/.github/scripts/check-commit.sh @@ -52,13 +52,22 @@ dir="generators" branches=("master" "main" "dev") search -submodules=("riscv-gnu-toolchain" "riscv-isa-sim" "riscv-pk" "riscv-tests") +submodules=("esp-tools-feedstock") +dir="toolchains/esp-tools" +branches=("main") +search + +submodules=("riscv-isa-sim" "riscv-pk" "riscv-tests") dir="toolchains/esp-tools" branches=("master") search +submodules=("riscv-tools-feedstock") +dir="toolchains/riscv-tools" +branches=("main") +search -submodules=("riscv-gnu-toolchain" "riscv-isa-sim" "riscv-pk" "riscv-tests") +submodules=("riscv-isa-sim" "riscv-pk" "riscv-tests") dir="toolchains/riscv-tools" branches=("master") search @@ -69,7 +78,7 @@ dir="toolchains/riscv-tools" branches=("riscv") search -submodules=("qemu" "libgloss") +submodules=("libgloss") dir="toolchains" branches=("master") search @@ -84,11 +93,6 @@ dir="tools" branches=("master" "dev") search -submodules=("dromajo-src") -dir="tools/dromajo" -branches=("master") -search - submodules=("firesim") dir="sims" branches=("master" "main" "dev" "1.13.x") diff --git a/.github/scripts/create-hash.sh b/.github/scripts/create-hash.sh deleted file mode 100755 index f64c0696..00000000 --- a/.github/scripts/create-hash.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -# get the hash of riscv-tools - -# turn echo on and error on earliest command -set -ex -set -o pipefail - -# get shared variables -SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" -source $SCRIPT_DIR/defaults.sh - -# Use normalized output of git-submodule status as hashfile -for tools in 'riscv-tools' 'esp-tools' ; do - git submodule status "toolchains/${tools}" 'toolchains/libgloss' 'toolchains/qemu' | - while read -r line ; do - echo "${line#[!0-9a-f]}" - done > "${tools}.hash" -done -echo "Hashfile for riscv-tools and esp-tools created in $PWD" diff --git a/.github/scripts/defaults.sh b/.github/scripts/defaults.sh index 8022a470..e196b994 100755 --- a/.github/scripts/defaults.sh +++ b/.github/scripts/defaults.sh @@ -5,18 +5,11 @@ CI_MAKE_NPROC=8 # chosen based on a 24c system shared with 1 other project REMOTE_MAKE_NPROC=4 -# verilator version -VERILATOR_VERSION=v4.034 - -HOME=$GITHUB_WORKSPACE - # remote variables # CI_DIR is defined externally based on the GH repository secret BUILDDIR REMOTE_PREFIX=$CI_DIR/${GITHUB_REPOSITORY#*/}-${GITHUB_REF_NAME//\//-} REMOTE_WORK_DIR=$GITHUB_WORKSPACE -REMOTE_RISCV_DIR=$GITHUB_WORKSPACE/riscv-tools-install -REMOTE_ESP_DIR=$GITHUB_WORKSPACE/esp-tools-install REMOTE_CHIPYARD_DIR=$GITHUB_WORKSPACE REMOTE_SIM_DIR=$REMOTE_CHIPYARD_DIR/sims/verilator REMOTE_FIRESIM_DIR=$REMOTE_CHIPYARD_DIR/sims/firesim/sim @@ -24,13 +17,9 @@ REMOTE_FPGA_DIR=$REMOTE_CHIPYARD_DIR/fpga REMOTE_JAVA_OPTS="-Xmx10G -Xss8M" # Disable the supershell to greatly improve the readability of SBT output when captured by Circle CI REMOTE_SBT_OPTS="-Dsbt.ivy.home=$REMOTE_WORK_DIR/.ivy2 -Dsbt.supershell=false -Dsbt.global.base=$REMOTE_WORK_DIR/.sbt -Dsbt.boot.directory=$REMOTE_WORK_DIR/.sbt/boot" -REMOTE_VERILATOR_DIR=$REMOTE_PREFIX-$GITHUB_SHA-verilator-install # local variables (aka within the docker container) -LOCAL_CHECKOUT_DIR=$HOME/project -LOCAL_RISCV_DIR=$HOME/riscv-tools-install -LOCAL_ESP_DIR=$HOME/esp-tools-install -LOCAL_CHIPYARD_DIR=$HOME +LOCAL_CHIPYARD_DIR=$GITHUB_WORKSPACE LOCAL_SIM_DIR=$LOCAL_CHIPYARD_DIR/sims/verilator LOCAL_FIRESIM_DIR=$LOCAL_CHIPYARD_DIR/sims/firesim/sim diff --git a/.github/scripts/install-conda.sh b/.github/scripts/install-conda.sh new file mode 100755 index 00000000..9e2740fb --- /dev/null +++ b/.github/scripts/install-conda.sh @@ -0,0 +1,181 @@ +#!/bin/bash + +CONDA_INSTALL_PREFIX=/opt/conda +CONDA_INSTALLER_VERSION=4.12.0-0 +CONDA_INSTALLER="https://github.com/conda-forge/miniforge/releases/download/${CONDA_INSTALLER_VERSION}/Miniforge3-${CONDA_INSTALLER_VERSION}-Linux-x86_64.sh" +CONDA_CMD="conda" # some installers install mamba or micromamba + +DRY_RUN_OPTION="" +DRY_RUN_ECHO=() +REINSTALL_CONDA=0 + +usage() +{ + echo "Usage: $0 [options]" + echo + echo "Options:" + echo "[--help] List this help" + echo "[--prefix ] Install prefix for conda. Defaults to /opt/conda." + echo " If /bin/conda already exists, it will be used and install is skipped." + echo "[--dry-run] Pass-through to all conda commands and only print other commands." + echo " NOTE: --dry-run will still install conda to --prefix" + echo "[--reinstall-conda] Repairs a broken base environment by reinstalling." + echo " NOTE: will only reinstall conda and exit" + echo + echo "Examples:" + echo " % $0" + echo " Install into default system-wide prefix (using sudo if needed) and add install to system-wide /etc/profile.d" + echo " % $0 --prefix ~/conda" + echo " Install into $HOME/conda" +} + + +while [ $# -gt 0 ]; do + case "$1" in + --help) + usage + exit 1 + ;; + --prefix) + shift + CONDA_INSTALL_PREFIX="$1" + shift + ;; + --dry-run) + shift + DRY_RUN_OPTION="--dry-run" + DRY_RUN_ECHO=(echo "Would Run:") + ;; + --reinstall-conda) + shift + REINSTALL_CONDA=1 + ;; + *) + echo "Invalid Argument: $1" + usage + exit 1 + ;; + esac +done + +if [[ $REINSTALL_CONDA -eq 1 && -n "$DRY_RUN_OPTION" ]]; then + echo "::ERROR:: --dry-run and --reinstall-conda are mutually exclusive. Pick one or the other." +fi + +set -ex +set -o pipefail + +# uname options are not portable so do what https://www.gnu.org/software/coreutils/faq/coreutils-faq.html#uname-is-system-specific +# suggests and iteratively probe the system type +if ! type uname >&/dev/null; then + echo "::ERROR:: need 'uname' command available to determine if we support this sytem" + exit 1 +fi + +if [[ "$(uname)" != "Linux" ]]; then + echo "::ERROR:: $0 only supports 'Linux' not '$(uname)'" + exit 1 +fi + +if [[ "$(uname -mo)" != "x86_64 GNU/Linux" ]]; then + echo "::ERROR:: $0 only supports 'x86_64 GNU/Linux' not '$(uname -io)'" + exit 1 +fi + +if [[ ! -r /etc/os-release ]]; then + echo "::ERROR:: $0 depends on /etc/os-release for distro-specific setup and it doesn't exist here" + exit 1 +fi + +OS_FLAVOR=$(grep '^ID=' /etc/os-release | awk -F= '{print $2}' | tr -d '"') +OS_VERSION=$(grep '^VERSION_ID=' /etc/os-release | awk -F= '{print $2}' | tr -d '"') + +# platform-specific setup +case "$OS_FLAVOR" in + ubuntu) + ;; + centos) + ;; + *) + echo "::ERROR:: Unknown OS flavor '$OS_FLAVOR'. Unable to do platform-specific setup." + exit 1 + ;; +esac + + +# everything else is platform-agnostic and could easily be expanded to Windows and/or OSX + +SUDO="" +prefix_parent=$(dirname "$CONDA_INSTALL_PREFIX") +if [[ ! -e "$prefix_parent" ]]; then + mkdir -p "$prefix_parent" || SUDO=sudo +elif [[ ! -w "$prefix_parent" ]]; then + SUDO=sudo +fi + +if [[ -n "$SUDO" ]]; then + echo "::INFO:: using 'sudo' to install conda" + # ensure files are read-execute for everyone + umask 022 +fi + +if [[ -n "$SUDO" || "$(id -u)" == 0 ]]; then + INSTALL_TYPE=system +else + INSTALL_TYPE=user +fi + +# to enable use of sudo and avoid modifying 'secure_path' in /etc/sudoers, we specify the full path to conda +CONDA_EXE="${CONDA_INSTALL_PREFIX}/bin/$CONDA_CMD" + +if [[ -x "$CONDA_EXE" && $REINSTALL_CONDA -eq 0 ]]; then + echo "::INFO:: '$CONDA_EXE' already exists, skipping conda install" +else + wget -O install_conda.sh "$CONDA_INSTALLER" || curl -fsSLo install_conda.sh "$CONDA_INSTALLER" + if [[ $REINSTALL_CONDA -eq 1 ]]; then + conda_install_extra="-u" + echo "::INFO:: RE-installing conda to '$CONDA_INSTALL_PREFIX'" + else + conda_install_extra="" + echo "::INFO:: installing conda to '$CONDA_INSTALL_PREFIX'" + fi + # -b for non-interactive install + $SUDO bash ./install_conda.sh -b -p "$CONDA_INSTALL_PREFIX" $conda_install_extra + rm ./install_conda.sh + + # see https://conda-forge.org/docs/user/tipsandtricks.html#multiple-channels + # for more information on strict channel_priority + "${DRY_RUN_ECHO[@]}" $SUDO "$CONDA_EXE" config --system --set channel_priority strict + # By default, don't mess with people's PS1, I personally find it annoying + "${DRY_RUN_ECHO[@]}" $SUDO "$CONDA_EXE" config --system --set changeps1 false + # don't automatically activate the 'base' environment when intializing shells + "${DRY_RUN_ECHO[@]}" $SUDO "$CONDA_EXE" config --system --set auto_activate_base false + # don't automatically update conda to avoid https://github.com/conda-forge/conda-libmamba-solver-feedstock/issues/2 + "${DRY_RUN_ECHO[@]}" $SUDO "$CONDA_EXE" config --system --set auto_update_conda false + + # conda-build is a special case and must always be installed into the base environment + $SUDO "$CONDA_EXE" install $DRY_RUN_OPTION -y -n base conda-build + + # conda-libmamba-solver is a special case and must always be installed into the base environment + # see https://www.anaconda.com/blog/a-faster-conda-for-a-growing-community + $SUDO "$CONDA_EXE" install $DRY_RUN_OPTION -y -n base conda-libmamba-solver + + # conda-lock is a special case and must always be installed into the base environment + $SUDO "$CONDA_EXE" install $DRY_RUN_OPTION -y -n base conda-lock + + # Use the fast solver by default + "${DRY_RUN_ECHO[@]}" $SUDO "$CONDA_EXE" config --system --set experimental_solver libmamba + + conda_init_extra_args=() + if [[ "$INSTALL_TYPE" == system ]]; then + # if we're installing into a root-owned directory using sudo, or we're already root + # initialize conda in the system-wide rcfiles + conda_init_extra_args=(--no-user --system) + fi + $SUDO "${CONDA_EXE}" init $DRY_RUN_OPTION "${conda_init_extra_args[@]}" bash + + if [[ $REINSTALL_CONDA -eq 1 ]]; then + echo "::INFO:: Done reinstalling conda. Exiting" + exit 0 + fi +fi diff --git a/.github/scripts/remote-do-rtl-build.sh b/.github/scripts/remote-do-rtl-build.sh index 1f4251b1..f3f2d462 100755 --- a/.github/scripts/remote-do-rtl-build.sh +++ b/.github/scripts/remote-do-rtl-build.sh @@ -15,16 +15,10 @@ SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" source $SCRIPT_DIR/defaults.sh cd $REMOTE_CHIPYARD_DIR -./scripts/init-submodules-no-riscv-tools.sh --skip-validate +./scripts/init-submodules-no-riscv-tools.sh --force ./scripts/init-fpga.sh -TOOLS_DIR=$REMOTE_RISCV_DIR -LD_LIB_DIR=$REMOTE_RISCV_DIR/lib - if [ $1 = "group-accels" ]; then - export RISCV=$REMOTE_ESP_DIR - export LD_LIBRARY_PATH=$REMOTE_ESP_DIR/lib - export PATH=$RISCV/bin:$PATH pushd $REMOTE_CHIPYARD_DIR/generators/gemmini/software git submodule update --init --recursive gemmini-rocc-tests pushd gemmini-rocc-tests @@ -44,7 +38,6 @@ case $2 in esac # enter the verilator directory and build the specific config on remote server -export RISCV=$TOOLS_DIR make -C $REMOTE_MAKE_DIR clean read -a keys <<< ${grouping[$1]} @@ -52,10 +45,6 @@ read -a keys <<< ${grouping[$1]} # need to set the PATH to use the new verilator (with the new verilator root) for key in "${keys[@]}" do - export RISCV=$TOOLS_DIR - export LD_LIBRARY_PATH=$LD_LIB_DIR - export PATH=$REMOTE_VERILATOR_DIR/bin:$PATH - export VERILATOR_ROOT=$REMOTE_VERILATOR_DIR export COURSIER_CACHE=$REMOTE_WORK_DIR/.coursier-cache make -j$REMOTE_MAKE_NPROC -C $REMOTE_MAKE_DIR FIRRTL_LOGLEVEL=info JAVA_OPTS="$REMOTE_JAVA_OPTS" SBT_OPTS="$REMOTE_SBT_OPTS" ${mapping[$key]} done diff --git a/.github/scripts/remote-install-verilator.sh b/.github/scripts/remote-install-verilator.sh deleted file mode 100755 index b244614e..00000000 --- a/.github/scripts/remote-install-verilator.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -# install verilator - -# turn echo on and error on earliest command -set -ex - -# get shared variables -SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" -source $SCRIPT_DIR/defaults.sh - -# clean older directories (delete prior directories related to this branch also) -$SCRIPT_DIR/clean-old-files.sh $CI_DIR -rm -rf $REMOTE_PREFIX* - -git clone http://git.veripool.org/git/verilator $REMOTE_VERILATOR_DIR -cd $REMOTE_VERILATOR_DIR -git checkout $VERILATOR_VERSION -autoconf -export VERILATOR_ROOT=$REMOTE_VERILATOR_DIR -./configure -make -j$REMOTE_MAKE_NPROC diff --git a/.github/scripts/remote-run-firesim-scala-tests.sh b/.github/scripts/remote-run-firesim-scala-tests.sh index 1b75d29f..1e91489d 100755 --- a/.github/scripts/remote-run-firesim-scala-tests.sh +++ b/.github/scripts/remote-run-firesim-scala-tests.sh @@ -10,35 +10,10 @@ set -ex SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" source $SCRIPT_DIR/defaults.sh -export RISCV="$REMOTE_RISCV_DIR" -export LD_LIBRARY_PATH="$RISCV/lib" -export PATH="$RISCV/bin:$PATH" - -# Directory locations for handling firesim-local installations of libelf/libdwarf -# This would generally be handled by build-setup.sh/firesim-setup.sh -REMOTE_FIRESIM_SYSROOT=$REMOTE_FIRESIM_DIR/lib-install - cd $REMOTE_CHIPYARD_DIR -./scripts/init-submodules-no-riscv-tools.sh --skip-validate -cd $REMOTE_CHIPYARD_DIR/sims/firesim/sim/firesim-lib/src/main/cc/lib -git submodule update --init elfutils libdwarf -cd $REMOTE_CHIPYARD_DIR/sims/firesim -mkdir -p $REMOTE_FIRESIM_SYSROOT -./scripts/build-libelf.sh $REMOTE_FIRESIM_SYSROOT -./scripts/build-libdwarf.sh $REMOTE_FIRESIM_SYSROOT -cd $REMOTE_CHIPYARD_DIR - -make -C $REMOTE_CHIPYARD_DIR/tools/dromajo/dromajo-src/src - -TOOLS_DIR=$REMOTE_RISCV_DIR - -LD_LIB_DIR=$REMOTE_FIRESIM_SYSROOT/lib:$REMOTE_RISCV_DIR/lib +./scripts/init-submodules-no-riscv-tools.sh --force # Run Firesim Scala Tests -export RISCV=$TOOLS_DIR -export LD_LIBRARY_PATH=$LD_LIB_DIR export FIRESIM_ENV_SOURCED=1; -export PATH=$REMOTE_VERILATOR_DIR/bin:$PATH -export VERILATOR_ROOT=$REMOTE_VERILATOR_DIR export COURSIER_CACHE=$REMOTE_WORK_DIR/.coursier-cache make -C $REMOTE_FIRESIM_DIR JAVA_OPTS="$REMOTE_JAVA_OPTS" SBT_OPTS="$REMOTE_SBT_OPTS" testOnly ${mapping[$1]} diff --git a/.github/scripts/run-tests.sh b/.github/scripts/run-tests.sh index bc344c1a..d97f05dc 100755 --- a/.github/scripts/run-tests.sh +++ b/.github/scripts/run-tests.sh @@ -9,10 +9,6 @@ set -ex SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )" source $SCRIPT_DIR/defaults.sh -export RISCV="$GITHUB_WORKSPACE/riscv-tools-install" -export LD_LIBRARY_PATH="$RISCV/lib" -export PATH="$RISCV/bin:$PATH" - DISABLE_SIM_PREREQ="BREAK_SIM_PREREQ=1" run_bmark () { @@ -52,15 +48,9 @@ case $1 in run_bmark ${mapping[$1]} ;; chipyard-hwacha) - export RISCV=$LOCAL_ESP_DIR - export LD_LIBRARY_PATH=$LOCAL_ESP_DIR/lib - export PATH=$RISCV/bin:$PATH make run-rv64uv-p-asm-tests -j$CI_MAKE_NPROC -C $LOCAL_SIM_DIR $DISABLE_SIM_PREREQ ${mapping[$1]} ;; chipyard-gemmini) - export RISCV=$LOCAL_ESP_DIR - export LD_LIBRARY_PATH=$LOCAL_ESP_DIR/lib - export PATH=$RISCV/bin:$PATH GEMMINI_SOFTWARE_DIR=$LOCAL_SIM_DIR/../../generators/gemmini/software/gemmini-rocc-tests rm -rf $GEMMINI_SOFTWARE_DIR/riscv-tests cd $LOCAL_SIM_DIR @@ -69,9 +59,6 @@ case $1 in make -C $LOCAL_SIM_DIR $DISABLE_SIM_PREREQ ${mapping[$1]} run-binary-fast BINARY=$GEMMINI_SOFTWARE_DIR/build/bareMetalC/mvin_mvout-baremetal ;; chipyard-sha3) - export RISCV=$LOCAL_ESP_DIR - export LD_LIBRARY_PATH=$LOCAL_ESP_DIR/lib - export PATH=$RISCV/bin:$PATH (cd $LOCAL_CHIPYARD_DIR/generators/sha3/software && ./build.sh) make -C $LOCAL_SIM_DIR $DISABLE_SIM_PREREQ ${mapping[$1]} run-binary-fast BINARY=$LOCAL_CHIPYARD_DIR/generators/sha3/software/tests/bare/sha3-rocc.riscv ;; diff --git a/.github/workflows/chipyard-run-tests.yml b/.github/workflows/chipyard-run-tests.yml index d41efd65..02c3ec68 100644 --- a/.github/workflows/chipyard-run-tests.yml +++ b/.github/workflows/chipyard-run-tests.yml @@ -7,13 +7,17 @@ on: - main - '1.[0-9]*.x' +defaults: + run: + shell: bash -leo pipefail {0} + env: - tools-cache-version: v14 - BUILDSERVER: ${{ secrets.BUILDSERVER }} - BUILDUSER: ${{ secrets.BUILDUSER }} - SERVER: ${{ secrets.BUILDUSER }}@${{ secrets.BUILDSERVER }} + tools-cache-version: v17 CI_DIR: ${{ secrets.BUILDDIR }} JVM_OPTS: -Xmx3200m # Customize the JVM maximum heap limit + conda-env-name-no-time: cy-${{ github.run_id }} + workflow-timestamp: ${{ github.event.pull_request.updated_at }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} jobs: cancel-prior-workflows: @@ -36,7 +40,9 @@ jobs: needs-rtl: ${{ steps.filter.outputs.all_count != steps.filter.outputs.skip-rtl_count }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround - uses: dorny/paths-filter@v2 id: filter with: @@ -62,7 +68,7 @@ jobs: if: needs.change-filters.outputs.needs-rtl == 'true' runs-on: ubuntu-latest container: - image: ucbbar/chipyard-ci-image:554b436 + image: ucbbar/chipyard-ci-image:3f9150 options: --entrypoint /bin/bash steps: - name: Delete old checkout @@ -72,9 +78,17 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env + with: + install-collateral: false - name: Check commits of each submodule - run: .github/scripts/check-commit.sh + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + .github/scripts/check-commit.sh tutorial-setup-check: name: tutorial-setup-check @@ -82,7 +96,7 @@ jobs: if: needs.change-filters.outputs.needs-rtl == 'true' runs-on: ubuntu-latest container: - image: ucbbar/chipyard-ci-image:554b436 + image: ucbbar/chipyard-ci-image:3f9150 options: --entrypoint /bin/bash steps: - name: Delete old checkout @@ -92,16 +106,24 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env + with: + install-collateral: false - name: Check that the tutorial-setup patches apply - run: scripts/tutorial-setup.sh + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + scripts/tutorial-setup.sh documentation-check: name: documentation-check needs: change-filters runs-on: ubuntu-latest container: - image: ucbbar/chipyard-ci-image:554b436 + image: ucbbar/chipyard-ci-image:3f9150 options: --entrypoint /bin/bash steps: - name: Delete old checkout @@ -111,44 +133,28 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env + with: + install-collateral: false - name: Check that documentation builds with no warnings/errors run: | - sudo apt-get update -y - sudo apt-get install -y python3-pip - sudo pip3 install -r docs/requirements.txt + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools make -C docs html - name: Show error log from sphinx if failed if: ${{ failure() }} run: cat /tmp/sphinx-err*.log - install-toolchains: - name: install-toolchains - needs: change-filters - if: needs.change-filters.outputs.needs-rtl == 'true' - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash - steps: - - name: Delete old checkout - run: | - ls -alh . - rm -rf ${{ github.workspace }}/* || true - rm -rf ${{ github.workspace }}/.* || true - ls -alh . - - name: Checkout - uses: actions/checkout@v2 - - name: Build RISC-V toolchains - uses: ./.github/actions/toolchain-build - build-extra-tests: name: build-extra-tests - needs: [change-filters, install-toolchains] + needs: [change-filters] if: needs.change-filters.outputs.needs-rtl == 'true' runs-on: ubuntu-latest container: - image: ucbbar/chipyard-ci-image:554b436 + image: ucbbar/chipyard-ci-image:3f9150 options: --entrypoint /bin/bash steps: - name: Delete old checkout @@ -158,24 +164,28 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 - - name: Build RISC-V toolchains - uses: ./.github/actions/toolchain-build + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Generate keys id: genkey run: | - echo "::set-output name=extra-tests-cache-key::extra-tests-${{ github.ref }}-${{ github.sha }}" - - uses: actions/cache@v2 + echo "::set-output name=extra-tests-cache-key::extra-tests-${{ github.sha }}" + - uses: actions/cache@v3 id: build-extra-tools-cache with: path: extra-tests-install key: ${{ steps.genkey.outputs.extra-tests-cache-key }} restore-keys: ${{ steps.genkey.outputs.extra-tests-cache-key }} - name: Build extra tests - run: .github/scripts/build-extra-tests.sh + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + .github/scripts/build-extra-tests.sh - install-verilator-knight: - name: install-verilator-knight + create-conda-env-knight: + name: create-conda-env-knight needs: [change-filters, cancel-prior-workflows] if: needs.change-filters.outputs.needs-rtl == 'true' runs-on: knight @@ -187,12 +197,16 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 - - name: Build verilator on knight CI machine - run: .github/scripts/remote-install-verilator.sh + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Cleanup conda + uses: ./.github/actions/cleanup-conda + - name: Create conda env + uses: ./.github/actions/create-conda-env - install-verilator-ferry: - name: install-verilator-ferry + create-conda-env-ferry: + name: create-conda-env-ferry needs: [change-filters, cancel-prior-workflows] if: needs.change-filters.outputs.needs-rtl == 'true' runs-on: ferry @@ -204,16 +218,20 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 - - name: Build verilator on ferry CI machine - run: .github/scripts/remote-install-verilator.sh + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Cleanup conda + uses: ./.github/actions/cleanup-conda + - name: Create conda env + uses: ./.github/actions/create-conda-env # Sentinel job to simplify how we specify which that basic setup is complete # # When adding new prep jobs, please add them to `needs` below setup-complete: name: setup-complete - needs: [install-toolchains, install-verilator-knight, install-verilator-ferry, build-extra-tests] + needs: [create-conda-env-knight, create-conda-env-ferry, build-extra-tests] runs-on: ubuntu-latest steps: - name: Set up complete @@ -233,7 +251,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Build RTL on self-hosted uses: ./.github/actions/prepare-rtl with: @@ -251,7 +273,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Build RTL on self-hosted uses: ./.github/actions/prepare-rtl with: @@ -269,11 +295,16 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Build RTL on self-hosted uses: ./.github/actions/prepare-rtl with: group-key: "group-accels" + toolchain: "esp-tools" prepare-chipyard-tracegen: name: prepare-chipyard-tracegen @@ -287,7 +318,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Build RTL on self-hosted uses: ./.github/actions/prepare-rtl with: @@ -305,7 +340,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Build RTL on self-hosted uses: ./.github/actions/prepare-rtl with: @@ -323,7 +362,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Build RTL on self-hosted uses: ./.github/actions/prepare-rtl with: @@ -335,10 +378,7 @@ jobs: chipyard-rocket-run-tests: name: chipyard-rocket-run-tests needs: prepare-chipyard-cores - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -347,7 +387,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -357,10 +401,7 @@ jobs: chipyard-hetero-run-tests: name: chipyard-hetero-run-tests needs: prepare-chipyard-cores - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -369,7 +410,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -379,10 +424,7 @@ jobs: chipyard-boom-run-tests: name: chipyard-boom-run-tests needs: prepare-chipyard-cores - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -391,7 +433,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -401,10 +447,7 @@ jobs: chipyard-cva6-run-tests: name: chipyard-cva6-run-tests needs: prepare-chipyard-cores - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -413,7 +456,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -423,10 +470,7 @@ jobs: chipyard-ibex-run-tests: name: chipyard-ibex-run-tests needs: prepare-chipyard-cores - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -435,7 +479,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -445,10 +493,7 @@ jobs: chipyard-sodor-run-tests: name: chipyard-sodor-run-tests needs: prepare-chipyard-cores - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -457,7 +502,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -467,10 +516,7 @@ jobs: chipyard-fftgenerator-run-tests: name: chipyard-fftgenerator-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -479,7 +525,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -489,10 +539,7 @@ jobs: chipyard-dmirocket-run-tests: name: chipyard-dmirocket-run-tests needs: prepare-chipyard-peripherals - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -501,7 +548,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -511,10 +562,7 @@ jobs: chipyard-spiflashwrite-run-tests: name: chipyard-spiflashwrite-run-tests needs: prepare-chipyard-peripherals - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -523,7 +571,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -533,10 +585,7 @@ jobs: chipyard-spiflashread-run-tests: name: chipyard-spiflashread-run-tests needs: prepare-chipyard-peripherals - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -545,7 +594,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -555,10 +608,7 @@ jobs: chipyard-lbwif-run-tests: name: chipyard-lbwif-run-tests needs: prepare-chipyard-peripherals - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -567,7 +617,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -577,10 +631,7 @@ jobs: chipyard-sha3-run-tests: name: chipyard-sha3-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -589,20 +640,22 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: group-key: "group-accels" project-key: "chipyard-sha3" + toolchain: "esp-tools" chipyard-streaming-fir-run-tests: name: chipyard-streaming-fir-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -611,7 +664,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -621,10 +678,7 @@ jobs: chipyard-streaming-passthrough-run-tests: name: chipyard-streaming-passthrough-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -633,7 +687,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -643,10 +701,7 @@ jobs: chipyard-hwacha-run-tests: name: chipyard-hwacha-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -655,20 +710,22 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: group-key: "group-accels" project-key: "chipyard-hwacha" + toolchain: "esp-tools" chipyard-gemmini-run-tests: name: chipyard-gemmini-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -677,20 +734,22 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: group-key: "group-accels" project-key: "chipyard-gemmini" + toolchain: "esp-tools" chipyard-nvdla-run-tests: name: chipyard-nvdla-run-tests needs: prepare-chipyard-accels - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -699,7 +758,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -709,10 +772,7 @@ jobs: tracegen-boom-run-tests: name: tracegen-boom-run-tests needs: prepare-chipyard-tracegen - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -721,7 +781,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -731,10 +795,7 @@ jobs: tracegen-run-tests: name: tracegen-run-tests needs: prepare-chipyard-tracegen - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -743,7 +804,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -753,10 +818,7 @@ jobs: icenet-run-tests: name: icenet-run-tests needs: prepare-chipyard-other - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -765,7 +827,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: @@ -775,10 +841,7 @@ jobs: testchipip-run-tests: name: testchipip-run-tests needs: prepare-chipyard-other - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:554b436 - options: --entrypoint /bin/bash + runs-on: self-hosted steps: - name: Delete old checkout run: | @@ -787,33 +850,40 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests uses: ./.github/actions/run-tests with: group-key: "group-other" project-key: "testchipip" -# TODO: Determine why elfutils is failing here -# firesim-run-tests: -# name: firesim-run-tests -# needs: setup-complete -# runs-on: self-hosted -# steps: -# - name: Delete old checkout -# run: | -# ls -alh . -# rm -rf ${{ github.workspace }}/* || true -# rm -rf ${{ github.workspace }}/.* || true -# ls -alh . -# - name: Checkout -# uses: actions/checkout@v2 -# - name: Run tests on self-hosted -# uses: ./.github/actions/run-tests -# with: -# group-key: "extra-tests" -# project-key: "firesim" -# run-script: "remote-run-firesim-scala-tests.sh" + firesim-run-tests: + name: firesim-run-tests + needs: setup-complete + runs-on: self-hosted + steps: + - name: Delete old checkout + run: | + ls -alh . + rm -rf ${{ github.workspace }}/* || true + rm -rf ${{ github.workspace }}/.* || true + ls -alh . + - name: Checkout + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env + - name: Run tests on self-hosted + uses: ./.github/actions/run-tests + with: + group-key: "extra-tests" + project-key: "firesim" + run-script: "remote-run-firesim-scala-tests.sh" fireboom-run-tests: name: fireboom-run-tests @@ -827,7 +897,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests on self-hosted uses: ./.github/actions/run-tests with: @@ -847,7 +921,11 @@ jobs: rm -rf ${{ github.workspace }}/.* || true ls -alh . - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env - name: Run tests on self-hosted uses: ./.github/actions/run-tests with: diff --git a/.gitignore b/.gitignore index 257d2c58..17a1339a 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ tags env-riscv-tools.sh env-esp-tools.sh .bsp/ +.conda-env/ diff --git a/.gitmodules b/.gitmodules index cb7319f3..8360ba50 100644 --- a/.gitmodules +++ b/.gitmodules @@ -28,40 +28,6 @@ [submodule "generators/block-inclusivecache-sifive"] path = generators/sifive-cache url = https://github.com/chipsalliance/rocket-chip-inclusive-cache.git -[submodule "toolchains/riscv-tools/riscv-gnu-toolchain"] - path = toolchains/riscv-tools/riscv-gnu-toolchain - url = https://github.com/riscv/riscv-gnu-toolchain.git -[submodule "toolchains/riscv-tools/riscv-gnu-toolchain-prebuilt"] - path = toolchains/riscv-tools/riscv-gnu-toolchain-prebuilt - url = https://github.com/ucb-bar/chipyard-toolchain-prebuilt.git - shallow = true -[submodule "toolchains/riscv-tools/riscv-isa-sim"] - path = toolchains/riscv-tools/riscv-isa-sim - url = https://github.com/riscv/riscv-isa-sim.git -[submodule "toolchains/riscv-tools/riscv-pk"] - path = toolchains/riscv-tools/riscv-pk - url = https://github.com/riscv/riscv-pk.git -[submodule "toolchains/riscv-tools/riscv-tests"] - path = toolchains/riscv-tools/riscv-tests - url = https://github.com/riscv/riscv-tests.git -[submodule "toolchains/riscv-tools/riscv-openocd"] - path = toolchains/riscv-tools/riscv-openocd - url = https://github.com/riscv/riscv-openocd.git -[submodule "toolchains/esp-tools/riscv-gnu-toolchain"] - path = toolchains/esp-tools/riscv-gnu-toolchain - url = https://github.com/ucb-bar/esp-gnu-toolchain.git -[submodule "toolchains/esp-tools/riscv-isa-sim"] - path = toolchains/esp-tools/riscv-isa-sim - url = https://github.com/ucb-bar/esp-isa-sim.git -[submodule "toolchains/esp-tools/riscv-pk"] - path = toolchains/esp-tools/riscv-pk - url = https://github.com/riscv/riscv-pk.git -[submodule "toolchains/esp-tools/riscv-tests"] - path = toolchains/esp-tools/riscv-tests - url = https://github.com/ucb-bar/esp-tests.git -[submodule "toolchains/libgloss"] - path = toolchains/libgloss - url = https://github.com/ucb-bar/libgloss-htif.git [submodule "vlsi/hammer"] path = vlsi/hammer url = https://github.com/ucb-bar/hammer.git @@ -83,9 +49,6 @@ [submodule "vlsi/hammer-mentor-plugins"] path = vlsi/hammer-mentor-plugins url = https://github.com/ucb-bar/hammer-mentor-plugins.git -[submodule "toolchains/qemu"] - path = toolchains/qemu - url = https://github.com/qemu/qemu.git [submodule "tools/axe"] path = tools/axe url = https://github.com/CTSRD-CHERI/axe.git @@ -134,3 +97,33 @@ [submodule "generators/fft-generator"] path = generators/fft-generator url = https://github.com/ucb-bar/FFTGenerator.git +[submodule "toolchains/riscv-tools/riscv-tests"] + path = toolchains/riscv-tools/riscv-tests + url = https://github.com/riscv-software-src/riscv-tests.git +[submodule "toolchains/riscv-tools/riscv-pk"] + path = toolchains/riscv-tools/riscv-pk + url = https://github.com/riscv-software-src/riscv-pk.git +[submodule "toolchains/riscv-tools/riscv-openocd"] + path = toolchains/riscv-tools/riscv-openocd + url = https://github.com/riscv/riscv-openocd.git +[submodule "toolchains/riscv-tools/riscv-isa-sim"] + path = toolchains/riscv-tools/riscv-isa-sim + url = https://github.com/riscv-software-src/riscv-isa-sim.git +[submodule "toolchains/riscv-tools/riscv-tools-feedstock"] + path = toolchains/riscv-tools/riscv-tools-feedstock + url = https://github.com/ucb-bar/riscv-tools-feedstock.git +[submodule "toolchains/esp-tools/esp-tools-feedstock"] + path = toolchains/esp-tools/esp-tools-feedstock + url = https://github.com/ucb-bar/esp-tools-feedstock.git +[submodule "toolchains/esp-tools/riscv-isa-sim"] + path = toolchains/esp-tools/riscv-isa-sim + url = https://github.com/ucb-bar/esp-isa-sim.git +[submodule "toolchains/esp-tools/riscv-pk"] + path = toolchains/esp-tools/riscv-pk + url = https://github.com/riscv-software-src/riscv-pk.git +[submodule "toolchains/esp-tools/riscv-tests"] + path = toolchains/esp-tools/riscv-tests + url = https://github.com/ucb-bar/esp-tests.git +[submodule "toolchains/libgloss"] + path = toolchains/libgloss + url = https://github.com/ucb-bar/libgloss-htif.git diff --git a/.readthedocs.yml b/.readthedocs.yml index 4c894485..4414aeae 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -3,13 +3,12 @@ version: 2 build: os: ubuntu-20.04 tools: - python: "3.6" + python: "mambaforge-4.10" formats: all sphinx: configuration: docs/conf.py -python: - install: - - requirements: docs/requirements.txt +conda: + environment: conda-requirements-riscv-tools.yaml diff --git a/build-setup.sh b/build-setup.sh new file mode 100755 index 00000000..d6969846 --- /dev/null +++ b/build-setup.sh @@ -0,0 +1,98 @@ +#!/usr/bin/env bash + +# exit script if any command fails +set -e +set -o pipefail + +RDIR=$(git rev-parse --show-toplevel) + +# get helpful utilities +source $RDIR/scripts/utils.sh + +common_setup + +usage() { + echo "Usage: ${0} [OPTIONS] [riscv-tools | esp-tools]" + echo "" + echo "Helper script to initialize repository that wraps other scripts." + echo "Sets up conda environment, initializes submodules, and installs toolchain collateral." + echo "" + echo "Installation Types" + echo " riscv-tools: if set, builds the riscv toolchain (this is also the default)" + echo " esp-tools: if set, builds esp-tools toolchain used for the hwacha vector accelerator" + echo "" + echo "Options" + echo " --help -h : Display this message" + echo " --unpinned-deps -ud : Use unpinned conda environment" + echo " --force -f : Skip prompt checking for tagged release/conda" + echo " --skip-validate : DEPRECATED: Same functionality as --force" + echo " --skip-conda : Skip conda env creation" + echo " --skip-toolchain-extra : Skip building extra RISC-V toolchain collateral (Spike, PK, tests, libgloos)" + exit "$1" +} + +TOOLCHAIN="riscv-tools" +USE_PINNED_DEPS=true +FORCE_FLAG="" +SKIP_CONDA=false +SKIP_TOOLCHAIN=false + +# getopts does not support long options, and is inflexible +while [ "$1" != "" ]; +do + case $1 in + -h | --help ) + usage 3 ;; + riscv-tools | esp-tools) + TOOLCHAIN=$1 ;; + -ud | --unpinned-deps ) + USE_PINNED_DEPS=false ;; + --force | -f | --skip-validate) + FORCE_FLAG=$1 ;; + --skip-conda) + SKIP_CONDA=true ;; + --skip-toolchain-extra) + SKIP_TOOLCHAIN=true ;; + * ) + error "invalid option $1" + usage 1 ;; + esac + shift +done + +if [ "$SKIP_CONDA" = false ]; then + # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 + LOCKFILE=$RDIR/conda-requirements-$TOOLCHAIN-linux-64.conda-lock.yml + YAMLFILE=$RDIR/conda-requirements-$TOOLCHAIN.yaml + + if [ "$USE_PINNED_DEPS" = false ]; then + # auto-gen the lockfile + conda-lock -f $YAMLFILE -p linux-64 --lockfile $LOCKFILE + fi + + # use conda-lock to create env + conda-lock install -p $RDIR/.conda-env $LOCKFILE + + source $RDIR/.conda-env/etc/profile.d/conda.sh + conda activate $RDIR/.conda-env +fi + +if [ -z "$FORCE_FLAG" ]; then + if [ -z ${CONDA_DEFAULT_ENV+x} ]; then + error "ERROR: No conda environment detected. Did you activate the conda environment (e.x. 'conda activate base')?" + exit 1 + fi +fi + +$RDIR/scripts/init-submodules-no-riscv-tools.sh $FORCE_FLAG + +if [ "$SKIP_TOOLCHAIN" = false ]; then + $RDIR/scripts/build-toolchain-extra.sh $FORCE_FLAG $TOOLCHAIN +fi + +$RDIR/scripts/gen-tags.sh + +cat << EOT >> env.sh +# line auto-generated by $0 +conda activate $RDIR/.conda-env +EOT diff --git a/build.sbt b/build.sbt index 5e559893..802dabf6 100644 --- a/build.sbt +++ b/build.sbt @@ -60,7 +60,7 @@ def isolateAllTests(tests: Seq[TestDefinition]) = tests map { test => new Group(test.name, Seq(test), SubProcess(options)) } toSeq -val chiselVersion = "3.5.1" +val chiselVersion = "3.5.2" lazy val chiselSettings = Seq( libraryDependencies ++= Seq("edu.berkeley.cs" %% "chisel3" % chiselVersion, diff --git a/conda-requirements-esp-tools-linux-64.conda-lock.yml b/conda-requirements-esp-tools-linux-64.conda-lock.yml new file mode 100644 index 00000000..bdf6ecce --- /dev/null +++ b/conda-requirements-esp-tools-linux-64.conda-lock.yml @@ -0,0 +1,5027 @@ +# This lock file was generated by conda-lock (https://github.com/conda-incubator/conda-lock). DO NOT EDIT! +# +# A "lock file" contains a concrete list of package versions (with checksums) to be installed. Unlike +# e.g. `conda env create`, the resulting environment will not change as new package versions become +# available, unless you explicitly update the lock file. +# +# Install this environment as "YOURENV" with: +# conda-lock install -n YOURENV --file conda-requirements-esp-tools-linux-64.conda-lock.yml +# To update a single package to the latest version compatible with the version constraints in the source: +# conda-lock lock --lockfile conda-requirements-esp-tools-linux-64.conda-lock.yml --update PACKAGE +# To re-solve the entire environment, e.g. after changing a version constraint in the source file: +# conda-lock -f /scratch/buildbot/firesim/target-design/chipyard/conda-requirements-esp-tools.yaml --lockfile conda-requirements-esp-tools-linux-64.conda-lock.yml +metadata: + channels: + - url: ucb-bar + used_env_vars: [] + - url: conda-forge + used_env_vars: [] + - url: nodefaults + used_env_vars: [] + content_hash: + linux-64: 5075908599b7f10581bbf1452b4be082245ad6ac58a589e4d111d2ecd0f96b42 + platforms: + - linux-64 + sources: + - /scratch/buildbot/firesim/target-design/chipyard/conda-requirements-esp-tools.yaml +package: +- category: main + dependencies: {} + hash: + md5: d7c89558ba9fa0495403155b64376d81 + sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 + manager: conda + name: _libgcc_mutex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 + version: '0.1' +- category: main + dependencies: {} + hash: + md5: a581b4a89191b6c1d6a16488a9cffbfc + sha256: 695e67ae4bc22f9e0be5f54b1948a8f2b678f4da920fa2082a249dd5a88f440e + manager: conda + name: _sysroot_linux-64_curr_repodata_hack + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/_sysroot_linux-64_curr_repodata_hack-3-h5bd9786_13.tar.bz2 + version: '3' +- category: main + dependencies: {} + hash: + md5: ce8d1b98cc96642f2d2e5da1873de2e6 + sha256: fc08379d634e7806485be606ead3265385949054959940c8ecb88a67c26ace42 + manager: conda + name: bash-completion + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bash-completion-2.11-0.tar.bz2 + version: '2.11' +- category: main + dependencies: {} + hash: + md5: 87c986dab320658abaf3e701406b665c + sha256: 26a1a2d9e63440ec3b2a59297d47f7d5b405a3caab61bf93648e1621a46bb05a + manager: conda + name: ca-certificates + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2022.9.14-ha878542_0.tar.bz2 + version: 2022.9.14 +- category: main + dependencies: {} + hash: + md5: 2adf191e11723cd8156dcaa421419d1e + sha256: e52fb8cf5bc5eb80c69f2239a08868ddd6fa26fdf67a1a0312970308f698fc96 + manager: conda + name: conda-standalone + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-standalone-4.12.0-ha770c72_0.tar.bz2 + version: 4.12.0 +- category: main + dependencies: {} + hash: + md5: 0c96522c6bdaed4b1566d11387caaf45 + sha256: 58d7f40d2940dd0a8aa28651239adbf5613254df0f75789919c4e6762054403b + manager: conda + name: font-ttf-dejavu-sans-mono + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + version: '2.37' +- category: main + dependencies: {} + hash: + md5: 34893075a5c9e55cdafac56607368fc6 + sha256: c52a29fdac682c20d252facc50f01e7c2e7ceac52aa9817aaf0bb83f7559ec5c + manager: conda + name: font-ttf-inconsolata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + version: '3.000' +- category: main + dependencies: {} + hash: + md5: 4d59c254e01d9cde7957100457e2d5fb + sha256: 00925c8c055a2275614b4d983e1df637245e19058d79fc7dd1a93b8d9fb4b139 + manager: conda + name: font-ttf-source-code-pro + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + version: '2.038' +- category: main + dependencies: {} + hash: + md5: 19410c3df09dfb12d1206132a1d357c5 + sha256: 470d5db54102bd51dbb0c5990324a2f4a0bc976faa493b22193338adb9882e2e + manager: conda + name: font-ttf-ubuntu + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-hab24e00_0.tar.bz2 + version: '0.83' +- category: main + dependencies: {} + hash: + md5: bd4f2e711b39af170e7ff15163fe87ee + sha256: ad7985a9ff622880cf87c42db1ffe2dfb040d8175c1bb352fc8f3705c7e0962f + manager: conda + name: ld_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.36.1-hea4e1c9_2.tar.bz2 + version: 2.36.1 +- category: main + dependencies: {} + hash: + md5: 0e6ab30ea5307e18bff4689958b51b83 + sha256: 9875a188edb25e996eb2ef5d2664d995ddb166a868d3377851a8f33d6c63297d + manager: conda + name: libgcc-devel_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-devel_linux-64-12.1.0-h1ec3361_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: b02605b875559ff99f04351fd5040760 + sha256: 4d20cbd5dbe47e0dacd298d5cc0745ae19dcd5cd7cfaf937387adc876ee481c7 + manager: conda + name: libgfortran5 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-12.1.0-hdcd56e2_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: db535a3c3b757e1d34e6b031a111f029 + sha256: 3588334fa16d57452dc83527dd4490821a39f1a049565d4390d774635559f4fc + manager: conda + name: libstdcxx-devel_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-devel_linux-64-12.1.0-h1ec3361_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: 6f5ba041a41eb102a1027d9e68731be7 + sha256: c2483256b324253599bdbe6ddb4a04f7a154259473e626aacbfdee7686a994d2 + manager: conda + name: libstdcxx-ng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-12.1.0-ha89aaad_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: a56386ad31a7322940dd7d03fb3a9979 + sha256: 8a6a7c6217c79f1afaf0fea71463a5577e2a165a743a04afd45b200d344d6de9 + manager: conda + name: tzdata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tzdata-2022c-h191b570_0.tar.bz2 + version: 2022c +- category: main + dependencies: + font-ttf-dejavu-sans-mono: '' + font-ttf-inconsolata: '' + font-ttf-source-code-pro: '' + font-ttf-ubuntu: '' + hash: + md5: f766549260d6815b0c52253f1fb1bb29 + sha256: 53f23a3319466053818540bcdf2091f253cbdbab1e0e9ae7b9e509dcaa2a5e38 + manager: conda + name: fonts-conda-forge + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + version: '1' +- category: main + dependencies: + _sysroot_linux-64_curr_repodata_hack: 3.* + hash: + md5: 523bc836a954faf0cca94831971bb85a + sha256: 67a3caa56e2a59f407f3d290437b865aaf996873006e2fcfca6295d0f0be8db9 + manager: conda + name: kernel-headers_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-3.10.0-h4a8ded7_13.tar.bz2 + version: 3.10.0 +- category: main + dependencies: + libgfortran5: 12.1.0 hdcd56e2_16 + hash: + md5: 6bf15e29a20f614b18ae89368260d0a2 + sha256: 8b9ebde578c74c9e2d93cbe6940a09ee4d0ca4080a0f385bdcd10be536f07abb + manager: conda + name: libgfortran-ng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-12.1.0-h69a702a_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + _libgcc_mutex: 0.1 conda_forge + hash: + md5: f013cf7749536ce43d82afbffdf499ab + sha256: 499fab15d3897a7bf7a1d82dd44c76dad1ceeaec0b71e348e77fb8a753ff898d + manager: conda + name: libgomp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-12.1.0-h8d9b700_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + _libgcc_mutex: 0.1 conda_forge + libgomp: '>=7.5.0' + hash: + md5: 73aaf86a425cc6e73fcf236a5a46396d + sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 + manager: conda + name: _openmp_mutex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + version: '4.5' +- category: main + dependencies: + fonts-conda-forge: '' + hash: + md5: fee5683a3f04bd15cbd8318b096a27ab + sha256: a997f2f1921bb9c9d76e6fa2f6b408b7fa549edd349a77639c9fe7a23ea93e61 + manager: conda + name: fonts-conda-ecosystem + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + version: '1' +- category: main + dependencies: + _sysroot_linux-64_curr_repodata_hack: 3.* + kernel-headers_linux-64: 3.10.0 h4a8ded7_13 + hash: + md5: 57e5a5191ffe999b9f4dfdbcd0ddcba4 + sha256: f09f2fea4b571dcd225f1e35bd3c851e809cd4c2f5f151438133969ab28478e5 + manager: conda + name: sysroot_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.17-h4a8ded7_13.tar.bz2 + version: '2.17' +- category: main + dependencies: + ld_impl_linux-64: 2.36.1 hea4e1c9_2 + sysroot_linux-64: '' + hash: + md5: 32aae4265554a47ea77f7c09f86aeb3b + sha256: 7cdcbb78f3b521efbcbd72424fb56a4e030001cccf2a6bca800aef4b9a5ed93a + manager: conda + name: binutils_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.36.1-h193b22a_2.tar.bz2 + version: 2.36.1 +- category: main + dependencies: + _libgcc_mutex: 0.1 conda_forge + _openmp_mutex: '>=4.5' + hash: + md5: 4f05bc9844f7c101e6e147dab3c88d5c + sha256: 2fde3d9f0199bf4f5447b35d3fd74d058c17ef2b6c68815eb1b469f2aec138b9 + manager: conda + name: libgcc-ng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-12.1.0-h8d9b700_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 4a826cd983be6c8fff07a64b6d2079e7 + sha256: b2ea5be6ca4f16d62c7de3df62155b106f2009d9c317db187c47267abc1cb03d + manager: conda + name: alsa-lib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.7.2-h166bdaf_0.tar.bz2 + version: 1.2.7.2 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 9ff50d162aa3b1c861fa30105bea1932 + sha256: c5e04d9408a0047bd87156b1853a4ac31cb3a5ccdc52374d89c72cbdabe95002 + manager: conda + name: bc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bc-1.07.1-h7f98852_0.tar.bz2 + version: 1.07.1 +- category: main + dependencies: + binutils_impl_linux-64: '>=2.36.1,<2.36.2.0a0' + hash: + md5: 3111f86041b5b6863545ca49130cca95 + sha256: 17ae32b02c9cfb4c01ddcbe733d8bc432bd5003447cca9eb1727dd13c8fa940e + manager: conda + name: binutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.36.1-hdd6e379_2.tar.bz2 + version: 2.36.1 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: a1fd65c7ccbf10880423d82bca54eb54 + sha256: cb521319804640ff2ad6a9f118d972ed76d86bea44e5626c09a13d38f562e1fa + manager: conda + name: bzip2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h7f98852_4.tar.bz2 + version: 1.0.8 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: f26ef8098fab1f719c91eb760d63381a + sha256: ee735e60d2cf68e5635df17847e97b505a752985d10581d2438203e7c0f44c15 + manager: conda + name: c-ares + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.18.1-h7f98852_0.tar.bz2 + version: 1.18.1 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: b0929effe5b852ce3e7b2a78c2c35376 + sha256: 164bd59917902450fcc5e4ca6f12f190e08e0c39c31f20c8330b0dba865ddc5a + manager: conda + name: coreutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/coreutils-9.1-h166bdaf_0.tar.bz2 + version: '9.1' +- category: main + dependencies: + libgcc-ng: '>=7.3.0' + hash: + md5: 5fe0e54a3a78750306fefc0a25f81f79 + sha256: 56ab3b9e2c7c59045370c1258399764c13c0d1a346a07817b29b316085785477 + manager: conda + name: ctags + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ctags-5.8-h14c3975_1000.tar.bz2 + version: '5.8' +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + hash: + md5: 6bfb79319763a11c7423c9d0e0ee00b7 + sha256: null + manager: conda + name: dromajo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/dromajo-1.0.0-0_h1234567_g6a6e34e.tar.bz2 + version: 1.0.0 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 40e0c155eafefec2a63d1df0de0f5cdc + sha256: 1c0b56f8c25dab0a2d4db25f0209f1fe9b83539a649dd821b97c4bfbbc12c3f7 + manager: conda + name: e2fsprogs-libs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/e2fsprogs-libs-1.46.2-h166bdaf_0.tar.bz2 + version: 1.46.2 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + hash: + md5: e1b07832504eeba765d648389cc387a9 + sha256: 0db0e8690f8f7f4543d81e612947962b61518c61036bf7bdb53146f64dfca852 + manager: conda + name: expat + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/expat-2.4.8-h27087fc_0.tar.bz2 + version: 2.4.8 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: ac7bc6a654f8f41b352b38f4051135f8 + sha256: 5d7b6c0ee7743ba41399e9e05a58ccc1cfc903942e49ff6f677f6e423ea7a627 + manager: conda + name: fribidi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/fribidi-1.0.10-h36c2ea0_0.tar.bz2 + version: 1.0.10 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libstdcxx-ng: '>=9.4.0' + hash: + md5: 7c7b1ddd00735382cdcfa3b06002196e + sha256: 5162bc8b4342678e44b54eff4bc72e541b4078d80466b715238d3745ac83b9ed + manager: conda + name: gengetopt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gengetopt-2.23-h9c3ff4c_0.tar.bz2 + version: '2.23' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 626e68ae9cc5912d6adb79d318cf962d + sha256: 6ecacdbdf5cd9d2b46211b15a2f7db428ea5edd0cae9be89ccd837fc7b35643f + manager: conda + name: giflib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h36c2ea0_2.tar.bz2 + version: 5.2.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + hash: + md5: b94cf2db16066b242ebd26db2facbd56 + sha256: 07a5319e1ac54fe5d38f50c60f7485af7f830b036da56957d0bfb7558a886198 + manager: conda + name: gmp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.2.1-h58526e2_0.tar.bz2 + version: 6.2.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + hash: + md5: 8c54672728e8ec6aa6db90cf2806d220 + sha256: 65da967f3101b737b08222de6a6a14e20e480e7d523a5d1e19ace7b960b5d6b1 + manager: conda + name: graphite2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 + version: 1.3.13 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 30bd3316aac2d72f498a04b2a49c1050 + sha256: 9a233d5f734f2a4bed786041a9823b69dad5b6757d84341e9f5c822ec89f083b + manager: conda + name: gzip + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gzip-1.12-h166bdaf_0.tar.bz2 + version: '1.12' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + hash: + md5: 87473a15119779e021c314249d4b4aed + sha256: 1d7950f3be4637ab915d886304e57731d39a41ab705ffc95c4681655c459374a + manager: conda + name: icu + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/icu-70.1-h27087fc_0.tar.bz2 + version: '70.1' +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: ee8b844357a0946870901c7c6f418268 + sha256: 0110ee167e8fe386f9019f98757e299a0c42dc6ccdcce161c9bb552b79e459a3 + manager: conda + name: jpeg + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/jpeg-9e-h166bdaf_2.tar.bz2 + version: 9e +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 30186d27e2c9fa62b45fb1476b7200e3 + sha256: 150c05a6e538610ca7c43beb3a40d65c90537497a4f6a5f4d15ec0451b6f5ebb + manager: conda + name: keyutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 + version: 1.6.1 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + hash: + md5: 76bbff344f0134279f225174e9064c8f + sha256: cb55f36dcd898203927133280ae1dc643368af041a48bcf7c026acb7c47b0c12 + manager: conda + name: lerc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 + version: 4.0.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: fc84a0446e4e4fb882e78d786cfb9734 + sha256: 6f7cbc9347964e7f9697bde98a8fb68e0ed926888b3116474b1224eaa92209dc + manager: conda + name: libdeflate + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.14-h166bdaf_0.tar.bz2 + version: '1.14' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 6f8720dff19e17ce5d48cfe7f3d2f0a3 + sha256: 8c9635aa0ea28922877dc96358f9547f6a55fc7e2eb75a556b05f1725496baf9 + manager: conda + name: libev + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-h516909a_1.tar.bz2 + version: '4.33' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 6b0f2dd6a16b984110e8b6eed67b569b + sha256: 17110a07bc1bd3ea546840efb55d17ae2f80cd3dd0af882918cf7fa1c6bc0247 + manager: conda + name: libfdt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libfdt-1.6.1-h166bdaf_1.tar.bz2 + version: 1.6.1 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: d645c6d2ac96843a2bfaccd2d62b3ac3 + sha256: ab6e9856c21709b7b517e940ae7028ae0737546122f83c2aa5d692860c3b149e + manager: conda + name: libffi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 + version: 3.4.2 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 5c0f338a513a2943c659ae619fca9211 + sha256: 1ba9d434e982536abbbcd63505276270cb3a62844a0f1b6e52962e70be078abe + manager: conda + name: libiconv + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.16-h516909a_0.tar.bz2 + version: '1.16' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 39b1328babf85c7c3a61636d9cd50206 + sha256: 32f4fb94d99946b0dabfbbfd442b25852baf909637f2eed1ffe3baea15d02aad + manager: conda + name: libnsl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.0-h7f98852_0.tar.bz2 + version: 2.0.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libgfortran-ng: '' + libgfortran5: '>=10.4.0' + hash: + md5: 8c5963a49b6035c40646a763293fbb35 + sha256: 018372af663987265cb3ca8f37ac8c22b5f39219f65a0c162b056a30af11bba0 + manager: conda + name: libopenblas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.21-pthreads_h78a6416_3.tar.bz2 + version: 0.3.21 +- category: main + dependencies: + libgcc-ng: '>=12.1.0' + hash: + md5: 72d63459c86185f8f636772f28d6eb35 + sha256: 8030597934a3008b962340184af5d45605c1fb313443cc3a4a2b6b45b8dea162 + manager: conda + name: libsanitizer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-12.1.0-ha89aaad_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 93840744a8552e9ebf6bb1a5dffc125a + sha256: 5bfeada0e1c6ec2574afe2d17cdbc39994d693a41431338a6cb9dfa7c4d7bfc8 + manager: conda + name: libtasn1 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtasn1-4.19.0-h166bdaf_0.tar.bz2 + version: 4.19.0 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 16e143a1ed4b4fd169536373957f6fee + sha256: eadbb80c922dce355c0f8f7fc560f20f61263245799d076a1d5251d147d0d250 + manager: conda + name: libtool + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtool-2.4.6-h9c3ff4c_1008.tar.bz2 + version: 2.4.6 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 7245a044b4a1980ed83196176b78b73a + sha256: e88c45505921db29c08df3439ddb7f771bbff35f95e7d3103bf365d5d6ce2a6d + manager: conda + name: libunistring + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libunistring-0.9.10-h7f98852_0.tar.bz2 + version: 0.9.10 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 772d69f030955d9646d3d0eaf21d859d + sha256: 54f118845498353c936826f8da79b5377d23032bcac8c4a02de2019e26c3f6b3 + manager: conda + name: libuuid + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.32.1-h7f98852_1000.tar.bz2 + version: 2.32.1 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: e5cb4fe581a18ca2185a016eb848fc00 + sha256: dc14922a6d5cf7fde55c0aa8f6661d6871c6a2e94369e7455a8a5927c3065080 + manager: conda + name: libuv + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.44.2-h166bdaf_0.tar.bz2 + version: 1.44.2 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: ac2ccf7323d21f2994e4d1f5da664f37 + sha256: 221f2e138dd264b7394b88f08884d93825d38800a51415059e813c02467abfd1 + manager: conda + name: libwebp-base + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.2.4-h166bdaf_0.tar.bz2 + version: 1.2.4 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 29b2d63b0e21b765da0418bc452538c9 + sha256: 864e4de308644dc5f5b88da185bb65e4e437ffe56299bffec9eba496c04758f3 + manager: conda + name: libzlib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.12-h166bdaf_3.tar.bz2 + version: 1.2.12 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: fbe97e8fa6f275d7c76a09e795adc3e6 + sha256: 56313fe4e602319682d4ea05c0ed3c5c45fc79884a5896f2cb7436b15d6987f9 + manager: conda + name: lz4-c + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.3-h9c3ff4c_1.tar.bz2 + version: 1.9.3 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: bb14fcb13341b81d5eb386423b9d2bac + sha256: 25d16e6aaa3d0b450e61d0c4fadd7c9fd17f16e2fef09b34507209342d63c9f6 + manager: conda + name: lzo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 + version: '2.10' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 4abb931c0d08a41583fc637c663e45e2 + sha256: b8e37b92caab5a64a9e344f3d497b9d3e215d1e6211f6dc7c51b70799aab1da1 + manager: conda + name: m4 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/m4-1.4.18-h516909a_1001.tar.bz2 + version: 1.4.18 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 4049ebfd3190b580dffe76daed26155a + sha256: 4a5fe7c80bb0de0015328e2d3fc8db1736f528cb1fd53cd0d5527e24269a4f7c + manager: conda + name: make + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/make-4.3-hd18ef5c_1.tar.bz2 + version: '4.3' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 4acfc691e64342b9dae57cf2adc63238 + sha256: b801e8cf4b2c9a30bce5616746c6c2a4e36427f045b46d9fc08a4ed40a9f7065 + manager: conda + name: ncurses + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.3-h27087fc_1.tar.bz2 + version: '6.3' +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 3cb2c7df59990bd37c2ce27fd906de68 + sha256: 49c569a69608eee784e815179a70c6ae4d088dac42b7df999044f68058d593bb + manager: conda + name: nettle + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/nettle-3.8.1-hc379101_1.tar.bz2 + version: 3.8.1 +- category: main + dependencies: + ca-certificates: '' + libgcc-ng: '>=12' + hash: + md5: 07acc367c7fc8b716770cd5b36d31717 + sha256: 13ba391de59386eff710a9e40cd7a3c53ef8dab6c7818dd4eaaf0401029ddd1b + manager: conda + name: openssl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-1.1.1q-h166bdaf_0.tar.bz2 + version: 1.1.1q +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 4c1bbbec45149a186b915c67d086ed3b + sha256: fc30d1b643c35d82abd294cde6b34f7b9e952856c0386f4f069c3a2b7feb28dd + manager: conda + name: patch + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/patch-2.7.6-h7f98852_1002.tar.bz2 + version: 2.7.6 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: c05d1820a6d34ff07aaaab7a9b7eddaa + sha256: 8f35c244b1631a4f31fb1d66ab6e1d9bfac0ca9b679deced1112c7225b3ad138 + manager: conda + name: pcre + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pcre-8.45-h9c3ff4c_0.tar.bz2 + version: '8.45' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 660e72c82f2e75a6b3fe6a6e75c79f19 + sha256: 6a0630fff84b5a683af6185a6c67adc8bdfa2043047fcb251add0d352ef60e79 + manager: conda + name: pixman + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.40.0-h36c2ea0_0.tar.bz2 + version: 0.40.0 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 22dad4df6e8630e8dff2428f6f6a7036 + sha256: 67c84822f87b641d89df09758da498b2d4558d47b920fd1d3fe6d3a871e000ff + manager: conda + name: pthread-stubs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 + version: '0.4' +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 0bcb0ab6faa796a22b40de3a41e3b2de + sha256: 3f7e1e46d0967f8d08026116aa84fda07bc93d11d44dc3c03a29ad9d3ffc63cc + manager: conda + name: rhash + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-h166bdaf_0.tar.bz2 + version: 1.4.3 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 7362f0042e95681f5d371c46c83ebd08 + sha256: 7c1f391789f3928ef688a348be998e31b8aa3cfb58a1854733c2552ef5c5a2fd + manager: conda + name: sed + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/sed-4.8-he412f7d_0.tar.bz2 + version: '4.8' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 7cb7109505433a5abbf68bb34b31edac + sha256: 29ce83db159a99eaeb816a9833481aa0eb495c6f69772e779d86ea2924bb5f06 + manager: conda + name: unzip + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/unzip-6.0-h7f98852_3.tar.bz2 + version: '6.0' +- category: main + dependencies: + libgcc-ng: '>=7.3.0' + hash: + md5: 2e5f1a8199794b21c9472c1a7f27e21a + sha256: a3ee6c02932fbee32babe39fa6bda9f781d6dc17122d2a90e62ff2b6866a5de8 + manager: conda + name: which + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/which-2.21-h516909a_0.tar.bz2 + version: '2.21' +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: bcd1b3396ec6960cbc1d2855a9e60b2b + sha256: 6c8c2803de0f643f8bad16ece3f9a7259e4a49247543239c182d66d5e3a129a7 + manager: conda + name: xorg-inputproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-inputproto-2.3.2-h7f98852_1002.tar.bz2 + version: 2.3.2 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 4b230e8381279d76131116660f5a241a + sha256: e90b0a6a5d41776f11add74aa030f789faf4efd3875c31964d6f9cfa63a10dd1 + manager: conda + name: xorg-kbproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2 + version: 1.0.7 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: d6b0b50b49eccfe0be0373be628be0f3 + sha256: f15ce1dff16823888bcc2be1738aadcb36699be1e2dd2afa347794c7ec6c1587 + manager: conda + name: xorg-libice + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.0.10-h7f98852_0.tar.bz2 + version: 1.0.10 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: bf6f803a544f26ebbdc3bfff272eb179 + sha256: 9e9b70c24527289ac7ae31925d1eb3b0c1e9a78cb7b8f58a3110cc8bbfe51c26 + manager: conda + name: xorg-libxau + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.9-h7f98852_0.tar.bz2 + version: 1.0.9 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: be93aabceefa2fac576e971aef407908 + sha256: 4df7c5ee11b8686d3453e7f3f4aa20ceef441262b49860733066c52cfd0e4a77 + manager: conda + name: xorg-libxdmcp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2 + version: 1.1.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 2f835e6c386e73c6faaddfe9eda67e98 + sha256: 4b91d48fed368c83eafd03891ebfd5bae0a03adc087ebea8a680ae22da99a85f + manager: conda + name: xorg-recordproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-recordproto-1.14.2-h7f98852_1002.tar.bz2 + version: 1.14.2 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 06feff3d2634e3097ce2fe681474b534 + sha256: 38942930f233d1898594dd9edf4b0c0786f3dbc12065a0c308634c37fd936034 + manager: conda + name: xorg-renderproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2 + version: 0.11.1 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 1e15f6ad85a7d743a2ac68dae6c82b98 + sha256: d45c4d1c8372c546711eb3863c76d899d03a67c3edb3b5c2c46c9492814cbe03 + manager: conda + name: xorg-xextproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h7f98852_1002.tar.bz2 + version: 7.3.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: b4a4381d54784606820704f7b5f05a15 + sha256: f197bb742a17c78234c24605ad1fe2d88b1d25f332b75d73e5ba8cf8fbc2a10d + manager: conda + name: xorg-xproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2 + version: 7.0.31 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 52402c791f35e414e704b7a113f99605 + sha256: c048c715b63fff3b8d9521d08f67ddda97bdd346c4ae71f54eda24f634695962 + manager: conda + name: xxhash + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.0-h7f98852_3.tar.bz2 + version: 0.8.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 2161070d867d1b1204ea749c8eec4ef0 + sha256: 03a6d28ded42af8a347345f82f3eebdd6807a08526d47899a42d62d319609162 + manager: conda + name: xz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 + version: 5.2.6 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 4cb3ad778ec2d5a7acbdf254eb1c42ae + sha256: a4e34c710eeb26945bdbdaba82d3d74f60a78f54a874ec10d373811a5d217535 + manager: conda + name: yaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 + version: 0.2.5 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libiconv: '>=1.16,<1.17.0a0' + hash: + md5: af46eaa305af6768321779615ed88ac4 + sha256: 016719d88e6f84af579606cfd5e8d52b9c31c9ad38c54b92fff5d49044ca5673 + manager: conda + name: diffutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/diffutils-3.8-ha1f6473_0.tar.bz2 + version: '3.8' +- category: main + dependencies: + libfdt: '>=1.6.1,<1.7.0a0' + libgcc-ng: '>=10.3.0' + yaml: '>=0.2.5,<0.3.0a0' + hash: + md5: caa34d1dbb00e66fc12387ee364c24ce + sha256: cb20ea4ea3ae9c2ab6728b934666dc4cc0fac7c7acc4df66c9ab3819128a006e + manager: conda + name: dtc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/dtc-1.6.1-h166bdaf_1.tar.bz2 + version: 1.6.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + m4: '' + hash: + md5: b1029ec81c7e0969e84a8179d039a9ce + sha256: 5a6dba5af1127e859eefd68e77b7af062b42f85401efbb43a970da977ba3e344 + manager: conda + name: flex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/flex-2.6.4-h58526e2_1004.tar.bz2 + version: 2.6.4 +- category: main + dependencies: + binutils_impl_linux-64: 2.36.1.* + libgcc-devel_linux-64: 12.1.0 h1ec3361_16 + libgcc-ng: '>=12.1.0' + libgomp: '>=12.1.0' + libsanitizer: 12.1.0 ha89aaad_16 + libstdcxx-ng: '>=12.1.0' + sysroot_linux-64: '' + hash: + md5: 8db926c5e0250835beca6557221b600b + sha256: 344d543e87657facf6d6baf0ef877f7e003f1a25d969f196083be370ae59a410 + manager: conda + name: gcc_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-12.1.0-hea43390_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=9.4.0' + hash: + md5: af49250eca8e139378f8ff0ae9e57251 + sha256: 1bb53c99b4943d210c881aad9158fb0235b348498bad1a7076d1f2bef6671922 + manager: conda + name: gettext + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.19.8.1-h73d1719_1008.tar.bz2 + version: 0.19.8.1 +- category: main + dependencies: + libopenblas: '>=0.3.21,<1.0a0' + hash: + md5: d9b7a8639171f6c6fa0a983edabcfe2b + sha256: 4e4c60d3fe0b95ffb25911dace509e3532979f5deef4364141c533c5ca82dd39 + manager: conda + name: libblas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-16_linux64_openblas.tar.bz2 + version: 3.9.0 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + ncurses: '>=6.2,<7.0.0a0' + hash: + md5: 4d331e44109e3f0e19b4cb8f9b82f3e1 + sha256: a57d37c236d8f7c886e01656f4949d9dcca131d2a0728609c6f7fa338b65f1cf + manager: conda + name: libedit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + version: 3.1.20191231 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: f5759f0c80708fbf9c4836c0cb46d0fe + sha256: af0f505053153cd2e8ad08a8559fb3df73b22ce8f635dbcaf7818a7bf916437f + manager: conda + name: libllvm14 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-he0ac6c6_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: fe3ab1049214fca5620b7b96af1a6a55 + sha256: de50b620811232548e3913bc1c19b28b17cc782447e9cb5cd8faa0cfbd15e966 + manager: conda + name: libmagic + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libmagic-5.39-h753d276_1.tar.bz2 + version: '5.39' +- category: main + dependencies: + c-ares: '>=1.18.1,<2.0a0' + libev: '>=4.33,<4.34.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + openssl: '>=1.1.1q,<1.1.2a' + hash: + md5: 6fe9e31c2b8d0b022626ccac13e6ca3c + sha256: 44b87b28efb1fa34632730f37a39250ef955a3497d7d9cd0ec60316ac134278e + manager: conda + name: libnghttp2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.47.0-hdcd2b5c_1.tar.bz2 + version: 1.47.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 575078de1d3a3114b3ce131bd1508d0c + sha256: 422a544fbfc8d8bf43de4b2dc5c7c991294ad0e37b37439d8dbf740f07a75437 + manager: conda + name: libpng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.38-h753d276_0.tar.bz2 + version: 1.6.38 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: b085539ca2b54a188848bcfcb970005d + sha256: f8b72568b2a8685f465722a929dbaea8ad2e1812fe70a96d1ad71c1bf14f6497 + manager: conda + name: libprotobuf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-3.20.1-h6239696_4.tar.bz2 + version: 3.20.1 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: ccb2457c73609f2622b8a4b3e42e5d8b + sha256: aa579bad433c481f9b0e3df473c4b9f4455787c0c439e921d0caa26affb205e3 + manager: conda + name: libsqlite + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.39.3-h753d276_0.tar.bz2 + version: 3.39.3 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + openssl: '>=1.1.1q,<1.1.2a' + hash: + md5: 89acee135f0809a18a1f4537390aa2dd + sha256: 3c2ed83502bedf4ec8c5b972accb6ff1b6c018f72fb711cdb65cb8540d5ab89e + manager: conda + name: libssh2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.10.0-haa6b8db_3.tar.bz2 + version: 1.10.0 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + pthread-stubs: '' + xorg-libxau: '' + xorg-libxdmcp: '' + hash: + md5: b3653fdc58d03face9724f602218a904 + sha256: 8d5d24cbeda9282dd707edd3156e5fde2e3f3fe86c802fa7ce08c8f1e803bfd9 + manager: conda + name: libxcb + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.13-h7f98852_1004.tar.bz2 + version: '1.13' +- category: main + dependencies: + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libiconv: '>=1.16,<1.17.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + xz: '>=5.2.5,<5.3.0a0' + hash: + md5: aced7c1f4b4dbfea08e033c6ae97c53e + sha256: 3c00e90a6eb6cc741731a09f848c12f3ef5ba5d03c9bbeb194029f39b7a48a5f + manager: conda + name: libxml2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.9.14-h22db469_4.tar.bz2 + version: 2.9.14 +- category: main + dependencies: + libgcc-ng: '>=7.3.0' + lzo: '>=2.10,<3.0a0' + hash: + md5: e0545c79e1a5defdc1d6f1920d77ca91 + sha256: 171179d1b5cbd487e110b04f00a6b70c4c2b1b3bf5b16196d9aa863e4f216f0d + manager: conda + name: lzop + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lzop-1.04-h3753786_2.tar.bz2 + version: '1.04' +- category: main + dependencies: + gmp: '>=6.2.1,<7.0a0' + libgcc-ng: '>=7.5.0' + hash: + md5: ea9ebeddb066da8fad4a815e61b139be + sha256: d2d71ac6ed3b32f06b7db2691e0a1760016ce13fb0c50a9de6ed1ccc33e35ff3 + manager: conda + name: mpfr + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.1.0-h9202a9a_1.tar.bz2 + version: 4.1.0 +- category: main + dependencies: + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + libtasn1: '>=4.18.0,<5.0a0' + hash: + md5: 56ee94e34b71742bbdfa832c974e47a8 + sha256: aa8d3887b36557ad0c839e4876c0496e0d670afe843bf5bba4a87764b868196d + manager: conda + name: p11-kit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/p11-kit-0.24.1-hc5aa10d_0.tar.bz2 + version: 0.24.1 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: dfd26f27a9d5de96cec1d007b9aeb964 + sha256: ed3fa628b94a82ff039bdc9591c241dfc2c555f0efdfb07a0b53be4b2d9dfe6c + manager: conda + name: pcre2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.37-hc3806b6_1.tar.bz2 + version: '10.37' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libnsl: '>=2.0.0,<2.1.0a0' + hash: + md5: 09ba115862623f00962e9809ea248f1a + sha256: a116c1d3c64a072280b441c43d893d341a1d37d16ec18afc76eee40299deabfa + manager: conda + name: perl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-2_h7f98852_perl5.tar.bz2 + version: 5.32.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libiconv: '' + hash: + md5: 78388f97473c02e5ac8a3742eee4c959 + sha256: 2868865a437515136840dbb7d901adea798128427f32f984cfa4cc56989f90ce + manager: conda + name: popt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/popt-1.16-h0b475e3_2002.tar.bz2 + version: '1.16' +- category: main + dependencies: + libgcc-ng: '>=12' + ncurses: '>=6.3,<7.0a0' + hash: + md5: db2ebbe2943aae81ed051a6a9af8e0fa + sha256: f5f383193bdbe01c41cb0d6f99fec68e820875e842e6e8b392dbe1a9b6c43ed8 + manager: conda + name: readline + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/readline-8.1.2-h0f457ee_0.tar.bz2 + version: 8.1.2 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + ncurses: '>=6.2,<7.0.0a0' + hash: + md5: 3b67f325fac07461f193e27a9d9c5a65 + sha256: 3c7020802fb52b946fe37a2180a6cad298f65b7a3e861c2616b6ffd4165ec22f + manager: conda + name: screen + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/screen-4.8.0-he28a2e2_0.tar.bz2 + version: 4.8.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libiconv: '>=1.16,<1.17.0a0' + hash: + md5: 33614741eb453005e0c74e027c325508 + sha256: 967aa10d9197b2a9753f21cb9e7d729560d90df41eb2fa2a3e2ffcb66891d98b + manager: conda + name: tar + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tar-1.34-ha1f6473_0.tar.bz2 + version: '1.34' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libzlib: '>=1.2.11,<1.3.0a0' + hash: + md5: 5b8c42eb62e9fc961af70bdd6a26e168 + sha256: 032fd769aad9d4cad40ba261ab222675acb7ec951a8832455fce18ef33fa8df0 + manager: conda + name: tk + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.12-h27826a3_0.tar.bz2 + version: 8.6.12 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-xextproto: '' + hash: + md5: 65ad6e1eb4aed2b0611855aff05e04f6 + sha256: 5d2af1b40f82128221bace9466565eca87c97726bb80bbfcd03871813f3e1876 + manager: conda + name: xorg-fixesproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-fixesproto-5.0-h7f98852_1002.tar.bz2 + version: '5.0' +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libuuid: '>=2.32.1,<3.0a0' + xorg-libice: 1.0.* + hash: + md5: 9e856f78d5c80d5a78f61e72d1d473a3 + sha256: bdb350539521ddc1f30cc721b6604eced8ef72a0ec146e378bfe89e2be17ab35 + manager: conda + name: xorg-libsm + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.3-hd9c2040_1000.tar.bz2 + version: 1.2.3 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: 1.2.12 h166bdaf_3 + hash: + md5: 76c717057865201aa2d24b79315645bb + sha256: ae9432916a11c7f52ea295d6cad1ecb2b838a75087d14db3a5e50c1949aa9f55 + manager: conda + name: zlib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.12-h166bdaf_3.tar.bz2 + version: 1.2.12 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: adcf0be7897e73e312bd24353b613f74 + sha256: c42d9ec413edd7e984b6cac676997105d0f106556a0f045961153b049b95b87c + manager: conda + name: zstd + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.2-h6239696_4.tar.bz2 + version: 1.5.2 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + m4: '' + perl: 5.* + hash: + md5: 47f6f07d64d6ea9d2c806ff42023e7e3 + sha256: 57b977849da4ff3a9c62ff632dcb62f48697c7d3698804230f4b9a43b2ce1a39 + manager: conda + name: autoconf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/autoconf-2.69-pl5321hd708f79_11.tar.bz2 + version: '2.69' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + readline: '>=8.1,<9.0a0' + hash: + md5: 54d1a374b75f14ecc58aea8c4236c0c3 + sha256: 6415903ad8774fc0f1bf5b156ae0b6f9988427a0f14bb35467c5938f05fe8707 + manager: conda + name: bash + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bash-5.1.16-hd863ed2_0.tar.bz2 + version: 5.1.16 +- category: main + dependencies: + flex: '' + libgcc-ng: '>=9.4.0' + libstdcxx-ng: '>=9.4.0' + hash: + md5: c12b9a7d2289bce118c8322762836c97 + sha256: 4c593dccc8e53717225547c8961c5d0671d738c26702b91a228b43d44ff4e387 + manager: conda + name: bison + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bison-3.8-h9c3ff4c_0.tar.bz2 + version: '3.8' +- category: main + dependencies: + gcc_impl_linux-64: '>=12.1.0,<12.1.1.0a0' + hash: + md5: 376d2d246e1228913ef6b6d32d191ad0 + sha256: 32908d2d36adfb327aa28d30ab8af2bb32a653d84706696b797379b27c83fcce + manager: conda + name: conda-gcc-specs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-gcc-specs-12.1.0-h559a835_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + tk: '>=8.6.10,<8.7.0a0' + hash: + md5: c9f6a4d589ac81b3867b95d6ba290829 + sha256: 0fa59f12836faefbef1426dc16cbba68a25a4ba48807213848115fd5cfb51a06 + manager: conda + name: expect + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/expect-5.45.4-h555a92e_0.tar.bz2 + version: 5.45.4 +- category: main + dependencies: + libgcc-ng: '>=12' + libmagic: 5.39 h753d276_1 + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: a0f7ed92aaa3b6d109e6e2301e502c24 + sha256: 8c3b26e7241324a4fb8a19966e67af043781e6feb4a7393608e5ebcc84410b62 + manager: conda + name: file + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/file-5.39-h753d276_1.tar.bz2 + version: '5.39' +- category: main + dependencies: + gettext: '' + libgcc-ng: '>=9.4.0' + hash: + md5: 8d0b19bcc4a822e154eaf924483c9edb + sha256: 377377897759dc0183ad2db9a3c4472d50d81a74b62ad974f32109900d891743 + manager: conda + name: findutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/findutils-4.6.0-h7f98852_1001.tar.bz2 + version: 4.6.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 4e54cbfc47b8c74c2ecc1e7730d8edce + sha256: 97325af03590d9f9cc7fcb35ad869fa409c51820b0c721bfc9fe7a6d058d0bb0 + manager: conda + name: freetype + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-hca18f0e_0.tar.bz2 + version: 2.12.1 +- category: main + dependencies: + gcc_impl_linux-64: 12.1.0.* + hash: + md5: 41eda6f576d154ff857f2782446ca975 + sha256: 2e53954244ab346c537b78dcc54e0dddf1c101387d4b77180663a9028a969bd3 + manager: conda + name: gcc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.1.0-h9ea6d83_10.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + gcc_impl_linux-64: 12.1.0 hea43390_16 + libstdcxx-devel_linux-64: 12.1.0 h1ec3361_16 + sysroot_linux-64: '' + hash: + md5: f64e7c4aad2bf9d75ef1849ba12d550e + sha256: 32e2b3182704acee2058e3346a7d1b8d562729f502c99b1beef13eb3b0c686c2 + manager: conda + name: gxx_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-12.1.0-hea43390_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + keyutils: '>=1.6.1,<2.0a0' + libedit: '>=3.1.20191231,<4.0a0' + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + openssl: '>=1.1.1l,<1.1.2a' + hash: + md5: 7d862b05445123144bec92cb1acc8ef8 + sha256: 3d0f0a8806b6bbe5f9584ff69e0b569d8b3a5b8bd4f35564fdbd304c7ef28fd1 + manager: conda + name: krb5 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.19.3-h3790be6_0.tar.bz2 + version: 1.19.3 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libgcc-ng: '>=12' + libxml2: '>=2.9.14,<2.10.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + lz4-c: '>=1.9.3,<1.10.0a0' + lzo: '>=2.10,<3.0a0' + openssl: '>=1.1.1o,<1.1.2a' + xz: '>=5.2.5,<5.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 5b28408cfb6d2026ae7f2e7cb963f71a + sha256: 083a9e69c5f5687b47b0d00adbcc7e502c4babf275fa95e61a816fe071a75304 + manager: conda + name: libarchive + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.5.2-hb890918_3.tar.bz2 + version: 3.5.2 +- category: main + dependencies: + libblas: 3.9.0 16_linux64_openblas + hash: + md5: 20bae26d0a1db73f758fc3754cab4719 + sha256: e4ceab90a49cb3ac1af20177016dc92066aa278eded19646bb928d261b98367f + manager: conda + name: libcblas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-16_linux64_openblas.tar.bz2 + version: 3.9.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 0e63ac182e381cd351c397f8e44a4b71 + sha256: 4e17513579284329f89f36b1e02ec9b7df01ec67f66f02c8b07ac15354477b1b + manager: conda + name: libclang-cpp14 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp14-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: cdbd49e0ab5c5a6c522acb8271977d4c + sha256: 5a359982db6223f0330682b4ac7bd2b6f0206cf566a5e074e3f0609bc5a1f98f + manager: conda + name: libclang13 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-14.0.6-default_h3a83d3e_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + gettext: '>=0.19.8.1,<1.0a0' + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + libiconv: '>=1.16,<1.17.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + pcre: '>=8.45,<9.0a0' + hash: + md5: ebeadbb5fbc44052eeb6f96a2136e3c2 + sha256: 2ec01b1fbd21f9ec4a0a723a7dbe0c43db2f7dde88eb95586d63ea7f4e40193f + manager: conda + name: libglib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.72.1-h2d90d5f_0.tar.bz2 + version: 2.72.1 +- category: main + dependencies: + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=12' + libunistring: '>=0,<1.0a0' + hash: + md5: 7726ff4317aaecba7a4e7c2a16d38b21 + sha256: 6051ca2b05ff5d08fcc1b5b653d34454dc0a099eec374683fea7ada6033bac62 + manager: conda + name: libidn2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libidn2-2.3.3-h166bdaf_0.tar.bz2 + version: 2.3.3 +- category: main + dependencies: + libblas: 3.9.0 16_linux64_openblas + hash: + md5: 955d993f41f9354bf753d29864ea20ad + sha256: f5f30b8049dfa368599e5a08a4f35cb1966af0abc539d1fd1f50d93db76a74e6 + manager: conda + name: liblapack + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-16_linux64_openblas.tar.bz2 + version: 3.9.0 +- category: main + dependencies: + jpeg: '>=9e,<10a' + lerc: '>=4.0.0,<5.0a0' + libdeflate: '>=1.14,<1.15.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libwebp-base: '>=1.2.4,<2.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + xz: '>=5.2.6,<5.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 901791f0ec7cddc8714e76e273013a91 + sha256: 19f29fcaab2e6b97cb1991a5a703b5951e981dc8a093945f20382288b29a4668 + manager: conda + name: libtiff + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.4.0-h55922b4_4.tar.bz2 + version: 4.4.0 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libprotobuf: '>=3.20.0,<3.21.0a0' + libstdcxx-ng: '>=10.3.0' + libzlib: '>=1.2.11,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + openssl: '>=1.1.1n,<1.1.2a' + perl: '>=5.32.1,<5.33.0a0 *_perl5' + hash: + md5: b7d4b8236c1a2e1aa02dc5c887e70f19 + sha256: ddbcf44eb9dcb8556c1a5f511e2e028dab8545e82ee441a03bb54e52152fdd2a + manager: conda + name: mosh + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mosh-1.3.2-pl5321h4a694d4_1012.tar.bz2 + version: 1.3.2 +- category: main + dependencies: + gmp: '>=6.2.1,<7.0a0' + libgcc-ng: '>=7.5.0' + mpfr: '>=4.1.0,<5.0a0' + hash: + md5: c5d36085ed66e1c582d652fb921e99fb + sha256: 304e369ae27b09528dc487c86cfddbf80d34402198bdef6d6111080ad470baf5 + manager: conda + name: mpc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mpc-1.2.1-h9f54685_0.tar.bz2 + version: 1.2.1 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libiconv: '>=1.16,<1.17.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + lz4-c: '>=1.9.3,<1.10.0a0' + openssl: '>=1.1.1o,<1.1.2a' + popt: '>=1.16,<2.0a0' + xxhash: '>=0.8.0,<0.8.1.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 35f8fdb194162a71401a44dda9daeeb9 + sha256: 037b93fe813b2230c73ac3e0ebccc3e423e0afbc9c7c3e9790c6c4c025af5d39 + manager: conda + name: rsync + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/rsync-3.2.3-hfa40b15_4.tar.bz2 + version: 3.2.3 +- category: main + dependencies: + libgcc-ng: '>=12' + libsqlite: 3.39.3 h753d276_0 + libzlib: '>=1.2.12,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + readline: '>=8.1.2,<9.0a0' + hash: + md5: f03cf4ec974e32b6c5d349f62637e36e + sha256: afd8ac129ecb548bb7c600901bc3bc54ea053d119cf53ac95a22aea88efd7e5d + manager: conda + name: sqlite + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.39.3-h4ff8645_0.tar.bz2 + version: 3.39.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libxcb: 1.* + xorg-kbproto: '' + xorg-xproto: '' + hash: + md5: 12a61e640b8894504326aadafccbb790 + sha256: ec4641131e3afcb4b34614a5fa298efb34f54c2b2960bf9a73a8d202140d47c4 + manager: conda + name: xorg-libx11 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.7.2-h7f98852_0.tar.bz2 + version: 1.7.2 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libglib: '>=2.64.6,<3.0a0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: 661e1ed5d92552785d9f8c781ce68685 + sha256: dde04e006d330e42165c49778546c466aa5ae03499f20cdd2bcbc7f0306f896d + manager: conda + name: atk-1.0 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/atk-1.0-2.36.0-h3371d22_4.tar.bz2 + version: 2.36.0 +- category: main + dependencies: + libclang-cpp14: '>=14.0.6,<14.1.0a0' + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: ef9669b9847ce3c8a304e9eb08bf446d + sha256: 0c07d3ada12b27b0df8ea07faf4fa8c3b45cc791752a724ac86302af6378b4bb + manager: conda + name: clang-format-14 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/clang-format-14-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + expat: '>=2.4.2,<3.0a0' + libgcc-ng: '>=9.4.0' + libglib: '>=2.70.2,<3.0a0' + hash: + md5: ecfff944ba3960ecb334b9a2663d708d + sha256: 8f5f995699a2d9dbdd62c61385bfeeb57c82a681a7c8c5313c395aa0ccab68a5 + manager: conda + name: dbus + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 + version: 1.13.6 +- category: main + dependencies: + expat: '>=2.4.8,<3.0a0' + freetype: '>=2.12.1,<3.0a0' + libgcc-ng: '>=12' + libuuid: '>=2.32.1,<3.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 139ace7da04f011abbd531cb2a9840ee + sha256: 58388e28faa2078b0d93ec8d236f102b945e169c0b0fef9e8aa4496abe9548ce + manager: conda + name: fontconfig + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.0-hc2a2eb6_1.tar.bz2 + version: 2.14.0 +- category: main + dependencies: + jpeg: '>=9e,<10a' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + libtiff: '>=4.4.0,<5.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + zlib: '>=1.2.12,<1.3.0a0' + hash: + md5: a61c6312192e7c9de71548a6706a21e6 + sha256: b7379d19afe924b39e29e47b046f99a4a737f58a210c27d083391c0f8f012aad + manager: conda + name: gdk-pixbuf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gdk-pixbuf-2.42.8-hff1cb4f_1.tar.bz2 + version: 2.42.8 +- category: main + dependencies: + libgcc-ng: '>=12' + libidn2: '>=2,<3.0a0' + libstdcxx-ng: '>=12' + libtasn1: '>=4.18.0,<5.0a0' + nettle: '>=3.8.1,<3.9.0a0' + p11-kit: '>=0.24.1,<0.25.0a0' + hash: + md5: 12df79786a310d140fa0a399654d129b + sha256: 89c2366a9128f0018ace0c78b65d615b50d3dbcab529c232788cb09f413d5ec4 + manager: conda + name: gnutls + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gnutls-3.7.7-hf3e180e_0.tar.bz2 + version: 3.7.7 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libglib: '>=2.66.4,<3.0a0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: 112eb9b5b93f0c02e59aea4fd1967363 + sha256: ed9ae774aa867ad41bb0aa3f4a088f326dec32ab3468040322dbbd6c5bf33b0a + manager: conda + name: gts + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gts-0.7.6-h64030ff_2.tar.bz2 + version: 0.7.6 +- category: main + dependencies: + gcc: 12.1.0.* + gxx_impl_linux-64: 12.1.0.* + hash: + md5: fd875ec9914bc3b7b1eb1676e8862c71 + sha256: 178342981f2f6d60eb4c150583b0f52f42232549f7929c5066e610881cbf8633 + manager: conda + name: gxx + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.1.0-h9ea6d83_10.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + jpeg: '>=9d,<10a' + libgcc-ng: '>=9.3.0' + libtiff: '>=4.2.0,<5.0a0' + hash: + md5: 797117394a4aa588de6d741b06fad80f + sha256: 5b3c77a84b1dbfa53932dee830f35a42cfc5541e23ca0626f8058b04dcf518d1 + manager: conda + name: lcms2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.12-hddcbb42_0.tar.bz2 + version: '2.12' +- category: main + dependencies: + libclang13: 14.0.6 default_h3a83d3e_0 + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: eb70548da697e50cefa7ba939d57d001 + sha256: 2e42f6b4dcb8b75f1eb25d6144fa13084f24a0d2f558a92f1086753bc4e523d4 + manager: conda + name: libclang + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + krb5: '>=1.19.3,<1.20.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 3b88f1d0fe2580594d58d7e44d664617 + sha256: 293b4be657b9bb534c58b2add62c5088fdbd2e943ff5aea5b4595564cc15e681 + manager: conda + name: libcups + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h3e49a29_2.tar.bz2 + version: 2.3.3 +- category: main + dependencies: + krb5: '>=1.19.3,<1.20.0a0' + libgcc-ng: '>=10.3.0' + libnghttp2: '>=1.47.0,<2.0a0' + libssh2: '>=1.10.0,<2.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + openssl: '>=1.1.1o,<1.1.2a' + hash: + md5: d0c278476dba3b29ee13203784672ab1 + sha256: 07285ea4d0d7d068bdc3e178f2e8ca32cb385e8c2451b7842627b610b0e7784c + manager: conda + name: libcurl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-7.83.1-h7bff187_0.tar.bz2 + version: 7.83.1 +- category: main + dependencies: + giflib: '>=5.2.1,<5.3.0a0' + jpeg: '>=9e,<10a' + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libtiff: '>=4.4.0,<5.0a0' + libwebp-base: '>=1.2.4,<2.0a0' + hash: + md5: 802e43f480122a85ae6a34c1909f8f98 + sha256: 56520354bc39baeab8df964138639110eafa6069e34e9545f8818c8abd742f32 + manager: conda + name: libwebp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.2.4-h522a892_0.tar.bz2 + version: 1.2.4 +- category: main + dependencies: + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libstdcxx-ng: '>=12' + libtiff: '>=4.4.0,<5.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: a11b4df9271a8d7917686725aa04c8f2 + sha256: a715cba5649f12a1dca53dfd72fc49577152041f033d7595cf4b6a655a5b93b6 + manager: conda + name: openjpeg + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.0-h7d73246_1.tar.bz2 + version: 2.5.0 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + ld_impl_linux-64: '>=2.36.1' + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + libnsl: '>=2.0.0,<2.1.0a0' + libuuid: '>=2.32.1,<3.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + openssl: '>=1.1.1o,<1.1.2a' + readline: '>=8.1,<9.0a0' + sqlite: '>=3.38.5,<4.0a0' + tk: '>=8.6.12,<8.7.0a0' + tzdata: '' + xz: '>=5.2.5,<5.3.0a0' + hash: + md5: 69bc307cc4d7396c5fccb26bbcc9c379 + sha256: 411462cd0726d5a13fd04295887d1137175df55687e4783f26ac1cbb46a10b7f + manager: conda + name: python + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.13-h9a8a25e_0_cpython.tar.bz2 + version: 3.9.13 +- category: main + dependencies: + flex: '>=2.6.4,<3.0a0' + gxx_impl_linux-64: '' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + make: '' + perl: '' + hash: + md5: ca32c97ae3c69172f87f23d99806343f + sha256: 9fb8023a95d6609925585f8ea17880d05b141b8c36374d079df2e21c2c04a3ae + manager: conda + name: verilator + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/verilator-4.226-he0ac6c6_0.tar.bz2 + version: '4.226' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libidn2: '>=2,<3.0a0' + libunistring: '>=0,<1.0a0' + openssl: '>=1.1.1l,<1.1.2a' + zlib: '>=1.2.11,<1.3.0a0' + hash: + md5: 674f6b42484dbfd11906c3b0a93585e9 + sha256: d46fe5f94627cc2cdbed1f3cbadd9693a7ff9550fce2b892ed4d334de841b6ce + manager: conda + name: wget + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/wget-1.20.3-ha56f1ee_1.tar.bz2 + version: 1.20.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-xextproto: '' + hash: + md5: 536cc5db4d0a3ba0630541aec064b5e4 + sha256: cf47ccbf49d46189d7bdadeac1387c826be82deb92ce6badbb03baae4b67ed26 + manager: conda + name: xorg-libxext + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h7f98852_1.tar.bz2 + version: 1.3.4 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-fixesproto: '' + xorg-libx11: '>=1.7.0,<2.0a0' + hash: + md5: e9a21aa4d5e3e5f1aed71e8cefd46b6a + sha256: 1e426a1abb774ef1dcf741945ed5c42ad12ea2dc7aeed7682d293879c3e1e4c3 + manager: conda + name: xorg-libxfixes + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-5.0.3-h7f98852_1004.tar.bz2 + version: 5.0.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-renderproto: '' + hash: + md5: f59c1242cc1dd93e72c2ee2b360979eb + sha256: 7d907ed9e2ec5af5d7498fb3ab744accc298914ae31497ab6dcc6ef8bd134d00 + manager: conda + name: xorg-libxrender + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.10-h7f98852_1003.tar.bz2 + version: 0.9.10 +- category: main + dependencies: + python: '' + hash: + md5: 2489a97287f90176ecdc3ca982b4b0a0 + sha256: 662690cace8f8a3e1358d01ddb8c019bf70ddfccd250220a6a488efc93ea5baf + manager: conda + name: alabaster + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/alabaster-0.7.12-py_0.tar.bz2 + version: 0.7.12 +- category: main + dependencies: + python: '' + hash: + md5: 5f095bc6454094e96f146491fd03633b + sha256: ae9fb8f68281f84482f2c234379aa12405a9e365151d43af20b3ae1f17312111 + manager: conda + name: appdirs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/appdirs-1.4.4-pyh9f0ad1d_0.tar.bz2 + version: 1.4.4 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: f3f2ab3ce28979a24d1a988ba211eb9b + sha256: 1354731d0eb1b406b66b3cb3d6ab74d7cbe9c0ec1d30b9e5afa366d4539e4687 + manager: conda + name: asn1crypto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/asn1crypto-1.5.1-pyhd8ed1ab_0.tar.bz2 + version: 1.5.1 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 6d3ccbc56256204925bfa8378722792f + sha256: 86133878250874b3823bae7369bcad90187132537726cb1b546d88a0552d24de + manager: conda + name: attrs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/attrs-22.1.0-pyh71513ae_1.tar.bz2 + version: 22.1.0 +- category: main + dependencies: + python: '' + hash: + md5: 808c46dc56ae4a796830129aaf1b51ec + sha256: 468b68a9e8714bf21ee2df551b919df28122f32e57033aafe50288fdfb7c4955 + manager: conda + name: cachy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cachy-0.3.0-py_0.tar.bz2 + version: 0.3.0 +- category: main + dependencies: + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + libxcb: '>=1.13,<1.14.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + pixman: '>=0.40.0,<1.0a0' + xorg-libice: '' + xorg-libsm: '' + xorg-libx11: '' + xorg-libxext: '' + xorg-libxrender: '' + zlib: '>=1.2.12,<1.3.0a0' + hash: + md5: d1a88f3ed5b52e1024b80d4bcd26a7a0 + sha256: f062cf56e6e50d3ad4b425ebb3765ca9138c6ebc52e6a42d1377de8bc8d954f6 + manager: conda + name: cairo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.16.0-ha61ee94_1014.tar.bz2 + version: 1.16.0 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 963e8ceccba45b5cf15f33906d5a20a1 + sha256: 9da8b43e2bcd47bc43015e85af96dd44394fbd51eb9b4fae61ec6e082c404231 + manager: conda + name: certifi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/certifi-2022.9.14-pyhd8ed1ab_0.tar.bz2 + version: 2022.9.14 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: c1d5b294fbf9a795dec349a6f4d8be8e + sha256: 9e6170fa7b65b5546377eddb602d5ff871110f84bebf101b7b8177ff64aab1cb + manager: conda + name: charset-normalizer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-2.1.1-pyhd8ed1ab_0.tar.bz2 + version: 2.1.1 +- category: main + dependencies: + clang-format-14: 14.0.6 default_h2e3cab8_0 + libclang-cpp14: '>=14.0.6,<14.1.0a0' + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 46f166532c575e94f97a42d8b4952006 + sha256: a8dd07f8f99f2bb22add994bbbdf9a3f61c635285709e8700781da1c83809e54 + manager: conda + name: clang-format + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/clang-format-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: a6cf47b09786423200d7982d1faa19eb + sha256: ad15e71f51afa48f44592e9f7cee74b6e1b90ddb1caacb5d3e043a62775b64bb + manager: conda + name: cloudpickle + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-2.2.0-pyhd8ed1ab_0.tar.bz2 + version: 2.2.0 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + expat: '>=2.4.8,<3.0a0' + libcurl: '>=7.83.1,<8.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libuv: '' + libzlib: '>=1.2.12,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + rhash: '' + xz: '>=5.2.6,<5.3.0a0' + zlib: '>=1.2.12,<1.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: c57977f63831a8f43ace75fcc7151b9d + sha256: a7d740765dcb6c8f1d594550ae25d221b2a507d4f1d5e4ea94e8c5d4e3b1f215 + manager: conda + name: cmake + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cmake-3.24.2-h5432695_0.tar.bz2 + version: 3.24.2 +- category: main + dependencies: + python: '' + hash: + md5: 9cf68a6826504feedbfd646bc4d1ca14 + sha256: c04c09570a8bccf45bb73ae63d7e396d66c01580f9125ce5e5c981a2be549a51 + manager: conda + name: colorama + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.3-py_0.tar.bz2 + version: 0.4.3 +- category: main + dependencies: + python: '>=3.6,<4.0' + hash: + md5: b8477552274c1cfdb533e954c76523f1 + sha256: af1db267e03c649aefcc1571ddce4eac361a0e5232d1bdd05fd93fadbfdd2da6 + manager: conda + name: crashtest + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/crashtest-0.3.1-pyhd8ed1ab_0.tar.bz2 + version: 0.3.1 +- category: main + dependencies: + krb5: '>=1.19.3,<1.20.0a0' + libcurl: 7.83.1 h7bff187_0 + libgcc-ng: '>=10.3.0' + libssh2: '>=1.10.0,<2.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + openssl: '>=1.1.1o,<1.1.2a' + hash: + md5: ba33b9995f5e691e4f439422d6efafc7 + sha256: ea86c6d7b63cff474c4f4ddd49eb2434a46b3524b601ce35968bfa6ef7196efb + manager: conda + name: curl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/curl-7.83.1-h7bff187_0.tar.bz2 + version: 7.83.1 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: a50559fad0affdbb33729a68669ca1cb + sha256: 3b594bc8aa0b9a51269d54c7a4ef6af777d7fad4bee16b05695e1124de6563f6 + manager: conda + name: cycler + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cycler-0.11.0-pyhd8ed1ab_0.tar.bz2 + version: 0.11.0 +- category: main + dependencies: + python: 2.7|>=3.6 + hash: + md5: f15c3912378a07726093cc94d1e13251 + sha256: fe48fec5aeb77e5963ffb58de6fbb880eb545bbe25c609f614e39c56e4a193a6 + manager: conda + name: distlib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.5-pyhd8ed1ab_0.tar.bz2 + version: 0.3.5 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 10f0218dbd493ab2e5dc6759ddea4526 + sha256: 5b5884b070fbe23bb714c3de22038ed6056b6533b0974c81d5f4a7ef451b7eff + manager: conda + name: filelock + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.8.0-pyhd8ed1ab_0.tar.bz2 + version: 3.8.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 34272b248891bddccc64479f9a7fffed + sha256: 9887c35c374ec1847f167292d3fde023cb4c994a4ceeec283072b95440131f09 + manager: conda + name: idna + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/idna-3.4-pyhd8ed1ab_0.tar.bz2 + version: '3.4' +- category: main + dependencies: + python: '>=3.4' + hash: + md5: 7de5386c8fea29e76b303f37dde4c352 + sha256: c2bfd7043e0c4c12d8b5593de666c1e81d67b83c474a0a79282cc5c4ef845460 + manager: conda + name: imagesize + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 + version: 1.4.1 +- category: main + dependencies: + python: '' + hash: + md5: 39161f81cc5e5ca45b8226fbb06c6905 + sha256: 9423ded508ebda87dae21d7876134e406ffeb88e6059f3fe1a909d180c351959 + manager: conda + name: iniconfig + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/iniconfig-1.1.1-pyh9f0ad1d_0.tar.bz2 + version: 1.1.1 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 3c3de74912f11d2b590184f03c7cd09b + sha256: 31e3492686b4e92b53db9b48bc0eb03873b1caaf28629fee7d2d47627a2c56d3 + manager: conda + name: itsdangerous + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/itsdangerous-2.1.2-pyhd8ed1ab_0.tar.bz2 + version: 2.1.2 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 9800ad1699b42612478755a2d26c722d + sha256: 16639759b811866d63315fe1391f6fb45f5478b823972f4d3d9f0392b7dd80b8 + manager: conda + name: jeepney + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2 + version: 0.8.0 +- category: main + dependencies: + python: '' + hash: + md5: 5988f73e79824c7900954539fbfad3fa + sha256: f75db900a1886fc0813af806a127186506c669431b73a92600de06aadae922ae + manager: conda + name: jmespath + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jmespath-0.10.0-pyh9f0ad1d_0.tar.bz2 + version: 0.10.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 737c0737e5d262688097097534fb1bd5 + sha256: 04e6b6fbec9e262781c5c753cee5c6baf5e22767242ec3db54d2208463814df1 + manager: conda + name: jsondiff + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsondiff-2.0.0-pyhd8ed1ab_0.tar.bz2 + version: 2.0.0 +- category: main + dependencies: + python: '' + hash: + md5: 07d85c22a3beb102a48cd123df84c2a6 + sha256: da279af2285d8f575a7f5652e83bf7f36155c4c63154e385a9d171efcc607bc1 + manager: conda + name: jsonpointer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonpointer-2.0-py_0.tar.bz2 + version: '2.0' +- category: main + dependencies: + expat: '>=2.4.8,<3.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.10.4,<3.0a0' + icu: '>=70.1,<71.0a0' + jpeg: '>=9e,<10a' + libgcc-ng: '>=10.3.0' + libpng: '>=1.6.37,<1.7.0a0' + libtiff: '>=4.3.0,<5.0a0' + libwebp: '' + libwebp-base: '>=1.2.2,<2.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + zlib: '>=1.2.11,<1.3.0a0' + hash: + md5: ea9758cf553476ddf75c789fdd239dc5 + sha256: ce87f320fb409c453671fc0c074ba04987f75b4e9a88d074650f23a92eae1054 + manager: conda + name: libgd + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgd-2.3.3-h18fbbfe_3.tar.bz2 + version: 2.3.3 +- category: main + dependencies: + gnutls: '>=3.7.6,<3.8.0a0' + libgcc-ng: '>=12' + hash: + md5: 78ff89df42ec0d4fe4355490d7843d9b + sha256: 780c82366caab4a741f2a4baa901a9b71fad6c2b8f1f64c168f10f61a939e9d4 + manager: conda + name: libmicrohttpd + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libmicrohttpd-0.9.75-h2603550_1.tar.bz2 + version: 0.9.75 +- category: main + dependencies: + python: '>=3.4' + hash: + md5: 6b0e0b484a96af5101026533bef1f93b + sha256: df8809d4eadd5849452cfb2bfc26d4c967159d4c00865c338c7b7817ce3bcb1d + manager: conda + name: libusb1 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/libusb1-2.0.1-pyhd8ed1ab_0.tar.bz2 + version: 2.0.1 +- category: main + dependencies: + python: '' + hash: + md5: c104d98e09c47519950cffb8dd5b4f10 + sha256: d3a68045ef74a2a7b8c8a55b242fdbc875d362e37adcf793613cf0d8c8e4fbf7 + manager: conda + name: lockfile + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/lockfile-0.12.2-py_1.tar.bz2 + version: 0.12.2 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: f6dfba59b0021f654e55c226634f39d4 + sha256: 9ad66a1d52da6f4bcdb832539e15762b72e1c75c7c32461be6e02c2da53c02d3 + manager: conda + name: more-itertools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/more-itertools-8.14.0-pyhd8ed1ab_0.tar.bz2 + version: 8.14.0 +- category: main + dependencies: + python: '>=3.8' + hash: + md5: 52243eec8c5b9d22924d1c463b01a1d8 + sha256: 9ba4aab5995231c4ee04545876856784a2833b1d3068c71d8b9aee3d049dab8c + manager: conda + name: networkx + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/networkx-2.8.6-pyhd8ed1ab_0.tar.bz2 + version: 2.8.6 +- category: main + dependencies: + python: '>=2.7' + hash: + md5: a4eea5bff523f26442405bc5d1f52adb + sha256: 9153f0f38c76a09da7688a61fdbf8f3d7504e2326bef53e4ec20d994311b15bd + manager: conda + name: pastel + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pastel-0.2.1-pyhd8ed1ab_0.tar.bz2 + version: 0.2.1 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 0f2d0da112ff6fd76cc3ce038d72d2c9 + sha256: 2f025bd6425932cbbca83a24194f8c4ef098d6aa4b4c6f878f73d926a1041303 + manager: conda + name: pkginfo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.8.3-pyhd8ed1ab_0.tar.bz2 + version: 1.8.3 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 2fb3f88922e7aec26ba652fcdfe13950 + sha256: a46843e317318405a8c66b640e7ad0c95d2f536918faa4f36cdfcda852000bcd + manager: conda + name: platformdirs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-2.5.2-pyhd8ed1ab_1.tar.bz2 + version: 2.5.2 +- category: main + dependencies: + python: '' + hash: + md5: 359eeb6536da0e687af562ed265ec263 + sha256: fb31e006a25eb2e18f3440eb8d17be44c8ccfae559499199f73584566d0a444a + manager: conda + name: ptyprocess + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 + version: 0.7.0 +- category: main + dependencies: + python: '>=2.7' + hash: + md5: b4613d7e7a493916d867842a6a148054 + sha256: 268be33a290e3d51467ab29cbb5a80cf79f69dade2f2dead25d7f80d76c3543a + manager: conda + name: py + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/py-1.11.0-pyh6c4a22f_0.tar.bz2 + version: 1.11.0 +- category: main + dependencies: + python: '' + hash: + md5: 06d04c9f8f72ac77911db942eda24fb9 + sha256: b2c1bb18ab7bf36263e0b3f29bd2991a108ec1957051f9f5d925efeaf7ed1344 + manager: conda + name: pyasn1 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.4.8-py_0.tar.bz2 + version: 0.4.8 +- category: main + dependencies: + python: ==2.7.*|>=3.4 + hash: + md5: 076becd9e05608f8dc72757d5f3a91ff + sha256: 74c63fd03f1f1ea2b54e8bc529fd1a600aaafb24027b738d0db87909ee3a33dc + manager: conda + name: pycparser + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 + version: '2.21' +- category: main + dependencies: + python: '>=3.3' + hash: + md5: edf8651c4379d9d1495ad6229622d150 + sha256: 50bd91767686bfe769e50a5a1b883e238d944a6163fea43e7c0beaac54ca674f + manager: conda + name: pylev + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pylev-1.4.0-pyhd8ed1ab_0.tar.bz2 + version: 1.4.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 3087df8c636c5a00e694605c39ce4982 + sha256: fc6b77ac4132298a70d5f5cd830fa876a1935a2c5a0a319aad0e90423fd186a4 + manager: conda + name: pyparsing + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.0.6-pyhd8ed1ab_0.tar.bz2 + version: 3.0.6 +- category: main + dependencies: + __unix: '' + python: '>=3.8' + hash: + md5: 2a7de29fb590ca14b5243c4c812c8025 + sha256: a42f826e958a8d22e65b3394f437af7332610e43ee313393d1cf143f0a2d274b + manager: conda + name: pysocks + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 + version: 1.7.1 +- category: main + dependencies: + python: 3.9.* + hash: + md5: 39adde4247484de2bb4000122fdcf665 + sha256: 67231829ea0101fee30c68f788fdba40a11bbee8fdac556daaab5832bd27bf3d + manager: conda + name: python_abi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.9-2_cp39.tar.bz2 + version: '3.9' +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 974bca71d00364630f63f31fa7e059cb + sha256: 8e5c8bc3508e8995431e94c5019405ac5c4e7612bb2c9ea372340f2b7d91e8c5 + manager: conda + name: pytz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pytz-2022.2.1-pyhd8ed1ab_0.tar.bz2 + version: 2022.2.1 +- category: main + dependencies: + __glibc: '>=2.17,<3.0.a0' + libcurl: '>=7.83.1,<8.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + pixman: '>=0.40.0,<1.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: def7188533bc19a8df31e57de92260cf + sha256: 0e6f27f17a562308344271e8011553afc7335176ec415a8e89f07892df06db31 + manager: conda + name: qemu + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/qemu-5.0.0-hb15d774_0.tar.bz2 + version: 5.0.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 65bacdee3cac51e49f45d530bbd5e90f + sha256: 5e00e61916a46c1857871adec258952a50a86542883bcbaa1f1df572bd51e786 + manager: conda + name: shellingham + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/shellingham-1.5.0-pyhd8ed1ab_0.tar.bz2 + version: 1.5.0 +- category: main + dependencies: + python: '' + hash: + md5: e5f25f8dbc060e9a8d912e432202afc2 + sha256: a85c38227b446f42c5b90d9b642f2c0567880c15d72492d8da074a59c8f91dd6 + manager: conda + name: six + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 + version: 1.16.0 +- category: main + dependencies: + python: '' + hash: + md5: 3a8dc70789709aa315325d5df06fb7e4 + sha256: 091de70ee6bfe063e0c0f77336975d124fd1e3f49b9c58d97c0c7b3d287c0002 + manager: conda + name: smmap + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/smmap-3.0.5-pyh44b312d_0.tar.bz2 + version: 3.0.5 +- category: main + dependencies: + python: '>=2' + hash: + md5: 4d22a9315e78c6827f806065957d566e + sha256: a0fd916633252d99efb6223b1050202841fa8d2d53dacca564b0ed77249d3228 + manager: conda + name: snowballstemmer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 + version: 2.2.0 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 20b2eaeaeea4ef9a9a0d99770620fd09 + sha256: bd7838485e34e7ec5717552f83fa4a02623ff5fb854c10f2f57080b85d13c69e + manager: conda + name: sphinxcontrib-applehelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-1.0.2-py_0.tar.bz2 + version: 1.0.2 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 68e01cac9d38d0e717cd5c87bc3d2cc9 + sha256: 66cca7eccb7f92eee53f9f5a552e3e1d643daa3a1ebd03c185e2819e5c491576 + manager: conda + name: sphinxcontrib-devhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-devhelp-1.0.2-py_0.tar.bz2 + version: 1.0.2 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 77dad82eb9c8c1525ff7953e0756d708 + sha256: 3c1170f3a3170e59b156e375c949db98941892850e59fa4085c437a5df0e767d + manager: conda + name: sphinxcontrib-htmlhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.0.0-pyhd8ed1ab_0.tar.bz2 + version: 2.0.0 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 67cd9d9c0382d37479b4d306c369a2d4 + sha256: a42415fc789e9f6ae2e18f07ac143d2e9ce73a35a55ecf1dd1b3d055dd1e6dbe + manager: conda + name: sphinxcontrib-jsmath + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-py_0.tar.bz2 + version: 1.0.1 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: d01180388e6d1838c3e1ad029590aa7a + sha256: 35d8f01fc798d38b72ae003c040d2dee650d315f904268a1f793d4d59460d1e2 + manager: conda + name: sphinxcontrib-qthelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-qthelp-1.0.3-py_0.tar.bz2 + version: 1.0.3 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 9ff55a0901cf952f05c654394de76bf7 + sha256: 890bbf815cff114ddbb618b9876d492fce07d02956c1d7b3d46cb7f835f563f6 + manager: conda + name: sphinxcontrib-serializinghtml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.5-pyhd8ed1ab_2.tar.bz2 + version: 1.1.5 +- category: main + dependencies: + python: '>=2.7' + hash: + md5: f832c45a477c78bebd107098db465095 + sha256: f0f3d697349d6580e4c2f35ba9ce05c65dc34f9f049e85e45da03800b46139c1 + manager: conda + name: toml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + version: 0.10.2 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 5844808ffab9ebdb694585b50ba02a96 + sha256: 4cd48aba7cd026d17e86886af48d0d2ebc67ed36f87f6534f4b67138f5a5a58f + manager: conda + name: tomli + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + version: 2.0.1 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 92facfec94bc02d6ccf42e7173831a36 + sha256: 90229da7665175b0185183ab7b53f50af487c7f9b0f47cf09c184cbc139fd24b + manager: conda + name: toolz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.0-pyhd8ed1ab_0.tar.bz2 + version: 0.12.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 5f4386493c11ddad5b5fb7bd7a0fe4ba + sha256: 089c817ee6a6391ee60fd9ecb49eb04dbcdbf4df7f86612cf0d4a863998404ba + manager: conda + name: types-pyyaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.4-pyhd8ed1ab_0.tar.bz2 + version: 6.0.4 +- category: main + dependencies: + python: '>=3' + hash: + md5: e6573ac68718f17b9d4f5c8eda3190f2 + sha256: ec1cfe0b7dc55a22223562cad799e0b16d122dab611c9923b6068d27a784ba2f + manager: conda + name: typing + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/typing-3.10.0.0-pyhd8ed1ab_0.tar.bz2 + version: 3.10.0.0 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: a9d85960bc62d53cc4ea0d1d27f73c98 + sha256: 1fe5b48aa997616a7537de4d05c0b7fd11b712895e35493cac7604e8d5f97ad7 + manager: conda + name: typing_extensions + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.3.0-pyha770c72_0.tar.bz2 + version: 4.3.0 +- category: main + dependencies: + python: '' + hash: + md5: 3563be4c5611a44210d9ba0c16113136 + sha256: 302f4f4bd1ad00c0be1426ecf6bb01db59cfd8aff3de0cf1596526dca1a6b70e + manager: conda + name: webencodings + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-py_1.tar.bz2 + version: 0.5.1 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: f3b20ec2c97bad7104679b1d62eb7a11 + sha256: 911ac2b5c2bbe602c806ded8e5a40bd132e99ffa1dda10e27e6bc046c962fed6 + manager: conda + name: websocket-client + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.4.1-pyhd8ed1ab_0.tar.bz2 + version: 1.4.1 +- category: main + dependencies: + python: '!=3.0,!=3.1,!=3.2,!=3.3,!=3.4' + hash: + md5: 1ca02aaf78d9c70d9a81a3bed5752022 + sha256: aede66e6370f3b936164a703e48362f9080d7162234058fb2ee63cc84d528afc + manager: conda + name: wheel + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.37.1-pyhd8ed1ab_0.tar.bz2 + version: 0.37.1 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: b5b33faed6ed2b4ba47a690b8f5c0818 + sha256: eb40b33ae953e0020406318c9be0eb6edf62f3aa8e64ab0bf1953440b1a92763 + manager: conda + name: xmltodict + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/xmltodict-0.13.0-pyhd8ed1ab_0.tar.bz2 + version: 0.13.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-inputproto: '' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-libxext: 1.3.* + xorg-libxfixes: 5.0.* + hash: + md5: e77615e5141cad5a2acaa043d1cf0ca5 + sha256: 745c1284a96b4282fe6fe122b2643e1e8c26a7ff40b733a8f4b61357238c4e68 + manager: conda + name: xorg-libxi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.7.10-h7f98852_0.tar.bz2 + version: 1.7.10 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: a3508a0c850745b875de88aea4c40cc5 + sha256: bb6920451dad059ca31581ca6e36c5f1534fad8a8efe869c7eb9c9e3846b4f53 + manager: conda + name: zipp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.8.1-pyhd8ed1ab_0.tar.bz2 + version: 3.8.1 +- category: main + dependencies: + python: '>=3.6' + pytz: '' + hash: + md5: 72f1c6d03109d7a70087bc1d029a8eda + sha256: 45297f4ce5786ff5bdf188846fcaa163f45629eebc285faf2e9e2cbeb6e57a91 + manager: conda + name: babel + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/babel-2.10.3-pyhd8ed1ab_0.tar.bz2 + version: 2.10.3 +- category: main + dependencies: + python: '>=3.6' + typing_extensions: '' + hash: + md5: be3b5cae027b3ead96829ef7717c76c3 + sha256: 4592888a3c5f1ad2e36ff89039ff1912c623695f985622cf0fcfc2d0cb315053 + manager: conda + name: botocore-stubs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-stubs-1.24.7-pyhd8ed1ab_0.tar.bz2 + version: 1.24.7 +- category: main + dependencies: + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + pycparser: '' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 61e961a94c8fd535e4496b17e7452dfe + sha256: 36340ca4f6935f5841197aa91c6ffef5966b031fa1267cdee7e3add5ba4dfc81 + manager: conda + name: cffi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.15.1-py39he91dace_0.tar.bz2 + version: 1.15.1 +- category: main + dependencies: + clang-format: 14.0.6 default_h2e3cab8_0 + libclang: '>=14.0.6,<14.1.0a0' + libclang-cpp14: '>=14.0.6,<14.1.0a0' + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 8ab329e2e110199b9adcf872c523df1a + sha256: ee142d5db1a2e1cde2fb678cd12b67db28da5b98e15b699988051ff65c6f1af4 + manager: conda + name: clang-tools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 40edd9ebc04e4b4ec27c1008e5e3f99d + sha256: f828e0eac4f14d8868039f93cb4674582d95be4c1d89b34007f8154af3af4edf + manager: conda + name: click + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/click-8.1.3-py39hf3d152e_0.tar.bz2 + version: 8.1.3 +- category: main + dependencies: + crashtest: '>=0.3.0,<0.4.0' + pastel: '>=0.2.0,<0.3.0' + pylev: '>=1.3,<2.0' + python: '' + hash: + md5: 159273f717a11e53b2656f8b6521a5e2 + sha256: 59b5c9ea3415e45e1beb1c191e3a0bf0dcca92c200a184704ea55002d1ef535c + manager: conda + name: clikit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/clikit-0.6.2-pyh9f0ad1d_0.tar.bz2 + version: 0.6.2 +- category: main + dependencies: + python: '' + six: '>=1.4.0' + hash: + md5: c69f19038efee4eb534623610d0c2053 + sha256: 2ba7e3e4f75e07b42246b4ba8569c983ecbdcda47b1b900632858a23d91826f2 + manager: conda + name: docker-pycreds + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/docker-pycreds-0.4.0-py_0.tar.bz2 + version: 0.4.0 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: ec83bf44e734dfd8f0b507156df855a0 + sha256: 23e9ab2a539949427b4e4e02bf52a32427da1fe06cb21154e5cd8205ee40098b + manager: conda + name: docutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.15.2-py39hf3d152e_5.tar.bz2 + version: 0.15.2 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libarchive: '>=3.5.2,<3.6.0a0' + libcurl: '>=7.82.0,<8.0a0' + libgcc-ng: '>=10.3.0' + libmicrohttpd: '>=0.9.75,<0.10.0a0' + libstdcxx-ng: '>=10.3.0' + libzlib: '>=1.2.11,<1.3.0a0' + sqlite: '>=3.38.2,<4.0a0' + xz: '>=5.2.5,<5.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 2e9ec0e21d51118b004f1f98e4fbf598 + sha256: bee5b4a723472cc844775a36dbdca35ecb24f40fbb162924bd8536b05930c3dc + manager: conda + name: elfutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/elfutils-0.187-h989201e_0.tar.bz2 + version: '0.187' +- category: main + dependencies: + expat: '>=2.4.8,<3.0a0' + gmp: '>=6.2.1,<7.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + mpc: '>=1.2.1,<2.0a0' + mpfr: '>=4.1.0,<5.0a0' + ncurses: '>=6.3,<7.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: ae197de48b202c65efd7a61135ac0ae5 + sha256: null + manager: conda + name: esp-tools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/esp-tools-1.0.1-0_h1234567_g8925bf5.tar.bz2 + version: 1.0.1 +- category: main + dependencies: + curl: '>=7.83.1,<8.0a0' + expat: '>=2.4.8,<3.0a0' + gettext: '' + libgcc-ng: '>=12' + libiconv: '>=1.16,<1.17.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + openssl: '>=1.1.1q,<1.1.2a' + pcre2: '>=10.37,<10.38.0a0' + perl: 5.* + hash: + md5: a84d39ce9a34295720b85bbddac14c02 + sha256: 2f889cbbbb16e460e1589d55aeb3a92b3c005403cfd8c64e682b4dab62e30b98 + manager: conda + name: git + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/git-2.37.3-pl5321h36853c3_0.tar.bz2 + version: 2.37.3 +- category: main + dependencies: + python: '>=3.4' + smmap: '>=3.0.1,<4' + hash: + md5: 40fc6b14a45dee3a3fd9f302d026108e + sha256: fa018c53bd1c171dccde16c4eb9dd9f3ff6b7f2d222c564d48b5516ec1ee24ec + manager: conda + name: gitdb + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/gitdb-4.0.9-pyhd8ed1ab_0.tar.bz2 + version: 4.0.9 +- category: main + dependencies: + gmp: '>=6.2.1,<7.0a0' + libgcc-ng: '>=9.4.0' + mpc: '>=1.2.1,<2.0a0' + mpfr: '>=4.1.0,<5.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 465c0b520e3ac7d7ed001cb31d1ad3c4 + sha256: 90ede58bfaac41a33801263426cb1f792e6ea48153fe344dc48de0b0fb6cbd7a + manager: conda + name: gmpy2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gmpy2-2.1.2-py39h78fa15d_0.tar.bz2 + version: 2.1.2 +- category: main + dependencies: + python: '>=3.6' + typing_extensions: '>=4' + hash: + md5: d3641a0cd477a56cf13b7f7a5bb9e933 + sha256: 697a9d1be6e3add3e3fbf1e737e87fdc223ab423f382c455372f1bfcc8766bce + manager: conda + name: graphql-core + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/graphql-core-3.2.1-pyhd8ed1ab_0.tar.bz2 + version: 3.2.1 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + freetype: '>=2.12.1,<3.0a0' + graphite2: '' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libstdcxx-ng: '>=12' + hash: + md5: 3c5f4fbd64c7254fbe246ca9d87863b6 + sha256: 4def14eb862e0b05ffce33edbfc2cfc4d0e1720f134d52e378c4b661467069cf + manager: conda + name: harfbuzz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-5.2.0-hf9f4e7c_0.tar.bz2 + version: 5.2.0 +- category: main + dependencies: + python: '' + six: '>=1.9' + webencodings: '' + hash: + md5: b2355343d6315c892543200231d7154a + sha256: 9ad06446fe9847e86cb20d220bf11614afcd2cbe9f58096f08d5d4018877bee4 + manager: conda + name: html5lib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/html5lib-1.1-pyh9f0ad1d_0.tar.bz2 + version: '1.1' +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: f67fbf5dd896aeac1e145638bd1a7abf + sha256: bffda3932fb8aa968ac6ba35d9de9cd3f5b8f8a39945071576c86ec5109482ed + manager: conda + name: humanfriendly + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/humanfriendly-10.0-py39hf3d152e_2.tar.bz2 + version: '10.0' +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + zipp: '>=0.5' + hash: + md5: 4c2a0eabf0b8980b2c755646a6f750eb + sha256: 3a13f3af58e7a5b50516c9bf10473953e51d9a5367f93fafd04c2bccc9162983 + manager: conda + name: importlib-metadata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/importlib-metadata-4.11.4-py39hf3d152e_0.tar.bz2 + version: 4.11.4 +- category: main + dependencies: + python: '>=3.6' + zipp: '>=0.4' + hash: + md5: 24dd95143fc4f3898143c93a6d5a5d41 + sha256: 7a32c0b58ae4e2673f47c73ed1f010681501198e6aaa279c5eddc714bca12b48 + manager: conda + name: importlib_resources + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-3.3.1-pyhd8ed1ab_1.tar.bz2 + version: 3.3.1 +- category: main + dependencies: + more-itertools: '' + python: '>=3.7' + hash: + md5: 6e2ef6e4a000db889c124f3927c24f7c + sha256: 82f11df8c7464fe28eb6dab0ebd755aacd8d2b4f15ba97b769bdaee27983e4d8 + manager: conda + name: jaraco.classes + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.2.2-pyhd8ed1ab_0.tar.bz2 + version: 3.2.2 +- category: main + dependencies: + jsonpointer: '>=1.9' + python: '>=3.6' + hash: + md5: 09150b51b0528a31a0f6500b96fdde82 + sha256: d87fd8da2d3327744821b6b1d1e5b76e4077224fb626ce02d6623a1bc6ee2563 + manager: conda + name: jsonpatch + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonpatch-1.32-pyhd8ed1ab_0.tar.bz2 + version: '1.32' +- category: main + dependencies: + python: '' + six: '' + hash: + md5: 7b503c6c097fa8677d6ff17d2bfb623f + sha256: b89ace740500f4a311475ae44add2675d72dc42c02971910ea844812edf93736 + manager: conda + name: junit-xml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/junit-xml-1.9-pyh9f0ad1d_0.tar.bz2 + version: '1.9' +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: c5d6241b3ec5d02c316a5f66f14024c7 + sha256: 32fa01aacf67d40b54fbcf9c7e89aae964450ffdb58bb93baba068d8b5c72c3e + manager: conda + name: kiwisolver + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.3.1-py39h1a9c180_1.tar.bz2 + version: 1.3.1 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 7cda413e43b252044a270c2477031c5c + sha256: 05e22cdcefeebe18698acc1b7445fd7e8b4b07c4d65c99f688ddeff8569d42d0 + manager: conda + name: markupsafe + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.1-py39hb9d737c_1.tar.bz2 + version: 2.1.1 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 35b4a1a56408657cd2c6ce7145c21ecf + sha256: f3a6149980035ee354ddbaf026e8e82db91dcdd1759439522e10d0d64decf237 + manager: conda + name: msgpack-python + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.4-py39hf939315_0.tar.bz2 + version: 1.0.4 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: fc7500ebc3299b6f4a66652fa83f627e + sha256: 2f6ad58442a4f1daa114b440fff46e018cc7323493f91a2bab0bb23d5935f03d + manager: conda + name: mypy_extensions + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mypy_extensions-0.4.3-py39hf3d152e_5.tar.bz2 + version: 0.4.3 +- category: main + dependencies: + libblas: '>=3.8.0,<4.0a0' + libcblas: '>=3.8.0,<4.0a0' + libgcc-ng: '>=10.3.0' + liblapack: '>=3.8.0,<4.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 0cf333996ebdeeba8d1c8c1c0ee9eff9 + sha256: 6ec8d7ade9e083de4f8a532d9e71d14e780cc9059a625b57174cc68f9a99b930 + manager: conda + name: numpy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.19.5-py39hd249d9e_3.tar.bz2 + version: 1.19.5 +- category: main + dependencies: + pyparsing: '>=2.0.2' + python: '>=2.7' + hash: + md5: be69a38e912054a62dc82cc3c7711a64 + sha256: 887645177378f0d383b150259c7f255e9a1a47383872be118e197dc175718316 + manager: conda + name: packaging + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/packaging-20.9-pyh44b312d_0.tar.bz2 + version: '20.9' +- category: main + dependencies: + ptyprocess: '>=0.5' + python: '' + hash: + md5: 5909e7b978141dd80d28dbf9de627827 + sha256: 04eef875d461732ef22cd19bf2c989c40e73b5da625bf6a6b82ddae200e90e56 + manager: conda + name: pexpect + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.8.0-pyh9f0ad1d_2.tar.bz2 + version: 4.8.0 +- category: main + dependencies: + freetype: '>=2.10.4,<3.0a0' + jpeg: '>=9e,<10a' + lcms2: '>=2.12,<3.0a0' + libgcc-ng: '>=12' + libtiff: '>=4.4.0,<5.0a0' + libwebp-base: '>=1.2.4,<2.0a0' + libxcb: '>=1.13,<1.14.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + openjpeg: '>=2.5.0,<2.6.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + tk: '>=8.6.12,<8.7.0a0' + hash: + md5: 3b74a959f6a8008f5901de60b3572c09 + sha256: 607a85830e1c39ded9c825ab0fb24d0768a5c11314dc99957f10479cd2961936 + manager: conda + name: pillow + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pillow-9.2.0-py39hd5dbb17_2.tar.bz2 + version: 9.2.0 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: c375c89340e563053f3656c7f134d265 + sha256: d82e717937e171a2b124030acd2625e0a3ab62e82a137a21c03a91013280c29f + manager: conda + name: pluggy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pluggy-1.0.0-py39hf3d152e_3.tar.bz2 + version: 1.0.0 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: bfefe349de77edb720cb4688821ff78e + sha256: 83cdcf4c17264d63e972f079408bd86ab15a9b14230d168b3c35b5971860be11 + manager: conda + name: poetry-core + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/poetry-core-1.0.8-py39hf3d152e_1.tar.bz2 + version: 1.0.8 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 1e7ffe59e21862559e06b981817e5058 + sha256: ffd165f67a3d5bec03fd3d7c9ab35b8ff4d0f66c5be42f5d4d50db96637a34aa + manager: conda + name: psutil + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.2-py39hb9d737c_0.tar.bz2 + version: 5.9.2 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: b7d981539b1a880d19c6a158104a3fa1 + sha256: e7685b82c1d6269d5fc3a626a4f26138e4136b4b470f308f1a65b01ff17b3b38 + manager: conda + name: pycosat + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pycosat-0.6.3-py39hb9d737c_1010.tar.bz2 + version: 0.6.3 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 306061499621615a60841fa7fc8ba75b + sha256: c7d6dc368e1e3092dc3b3eae5841a6f1d0952033f4e259fb639ab54958c4a6b8 + manager: conda + name: pyinotify + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyinotify-0.9.6-py39hf3d152e_1005.tar.bz2 + version: 0.9.6 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: e2575d7508c7933047544ac7a15e021d + sha256: 9da8d2a32f1d961eaefb5f9aedb53ce74ad4da1a6272ae4cd4eb2fab7d6ed1b0 + manager: conda + name: pyrsistent + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyrsistent-0.18.1-py39hb9d737c_1.tar.bz2 + version: 0.18.1 +- category: main + dependencies: + python: '>=3.6' + six: '>=1.5' + hash: + md5: dd999d1cc9f79e67dbb855c8924c7984 + sha256: 54d7785c7678166aa45adeaccfc1d2b8c3c799ca2dc05d4a82bb39b1968bd7da + manager: conda + name: python-dateutil + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.8.2-pyhd8ed1ab_0.tar.bz2 + version: 2.8.2 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + yaml: '>=0.2.5,<0.3.0a0' + hash: + md5: 896c2e9e5ed4b8b9148380b658898fdf + sha256: 030c5a81b4aafcfa169ba13ef7cbc5f1cf201b524013082903edd68471086d1e + manager: conda + name: pyyaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-5.4.1-py39hb9d737c_3.tar.bz2 + version: 5.4.1 +- category: main + dependencies: + pyasn1: '>=0.1.3' + python: '' + hash: + md5: 3452ab3790dbb1df9508b3fa4ea2f806 + sha256: 6ea0fcd8f40c7f78e2c6cff344bb91f457682aa352ee48364246371a41410ee8 + manager: conda + name: rsa + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/rsa-4.7.2-pyh44b312d_0.tar.bz2 + version: 4.7.2 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: a0fabd69dd35bb24ec84d28dc01c3c5b + sha256: 388a1b6b559156b27f6eb1952a85632ad907f0572d31e3897dba338d28c44860 + manager: conda + name: ruamel.yaml.clib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml.clib-0.2.6-py39hb9d737c_1.tar.bz2 + version: 0.2.6 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + yaml: '>=0.2.5,<0.3.0a0' + hash: + md5: 89efb3c015ef8bc2a33535a2c1b852b2 + sha256: d417615e90a5f66004ef9f742396db129eaa0dcbe7f723288eb2ddc34d39750f + manager: conda + name: ruamel_yaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel_yaml-0.15.80-py39hb9d737c_1007.tar.bz2 + version: 0.15.80 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 4252d0c211566a9f65149ba7f6e87aa4 + sha256: ec8146799fabb0edfd0b2622fdd05413c9a2fcd13dfa846958214f9909ab3435 + manager: conda + name: setuptools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/setuptools-59.8.0-py39hf3d152e_1.tar.bz2 + version: 59.8.0 +- category: main + dependencies: + python: '>=3.6' + typing: '>=3.6,<4.0' + hash: + md5: c57d6a6abb22c3796add680597ee0096 + sha256: 824543c373d6318c335f7c304ef38dec40fe8e0f88ad7c7db92e181e3c5b1170 + manager: conda + name: tomlkit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.11.4-pyha770c72_0.tar.bz2 + version: 0.11.4 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: a3c57360af28c0d9956622af99a521cd + sha256: c51e56ebf493a94f4f25840a0175405b3f650cd63ebcd6e19a68ac9cfb5e5411 + manager: conda + name: tornado + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.2-py39hb9d737c_0.tar.bz2 + version: '6.2' +- category: main + dependencies: + colorama: '' + python: '>=2.7' + hash: + md5: 5526ff3f88f9db87bb0924b9ce575345 + sha256: d196e0c3a057a840147fa23d3d43eafd6b63258846bdafe8ac17f70b534f91bd + manager: conda + name: tqdm + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.64.1-pyhd8ed1ab_0.tar.bz2 + version: 4.64.1 +- category: main + dependencies: + typing_extensions: 4.3.0 pyha770c72_0 + hash: + md5: f3e98e944832fb271a0dbda7b7771dc6 + sha256: 57ea0e9a150b698f5a7b21b12987da7c321bb331fd07116ecced24eb1e056d2f + manager: conda + name: typing-extensions + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.3.0-hd8ed1ab_0.tar.bz2 + version: 4.3.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + ncurses: '>=6.2,<7.0.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + readline: '>=8.0,<9.0a0' + zlib: '>=1.2.11,<1.3.0a0' + hash: + md5: bf0434c73a112c64bb1dd4ea6129e8c2 + sha256: c456c945aeb463d725ce133934f0294a2f4b85bd6ca6d433f3f95454d1112d6b + manager: conda + name: util-linux + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/util-linux-2.36-py39h28948ff_1.tar.bz2 + version: '2.36' +- category: main + dependencies: + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + ncurses: '>=6.3,<7.0a0' + perl: '>=5.32.1,<5.33.0a0 *_perl5' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: ccb6242365b032a5469310116286d834 + sha256: e2b8864ce60cc0f39da4e82cb786d474d7b572114952cc3dea20a287e3731684 + manager: conda + name: vim + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/vim-9.0.0335-py39pl5321h20e6244_0.tar.bz2 + version: 9.0.0335 +- category: main + dependencies: + distlib: '>=0.3.5,<1' + filelock: '>=3.4.1,<4' + platformdirs: '>=2.4,<3' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 165e71a44187ac22e2e1669fd3ca2392 + sha256: 31540fea0c3fd62543ee65ad4b2deff1eac08f4765b1037db7d6a82fbc4719c2 + manager: conda + name: virtualenv + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/virtualenv-20.16.5-py39hf3d152e_0.tar.bz2 + version: 20.16.5 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 25a4f17bf308bc36a15ebe63c3864ac7 + sha256: 3b9eaa6d7040406ab31023bd7596b4c49c4128216b702ee64a8a9cccc74b45e0 + manager: conda + name: wrapt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.14.1-py39hb9d737c_0.tar.bz2 + version: 1.14.1 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-inputproto: '' + xorg-libx11: '>=1.7.1,<2.0a0' + xorg-libxext: 1.3.* + xorg-libxi: 1.7.* + xorg-recordproto: '' + hash: + md5: a220b1a513e19d5cb56c1311d44f12e6 + sha256: 9a51ae2869b9a47735539dada9d85534418a765d1461c9f91fe7564f3ee75e87 + manager: conda + name: xorg-libxtst + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.3-h7f98852_1002.tar.bz2 + version: 1.2.3 +- category: main + dependencies: + cffi: '>=1.0.0' + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 05a99367d885ec9990f25e74128a8a08 + sha256: 4a520850207e965244c70a412f030f1c353b70b942ad99a0a0cfb83e64bbd60e + manager: conda + name: brotlipy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/brotlipy-0.7.0-py39hb9d737c_1004.tar.bz2 + version: 0.7.0 +- category: main + dependencies: + clikit: '>=0.6.0,<0.7.0' + python: '>=3.6' + hash: + md5: 4c82b11a3d06031bd58e7d869f53d965 + sha256: a3a5beaf5b4a5ba671580164e6b1da77837f9d69414b095bd3231e84a85f505c + manager: conda + name: cleo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cleo-0.8.1-pyhd8ed1ab_2.tar.bz2 + version: 0.8.1 +- category: main + dependencies: + click: '' + python: '>=3.6' + hash: + md5: 72a46ffc25701c173932fd55cf0965d3 + sha256: 7384b6c194f9822d7cc2c9d82409b2fd571fad96f95e6e27c9098f63772d36fd + manager: conda + name: click-default-group + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/click-default-group-1.2.2-pyhd8ed1ab_1.tar.bz2 + version: 1.2.2 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + tqdm: '' + hash: + md5: ae2e8e8dd87ed4286c89fc8c081e9bdf + sha256: e11ea9eac5dcaf43b3a3292c8daeed9f6c9dbf568a7ca2e27909d3a95c35ef35 + manager: conda + name: conda-package-handling + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-package-handling-1.9.0-py39hb9d737c_0.tar.bz2 + version: 1.9.0 +- category: main + dependencies: + cffi: '>=1.12' + libgcc-ng: '>=12' + openssl: '>=1.1.1q,<1.1.2a' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: edc3668e7b71657237f94cf25e286478 + sha256: 5082e58789cb9d8920c5ca1aff9bbf07a78b44173d2db85f1e9b2081e0aebe52 + manager: conda + name: cryptography + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cryptography-37.0.4-py39hd97740a_0.tar.bz2 + version: 37.0.4 +- category: main + dependencies: + cloudpickle: '' + pyinotify: '' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: b672b2aae86f427adab76a571ef1cb89 + sha256: 45df810e229b5c15ad9e8197e15c2d2ec47c5170dcaf1b99d3ea4189744d003c + manager: conda + name: doit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/doit-0.35.0-py39hf3d152e_0.tar.bz2 + version: 0.35.0 +- category: main + dependencies: + e2fsprogs-libs: 1.46.2 h166bdaf_0 + libgcc-ng: '>=10.3.0' + util-linux: '>=2.36,<2.37.0a0' + hash: + md5: 3a5caf0e611d38f05b004a25423e07cb + sha256: fac9c225ac324519cf1224cd87c201a7b18f0c5f42033ef9db7a480a9163f348 + manager: conda + name: e2fsprogs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/e2fsprogs-1.46.2-h166bdaf_0.tar.bz2 + version: 1.46.2 +- category: main + dependencies: + gmpy2: '' + python: '>=3.3' + six: '>=1.9.0' + hash: + md5: 566165664cc0964a7202dc239af6619d + sha256: 7770998e7b1ad6b80d1c3ffa71ae3f8812260676f0268d339abe32879115bc0c + manager: conda + name: ecdsa + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/ecdsa-0.18.0-pyhd8ed1ab_1.tar.bz2 + version: 0.18.0 +- category: main + dependencies: + gitdb: '>=4.0.1,<5' + python: '>=3.7' + typing_extensions: '>=3.7.4.3' + hash: + md5: 20acbaab17a50ac9b64138eb9a0e1af8 + sha256: 6f523156cdc0f2c597ad869d10d12503143a361259d01d180769a06fbdbcc9ec + manager: conda + name: gitpython + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.27-pyhd8ed1ab_0.tar.bz2 + version: 3.1.27 +- category: main + dependencies: + importlib-metadata: '>=4.11.4,<4.11.5.0a0' + hash: + md5: 9a1925fdb91c81437b8012e48ede6851 + sha256: 85049d953d6894e1379162e0f01cf4b8828d40f707cc511edb201e9159f091fc + manager: conda + name: importlib_metadata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-4.11.4-hd8ed1ab_0.tar.bz2 + version: 4.11.4 +- category: main + dependencies: + markupsafe: '>=2.0' + python: '>=3.7' + hash: + md5: c8490ed5c70966d232fdd389d0dbed37 + sha256: b045faba7130ab263db6a8fdc96b1a3de5fcf85c4a607c5f11a49e76851500b5 + manager: conda + name: jinja2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.2-pyhd8ed1ab_1.tar.bz2 + version: 3.1.2 +- category: main + dependencies: + attrs: '>=17.4.0' + importlib-metadata: '' + pyrsistent: '>=0.14.0' + python: '>=3.6' + setuptools: '' + six: '>=1.11.0' + hash: + md5: 66125e28711d8ffc04a207a2b170316d + sha256: d74a3ddd3c3dd9bd7b00110a196e3af90490c5660674f18bfd53a8fdf91de418 + manager: conda + name: jsonschema + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-3.2.0-pyhd8ed1ab_3.tar.bz2 + version: 3.2.0 +- category: main + dependencies: + elfutils: '>=0.187,<0.188.0a0' + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 5b3ed39ee3809d63d347b649de0a45f8 + sha256: null + manager: conda + name: libdwarf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/libdwarf-0.0.0.20190110_28_ga81397fc4-h753d276_0.tar.bz2 + version: 0.0.0.20190110_28_ga81397fc4 +- category: main + dependencies: + python: '' + setuptools: '' + six: '' + tornado: '' + hash: + md5: b7190e3ec3eff52839434bf4698e2d62 + sha256: 0e88f8f8abc0a641c2f3b1b306258fab87c39a95f3495e53e6b3873107da1765 + manager: conda + name: livereload + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/livereload-2.6.3-pyh9f0ad1d_0.tar.bz2 + version: 2.6.3 +- category: main + dependencies: + certifi: '>=2020.06.20' + cycler: '>=0.10' + freetype: '>=2.10.4,<3.0a0' + kiwisolver: '>=1.0.1' + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + numpy: '>=1.19.5,<2.0a0' + pillow: '>=6.2.0' + pyparsing: '>=2.0.3,!=2.0.4,!=2.1.2,!=2.1.6' + python: '>=3.9,<3.10.0a0' + python-dateutil: '>=2.1' + python_abi: 3.9.* *_cp39 + setuptools: '' + tk: '>=8.6.10,<8.7.0a0' + tornado: '' + hash: + md5: 9ec0b2186fab9121c54f4844f93ee5b7 + sha256: 1c5ddf4b934f34da73e91f3009a171d64372eac0eb8801916a0acadf9693e61e + manager: conda + name: matplotlib-base + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.3.4-py39h2fa2bec_0.tar.bz2 + version: 3.3.4 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + mypy_extensions: '>=0.4.3,<0.5.0' + psutil: '>=4.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + tomli: '>=1.1.0' + typing_extensions: '>=3.7.4' + hash: + md5: 2ec6c26d45a781f3d3810fb2de290e8f + sha256: 5329a800c4caa0cb43b4340e7ce0b0ce7a1b0e9dde450b864c83605f4c08492c + manager: conda + name: mypy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mypy-0.931-py39h3811e60_2.tar.bz2 + version: '0.931' +- category: main + dependencies: + alsa-lib: '>=1.2.7.2,<1.2.8.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + giflib: '>=5.2.1,<5.3.0a0' + harfbuzz: '>=5.1.0,<6.0a0' + jpeg: '>=9e,<10a' + lcms2: '>=2.12,<3.0a0' + libcups: '>=2.3.3,<2.4.0a0' + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + xorg-libx11: '' + xorg-libxext: '' + xorg-libxi: '' + xorg-libxrender: '' + xorg-libxtst: '' + hash: + md5: cd1b2e4756ca8d14bc7501e38360aa79 + sha256: 1274f314793e9b1abb27a2aea581e661d751a4f685be50787bcc135e03fd185b + manager: conda + name: openjdk + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openjdk-17.0.3-h85293d2_2.tar.bz2 + version: 17.0.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + numpy: '>=1.19.4,<2.0a0' + python: '>=3.9,<3.10.0a0' + python-dateutil: '>=2.7.3' + python_abi: 3.9.* *_cp39 + pytz: '>=2017.2' + setuptools: <60.0.0 + hash: + md5: 79fc4b5b3a865b90dd3701cecf1ad33c + sha256: f104a60194c3d39b1b0097bfd889aec57d5d5f074e3e76ac9173318ba8de07fd + manager: conda + name: pandas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pandas-1.1.5-py39hde0f152_0.tar.bz2 + version: 1.1.5 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + fribidi: '>=1.0.10,<2.0a0' + harfbuzz: '>=5.1.0,<6.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + hash: + md5: fead2b3178129155c334c751df4daba6 + sha256: b3bce2d710dbaeb6e704099f5b8866d56e83afd4bc15007f5b31fd8b46509c9c + manager: conda + name: pango + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pango-1.50.10-hc4f8a73_0.tar.bz2 + version: 1.50.10 +- category: main + dependencies: + python: '>=3.7' + setuptools: '' + wheel: '' + hash: + md5: 0b43abe4d3ee93e82742d37def53a836 + sha256: 507ae896a2f9ccc7bbedc2f7fd10dc2ac666575769b55b5e94ca44b86db193e0 + manager: conda + name: pip + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pip-22.2.2-pyhd8ed1ab_0.tar.bz2 + version: 22.2.2 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + typing-extensions: '>=4.1.0' + hash: + md5: e2b6f1e8fb5669ab40c8cb235e0f3a21 + sha256: e7325b056f10f92d20502c3a29ac8301edc87ce1eafadf13c567e54edefbbe39 + manager: conda + name: pydantic + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-1.10.2-py39hb9d737c_0.tar.bz2 + version: 1.10.2 +- category: main + dependencies: + python: '>=3.6' + setuptools: '' + hash: + md5: 9f478e8eedd301008b5f395bad0caaed + sha256: 4f61addd5ab463c5fe7a3040a2d710ff2aed9c989b6cee2de2486187108bcdd5 + manager: conda + name: pygments + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.13.0-pyhd8ed1ab_0.tar.bz2 + version: 2.13.0 +- category: main + dependencies: + attrs: '>=19.2.0' + iniconfig: '' + packaging: '' + pluggy: '>=0.12,<2' + py: '>=1.8.2' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + toml: '' + hash: + md5: 6e76597729a7ac9b0124303c326f4706 + sha256: 12d9d5b7d6e5aa639725dddc35d3f8dec8fe01bd05ccf60ac45975f93d1534cf + manager: conda + name: pytest + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pytest-6.2.5-py39hf3d152e_3.tar.bz2 + version: 6.2.5 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + ruamel.yaml.clib: '>=0.1.2' + setuptools: '' + hash: + md5: 2b94cf785616198b112170b9838262a4 + sha256: 69d7d081acf7880f05d01ab93bfbecb3bc59b4bc8812630a359651b211aadb6a + manager: conda + name: ruamel.yaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.21-py39hb9d737c_1.tar.bz2 + version: 0.17.21 +- category: main + dependencies: + markupsafe: '>=2.1.1' + python: '>=3.7' + hash: + md5: 8e69568592e552919201f730b01a58c2 + sha256: 3bb3d6a98f9e3c6081166d81368e4a0e48fdbfe19e683a957ac344b063c42412 + manager: conda + name: werkzeug + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/werkzeug-2.2.2-pyhd8ed1ab_0.tar.bz2 + version: 2.2.2 +- category: main + dependencies: + importlib_metadata: '>=0.23,<5' + python: '>=3.5' + hash: + md5: b8152341fc3fc9880c6e1b9d188974e5 + sha256: 2abb116f5bdc62d5e83c9dd15e5fc30c2a9571f728ccc012fad03350ed1d581e + manager: conda + name: argcomplete + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/argcomplete-1.12.3-pyhd8ed1ab_2.tar.bz2 + version: 1.12.3 +- category: main + dependencies: + click: '>=8.0' + importlib-metadata: '>=3.6.0' + itsdangerous: '>=2.0' + jinja2: '>=3.0' + python: '>=3.7' + werkzeug: '>=2.2.2' + hash: + md5: 85fad4c7889dd969ed4c02cf63cfe9c5 + sha256: e047c40122dc3fd53c534924271e9635d3dbf5ba606ccd2bd7f7c70b63697037 + manager: conda + name: flask + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/flask-2.2.2-pyhd8ed1ab_0.tar.bz2 + version: 2.2.2 +- category: main + dependencies: + atk-1.0: '>=2.36.0' + cairo: '>=1.16.0,<1.17.0a0' + gdk-pixbuf: '>=2.42.6,<3.0a0' + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=9.4.0' + libglib: '>=2.70.2,<3.0a0' + pango: '>=1.50.3,<1.51.0a0' + hash: + md5: 957a0255ab58aaf394a91725d73ab422 + sha256: 66d189ec36d67309fa3eb52d14d77b82359c10303c400eecc14f8eaca5939b87 + manager: conda + name: gtk2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gtk2-2.24.33-h90689f9_2.tar.bz2 + version: 2.24.33 +- category: main + dependencies: + importlib_metadata: '' + python: ==2.7.*|>=3.5 + hash: + md5: 35f19fabdfd44c8b53889be95333848c + sha256: d497c6f3b064d3dd8b76f277ea8d6a507acfe8cb04e31811baf66d8c533b8c08 + manager: conda + name: jsonpickle + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonpickle-2.2.0-pyhd8ed1ab_0.tar.bz2 + version: 2.2.0 +- category: main + dependencies: + elfutils: '>=0.187,<0.188.0a0' + libdwarf: 0.0.0.20190110_28_ga81397fc4 h753d276_0 + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 899c511688e6c41cb51c2921a8d25e63 + sha256: null + manager: conda + name: libdwarf-dev + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/libdwarf-dev-0.0.0.20190110_28_ga81397fc4-h753d276_0.tar.bz2 + version: 0.0.0.20190110_28_ga81397fc4 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + gdk-pixbuf: '>=2.42.8,<3.0a0' + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=12' + libglib: '>=2.70.2,<3.0a0' + libxml2: '>=2.9.14,<2.10.0a0' + pango: '>=1.50.7,<1.51.0a0' + hash: + md5: 921e53675ed5ea352f022b79abab076a + sha256: 9b81f3854660e902a417e8194b43ed2f5d2a082227df28ba6804c68ac7c16aa0 + manager: conda + name: librsvg + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/librsvg-2.54.4-h7abd40a_0.tar.bz2 + version: 2.54.4 +- category: main + dependencies: + pip: '' + python: '>=3.6' + hash: + md5: 6cfd80f8f255415a400c5a2728087fce + sha256: 20ccc89905946674603db22f906269c73c075262edccc988f4ff640ba09bc238 + manager: conda + name: pbr + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pbr-5.10.0-pyhd8ed1ab_0.tar.bz2 + version: 5.10.0 +- category: main + dependencies: + cryptography: '>=35.0' + python: '>=3.6' + hash: + md5: 1d7e241dfaf5475e893d4b824bb71b44 + sha256: 02ee40855abbce429022d2653b9e1649f23398b2ebab53247de69bd35bc05ba5 + manager: conda + name: pyopenssl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-22.0.0-pyhd8ed1ab_0.tar.bz2 + version: 22.0.0 +- category: main + dependencies: + pytest: '>=3.6.0' + python: '' + hash: + md5: b6764e23dece9f9cda0469af044fafeb + sha256: bdb25a7daf3efb7255b1a19d7b5d41d7d4d96bc647b8e5f7407ec4dd9e384257 + manager: conda + name: pytest-dependency + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pytest-dependency-0.5.1-pyh9f0ad1d_0.tar.bz2 + version: 0.5.1 +- category: main + dependencies: + pytest: '>=5.0' + python: '>=3.7' + hash: + md5: 6af5653a74c450ddc16ef5b39d2dedcd + sha256: 24ede819260551a29696590ae444d4728d7dbb655d26c549294cedaa5df8aeb5 + manager: conda + name: pytest-mock + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pytest-mock-3.7.0-pyhd8ed1ab_1.tar.bz2 + version: 3.7.0 +- category: main + dependencies: + cryptography: '' + ecdsa: '!=0.15' + pyasn1: '' + python: '>=3.6' + rsa: '' + hash: + md5: 8fa19760945f1c3754c9419c6459f7e0 + sha256: 31bcedfa1803116e589602a24db4a01dbda2e0df819f497cb5d48c29d17631ec + manager: conda + name: python-jose + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/python-jose-3.3.0-pyh6c4a22f_1.tar.bz2 + version: 3.3.0 +- category: main + dependencies: + __unix: '' + openjdk: '>=8' + hash: + md5: 55bcf8ad86ccc77091b90c28844184a4 + sha256: c16ca3887235e265bec9cbb1c46030c0debf5dfd8c5bfd3cb00374fd09a01ce2 + manager: conda + name: sbt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sbt-1.7.1-hd8ed1ab_0.tar.bz2 + version: 1.7.1 +- category: main + dependencies: + cryptography: '' + dbus: '' + jeepney: '>=0.6' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 19c5efd8d571b01b15afe65648faf262 + sha256: c19c7a07b3f74b997057e544e02acdd0073e97a67dddd6219e6c59990fb1b52d + manager: conda + name: secretstorage + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py39hf3d152e_0.tar.bz2 + version: 3.3.3 +- category: main + dependencies: + cryptography: '>=2.1.4' + ecdsa: '>=0.13' + python: '>=3.6' + hash: + md5: b8359fec314d52ccb52b59d47cd2c2c0 + sha256: d19ddc51a4e0c09172f3d70a4f75d2b7f67a9b0204eb25ae586e94830ffe4b44 + manager: conda + name: sshpubkeys + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sshpubkeys-3.3.1-pyhd8ed1ab_0.tar.bz2 + version: 3.3.1 +- category: main + dependencies: + flask: '>=0.9' + python: '' + six: '' + hash: + md5: f06be6d2d27dc3ea2b3da84ade76583c + sha256: 0ffe072bf8b7bfdbb3a2e6f41cd65264259a92a77db3fb3ffc4e74f3eee2ea4d + manager: conda + name: flask_cors + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/flask_cors-3.0.10-pyhd3deb0d_0.tar.bz2 + version: 3.0.10 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + expat: '>=2.4.8,<3.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + gdk-pixbuf: '>=2.42.8,<3.0a0' + gtk2: '' + gts: '>=0.7.6,<0.8.0a0' + libgcc-ng: '>=12' + libgd: '>=2.3.3,<2.4.0a0' + libglib: '>=2.72.1,<3.0a0' + librsvg: '>=2.54.4,<3.0a0' + libstdcxx-ng: '>=12' + libtool: '' + libwebp-base: '>=1.2.4,<2.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + pango: '>=1.50.9,<1.51.0a0' + zlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 123c55da3e9ea8664f73c70e13ef08c2 + sha256: b361670365155a56f0714fef9bae58ff858a0fc13d7f04530e4252e98b9b164d + manager: conda + name: graphviz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/graphviz-6.0.1-h5abf519_0.tar.bz2 + version: 6.0.1 +- category: main + dependencies: + attrs: '' + jsonpickle: '' + pbr: '' + python: '>=3.6' + hash: + md5: 686ca7c72f9583791fe424600987411f + sha256: 244f9103888438b57ab9f4aac7a8aba8db19947267fd2ddbdaa2222c39f6c8a9 + manager: conda + name: jschema-to-python + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jschema-to-python-1.2.3-pyhd8ed1ab_0.tar.bz2 + version: 1.2.3 +- category: main + dependencies: + importlib_metadata: '>=3.6' + jaraco.classes: '' + jeepney: '>=0.4.2' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + secretstorage: '>=3.2' + hash: + md5: 53de394e0ab10ccb6b9db0528050123f + sha256: 4e5d918992cd28e91382c9bbc7e2911530d51641f03cbc33ed0eb98297b2a5eb + manager: conda + name: keyring + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/keyring-23.9.3-py39hf3d152e_0.tar.bz2 + version: 23.9.3 +- category: main + dependencies: + attrs: '' + pbr: '' + python: '>=3.6' + hash: + md5: 010e6280a9dc265d0488b598c45103d9 + sha256: 02e18825ab15654d6555aa2d78c396e726e200e398691bd0bce3b810205e28df + manager: conda + name: sarif-om + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sarif-om-1.0.4-pyhd8ed1ab_0.tar.bz2 + version: 1.0.4 +- category: main + dependencies: + brotlipy: '>=0.6.0' + certifi: '' + cryptography: '>=1.3.4' + idna: '>=2.0.0' + pyopenssl: '>=0.14' + pysocks: '>=1.5.6,<2.0,!=1.5.7' + python: <4.0 + hash: + md5: 0738978569b10669bdef41c671252dd1 + sha256: 57a823b83428156aa2bc18f34159a744657c9bd117a125ca4559b0518a2e4fa2 + manager: conda + name: urllib3 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/urllib3-1.26.11-pyhd8ed1ab_0.tar.bz2 + version: 1.26.11 +- category: main + dependencies: + jmespath: '>=0.7.1,<1.0.0' + python: '>=3.6' + python-dateutil: '>=2.1,<3.0.0' + urllib3: '>=1.25.4,<1.27' + hash: + md5: 61d89d20596a5cc470422abd81c7823e + sha256: 7902f3f4b21cebe5093752eca8810046a61a5f6fb15441d2a0d350f9de7688fa + manager: conda + name: botocore + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.23.21-pyhd8ed1ab_0.tar.bz2 + version: 1.23.21 +- category: main + dependencies: + graphviz: '>=2.46.1' + python: '>=3' + hash: + md5: cd0b0b05f32477491145e9829f6000e1 + sha256: f62e0e1bf66af069c763a8383f085d31ac6252f9ef5021c9488ef68572060589 + manager: conda + name: python-graphviz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/python-graphviz-0.19-pyhaef67bd_0.tar.bz2 + version: '0.19' +- category: main + dependencies: + certifi: '>=2017.4.17' + charset-normalizer: '>=2,<3' + idna: '>=2.5,<4' + python: '>=3.7,<4.0' + urllib3: '>=1.21.1,<1.27' + hash: + md5: 089382ee0e2dc2eae33a04cc3c2bddb0 + sha256: b45d0da6774c8231ab4fef0427b3050e7c54c84dfe453143dd4010999c89e050 + manager: conda + name: requests + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/requests-2.28.1-pyhd8ed1ab_1.tar.bz2 + version: 2.28.1 +- category: main + dependencies: + botocore: '>=1.11.3' + python: '>=3.4' + wrapt: '' + hash: + md5: f5e722eaa36ec10f604195907d443fc3 + sha256: 8d3e8e01c8a3462b71393a3ec4c3bf81d5ee62a1e56fb20ff33a9bf38667b573 + manager: conda + name: aws-xray-sdk + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/aws-xray-sdk-2.10.0-pyhd8ed1ab_0.tar.bz2 + version: 2.10.0 +- category: main + dependencies: + msgpack-python: '>=0.5.2' + python: '>=3.6' + requests: '' + hash: + md5: 6eefee9888f33f150b5d44d616b1a613 + sha256: c863c2bf200008e255f69bececda3477c1bb23e2b63a82612099a91a418ca2ea + manager: conda + name: cachecontrol + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-0.12.11-pyhd8ed1ab_0.tar.bz2 + version: 0.12.11 +- category: main + dependencies: + conda-package-handling: '>=1.3.0' + pycosat: '>=0.6.3' + pyopenssl: '>=16.2.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + requests: '>=2.20.1,<3' + ruamel_yaml: '>=0.11.14,<0.16' + setuptools: '>=31.0.1' + toolz: '>=0.8.1' + hash: + md5: b037107136fc0afe811f6e06380a3de6 + sha256: be820e87023b67f458c3043d202554f9f367e5106bd68792388fe7ef682f1ba5 + manager: conda + name: conda + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-4.14.0-py39hf3d152e_0.tar.bz2 + version: 4.14.0 +- category: main + dependencies: + appdirs: '>=1.4.3' + asn1crypto: '>=0.22.0' + cffi: '>=1.10.0' + cryptography: '>=1.9' + docker-pycreds: '>=0.3.0' + idna: '>=2.5' + packaging: '>=16.8' + pycparser: '>=2.17' + pyopenssl: '>=17.0.0' + pyparsing: '>=2.2.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + requests: '>=2.14.2' + six: '>=1.10.0' + websocket-client: '>=0.40.0' + hash: + md5: adbd239e5bf8b3f85fbc31fc98151e3c + sha256: bc7bec670f6ce5c011d64211422d45a8a4ad89713b6f46b56b05f2f3b74ad5a9 + manager: conda + name: docker-py + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/docker-py-5.0.3-py39hf3d152e_2.tar.bz2 + version: 5.0.3 +- category: main + dependencies: + appdirs: '' + click: '>=5.1' + filelock: '' + python: '>=3.7' + requests: '>=2' + hash: + md5: c99ae3abf501990769047b4b40a98f17 + sha256: b71784b6c24d2320b2f796d074e75e7dd1be7b7fc0f719c5cf3a582270b368d6 + manager: conda + name: ensureconda + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/ensureconda-1.4.3-pyhd8ed1ab_0.tar.bz2 + version: 1.4.3 +- category: main + dependencies: + python: '' + requests: '>=2.0.1,<=3.0.0' + hash: + md5: 402668adee8fcba9a9c265cdc2a88f5a + sha256: 1f2f3329127844be226bdc9bd9922d84a8767ae208d4a650c3ba655c84cb1e1c + manager: conda + name: requests-toolbelt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-0.9.1-py_0.tar.bz2 + version: 0.9.1 +- category: main + dependencies: + python: '>=3.7' + requests: '>=2.0,<3.0' + urllib3: '>=1.25.10' + hash: + md5: 5b21c0b72f49d216ee1d01a4e7f96f9e + sha256: 2a3046ef1902919b40f637c4c749100508a685a5c6a05e0f3834a0e3c94514df + manager: conda + name: responses + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/responses-0.21.0-pyhd8ed1ab_0.tar.bz2 + version: 0.21.0 +- category: main + dependencies: + botocore: '>=1.12.36,<2.0a.0' + python: '>=3.6' + hash: + md5: 9377d7f899e4a766c9f58d73e8297e1a + sha256: 487d3420574ede3ef513fa2b1f39b0c4648d66e0245a5cf97d301aafcfb66c97 + manager: conda + name: s3transfer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/s3transfer-0.5.2-pyhd8ed1ab_0.tar.bz2 + version: 0.5.2 +- category: main + dependencies: + alabaster: '>=0.7,<0.8' + babel: '>=1.3' + colorama: '>=0.3.5' + docutils: '>=0.14,<0.20' + imagesize: '' + importlib-metadata: '>=4.4' + jinja2: '>=2.3' + packaging: '' + pygments: '>=2.0' + python: '>=3.7' + requests: '>=2.5.0' + snowballstemmer: '>=1.1' + sphinxcontrib-applehelp: '' + sphinxcontrib-devhelp: '' + sphinxcontrib-htmlhelp: '>=2.0.0' + sphinxcontrib-jsmath: '' + sphinxcontrib-qthelp: '' + sphinxcontrib-serializinghtml: '>=1.1.5' + hash: + md5: cd1129e88f6278787212624e1b7a8001 + sha256: 9d614432deff37f90ba406855fd9a21799ef09ab43ec27f5af12ac810fcd1dd1 + manager: conda + name: sphinx + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx-5.1.1-pyhd8ed1ab_1.tar.bz2 + version: 5.1.1 +- category: main + dependencies: + botocore: 1.23.21 + colorama: '>=0.2.5,<0.4.4' + docutils: '>=0.10,<0.16' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + pyyaml: '>=3.10,<5.5' + rsa: '>=3.1.2,<4.8' + s3transfer: '>=0.5.0,<0.6.0' + hash: + md5: d783b1992e8a34bff10aedacc839c504 + sha256: fccfa6ab25797b3af07b0d0a867caac63ce5520e478d8a6ec1e315c5f566515f + manager: conda + name: awscli + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.22.21-py39hf3d152e_0.tar.bz2 + version: 1.22.21 +- category: main + dependencies: + botocore: '>=1.23.21,<1.24.0' + jmespath: '>=0.7.1,<1.0.0' + python: '>=3.6' + s3transfer: '>=0.5.0,<0.6.0' + hash: + md5: 207e3f9ab548bf82044289e499f6ad1f + sha256: 84f87e1e0b2dabb166a4c006ef56180ae04983114661be8d108f3aced91fbebe + manager: conda + name: boto3 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.20.21-pyhd8ed1ab_0.tar.bz2 + version: 1.20.21 +- category: main + dependencies: + colorama: '' + conda: '' + networkx: '' + python: '>=3.6' + hash: + md5: 74c9c60684e578fb92b27df42846b733 + sha256: 1c726baaa6ffd3986b0f1bfd655b8311da0345be915d31738b4965c397b2e92d + manager: conda + name: conda-tree + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/conda-tree-1.0.5-pyhd8ed1ab_0.tar.bz2 + version: 1.0.5 +- category: main + dependencies: + conda: '>=4.6' + conda-standalone: '' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + ruamel_yaml: '>=0.11.14,<0.16' + hash: + md5: e5596cad685fd9edec29955a614abf69 + sha256: 214a4055b49d6288393afeecb53c2a3d8d6559fff686aa03c2d6abef69577522 + manager: conda + name: constructor + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/constructor-3.3.1-py39hf3d152e_0.tar.bz2 + version: 3.3.1 +- category: main + dependencies: + cachecontrol: '>=0.12.9,<0.13.0' + cachy: '>=0.3.0,<0.4.0' + cleo: '>=0.8.1,<0.9.0' + clikit: '>=0.6.2,<0.7.0' + crashtest: '>=0.3.0,<0.4.0' + html5lib: '>=1.0,<2.0' + keyring: '>=21.2.0' + lockfile: '>=0.9' + packaging: '>=20.4,<21.0' + pexpect: '>=4.7.0,<5.0.0' + pkginfo: '>=1.4,<2.0' + poetry-core: '>=1.0.7,<1.1.0' + ptyprocess: '>=0.5' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + requests: '>=2.18,<3.0' + requests-toolbelt: '>=0.9.1,<0.10.0' + shellingham: '>=1.1,<2.0' + tomlkit: '>=0.7.0,<1.0.0' + virtualenv: '>=20.0.26,<21.0.0' + hash: + md5: 0685495d547bc110b90852ad186dc8a1 + sha256: b2ae9a17f7f35b0bf422a15c3ac54766170dfbb78af5ecc77aa70d057cc13b48 + manager: conda + name: poetry + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/poetry-1.1.15-py39hf3d152e_0.tar.bz2 + version: 1.1.15 +- category: main + dependencies: + livereload: '>=2.3.0' + python: '>=3.6' + sphinx: '' + hash: + md5: 1909f784dc37b4ab97afe2c95aeeabaa + sha256: 1c07ab809254c2454c5417c5be01af2dc8bcaae2f3315a0a9d8812997ede8297 + manager: conda + name: sphinx-autobuild + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx-autobuild-2021.3.14-pyhd8ed1ab_0.tar.bz2 + version: 2021.3.14 +- category: main + dependencies: + docutils: <0.18 + python: '>=2.7' + sphinx: '>=1.6' + hash: + md5: 9f633f2f2869184e31acfeae95b24345 + sha256: 3752f28effe86b371475492d42550b30125d9ca2ead88af7e49da2a793e82e68 + manager: conda + name: sphinx_rtd_theme + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx_rtd_theme-1.0.0-pyhd8ed1ab_0.tar.bz2 + version: 1.0.0 +- category: main + dependencies: + boto3: ~=1.5 + jsonschema: ~=3.2 + python: '>=3.6' + six: ~=1.15 + hash: + md5: 4a1e98f7bdd975767e314a58b0262eb6 + sha256: deecd8a08d6de0616b5fc2e169cea53e71701cd146e835abe58c1c4e571721fe + manager: conda + name: aws-sam-translator + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/aws-sam-translator-1.51.0-pyhd8ed1ab_0.tar.bz2 + version: 1.51.0 +- category: main + dependencies: + boto3: '' + python: '' + typing_extensions: '' + hash: + md5: bbe05c4cec5e4a1551d20a58d10b8ad9 + sha256: ef3d78ea133eefa4b41f4cbf5f6a24c4c036a6d4fb02e292abeb4076e9efeaa1 + manager: conda + name: boto3-stubs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-stubs-1.21.6-pyhd8ed1ab_0.tar.bz2 + version: 1.21.6 +- category: main + dependencies: + click: '>=8.0' + click-default-group: '' + ensureconda: '>=1.3' + jinja2: '' + poetry: '' + pydantic: '>=1.8.1' + python: '>=3.6' + pyyaml: '>=5.1' + requests: '>=2' + ruamel.yaml: '' + setuptools: '' + toml: '' + typing-extensions: '' + hash: + md5: 2d1c6d733a45b168eef7acc6212109ed + sha256: 023ffdae76edde9f2d3fc6a8696cc8d8a60d61b2b8ae6d951f4e4802e47ef606 + manager: conda + name: conda-lock + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/conda-lock-1.1.1-pyhd8ed1ab_0.tar.bz2 + version: 1.1.1 +- category: main + dependencies: + boto3: '' + python: '>=3.6' + typing-extensions: '' + hash: + md5: e071737257e2b6f43fb37a5338aba185 + sha256: c7be01a3087498a0d8bb43a0b2bfbab65b31d3d43c1146814cb7f244417e71ba + manager: conda + name: mypy-boto3-s3 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/mypy-boto3-s3-1.21.0-pyhd8ed1ab_0.tar.bz2 + version: 1.21.0 +- category: main + dependencies: + aws-sam-translator: '>=1.40.0' + importlib_resources: '>=1.4,<4' + jschema-to-python: ~=1.2.3 + jsonpatch: '' + jsonschema: ~=3.0 + junit-xml: ~=1.9 + networkx: ~=2.4 + python: '>=3.6' + pyyaml: '>5.4' + sarif-om: ~=1.0.4 + six: '>=1.11' + hash: + md5: 0a4bc1ea085254997e21f9c505c1495a + sha256: 5d227b4ad729a4ef43b28436466b47ebb3915a15ad968b81872726e8a05626f2 + manager: conda + name: cfn-lint + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cfn-lint-0.65.1-pyhd8ed1ab_0.tar.bz2 + version: 0.65.1 +- category: main + dependencies: + aws-xray-sdk: '!=0.96,>=0.93' + boto3: '>=1.9.201' + botocore: '>=1.12.201' + cfn-lint: '>=0.4.0' + cryptography: '>=3.3.1' + docker-py: '>=2.5.1' + flask: '' + flask_cors: '' + graphql-core: '' + idna: '>=2.5,<4' + importlib_metadata: '' + jinja2: '>=2.10.1' + jsondiff: '>=1.1.2' + python: '>=3.3' + python-dateutil: '>=2.1,<3.0.0' + python-jose: '>=3.1.0,<4.0.0' + pytz: '' + pyyaml: '>=5.1' + requests: '>=2.5' + responses: '>=0.9.0' + setuptools: '' + sshpubkeys: '>=3.1.0' + werkzeug: '' + xmltodict: '' + hash: + md5: 7b8e817121549206d4d053871daea842 + sha256: 64fe8478cecb8628906847060e8618103cd8b79734459cb7f111f1cd65349e85 + manager: conda + name: moto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/moto-3.1.0-pyhd8ed1ab_0.tar.bz2 + version: 3.1.0 +- category: main + dependencies: {} + hash: + sha256: bfb67f6a6c72dfb0a02f3df51550aa1862708e55128b22543e2b42c74f3620d7 + manager: pip + name: bcrypt + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/c5/77/14bbcd08ad265577ad6ea8e8980b9c0ad668cecfd241ae169b6747c4491b/bcrypt-4.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + version: 4.0.0 +- category: main + dependencies: {} + hash: + sha256: 122fcb64ee37cfad5b3f48d7a7d51875d7031aaf3d8be7c42e2bee25044eee62 + manager: pip + name: mock + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/5c/03/b7e605db4a57c0f6fba744b11ef3ddf4ddebcada35022927a2b5fc623fdf/mock-4.0.3-py3-none-any.whl + version: 4.0.3 +- category: main + dependencies: {} + hash: + sha256: 9967365f2037ac8fd43ff678ad1b72c82b184b2498440579d5cfae9d63e5b0f9 + manager: pip + name: mypy-boto3-ec2 + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/a4/60/815ee785b017d49e09f42175e791a3a3495293b0dbce7d18c74f43a1e8a4/mypy_boto3_ec2-1.21.9-py3-none-any.whl + version: 1.21.9 +- category: main + dependencies: + six: '*' + hash: + sha256: e3305297c744ae53ffa032c45dc347286165e4ffce6875dc662b205db0623d86 + manager: pip + name: asttokens + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/2d/1b/fdbdf82b86e07ca90985740ac160a1dd4ab09cb81071ec12d71c701e1138/asttokens-2.0.8-py2.py3-none-any.whl + version: 2.0.8 +- category: main + dependencies: + bcrypt: '>=3' + cryptography: '>=1.6' + hash: + sha256: 29751590f293e75ee868dc52fa98d5c54047eafebc9568d4930b70872183fbf6 + manager: pip + name: paramiko-ng + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/9f/53/1ac75eab589149b1e02e38185ecebf09e1b805fc3fdeadbc16d1a2b7d208/paramiko_ng-2.8.10-py2.py3-none-any.whl + version: 2.8.10 +- category: main + dependencies: + mock: '*' + six: '*' + hash: + sha256: 34ae88c846046742ef074036bf311dc90ab152b7bc09c342b281cebf676727a2 + manager: pip + name: sure + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/c7/ee/043531858afab5f312ca02867de51189c0c1dd76ba652f1d95ffa13d07f7/sure-2.0.0.tar.gz + version: 2.0.0 +- category: main + dependencies: + paramiko-ng: '*' + six: '>=1.10.0' + hash: + sha256: 7fe3dfd0d9d5d0dd7e650b42fc7d62ec5d643ac4275a77f483ec2b57f19c3e58 + manager: pip + name: fab-classic + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/86/f4/c301effc438788c184bbd0c08a586135f325581e6c4cf9f1d40229f9894b/fab_classic-1.19.1-py2.py3-none-any.whl + version: 1.19.1 +- category: main + dependencies: + asttokens: '>=2,<3' + typing-extensions: '*' + hash: + sha256: 1a441dad41c9a0615c6ae96464190eddccd2de8153254059ff18ffd7b3b84800 + manager: pip + name: icontract + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/d8/91/9756e7cf0b155e80bf9a62beffdd1dec4afce43cc6ab7f432f2267c62762/icontract-2.6.2-py3-none-any.whl + version: 2.6.2 +- category: main + dependencies: + icontract: '>=2.0.1,<3' + typing-extensions: '>=3.6.6' + hash: + sha256: e5608063e3f6122db255acde636255f9c0da3a8e6b7edd35498b95280ff18961 + manager: pip + name: pylddwrap + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/6b/4e/aebc1cff19a572dbcc7e60d8e74f38fd568ef9185650b39f72fde9ff84d1/pylddwrap-1.2.1.tar.gz + version: 1.2.1 +version: 1 diff --git a/conda-requirements-esp-tools.yaml b/conda-requirements-esp-tools.yaml new file mode 100644 index 00000000..2616a1a8 --- /dev/null +++ b/conda-requirements-esp-tools.yaml @@ -0,0 +1,132 @@ +channels: + - ucb-bar + - conda-forge + - nodefaults + +dependencies: + # https://conda-forge.org/feedstock-outputs/ + # filterable list of all conda-forge packages + # https://conda-forge.org/#contribute + # instructions on adding a recipe + # https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/pkg-specs.html#package-match-specifications + # documentation on package_spec syntax for constraining versions + + + # handy tool for introspecting package relationships and file ownership + # see https://github.com/rvalieris/conda-tree + - conda-tree + + # bundle FireSim driver with deps into installer shell-script + - constructor + + - gcc + - gxx + - sysroot_linux-64>=2.17 # needed to match pre-built CI XRT glibc version + - conda-gcc-specs + - binutils + + - dromajo # from ucb-bar channel - https://github.com/riscv-boom/dromajo + - esp-tools # from ucb-bar channel - https://github.com/ucb-bar/esp-tools-feedstock + + # firemarshal deps + - python>=3.8 + - bc + - patch + - which + - diffutils + - bash + - gzip + - bzip2 + - perl + - tar + - file + - findutils + - rsync + - psutil + - doit=0.35.0 + - gitpython + - humanfriendly + - e2fsprogs + - ctags + - bison + - flex + - expat + - make + - pyyaml + - unzip + - readline + - coreutils + - lzop + - qemu # from ucb-bar channel - https://github.com/ucb-bar/qemu-feedstock + + - bash-completion + - sbt + - ca-certificates + - mosh + - gmp + - mpfr + - mpc + - zlib + - vim + - git + - openjdk + - gengetopt + - libffi + - expat + - libusb1 + - ncurses + - cmake + - graphviz + - expect + - dtc + - verilator==4.226 + - screen + - elfutils + - libdwarf-dev==0.0.0.20190110_28_ga81397fc4 # from ucb-bar channel - using mainline libdwarf-feedstock + - conda-lock>=1 + - wget + - sed + - autoconf + + # clang-format for driver coding style enforcement. + - clang-format + - clang-tools + + # python packages + # While it is possible to install using pip after creating the + # conda environment, pip's dependency resolution can conflict with + # conda and create broken environments. It's best to use the conda + # packages so that the environment is consistent + - boto3==1.20.21 + - colorama==0.4.3 + - argcomplete==1.12.3 + - python-graphviz==0.19 + - pyparsing==3.0.6 + - numpy==1.19.5 + - kiwisolver==1.3.1 + - matplotlib-base==3.3.4 + - pandas==1.1.5 + - awscli==1.22.21 + - pytest==6.2.5 + - pytest-dependency==0.5.1 + - pytest-mock==3.7.0 + - moto==3.1.0 + - pyyaml==5.4.1 + - mypy==0.931 + - types-pyyaml==6.0.4 + - boto3-stubs==1.21.6 + - botocore-stubs==1.24.7 + - mypy-boto3-s3==1.21.0 + - pip + - pip: + - fab-classic==1.19.1 + - mypy-boto3-ec2==1.21.9 + - sure==2.0.0 + - pylddwrap==1.2.1 + + # doc requirements + - sphinx + - pygments + - sphinx-autobuild + - sphinx_rtd_theme + - docutils diff --git a/conda-requirements-riscv-tools-linux-64.conda-lock.yml b/conda-requirements-riscv-tools-linux-64.conda-lock.yml new file mode 100644 index 00000000..ba7fb51c --- /dev/null +++ b/conda-requirements-riscv-tools-linux-64.conda-lock.yml @@ -0,0 +1,5027 @@ +# This lock file was generated by conda-lock (https://github.com/conda-incubator/conda-lock). DO NOT EDIT! +# +# A "lock file" contains a concrete list of package versions (with checksums) to be installed. Unlike +# e.g. `conda env create`, the resulting environment will not change as new package versions become +# available, unless you explicitly update the lock file. +# +# Install this environment as "YOURENV" with: +# conda-lock install -n YOURENV --file conda-requirements-riscv-tools-linux-64.conda-lock.yml +# To update a single package to the latest version compatible with the version constraints in the source: +# conda-lock lock --lockfile conda-requirements-riscv-tools-linux-64.conda-lock.yml --update PACKAGE +# To re-solve the entire environment, e.g. after changing a version constraint in the source file: +# conda-lock -f /scratch/buildbot/firesim/target-design/chipyard/conda-requirements-riscv-tools.yaml --lockfile conda-requirements-riscv-tools-linux-64.conda-lock.yml +metadata: + channels: + - url: ucb-bar + used_env_vars: [] + - url: conda-forge + used_env_vars: [] + - url: nodefaults + used_env_vars: [] + content_hash: + linux-64: e0eaa8e6d532cfd33d97846ae17a35f71e62c135ff3edb6236f6d8d592b10e7a + platforms: + - linux-64 + sources: + - /scratch/buildbot/firesim/target-design/chipyard/conda-requirements-riscv-tools.yaml +package: +- category: main + dependencies: {} + hash: + md5: d7c89558ba9fa0495403155b64376d81 + sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 + manager: conda + name: _libgcc_mutex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 + version: '0.1' +- category: main + dependencies: {} + hash: + md5: a581b4a89191b6c1d6a16488a9cffbfc + sha256: 695e67ae4bc22f9e0be5f54b1948a8f2b678f4da920fa2082a249dd5a88f440e + manager: conda + name: _sysroot_linux-64_curr_repodata_hack + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/_sysroot_linux-64_curr_repodata_hack-3-h5bd9786_13.tar.bz2 + version: '3' +- category: main + dependencies: {} + hash: + md5: ce8d1b98cc96642f2d2e5da1873de2e6 + sha256: fc08379d634e7806485be606ead3265385949054959940c8ecb88a67c26ace42 + manager: conda + name: bash-completion + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bash-completion-2.11-0.tar.bz2 + version: '2.11' +- category: main + dependencies: {} + hash: + md5: 87c986dab320658abaf3e701406b665c + sha256: 26a1a2d9e63440ec3b2a59297d47f7d5b405a3caab61bf93648e1621a46bb05a + manager: conda + name: ca-certificates + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2022.9.14-ha878542_0.tar.bz2 + version: 2022.9.14 +- category: main + dependencies: {} + hash: + md5: 2adf191e11723cd8156dcaa421419d1e + sha256: e52fb8cf5bc5eb80c69f2239a08868ddd6fa26fdf67a1a0312970308f698fc96 + manager: conda + name: conda-standalone + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-standalone-4.12.0-ha770c72_0.tar.bz2 + version: 4.12.0 +- category: main + dependencies: {} + hash: + md5: 0c96522c6bdaed4b1566d11387caaf45 + sha256: 58d7f40d2940dd0a8aa28651239adbf5613254df0f75789919c4e6762054403b + manager: conda + name: font-ttf-dejavu-sans-mono + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + version: '2.37' +- category: main + dependencies: {} + hash: + md5: 34893075a5c9e55cdafac56607368fc6 + sha256: c52a29fdac682c20d252facc50f01e7c2e7ceac52aa9817aaf0bb83f7559ec5c + manager: conda + name: font-ttf-inconsolata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + version: '3.000' +- category: main + dependencies: {} + hash: + md5: 4d59c254e01d9cde7957100457e2d5fb + sha256: 00925c8c055a2275614b4d983e1df637245e19058d79fc7dd1a93b8d9fb4b139 + manager: conda + name: font-ttf-source-code-pro + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + version: '2.038' +- category: main + dependencies: {} + hash: + md5: 19410c3df09dfb12d1206132a1d357c5 + sha256: 470d5db54102bd51dbb0c5990324a2f4a0bc976faa493b22193338adb9882e2e + manager: conda + name: font-ttf-ubuntu + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-hab24e00_0.tar.bz2 + version: '0.83' +- category: main + dependencies: {} + hash: + md5: bd4f2e711b39af170e7ff15163fe87ee + sha256: ad7985a9ff622880cf87c42db1ffe2dfb040d8175c1bb352fc8f3705c7e0962f + manager: conda + name: ld_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.36.1-hea4e1c9_2.tar.bz2 + version: 2.36.1 +- category: main + dependencies: {} + hash: + md5: 0e6ab30ea5307e18bff4689958b51b83 + sha256: 9875a188edb25e996eb2ef5d2664d995ddb166a868d3377851a8f33d6c63297d + manager: conda + name: libgcc-devel_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-devel_linux-64-12.1.0-h1ec3361_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: b02605b875559ff99f04351fd5040760 + sha256: 4d20cbd5dbe47e0dacd298d5cc0745ae19dcd5cd7cfaf937387adc876ee481c7 + manager: conda + name: libgfortran5 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-12.1.0-hdcd56e2_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: db535a3c3b757e1d34e6b031a111f029 + sha256: 3588334fa16d57452dc83527dd4490821a39f1a049565d4390d774635559f4fc + manager: conda + name: libstdcxx-devel_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-devel_linux-64-12.1.0-h1ec3361_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: 6f5ba041a41eb102a1027d9e68731be7 + sha256: c2483256b324253599bdbe6ddb4a04f7a154259473e626aacbfdee7686a994d2 + manager: conda + name: libstdcxx-ng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-12.1.0-ha89aaad_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: {} + hash: + md5: a56386ad31a7322940dd7d03fb3a9979 + sha256: 8a6a7c6217c79f1afaf0fea71463a5577e2a165a743a04afd45b200d344d6de9 + manager: conda + name: tzdata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tzdata-2022c-h191b570_0.tar.bz2 + version: 2022c +- category: main + dependencies: + font-ttf-dejavu-sans-mono: '' + font-ttf-inconsolata: '' + font-ttf-source-code-pro: '' + font-ttf-ubuntu: '' + hash: + md5: f766549260d6815b0c52253f1fb1bb29 + sha256: 53f23a3319466053818540bcdf2091f253cbdbab1e0e9ae7b9e509dcaa2a5e38 + manager: conda + name: fonts-conda-forge + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + version: '1' +- category: main + dependencies: + _sysroot_linux-64_curr_repodata_hack: 3.* + hash: + md5: 523bc836a954faf0cca94831971bb85a + sha256: 67a3caa56e2a59f407f3d290437b865aaf996873006e2fcfca6295d0f0be8db9 + manager: conda + name: kernel-headers_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-3.10.0-h4a8ded7_13.tar.bz2 + version: 3.10.0 +- category: main + dependencies: + libgfortran5: 12.1.0 hdcd56e2_16 + hash: + md5: 6bf15e29a20f614b18ae89368260d0a2 + sha256: 8b9ebde578c74c9e2d93cbe6940a09ee4d0ca4080a0f385bdcd10be536f07abb + manager: conda + name: libgfortran-ng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-12.1.0-h69a702a_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + _libgcc_mutex: 0.1 conda_forge + hash: + md5: f013cf7749536ce43d82afbffdf499ab + sha256: 499fab15d3897a7bf7a1d82dd44c76dad1ceeaec0b71e348e77fb8a753ff898d + manager: conda + name: libgomp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-12.1.0-h8d9b700_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + _libgcc_mutex: 0.1 conda_forge + libgomp: '>=7.5.0' + hash: + md5: 73aaf86a425cc6e73fcf236a5a46396d + sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 + manager: conda + name: _openmp_mutex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + version: '4.5' +- category: main + dependencies: + fonts-conda-forge: '' + hash: + md5: fee5683a3f04bd15cbd8318b096a27ab + sha256: a997f2f1921bb9c9d76e6fa2f6b408b7fa549edd349a77639c9fe7a23ea93e61 + manager: conda + name: fonts-conda-ecosystem + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + version: '1' +- category: main + dependencies: + _sysroot_linux-64_curr_repodata_hack: 3.* + kernel-headers_linux-64: 3.10.0 h4a8ded7_13 + hash: + md5: 57e5a5191ffe999b9f4dfdbcd0ddcba4 + sha256: f09f2fea4b571dcd225f1e35bd3c851e809cd4c2f5f151438133969ab28478e5 + manager: conda + name: sysroot_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.17-h4a8ded7_13.tar.bz2 + version: '2.17' +- category: main + dependencies: + ld_impl_linux-64: 2.36.1 hea4e1c9_2 + sysroot_linux-64: '' + hash: + md5: 32aae4265554a47ea77f7c09f86aeb3b + sha256: 7cdcbb78f3b521efbcbd72424fb56a4e030001cccf2a6bca800aef4b9a5ed93a + manager: conda + name: binutils_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.36.1-h193b22a_2.tar.bz2 + version: 2.36.1 +- category: main + dependencies: + _libgcc_mutex: 0.1 conda_forge + _openmp_mutex: '>=4.5' + hash: + md5: 4f05bc9844f7c101e6e147dab3c88d5c + sha256: 2fde3d9f0199bf4f5447b35d3fd74d058c17ef2b6c68815eb1b469f2aec138b9 + manager: conda + name: libgcc-ng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-12.1.0-h8d9b700_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 4a826cd983be6c8fff07a64b6d2079e7 + sha256: b2ea5be6ca4f16d62c7de3df62155b106f2009d9c317db187c47267abc1cb03d + manager: conda + name: alsa-lib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.7.2-h166bdaf_0.tar.bz2 + version: 1.2.7.2 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 9ff50d162aa3b1c861fa30105bea1932 + sha256: c5e04d9408a0047bd87156b1853a4ac31cb3a5ccdc52374d89c72cbdabe95002 + manager: conda + name: bc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bc-1.07.1-h7f98852_0.tar.bz2 + version: 1.07.1 +- category: main + dependencies: + binutils_impl_linux-64: '>=2.36.1,<2.36.2.0a0' + hash: + md5: 3111f86041b5b6863545ca49130cca95 + sha256: 17ae32b02c9cfb4c01ddcbe733d8bc432bd5003447cca9eb1727dd13c8fa940e + manager: conda + name: binutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.36.1-hdd6e379_2.tar.bz2 + version: 2.36.1 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: a1fd65c7ccbf10880423d82bca54eb54 + sha256: cb521319804640ff2ad6a9f118d972ed76d86bea44e5626c09a13d38f562e1fa + manager: conda + name: bzip2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h7f98852_4.tar.bz2 + version: 1.0.8 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: f26ef8098fab1f719c91eb760d63381a + sha256: ee735e60d2cf68e5635df17847e97b505a752985d10581d2438203e7c0f44c15 + manager: conda + name: c-ares + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.18.1-h7f98852_0.tar.bz2 + version: 1.18.1 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: b0929effe5b852ce3e7b2a78c2c35376 + sha256: 164bd59917902450fcc5e4ca6f12f190e08e0c39c31f20c8330b0dba865ddc5a + manager: conda + name: coreutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/coreutils-9.1-h166bdaf_0.tar.bz2 + version: '9.1' +- category: main + dependencies: + libgcc-ng: '>=7.3.0' + hash: + md5: 5fe0e54a3a78750306fefc0a25f81f79 + sha256: 56ab3b9e2c7c59045370c1258399764c13c0d1a346a07817b29b316085785477 + manager: conda + name: ctags + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ctags-5.8-h14c3975_1000.tar.bz2 + version: '5.8' +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + hash: + md5: 6bfb79319763a11c7423c9d0e0ee00b7 + sha256: null + manager: conda + name: dromajo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/dromajo-1.0.0-0_h1234567_g6a6e34e.tar.bz2 + version: 1.0.0 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 40e0c155eafefec2a63d1df0de0f5cdc + sha256: 1c0b56f8c25dab0a2d4db25f0209f1fe9b83539a649dd821b97c4bfbbc12c3f7 + manager: conda + name: e2fsprogs-libs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/e2fsprogs-libs-1.46.2-h166bdaf_0.tar.bz2 + version: 1.46.2 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + hash: + md5: e1b07832504eeba765d648389cc387a9 + sha256: 0db0e8690f8f7f4543d81e612947962b61518c61036bf7bdb53146f64dfca852 + manager: conda + name: expat + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/expat-2.4.8-h27087fc_0.tar.bz2 + version: 2.4.8 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: ac7bc6a654f8f41b352b38f4051135f8 + sha256: 5d7b6c0ee7743ba41399e9e05a58ccc1cfc903942e49ff6f677f6e423ea7a627 + manager: conda + name: fribidi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/fribidi-1.0.10-h36c2ea0_0.tar.bz2 + version: 1.0.10 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libstdcxx-ng: '>=9.4.0' + hash: + md5: 7c7b1ddd00735382cdcfa3b06002196e + sha256: 5162bc8b4342678e44b54eff4bc72e541b4078d80466b715238d3745ac83b9ed + manager: conda + name: gengetopt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gengetopt-2.23-h9c3ff4c_0.tar.bz2 + version: '2.23' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 626e68ae9cc5912d6adb79d318cf962d + sha256: 6ecacdbdf5cd9d2b46211b15a2f7db428ea5edd0cae9be89ccd837fc7b35643f + manager: conda + name: giflib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h36c2ea0_2.tar.bz2 + version: 5.2.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + hash: + md5: b94cf2db16066b242ebd26db2facbd56 + sha256: 07a5319e1ac54fe5d38f50c60f7485af7f830b036da56957d0bfb7558a886198 + manager: conda + name: gmp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.2.1-h58526e2_0.tar.bz2 + version: 6.2.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + hash: + md5: 8c54672728e8ec6aa6db90cf2806d220 + sha256: 65da967f3101b737b08222de6a6a14e20e480e7d523a5d1e19ace7b960b5d6b1 + manager: conda + name: graphite2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 + version: 1.3.13 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 30bd3316aac2d72f498a04b2a49c1050 + sha256: 9a233d5f734f2a4bed786041a9823b69dad5b6757d84341e9f5c822ec89f083b + manager: conda + name: gzip + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gzip-1.12-h166bdaf_0.tar.bz2 + version: '1.12' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + hash: + md5: 87473a15119779e021c314249d4b4aed + sha256: 1d7950f3be4637ab915d886304e57731d39a41ab705ffc95c4681655c459374a + manager: conda + name: icu + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/icu-70.1-h27087fc_0.tar.bz2 + version: '70.1' +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: ee8b844357a0946870901c7c6f418268 + sha256: 0110ee167e8fe386f9019f98757e299a0c42dc6ccdcce161c9bb552b79e459a3 + manager: conda + name: jpeg + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/jpeg-9e-h166bdaf_2.tar.bz2 + version: 9e +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 30186d27e2c9fa62b45fb1476b7200e3 + sha256: 150c05a6e538610ca7c43beb3a40d65c90537497a4f6a5f4d15ec0451b6f5ebb + manager: conda + name: keyutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 + version: 1.6.1 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + hash: + md5: 76bbff344f0134279f225174e9064c8f + sha256: cb55f36dcd898203927133280ae1dc643368af041a48bcf7c026acb7c47b0c12 + manager: conda + name: lerc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 + version: 4.0.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: fc84a0446e4e4fb882e78d786cfb9734 + sha256: 6f7cbc9347964e7f9697bde98a8fb68e0ed926888b3116474b1224eaa92209dc + manager: conda + name: libdeflate + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.14-h166bdaf_0.tar.bz2 + version: '1.14' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 6f8720dff19e17ce5d48cfe7f3d2f0a3 + sha256: 8c9635aa0ea28922877dc96358f9547f6a55fc7e2eb75a556b05f1725496baf9 + manager: conda + name: libev + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-h516909a_1.tar.bz2 + version: '4.33' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 6b0f2dd6a16b984110e8b6eed67b569b + sha256: 17110a07bc1bd3ea546840efb55d17ae2f80cd3dd0af882918cf7fa1c6bc0247 + manager: conda + name: libfdt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libfdt-1.6.1-h166bdaf_1.tar.bz2 + version: 1.6.1 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: d645c6d2ac96843a2bfaccd2d62b3ac3 + sha256: ab6e9856c21709b7b517e940ae7028ae0737546122f83c2aa5d692860c3b149e + manager: conda + name: libffi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 + version: 3.4.2 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 5c0f338a513a2943c659ae619fca9211 + sha256: 1ba9d434e982536abbbcd63505276270cb3a62844a0f1b6e52962e70be078abe + manager: conda + name: libiconv + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.16-h516909a_0.tar.bz2 + version: '1.16' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 39b1328babf85c7c3a61636d9cd50206 + sha256: 32f4fb94d99946b0dabfbbfd442b25852baf909637f2eed1ffe3baea15d02aad + manager: conda + name: libnsl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.0-h7f98852_0.tar.bz2 + version: 2.0.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libgfortran-ng: '' + libgfortran5: '>=10.4.0' + hash: + md5: 8c5963a49b6035c40646a763293fbb35 + sha256: 018372af663987265cb3ca8f37ac8c22b5f39219f65a0c162b056a30af11bba0 + manager: conda + name: libopenblas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.21-pthreads_h78a6416_3.tar.bz2 + version: 0.3.21 +- category: main + dependencies: + libgcc-ng: '>=12.1.0' + hash: + md5: 72d63459c86185f8f636772f28d6eb35 + sha256: 8030597934a3008b962340184af5d45605c1fb313443cc3a4a2b6b45b8dea162 + manager: conda + name: libsanitizer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-12.1.0-ha89aaad_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 93840744a8552e9ebf6bb1a5dffc125a + sha256: 5bfeada0e1c6ec2574afe2d17cdbc39994d693a41431338a6cb9dfa7c4d7bfc8 + manager: conda + name: libtasn1 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtasn1-4.19.0-h166bdaf_0.tar.bz2 + version: 4.19.0 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 16e143a1ed4b4fd169536373957f6fee + sha256: eadbb80c922dce355c0f8f7fc560f20f61263245799d076a1d5251d147d0d250 + manager: conda + name: libtool + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtool-2.4.6-h9c3ff4c_1008.tar.bz2 + version: 2.4.6 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 7245a044b4a1980ed83196176b78b73a + sha256: e88c45505921db29c08df3439ddb7f771bbff35f95e7d3103bf365d5d6ce2a6d + manager: conda + name: libunistring + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libunistring-0.9.10-h7f98852_0.tar.bz2 + version: 0.9.10 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 772d69f030955d9646d3d0eaf21d859d + sha256: 54f118845498353c936826f8da79b5377d23032bcac8c4a02de2019e26c3f6b3 + manager: conda + name: libuuid + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.32.1-h7f98852_1000.tar.bz2 + version: 2.32.1 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: e5cb4fe581a18ca2185a016eb848fc00 + sha256: dc14922a6d5cf7fde55c0aa8f6661d6871c6a2e94369e7455a8a5927c3065080 + manager: conda + name: libuv + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.44.2-h166bdaf_0.tar.bz2 + version: 1.44.2 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: ac2ccf7323d21f2994e4d1f5da664f37 + sha256: 221f2e138dd264b7394b88f08884d93825d38800a51415059e813c02467abfd1 + manager: conda + name: libwebp-base + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.2.4-h166bdaf_0.tar.bz2 + version: 1.2.4 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 29b2d63b0e21b765da0418bc452538c9 + sha256: 864e4de308644dc5f5b88da185bb65e4e437ffe56299bffec9eba496c04758f3 + manager: conda + name: libzlib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.12-h166bdaf_3.tar.bz2 + version: 1.2.12 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: fbe97e8fa6f275d7c76a09e795adc3e6 + sha256: 56313fe4e602319682d4ea05c0ed3c5c45fc79884a5896f2cb7436b15d6987f9 + manager: conda + name: lz4-c + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.3-h9c3ff4c_1.tar.bz2 + version: 1.9.3 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: bb14fcb13341b81d5eb386423b9d2bac + sha256: 25d16e6aaa3d0b450e61d0c4fadd7c9fd17f16e2fef09b34507209342d63c9f6 + manager: conda + name: lzo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 + version: '2.10' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 4abb931c0d08a41583fc637c663e45e2 + sha256: b8e37b92caab5a64a9e344f3d497b9d3e215d1e6211f6dc7c51b70799aab1da1 + manager: conda + name: m4 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/m4-1.4.18-h516909a_1001.tar.bz2 + version: 1.4.18 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 4049ebfd3190b580dffe76daed26155a + sha256: 4a5fe7c80bb0de0015328e2d3fc8db1736f528cb1fd53cd0d5527e24269a4f7c + manager: conda + name: make + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/make-4.3-hd18ef5c_1.tar.bz2 + version: '4.3' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + hash: + md5: 4acfc691e64342b9dae57cf2adc63238 + sha256: b801e8cf4b2c9a30bce5616746c6c2a4e36427f045b46d9fc08a4ed40a9f7065 + manager: conda + name: ncurses + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.3-h27087fc_1.tar.bz2 + version: '6.3' +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 3cb2c7df59990bd37c2ce27fd906de68 + sha256: 49c569a69608eee784e815179a70c6ae4d088dac42b7df999044f68058d593bb + manager: conda + name: nettle + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/nettle-3.8.1-hc379101_1.tar.bz2 + version: 3.8.1 +- category: main + dependencies: + ca-certificates: '' + libgcc-ng: '>=12' + hash: + md5: 07acc367c7fc8b716770cd5b36d31717 + sha256: 13ba391de59386eff710a9e40cd7a3c53ef8dab6c7818dd4eaaf0401029ddd1b + manager: conda + name: openssl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-1.1.1q-h166bdaf_0.tar.bz2 + version: 1.1.1q +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 4c1bbbec45149a186b915c67d086ed3b + sha256: fc30d1b643c35d82abd294cde6b34f7b9e952856c0386f4f069c3a2b7feb28dd + manager: conda + name: patch + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/patch-2.7.6-h7f98852_1002.tar.bz2 + version: 2.7.6 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: c05d1820a6d34ff07aaaab7a9b7eddaa + sha256: 8f35c244b1631a4f31fb1d66ab6e1d9bfac0ca9b679deced1112c7225b3ad138 + manager: conda + name: pcre + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pcre-8.45-h9c3ff4c_0.tar.bz2 + version: '8.45' +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 660e72c82f2e75a6b3fe6a6e75c79f19 + sha256: 6a0630fff84b5a683af6185a6c67adc8bdfa2043047fcb251add0d352ef60e79 + manager: conda + name: pixman + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.40.0-h36c2ea0_0.tar.bz2 + version: 0.40.0 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 22dad4df6e8630e8dff2428f6f6a7036 + sha256: 67c84822f87b641d89df09758da498b2d4558d47b920fd1d3fe6d3a871e000ff + manager: conda + name: pthread-stubs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 + version: '0.4' +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 0bcb0ab6faa796a22b40de3a41e3b2de + sha256: 3f7e1e46d0967f8d08026116aa84fda07bc93d11d44dc3c03a29ad9d3ffc63cc + manager: conda + name: rhash + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-h166bdaf_0.tar.bz2 + version: 1.4.3 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + hash: + md5: 7362f0042e95681f5d371c46c83ebd08 + sha256: 7c1f391789f3928ef688a348be998e31b8aa3cfb58a1854733c2552ef5c5a2fd + manager: conda + name: sed + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/sed-4.8-he412f7d_0.tar.bz2 + version: '4.8' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 7cb7109505433a5abbf68bb34b31edac + sha256: 29ce83db159a99eaeb816a9833481aa0eb495c6f69772e779d86ea2924bb5f06 + manager: conda + name: unzip + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/unzip-6.0-h7f98852_3.tar.bz2 + version: '6.0' +- category: main + dependencies: + libgcc-ng: '>=7.3.0' + hash: + md5: 2e5f1a8199794b21c9472c1a7f27e21a + sha256: a3ee6c02932fbee32babe39fa6bda9f781d6dc17122d2a90e62ff2b6866a5de8 + manager: conda + name: which + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/which-2.21-h516909a_0.tar.bz2 + version: '2.21' +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: bcd1b3396ec6960cbc1d2855a9e60b2b + sha256: 6c8c2803de0f643f8bad16ece3f9a7259e4a49247543239c182d66d5e3a129a7 + manager: conda + name: xorg-inputproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-inputproto-2.3.2-h7f98852_1002.tar.bz2 + version: 2.3.2 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 4b230e8381279d76131116660f5a241a + sha256: e90b0a6a5d41776f11add74aa030f789faf4efd3875c31964d6f9cfa63a10dd1 + manager: conda + name: xorg-kbproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2 + version: 1.0.7 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: d6b0b50b49eccfe0be0373be628be0f3 + sha256: f15ce1dff16823888bcc2be1738aadcb36699be1e2dd2afa347794c7ec6c1587 + manager: conda + name: xorg-libice + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.0.10-h7f98852_0.tar.bz2 + version: 1.0.10 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: bf6f803a544f26ebbdc3bfff272eb179 + sha256: 9e9b70c24527289ac7ae31925d1eb3b0c1e9a78cb7b8f58a3110cc8bbfe51c26 + manager: conda + name: xorg-libxau + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.9-h7f98852_0.tar.bz2 + version: 1.0.9 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: be93aabceefa2fac576e971aef407908 + sha256: 4df7c5ee11b8686d3453e7f3f4aa20ceef441262b49860733066c52cfd0e4a77 + manager: conda + name: xorg-libxdmcp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2 + version: 1.1.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 2f835e6c386e73c6faaddfe9eda67e98 + sha256: 4b91d48fed368c83eafd03891ebfd5bae0a03adc087ebea8a680ae22da99a85f + manager: conda + name: xorg-recordproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-recordproto-1.14.2-h7f98852_1002.tar.bz2 + version: 1.14.2 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 06feff3d2634e3097ce2fe681474b534 + sha256: 38942930f233d1898594dd9edf4b0c0786f3dbc12065a0c308634c37fd936034 + manager: conda + name: xorg-renderproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2 + version: 0.11.1 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 1e15f6ad85a7d743a2ac68dae6c82b98 + sha256: d45c4d1c8372c546711eb3863c76d899d03a67c3edb3b5c2c46c9492814cbe03 + manager: conda + name: xorg-xextproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h7f98852_1002.tar.bz2 + version: 7.3.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: b4a4381d54784606820704f7b5f05a15 + sha256: f197bb742a17c78234c24605ad1fe2d88b1d25f332b75d73e5ba8cf8fbc2a10d + manager: conda + name: xorg-xproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2 + version: 7.0.31 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + hash: + md5: 52402c791f35e414e704b7a113f99605 + sha256: c048c715b63fff3b8d9521d08f67ddda97bdd346c4ae71f54eda24f634695962 + manager: conda + name: xxhash + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xxhash-0.8.0-h7f98852_3.tar.bz2 + version: 0.8.0 +- category: main + dependencies: + libgcc-ng: '>=12' + hash: + md5: 2161070d867d1b1204ea749c8eec4ef0 + sha256: 03a6d28ded42af8a347345f82f3eebdd6807a08526d47899a42d62d319609162 + manager: conda + name: xz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 + version: 5.2.6 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + hash: + md5: 4cb3ad778ec2d5a7acbdf254eb1c42ae + sha256: a4e34c710eeb26945bdbdaba82d3d74f60a78f54a874ec10d373811a5d217535 + manager: conda + name: yaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 + version: 0.2.5 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libiconv: '>=1.16,<1.17.0a0' + hash: + md5: af46eaa305af6768321779615ed88ac4 + sha256: 016719d88e6f84af579606cfd5e8d52b9c31c9ad38c54b92fff5d49044ca5673 + manager: conda + name: diffutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/diffutils-3.8-ha1f6473_0.tar.bz2 + version: '3.8' +- category: main + dependencies: + libfdt: '>=1.6.1,<1.7.0a0' + libgcc-ng: '>=10.3.0' + yaml: '>=0.2.5,<0.3.0a0' + hash: + md5: caa34d1dbb00e66fc12387ee364c24ce + sha256: cb20ea4ea3ae9c2ab6728b934666dc4cc0fac7c7acc4df66c9ab3819128a006e + manager: conda + name: dtc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/dtc-1.6.1-h166bdaf_1.tar.bz2 + version: 1.6.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + m4: '' + hash: + md5: b1029ec81c7e0969e84a8179d039a9ce + sha256: 5a6dba5af1127e859eefd68e77b7af062b42f85401efbb43a970da977ba3e344 + manager: conda + name: flex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/flex-2.6.4-h58526e2_1004.tar.bz2 + version: 2.6.4 +- category: main + dependencies: + binutils_impl_linux-64: 2.36.1.* + libgcc-devel_linux-64: 12.1.0 h1ec3361_16 + libgcc-ng: '>=12.1.0' + libgomp: '>=12.1.0' + libsanitizer: 12.1.0 ha89aaad_16 + libstdcxx-ng: '>=12.1.0' + sysroot_linux-64: '' + hash: + md5: 8db926c5e0250835beca6557221b600b + sha256: 344d543e87657facf6d6baf0ef877f7e003f1a25d969f196083be370ae59a410 + manager: conda + name: gcc_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-12.1.0-hea43390_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=9.4.0' + hash: + md5: af49250eca8e139378f8ff0ae9e57251 + sha256: 1bb53c99b4943d210c881aad9158fb0235b348498bad1a7076d1f2bef6671922 + manager: conda + name: gettext + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.19.8.1-h73d1719_1008.tar.bz2 + version: 0.19.8.1 +- category: main + dependencies: + libopenblas: '>=0.3.21,<1.0a0' + hash: + md5: d9b7a8639171f6c6fa0a983edabcfe2b + sha256: 4e4c60d3fe0b95ffb25911dace509e3532979f5deef4364141c533c5ca82dd39 + manager: conda + name: libblas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-16_linux64_openblas.tar.bz2 + version: 3.9.0 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + ncurses: '>=6.2,<7.0.0a0' + hash: + md5: 4d331e44109e3f0e19b4cb8f9b82f3e1 + sha256: a57d37c236d8f7c886e01656f4949d9dcca131d2a0728609c6f7fa338b65f1cf + manager: conda + name: libedit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + version: 3.1.20191231 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: f5759f0c80708fbf9c4836c0cb46d0fe + sha256: af0f505053153cd2e8ad08a8559fb3df73b22ce8f635dbcaf7818a7bf916437f + manager: conda + name: libllvm14 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-he0ac6c6_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: fe3ab1049214fca5620b7b96af1a6a55 + sha256: de50b620811232548e3913bc1c19b28b17cc782447e9cb5cd8faa0cfbd15e966 + manager: conda + name: libmagic + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libmagic-5.39-h753d276_1.tar.bz2 + version: '5.39' +- category: main + dependencies: + c-ares: '>=1.18.1,<2.0a0' + libev: '>=4.33,<4.34.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + openssl: '>=1.1.1q,<1.1.2a' + hash: + md5: 6fe9e31c2b8d0b022626ccac13e6ca3c + sha256: 44b87b28efb1fa34632730f37a39250ef955a3497d7d9cd0ec60316ac134278e + manager: conda + name: libnghttp2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.47.0-hdcd2b5c_1.tar.bz2 + version: 1.47.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 575078de1d3a3114b3ce131bd1508d0c + sha256: 422a544fbfc8d8bf43de4b2dc5c7c991294ad0e37b37439d8dbf740f07a75437 + manager: conda + name: libpng + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.38-h753d276_0.tar.bz2 + version: 1.6.38 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: b085539ca2b54a188848bcfcb970005d + sha256: f8b72568b2a8685f465722a929dbaea8ad2e1812fe70a96d1ad71c1bf14f6497 + manager: conda + name: libprotobuf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-3.20.1-h6239696_4.tar.bz2 + version: 3.20.1 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: ccb2457c73609f2622b8a4b3e42e5d8b + sha256: aa579bad433c481f9b0e3df473c4b9f4455787c0c439e921d0caa26affb205e3 + manager: conda + name: libsqlite + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.39.3-h753d276_0.tar.bz2 + version: 3.39.3 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + openssl: '>=1.1.1q,<1.1.2a' + hash: + md5: 89acee135f0809a18a1f4537390aa2dd + sha256: 3c2ed83502bedf4ec8c5b972accb6ff1b6c018f72fb711cdb65cb8540d5ab89e + manager: conda + name: libssh2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.10.0-haa6b8db_3.tar.bz2 + version: 1.10.0 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + pthread-stubs: '' + xorg-libxau: '' + xorg-libxdmcp: '' + hash: + md5: b3653fdc58d03face9724f602218a904 + sha256: 8d5d24cbeda9282dd707edd3156e5fde2e3f3fe86c802fa7ce08c8f1e803bfd9 + manager: conda + name: libxcb + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.13-h7f98852_1004.tar.bz2 + version: '1.13' +- category: main + dependencies: + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libiconv: '>=1.16,<1.17.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + xz: '>=5.2.5,<5.3.0a0' + hash: + md5: aced7c1f4b4dbfea08e033c6ae97c53e + sha256: 3c00e90a6eb6cc741731a09f848c12f3ef5ba5d03c9bbeb194029f39b7a48a5f + manager: conda + name: libxml2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.9.14-h22db469_4.tar.bz2 + version: 2.9.14 +- category: main + dependencies: + libgcc-ng: '>=7.3.0' + lzo: '>=2.10,<3.0a0' + hash: + md5: e0545c79e1a5defdc1d6f1920d77ca91 + sha256: 171179d1b5cbd487e110b04f00a6b70c4c2b1b3bf5b16196d9aa863e4f216f0d + manager: conda + name: lzop + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lzop-1.04-h3753786_2.tar.bz2 + version: '1.04' +- category: main + dependencies: + gmp: '>=6.2.1,<7.0a0' + libgcc-ng: '>=7.5.0' + hash: + md5: ea9ebeddb066da8fad4a815e61b139be + sha256: d2d71ac6ed3b32f06b7db2691e0a1760016ce13fb0c50a9de6ed1ccc33e35ff3 + manager: conda + name: mpfr + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.1.0-h9202a9a_1.tar.bz2 + version: 4.1.0 +- category: main + dependencies: + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + libtasn1: '>=4.18.0,<5.0a0' + hash: + md5: 56ee94e34b71742bbdfa832c974e47a8 + sha256: aa8d3887b36557ad0c839e4876c0496e0d670afe843bf5bba4a87764b868196d + manager: conda + name: p11-kit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/p11-kit-0.24.1-hc5aa10d_0.tar.bz2 + version: 0.24.1 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: dfd26f27a9d5de96cec1d007b9aeb964 + sha256: ed3fa628b94a82ff039bdc9591c241dfc2c555f0efdfb07a0b53be4b2d9dfe6c + manager: conda + name: pcre2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.37-hc3806b6_1.tar.bz2 + version: '10.37' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libnsl: '>=2.0.0,<2.1.0a0' + hash: + md5: 09ba115862623f00962e9809ea248f1a + sha256: a116c1d3c64a072280b441c43d893d341a1d37d16ec18afc76eee40299deabfa + manager: conda + name: perl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-2_h7f98852_perl5.tar.bz2 + version: 5.32.1 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + libiconv: '' + hash: + md5: 78388f97473c02e5ac8a3742eee4c959 + sha256: 2868865a437515136840dbb7d901adea798128427f32f984cfa4cc56989f90ce + manager: conda + name: popt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/popt-1.16-h0b475e3_2002.tar.bz2 + version: '1.16' +- category: main + dependencies: + libgcc-ng: '>=12' + ncurses: '>=6.3,<7.0a0' + hash: + md5: db2ebbe2943aae81ed051a6a9af8e0fa + sha256: f5f383193bdbe01c41cb0d6f99fec68e820875e842e6e8b392dbe1a9b6c43ed8 + manager: conda + name: readline + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/readline-8.1.2-h0f457ee_0.tar.bz2 + version: 8.1.2 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + ncurses: '>=6.2,<7.0.0a0' + hash: + md5: 3b67f325fac07461f193e27a9d9c5a65 + sha256: 3c7020802fb52b946fe37a2180a6cad298f65b7a3e861c2616b6ffd4165ec22f + manager: conda + name: screen + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/screen-4.8.0-he28a2e2_0.tar.bz2 + version: 4.8.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libiconv: '>=1.16,<1.17.0a0' + hash: + md5: 33614741eb453005e0c74e027c325508 + sha256: 967aa10d9197b2a9753f21cb9e7d729560d90df41eb2fa2a3e2ffcb66891d98b + manager: conda + name: tar + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tar-1.34-ha1f6473_0.tar.bz2 + version: '1.34' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libzlib: '>=1.2.11,<1.3.0a0' + hash: + md5: 5b8c42eb62e9fc961af70bdd6a26e168 + sha256: 032fd769aad9d4cad40ba261ab222675acb7ec951a8832455fce18ef33fa8df0 + manager: conda + name: tk + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.12-h27826a3_0.tar.bz2 + version: 8.6.12 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-xextproto: '' + hash: + md5: 65ad6e1eb4aed2b0611855aff05e04f6 + sha256: 5d2af1b40f82128221bace9466565eca87c97726bb80bbfcd03871813f3e1876 + manager: conda + name: xorg-fixesproto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-fixesproto-5.0-h7f98852_1002.tar.bz2 + version: '5.0' +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libuuid: '>=2.32.1,<3.0a0' + xorg-libice: 1.0.* + hash: + md5: 9e856f78d5c80d5a78f61e72d1d473a3 + sha256: bdb350539521ddc1f30cc721b6604eced8ef72a0ec146e378bfe89e2be17ab35 + manager: conda + name: xorg-libsm + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.3-hd9c2040_1000.tar.bz2 + version: 1.2.3 +- category: main + dependencies: + libgcc-ng: '>=12' + libzlib: 1.2.12 h166bdaf_3 + hash: + md5: 76c717057865201aa2d24b79315645bb + sha256: ae9432916a11c7f52ea295d6cad1ecb2b838a75087d14db3a5e50c1949aa9f55 + manager: conda + name: zlib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.12-h166bdaf_3.tar.bz2 + version: 1.2.12 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: adcf0be7897e73e312bd24353b613f74 + sha256: c42d9ec413edd7e984b6cac676997105d0f106556a0f045961153b049b95b87c + manager: conda + name: zstd + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.2-h6239696_4.tar.bz2 + version: 1.5.2 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + m4: '' + perl: 5.* + hash: + md5: 47f6f07d64d6ea9d2c806ff42023e7e3 + sha256: 57b977849da4ff3a9c62ff632dcb62f48697c7d3698804230f4b9a43b2ce1a39 + manager: conda + name: autoconf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/autoconf-2.69-pl5321hd708f79_11.tar.bz2 + version: '2.69' +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + readline: '>=8.1,<9.0a0' + hash: + md5: 54d1a374b75f14ecc58aea8c4236c0c3 + sha256: 6415903ad8774fc0f1bf5b156ae0b6f9988427a0f14bb35467c5938f05fe8707 + manager: conda + name: bash + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bash-5.1.16-hd863ed2_0.tar.bz2 + version: 5.1.16 +- category: main + dependencies: + flex: '' + libgcc-ng: '>=9.4.0' + libstdcxx-ng: '>=9.4.0' + hash: + md5: c12b9a7d2289bce118c8322762836c97 + sha256: 4c593dccc8e53717225547c8961c5d0671d738c26702b91a228b43d44ff4e387 + manager: conda + name: bison + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bison-3.8-h9c3ff4c_0.tar.bz2 + version: '3.8' +- category: main + dependencies: + gcc_impl_linux-64: '>=12.1.0,<12.1.1.0a0' + hash: + md5: 376d2d246e1228913ef6b6d32d191ad0 + sha256: 32908d2d36adfb327aa28d30ab8af2bb32a653d84706696b797379b27c83fcce + manager: conda + name: conda-gcc-specs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-gcc-specs-12.1.0-h559a835_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + libgcc-ng: '>=7.5.0' + tk: '>=8.6.10,<8.7.0a0' + hash: + md5: c9f6a4d589ac81b3867b95d6ba290829 + sha256: 0fa59f12836faefbef1426dc16cbba68a25a4ba48807213848115fd5cfb51a06 + manager: conda + name: expect + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/expect-5.45.4-h555a92e_0.tar.bz2 + version: 5.45.4 +- category: main + dependencies: + libgcc-ng: '>=12' + libmagic: 5.39 h753d276_1 + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: a0f7ed92aaa3b6d109e6e2301e502c24 + sha256: 8c3b26e7241324a4fb8a19966e67af043781e6feb4a7393608e5ebcc84410b62 + manager: conda + name: file + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/file-5.39-h753d276_1.tar.bz2 + version: '5.39' +- category: main + dependencies: + gettext: '' + libgcc-ng: '>=9.4.0' + hash: + md5: 8d0b19bcc4a822e154eaf924483c9edb + sha256: 377377897759dc0183ad2db9a3c4472d50d81a74b62ad974f32109900d891743 + manager: conda + name: findutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/findutils-4.6.0-h7f98852_1001.tar.bz2 + version: 4.6.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 4e54cbfc47b8c74c2ecc1e7730d8edce + sha256: 97325af03590d9f9cc7fcb35ad869fa409c51820b0c721bfc9fe7a6d058d0bb0 + manager: conda + name: freetype + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-hca18f0e_0.tar.bz2 + version: 2.12.1 +- category: main + dependencies: + gcc_impl_linux-64: 12.1.0.* + hash: + md5: 41eda6f576d154ff857f2782446ca975 + sha256: 2e53954244ab346c537b78dcc54e0dddf1c101387d4b77180663a9028a969bd3 + manager: conda + name: gcc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.1.0-h9ea6d83_10.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + gcc_impl_linux-64: 12.1.0 hea43390_16 + libstdcxx-devel_linux-64: 12.1.0 h1ec3361_16 + sysroot_linux-64: '' + hash: + md5: f64e7c4aad2bf9d75ef1849ba12d550e + sha256: 32e2b3182704acee2058e3346a7d1b8d562729f502c99b1beef13eb3b0c686c2 + manager: conda + name: gxx_impl_linux-64 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-12.1.0-hea43390_16.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + keyutils: '>=1.6.1,<2.0a0' + libedit: '>=3.1.20191231,<4.0a0' + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + openssl: '>=1.1.1l,<1.1.2a' + hash: + md5: 7d862b05445123144bec92cb1acc8ef8 + sha256: 3d0f0a8806b6bbe5f9584ff69e0b569d8b3a5b8bd4f35564fdbd304c7ef28fd1 + manager: conda + name: krb5 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.19.3-h3790be6_0.tar.bz2 + version: 1.19.3 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libgcc-ng: '>=12' + libxml2: '>=2.9.14,<2.10.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + lz4-c: '>=1.9.3,<1.10.0a0' + lzo: '>=2.10,<3.0a0' + openssl: '>=1.1.1o,<1.1.2a' + xz: '>=5.2.5,<5.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 5b28408cfb6d2026ae7f2e7cb963f71a + sha256: 083a9e69c5f5687b47b0d00adbcc7e502c4babf275fa95e61a816fe071a75304 + manager: conda + name: libarchive + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.5.2-hb890918_3.tar.bz2 + version: 3.5.2 +- category: main + dependencies: + libblas: 3.9.0 16_linux64_openblas + hash: + md5: 20bae26d0a1db73f758fc3754cab4719 + sha256: e4ceab90a49cb3ac1af20177016dc92066aa278eded19646bb928d261b98367f + manager: conda + name: libcblas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-16_linux64_openblas.tar.bz2 + version: 3.9.0 +- category: main + dependencies: + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 0e63ac182e381cd351c397f8e44a4b71 + sha256: 4e17513579284329f89f36b1e02ec9b7df01ec67f66f02c8b07ac15354477b1b + manager: conda + name: libclang-cpp14 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp14-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: cdbd49e0ab5c5a6c522acb8271977d4c + sha256: 5a359982db6223f0330682b4ac7bd2b6f0206cf566a5e074e3f0609bc5a1f98f + manager: conda + name: libclang13 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-14.0.6-default_h3a83d3e_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + gettext: '>=0.19.8.1,<1.0a0' + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + libiconv: '>=1.16,<1.17.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + pcre: '>=8.45,<9.0a0' + hash: + md5: ebeadbb5fbc44052eeb6f96a2136e3c2 + sha256: 2ec01b1fbd21f9ec4a0a723a7dbe0c43db2f7dde88eb95586d63ea7f4e40193f + manager: conda + name: libglib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.72.1-h2d90d5f_0.tar.bz2 + version: 2.72.1 +- category: main + dependencies: + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=12' + libunistring: '>=0,<1.0a0' + hash: + md5: 7726ff4317aaecba7a4e7c2a16d38b21 + sha256: 6051ca2b05ff5d08fcc1b5b653d34454dc0a099eec374683fea7ada6033bac62 + manager: conda + name: libidn2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libidn2-2.3.3-h166bdaf_0.tar.bz2 + version: 2.3.3 +- category: main + dependencies: + libblas: 3.9.0 16_linux64_openblas + hash: + md5: 955d993f41f9354bf753d29864ea20ad + sha256: f5f30b8049dfa368599e5a08a4f35cb1966af0abc539d1fd1f50d93db76a74e6 + manager: conda + name: liblapack + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-16_linux64_openblas.tar.bz2 + version: 3.9.0 +- category: main + dependencies: + jpeg: '>=9e,<10a' + lerc: '>=4.0.0,<5.0a0' + libdeflate: '>=1.14,<1.15.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libwebp-base: '>=1.2.4,<2.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + xz: '>=5.2.6,<5.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 901791f0ec7cddc8714e76e273013a91 + sha256: 19f29fcaab2e6b97cb1991a5a703b5951e981dc8a093945f20382288b29a4668 + manager: conda + name: libtiff + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.4.0-h55922b4_4.tar.bz2 + version: 4.4.0 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libprotobuf: '>=3.20.0,<3.21.0a0' + libstdcxx-ng: '>=10.3.0' + libzlib: '>=1.2.11,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + openssl: '>=1.1.1n,<1.1.2a' + perl: '>=5.32.1,<5.33.0a0 *_perl5' + hash: + md5: b7d4b8236c1a2e1aa02dc5c887e70f19 + sha256: ddbcf44eb9dcb8556c1a5f511e2e028dab8545e82ee441a03bb54e52152fdd2a + manager: conda + name: mosh + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mosh-1.3.2-pl5321h4a694d4_1012.tar.bz2 + version: 1.3.2 +- category: main + dependencies: + gmp: '>=6.2.1,<7.0a0' + libgcc-ng: '>=7.5.0' + mpfr: '>=4.1.0,<5.0a0' + hash: + md5: c5d36085ed66e1c582d652fb921e99fb + sha256: 304e369ae27b09528dc487c86cfddbf80d34402198bdef6d6111080ad470baf5 + manager: conda + name: mpc + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mpc-1.2.1-h9f54685_0.tar.bz2 + version: 1.2.1 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + libiconv: '>=1.16,<1.17.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + lz4-c: '>=1.9.3,<1.10.0a0' + openssl: '>=1.1.1o,<1.1.2a' + popt: '>=1.16,<2.0a0' + xxhash: '>=0.8.0,<0.8.1.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 35f8fdb194162a71401a44dda9daeeb9 + sha256: 037b93fe813b2230c73ac3e0ebccc3e423e0afbc9c7c3e9790c6c4c025af5d39 + manager: conda + name: rsync + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/rsync-3.2.3-hfa40b15_4.tar.bz2 + version: 3.2.3 +- category: main + dependencies: + libgcc-ng: '>=12' + libsqlite: 3.39.3 h753d276_0 + libzlib: '>=1.2.12,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + readline: '>=8.1.2,<9.0a0' + hash: + md5: f03cf4ec974e32b6c5d349f62637e36e + sha256: afd8ac129ecb548bb7c600901bc3bc54ea053d119cf53ac95a22aea88efd7e5d + manager: conda + name: sqlite + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.39.3-h4ff8645_0.tar.bz2 + version: 3.39.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libxcb: 1.* + xorg-kbproto: '' + xorg-xproto: '' + hash: + md5: 12a61e640b8894504326aadafccbb790 + sha256: ec4641131e3afcb4b34614a5fa298efb34f54c2b2960bf9a73a8d202140d47c4 + manager: conda + name: xorg-libx11 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.7.2-h7f98852_0.tar.bz2 + version: 1.7.2 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libglib: '>=2.64.6,<3.0a0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: 661e1ed5d92552785d9f8c781ce68685 + sha256: dde04e006d330e42165c49778546c466aa5ae03499f20cdd2bcbc7f0306f896d + manager: conda + name: atk-1.0 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/atk-1.0-2.36.0-h3371d22_4.tar.bz2 + version: 2.36.0 +- category: main + dependencies: + libclang-cpp14: '>=14.0.6,<14.1.0a0' + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: ef9669b9847ce3c8a304e9eb08bf446d + sha256: 0c07d3ada12b27b0df8ea07faf4fa8c3b45cc791752a724ac86302af6378b4bb + manager: conda + name: clang-format-14 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/clang-format-14-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + expat: '>=2.4.2,<3.0a0' + libgcc-ng: '>=9.4.0' + libglib: '>=2.70.2,<3.0a0' + hash: + md5: ecfff944ba3960ecb334b9a2663d708d + sha256: 8f5f995699a2d9dbdd62c61385bfeeb57c82a681a7c8c5313c395aa0ccab68a5 + manager: conda + name: dbus + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 + version: 1.13.6 +- category: main + dependencies: + expat: '>=2.4.8,<3.0a0' + freetype: '>=2.12.1,<3.0a0' + libgcc-ng: '>=12' + libuuid: '>=2.32.1,<3.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 139ace7da04f011abbd531cb2a9840ee + sha256: 58388e28faa2078b0d93ec8d236f102b945e169c0b0fef9e8aa4496abe9548ce + manager: conda + name: fontconfig + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.0-hc2a2eb6_1.tar.bz2 + version: 2.14.0 +- category: main + dependencies: + jpeg: '>=9e,<10a' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + libtiff: '>=4.4.0,<5.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + zlib: '>=1.2.12,<1.3.0a0' + hash: + md5: a61c6312192e7c9de71548a6706a21e6 + sha256: b7379d19afe924b39e29e47b046f99a4a737f58a210c27d083391c0f8f012aad + manager: conda + name: gdk-pixbuf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gdk-pixbuf-2.42.8-hff1cb4f_1.tar.bz2 + version: 2.42.8 +- category: main + dependencies: + libgcc-ng: '>=12' + libidn2: '>=2,<3.0a0' + libstdcxx-ng: '>=12' + libtasn1: '>=4.18.0,<5.0a0' + nettle: '>=3.8.1,<3.9.0a0' + p11-kit: '>=0.24.1,<0.25.0a0' + hash: + md5: 12df79786a310d140fa0a399654d129b + sha256: 89c2366a9128f0018ace0c78b65d615b50d3dbcab529c232788cb09f413d5ec4 + manager: conda + name: gnutls + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gnutls-3.7.7-hf3e180e_0.tar.bz2 + version: 3.7.7 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libglib: '>=2.66.4,<3.0a0' + libstdcxx-ng: '>=9.3.0' + hash: + md5: 112eb9b5b93f0c02e59aea4fd1967363 + sha256: ed9ae774aa867ad41bb0aa3f4a088f326dec32ab3468040322dbbd6c5bf33b0a + manager: conda + name: gts + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gts-0.7.6-h64030ff_2.tar.bz2 + version: 0.7.6 +- category: main + dependencies: + gcc: 12.1.0.* + gxx_impl_linux-64: 12.1.0.* + hash: + md5: fd875ec9914bc3b7b1eb1676e8862c71 + sha256: 178342981f2f6d60eb4c150583b0f52f42232549f7929c5066e610881cbf8633 + manager: conda + name: gxx + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.1.0-h9ea6d83_10.tar.bz2 + version: 12.1.0 +- category: main + dependencies: + jpeg: '>=9d,<10a' + libgcc-ng: '>=9.3.0' + libtiff: '>=4.2.0,<5.0a0' + hash: + md5: 797117394a4aa588de6d741b06fad80f + sha256: 5b3c77a84b1dbfa53932dee830f35a42cfc5541e23ca0626f8058b04dcf518d1 + manager: conda + name: lcms2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.12-hddcbb42_0.tar.bz2 + version: '2.12' +- category: main + dependencies: + libclang13: 14.0.6 default_h3a83d3e_0 + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: eb70548da697e50cefa7ba939d57d001 + sha256: 2e42f6b4dcb8b75f1eb25d6144fa13084f24a0d2f558a92f1086753bc4e523d4 + manager: conda + name: libclang + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + krb5: '>=1.19.3,<1.20.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 3b88f1d0fe2580594d58d7e44d664617 + sha256: 293b4be657b9bb534c58b2add62c5088fdbd2e943ff5aea5b4595564cc15e681 + manager: conda + name: libcups + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h3e49a29_2.tar.bz2 + version: 2.3.3 +- category: main + dependencies: + krb5: '>=1.19.3,<1.20.0a0' + libgcc-ng: '>=10.3.0' + libnghttp2: '>=1.47.0,<2.0a0' + libssh2: '>=1.10.0,<2.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + openssl: '>=1.1.1o,<1.1.2a' + hash: + md5: d0c278476dba3b29ee13203784672ab1 + sha256: 07285ea4d0d7d068bdc3e178f2e8ca32cb385e8c2451b7842627b610b0e7784c + manager: conda + name: libcurl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-7.83.1-h7bff187_0.tar.bz2 + version: 7.83.1 +- category: main + dependencies: + giflib: '>=5.2.1,<5.3.0a0' + jpeg: '>=9e,<10a' + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libtiff: '>=4.4.0,<5.0a0' + libwebp-base: '>=1.2.4,<2.0a0' + hash: + md5: 802e43f480122a85ae6a34c1909f8f98 + sha256: 56520354bc39baeab8df964138639110eafa6069e34e9545f8818c8abd742f32 + manager: conda + name: libwebp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.2.4-h522a892_0.tar.bz2 + version: 1.2.4 +- category: main + dependencies: + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libstdcxx-ng: '>=12' + libtiff: '>=4.4.0,<5.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: a11b4df9271a8d7917686725aa04c8f2 + sha256: a715cba5649f12a1dca53dfd72fc49577152041f033d7595cf4b6a655a5b93b6 + manager: conda + name: openjpeg + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.0-h7d73246_1.tar.bz2 + version: 2.5.0 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + ld_impl_linux-64: '>=2.36.1' + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + libnsl: '>=2.0.0,<2.1.0a0' + libuuid: '>=2.32.1,<3.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + openssl: '>=1.1.1o,<1.1.2a' + readline: '>=8.1,<9.0a0' + sqlite: '>=3.38.5,<4.0a0' + tk: '>=8.6.12,<8.7.0a0' + tzdata: '' + xz: '>=5.2.5,<5.3.0a0' + hash: + md5: 69bc307cc4d7396c5fccb26bbcc9c379 + sha256: 411462cd0726d5a13fd04295887d1137175df55687e4783f26ac1cbb46a10b7f + manager: conda + name: python + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.13-h9a8a25e_0_cpython.tar.bz2 + version: 3.9.13 +- category: main + dependencies: + flex: '>=2.6.4,<3.0a0' + gxx_impl_linux-64: '' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + make: '' + perl: '' + hash: + md5: ca32c97ae3c69172f87f23d99806343f + sha256: 9fb8023a95d6609925585f8ea17880d05b141b8c36374d079df2e21c2c04a3ae + manager: conda + name: verilator + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/verilator-4.226-he0ac6c6_0.tar.bz2 + version: '4.226' +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + libidn2: '>=2,<3.0a0' + libunistring: '>=0,<1.0a0' + openssl: '>=1.1.1l,<1.1.2a' + zlib: '>=1.2.11,<1.3.0a0' + hash: + md5: 674f6b42484dbfd11906c3b0a93585e9 + sha256: d46fe5f94627cc2cdbed1f3cbadd9693a7ff9550fce2b892ed4d334de841b6ce + manager: conda + name: wget + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/wget-1.20.3-ha56f1ee_1.tar.bz2 + version: 1.20.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-xextproto: '' + hash: + md5: 536cc5db4d0a3ba0630541aec064b5e4 + sha256: cf47ccbf49d46189d7bdadeac1387c826be82deb92ce6badbb03baae4b67ed26 + manager: conda + name: xorg-libxext + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h7f98852_1.tar.bz2 + version: 1.3.4 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-fixesproto: '' + xorg-libx11: '>=1.7.0,<2.0a0' + hash: + md5: e9a21aa4d5e3e5f1aed71e8cefd46b6a + sha256: 1e426a1abb774ef1dcf741945ed5c42ad12ea2dc7aeed7682d293879c3e1e4c3 + manager: conda + name: xorg-libxfixes + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-5.0.3-h7f98852_1004.tar.bz2 + version: 5.0.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-renderproto: '' + hash: + md5: f59c1242cc1dd93e72c2ee2b360979eb + sha256: 7d907ed9e2ec5af5d7498fb3ab744accc298914ae31497ab6dcc6ef8bd134d00 + manager: conda + name: xorg-libxrender + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.10-h7f98852_1003.tar.bz2 + version: 0.9.10 +- category: main + dependencies: + python: '' + hash: + md5: 2489a97287f90176ecdc3ca982b4b0a0 + sha256: 662690cace8f8a3e1358d01ddb8c019bf70ddfccd250220a6a488efc93ea5baf + manager: conda + name: alabaster + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/alabaster-0.7.12-py_0.tar.bz2 + version: 0.7.12 +- category: main + dependencies: + python: '' + hash: + md5: 5f095bc6454094e96f146491fd03633b + sha256: ae9fb8f68281f84482f2c234379aa12405a9e365151d43af20b3ae1f17312111 + manager: conda + name: appdirs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/appdirs-1.4.4-pyh9f0ad1d_0.tar.bz2 + version: 1.4.4 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: f3f2ab3ce28979a24d1a988ba211eb9b + sha256: 1354731d0eb1b406b66b3cb3d6ab74d7cbe9c0ec1d30b9e5afa366d4539e4687 + manager: conda + name: asn1crypto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/asn1crypto-1.5.1-pyhd8ed1ab_0.tar.bz2 + version: 1.5.1 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 6d3ccbc56256204925bfa8378722792f + sha256: 86133878250874b3823bae7369bcad90187132537726cb1b546d88a0552d24de + manager: conda + name: attrs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/attrs-22.1.0-pyh71513ae_1.tar.bz2 + version: 22.1.0 +- category: main + dependencies: + python: '' + hash: + md5: 808c46dc56ae4a796830129aaf1b51ec + sha256: 468b68a9e8714bf21ee2df551b919df28122f32e57033aafe50288fdfb7c4955 + manager: conda + name: cachy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cachy-0.3.0-py_0.tar.bz2 + version: 0.3.0 +- category: main + dependencies: + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + libxcb: '>=1.13,<1.14.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + pixman: '>=0.40.0,<1.0a0' + xorg-libice: '' + xorg-libsm: '' + xorg-libx11: '' + xorg-libxext: '' + xorg-libxrender: '' + zlib: '>=1.2.12,<1.3.0a0' + hash: + md5: d1a88f3ed5b52e1024b80d4bcd26a7a0 + sha256: f062cf56e6e50d3ad4b425ebb3765ca9138c6ebc52e6a42d1377de8bc8d954f6 + manager: conda + name: cairo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.16.0-ha61ee94_1014.tar.bz2 + version: 1.16.0 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 963e8ceccba45b5cf15f33906d5a20a1 + sha256: 9da8b43e2bcd47bc43015e85af96dd44394fbd51eb9b4fae61ec6e082c404231 + manager: conda + name: certifi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/certifi-2022.9.14-pyhd8ed1ab_0.tar.bz2 + version: 2022.9.14 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: c1d5b294fbf9a795dec349a6f4d8be8e + sha256: 9e6170fa7b65b5546377eddb602d5ff871110f84bebf101b7b8177ff64aab1cb + manager: conda + name: charset-normalizer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-2.1.1-pyhd8ed1ab_0.tar.bz2 + version: 2.1.1 +- category: main + dependencies: + clang-format-14: 14.0.6 default_h2e3cab8_0 + libclang-cpp14: '>=14.0.6,<14.1.0a0' + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 46f166532c575e94f97a42d8b4952006 + sha256: a8dd07f8f99f2bb22add994bbbdf9a3f61c635285709e8700781da1c83809e54 + manager: conda + name: clang-format + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/clang-format-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: a6cf47b09786423200d7982d1faa19eb + sha256: ad15e71f51afa48f44592e9f7cee74b6e1b90ddb1caacb5d3e043a62775b64bb + manager: conda + name: cloudpickle + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-2.2.0-pyhd8ed1ab_0.tar.bz2 + version: 2.2.0 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + expat: '>=2.4.8,<3.0a0' + libcurl: '>=7.83.1,<8.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libuv: '' + libzlib: '>=1.2.12,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + rhash: '' + xz: '>=5.2.6,<5.3.0a0' + zlib: '>=1.2.12,<1.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: c57977f63831a8f43ace75fcc7151b9d + sha256: a7d740765dcb6c8f1d594550ae25d221b2a507d4f1d5e4ea94e8c5d4e3b1f215 + manager: conda + name: cmake + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cmake-3.24.2-h5432695_0.tar.bz2 + version: 3.24.2 +- category: main + dependencies: + python: '' + hash: + md5: 9cf68a6826504feedbfd646bc4d1ca14 + sha256: c04c09570a8bccf45bb73ae63d7e396d66c01580f9125ce5e5c981a2be549a51 + manager: conda + name: colorama + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.3-py_0.tar.bz2 + version: 0.4.3 +- category: main + dependencies: + python: '>=3.6,<4.0' + hash: + md5: b8477552274c1cfdb533e954c76523f1 + sha256: af1db267e03c649aefcc1571ddce4eac361a0e5232d1bdd05fd93fadbfdd2da6 + manager: conda + name: crashtest + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/crashtest-0.3.1-pyhd8ed1ab_0.tar.bz2 + version: 0.3.1 +- category: main + dependencies: + krb5: '>=1.19.3,<1.20.0a0' + libcurl: 7.83.1 h7bff187_0 + libgcc-ng: '>=10.3.0' + libssh2: '>=1.10.0,<2.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + openssl: '>=1.1.1o,<1.1.2a' + hash: + md5: ba33b9995f5e691e4f439422d6efafc7 + sha256: ea86c6d7b63cff474c4f4ddd49eb2434a46b3524b601ce35968bfa6ef7196efb + manager: conda + name: curl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/curl-7.83.1-h7bff187_0.tar.bz2 + version: 7.83.1 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: a50559fad0affdbb33729a68669ca1cb + sha256: 3b594bc8aa0b9a51269d54c7a4ef6af777d7fad4bee16b05695e1124de6563f6 + manager: conda + name: cycler + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cycler-0.11.0-pyhd8ed1ab_0.tar.bz2 + version: 0.11.0 +- category: main + dependencies: + python: 2.7|>=3.6 + hash: + md5: f15c3912378a07726093cc94d1e13251 + sha256: fe48fec5aeb77e5963ffb58de6fbb880eb545bbe25c609f614e39c56e4a193a6 + manager: conda + name: distlib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.5-pyhd8ed1ab_0.tar.bz2 + version: 0.3.5 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 10f0218dbd493ab2e5dc6759ddea4526 + sha256: 5b5884b070fbe23bb714c3de22038ed6056b6533b0974c81d5f4a7ef451b7eff + manager: conda + name: filelock + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.8.0-pyhd8ed1ab_0.tar.bz2 + version: 3.8.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 34272b248891bddccc64479f9a7fffed + sha256: 9887c35c374ec1847f167292d3fde023cb4c994a4ceeec283072b95440131f09 + manager: conda + name: idna + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/idna-3.4-pyhd8ed1ab_0.tar.bz2 + version: '3.4' +- category: main + dependencies: + python: '>=3.4' + hash: + md5: 7de5386c8fea29e76b303f37dde4c352 + sha256: c2bfd7043e0c4c12d8b5593de666c1e81d67b83c474a0a79282cc5c4ef845460 + manager: conda + name: imagesize + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 + version: 1.4.1 +- category: main + dependencies: + python: '' + hash: + md5: 39161f81cc5e5ca45b8226fbb06c6905 + sha256: 9423ded508ebda87dae21d7876134e406ffeb88e6059f3fe1a909d180c351959 + manager: conda + name: iniconfig + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/iniconfig-1.1.1-pyh9f0ad1d_0.tar.bz2 + version: 1.1.1 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 3c3de74912f11d2b590184f03c7cd09b + sha256: 31e3492686b4e92b53db9b48bc0eb03873b1caaf28629fee7d2d47627a2c56d3 + manager: conda + name: itsdangerous + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/itsdangerous-2.1.2-pyhd8ed1ab_0.tar.bz2 + version: 2.1.2 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 9800ad1699b42612478755a2d26c722d + sha256: 16639759b811866d63315fe1391f6fb45f5478b823972f4d3d9f0392b7dd80b8 + manager: conda + name: jeepney + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2 + version: 0.8.0 +- category: main + dependencies: + python: '' + hash: + md5: 5988f73e79824c7900954539fbfad3fa + sha256: f75db900a1886fc0813af806a127186506c669431b73a92600de06aadae922ae + manager: conda + name: jmespath + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jmespath-0.10.0-pyh9f0ad1d_0.tar.bz2 + version: 0.10.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 737c0737e5d262688097097534fb1bd5 + sha256: 04e6b6fbec9e262781c5c753cee5c6baf5e22767242ec3db54d2208463814df1 + manager: conda + name: jsondiff + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsondiff-2.0.0-pyhd8ed1ab_0.tar.bz2 + version: 2.0.0 +- category: main + dependencies: + python: '' + hash: + md5: 07d85c22a3beb102a48cd123df84c2a6 + sha256: da279af2285d8f575a7f5652e83bf7f36155c4c63154e385a9d171efcc607bc1 + manager: conda + name: jsonpointer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonpointer-2.0-py_0.tar.bz2 + version: '2.0' +- category: main + dependencies: + expat: '>=2.4.8,<3.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.10.4,<3.0a0' + icu: '>=70.1,<71.0a0' + jpeg: '>=9e,<10a' + libgcc-ng: '>=10.3.0' + libpng: '>=1.6.37,<1.7.0a0' + libtiff: '>=4.3.0,<5.0a0' + libwebp: '' + libwebp-base: '>=1.2.2,<2.0a0' + libzlib: '>=1.2.11,<1.3.0a0' + zlib: '>=1.2.11,<1.3.0a0' + hash: + md5: ea9758cf553476ddf75c789fdd239dc5 + sha256: ce87f320fb409c453671fc0c074ba04987f75b4e9a88d074650f23a92eae1054 + manager: conda + name: libgd + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgd-2.3.3-h18fbbfe_3.tar.bz2 + version: 2.3.3 +- category: main + dependencies: + gnutls: '>=3.7.6,<3.8.0a0' + libgcc-ng: '>=12' + hash: + md5: 78ff89df42ec0d4fe4355490d7843d9b + sha256: 780c82366caab4a741f2a4baa901a9b71fad6c2b8f1f64c168f10f61a939e9d4 + manager: conda + name: libmicrohttpd + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libmicrohttpd-0.9.75-h2603550_1.tar.bz2 + version: 0.9.75 +- category: main + dependencies: + python: '>=3.4' + hash: + md5: 6b0e0b484a96af5101026533bef1f93b + sha256: df8809d4eadd5849452cfb2bfc26d4c967159d4c00865c338c7b7817ce3bcb1d + manager: conda + name: libusb1 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/libusb1-2.0.1-pyhd8ed1ab_0.tar.bz2 + version: 2.0.1 +- category: main + dependencies: + python: '' + hash: + md5: c104d98e09c47519950cffb8dd5b4f10 + sha256: d3a68045ef74a2a7b8c8a55b242fdbc875d362e37adcf793613cf0d8c8e4fbf7 + manager: conda + name: lockfile + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/lockfile-0.12.2-py_1.tar.bz2 + version: 0.12.2 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: f6dfba59b0021f654e55c226634f39d4 + sha256: 9ad66a1d52da6f4bcdb832539e15762b72e1c75c7c32461be6e02c2da53c02d3 + manager: conda + name: more-itertools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/more-itertools-8.14.0-pyhd8ed1ab_0.tar.bz2 + version: 8.14.0 +- category: main + dependencies: + python: '>=3.8' + hash: + md5: 52243eec8c5b9d22924d1c463b01a1d8 + sha256: 9ba4aab5995231c4ee04545876856784a2833b1d3068c71d8b9aee3d049dab8c + manager: conda + name: networkx + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/networkx-2.8.6-pyhd8ed1ab_0.tar.bz2 + version: 2.8.6 +- category: main + dependencies: + python: '>=2.7' + hash: + md5: a4eea5bff523f26442405bc5d1f52adb + sha256: 9153f0f38c76a09da7688a61fdbf8f3d7504e2326bef53e4ec20d994311b15bd + manager: conda + name: pastel + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pastel-0.2.1-pyhd8ed1ab_0.tar.bz2 + version: 0.2.1 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 0f2d0da112ff6fd76cc3ce038d72d2c9 + sha256: 2f025bd6425932cbbca83a24194f8c4ef098d6aa4b4c6f878f73d926a1041303 + manager: conda + name: pkginfo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.8.3-pyhd8ed1ab_0.tar.bz2 + version: 1.8.3 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 2fb3f88922e7aec26ba652fcdfe13950 + sha256: a46843e317318405a8c66b640e7ad0c95d2f536918faa4f36cdfcda852000bcd + manager: conda + name: platformdirs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-2.5.2-pyhd8ed1ab_1.tar.bz2 + version: 2.5.2 +- category: main + dependencies: + python: '' + hash: + md5: 359eeb6536da0e687af562ed265ec263 + sha256: fb31e006a25eb2e18f3440eb8d17be44c8ccfae559499199f73584566d0a444a + manager: conda + name: ptyprocess + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 + version: 0.7.0 +- category: main + dependencies: + python: '>=2.7' + hash: + md5: b4613d7e7a493916d867842a6a148054 + sha256: 268be33a290e3d51467ab29cbb5a80cf79f69dade2f2dead25d7f80d76c3543a + manager: conda + name: py + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/py-1.11.0-pyh6c4a22f_0.tar.bz2 + version: 1.11.0 +- category: main + dependencies: + python: '' + hash: + md5: 06d04c9f8f72ac77911db942eda24fb9 + sha256: b2c1bb18ab7bf36263e0b3f29bd2991a108ec1957051f9f5d925efeaf7ed1344 + manager: conda + name: pyasn1 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.4.8-py_0.tar.bz2 + version: 0.4.8 +- category: main + dependencies: + python: ==2.7.*|>=3.4 + hash: + md5: 076becd9e05608f8dc72757d5f3a91ff + sha256: 74c63fd03f1f1ea2b54e8bc529fd1a600aaafb24027b738d0db87909ee3a33dc + manager: conda + name: pycparser + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 + version: '2.21' +- category: main + dependencies: + python: '>=3.3' + hash: + md5: edf8651c4379d9d1495ad6229622d150 + sha256: 50bd91767686bfe769e50a5a1b883e238d944a6163fea43e7c0beaac54ca674f + manager: conda + name: pylev + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pylev-1.4.0-pyhd8ed1ab_0.tar.bz2 + version: 1.4.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 3087df8c636c5a00e694605c39ce4982 + sha256: fc6b77ac4132298a70d5f5cd830fa876a1935a2c5a0a319aad0e90423fd186a4 + manager: conda + name: pyparsing + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.0.6-pyhd8ed1ab_0.tar.bz2 + version: 3.0.6 +- category: main + dependencies: + __unix: '' + python: '>=3.8' + hash: + md5: 2a7de29fb590ca14b5243c4c812c8025 + sha256: a42f826e958a8d22e65b3394f437af7332610e43ee313393d1cf143f0a2d274b + manager: conda + name: pysocks + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 + version: 1.7.1 +- category: main + dependencies: + python: 3.9.* + hash: + md5: 39adde4247484de2bb4000122fdcf665 + sha256: 67231829ea0101fee30c68f788fdba40a11bbee8fdac556daaab5832bd27bf3d + manager: conda + name: python_abi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.9-2_cp39.tar.bz2 + version: '3.9' +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 974bca71d00364630f63f31fa7e059cb + sha256: 8e5c8bc3508e8995431e94c5019405ac5c4e7612bb2c9ea372340f2b7d91e8c5 + manager: conda + name: pytz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pytz-2022.2.1-pyhd8ed1ab_0.tar.bz2 + version: 2022.2.1 +- category: main + dependencies: + __glibc: '>=2.17,<3.0.a0' + libcurl: '>=7.83.1,<8.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + pixman: '>=0.40.0,<1.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: def7188533bc19a8df31e57de92260cf + sha256: 0e6f27f17a562308344271e8011553afc7335176ec415a8e89f07892df06db31 + manager: conda + name: qemu + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/qemu-5.0.0-hb15d774_0.tar.bz2 + version: 5.0.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 65bacdee3cac51e49f45d530bbd5e90f + sha256: 5e00e61916a46c1857871adec258952a50a86542883bcbaa1f1df572bd51e786 + manager: conda + name: shellingham + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/shellingham-1.5.0-pyhd8ed1ab_0.tar.bz2 + version: 1.5.0 +- category: main + dependencies: + python: '' + hash: + md5: e5f25f8dbc060e9a8d912e432202afc2 + sha256: a85c38227b446f42c5b90d9b642f2c0567880c15d72492d8da074a59c8f91dd6 + manager: conda + name: six + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 + version: 1.16.0 +- category: main + dependencies: + python: '' + hash: + md5: 3a8dc70789709aa315325d5df06fb7e4 + sha256: 091de70ee6bfe063e0c0f77336975d124fd1e3f49b9c58d97c0c7b3d287c0002 + manager: conda + name: smmap + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/smmap-3.0.5-pyh44b312d_0.tar.bz2 + version: 3.0.5 +- category: main + dependencies: + python: '>=2' + hash: + md5: 4d22a9315e78c6827f806065957d566e + sha256: a0fd916633252d99efb6223b1050202841fa8d2d53dacca564b0ed77249d3228 + manager: conda + name: snowballstemmer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 + version: 2.2.0 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 20b2eaeaeea4ef9a9a0d99770620fd09 + sha256: bd7838485e34e7ec5717552f83fa4a02623ff5fb854c10f2f57080b85d13c69e + manager: conda + name: sphinxcontrib-applehelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-1.0.2-py_0.tar.bz2 + version: 1.0.2 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 68e01cac9d38d0e717cd5c87bc3d2cc9 + sha256: 66cca7eccb7f92eee53f9f5a552e3e1d643daa3a1ebd03c185e2819e5c491576 + manager: conda + name: sphinxcontrib-devhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-devhelp-1.0.2-py_0.tar.bz2 + version: 1.0.2 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 77dad82eb9c8c1525ff7953e0756d708 + sha256: 3c1170f3a3170e59b156e375c949db98941892850e59fa4085c437a5df0e767d + manager: conda + name: sphinxcontrib-htmlhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.0.0-pyhd8ed1ab_0.tar.bz2 + version: 2.0.0 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 67cd9d9c0382d37479b4d306c369a2d4 + sha256: a42415fc789e9f6ae2e18f07ac143d2e9ce73a35a55ecf1dd1b3d055dd1e6dbe + manager: conda + name: sphinxcontrib-jsmath + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-py_0.tar.bz2 + version: 1.0.1 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: d01180388e6d1838c3e1ad029590aa7a + sha256: 35d8f01fc798d38b72ae003c040d2dee650d315f904268a1f793d4d59460d1e2 + manager: conda + name: sphinxcontrib-qthelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-qthelp-1.0.3-py_0.tar.bz2 + version: 1.0.3 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 9ff55a0901cf952f05c654394de76bf7 + sha256: 890bbf815cff114ddbb618b9876d492fce07d02956c1d7b3d46cb7f835f563f6 + manager: conda + name: sphinxcontrib-serializinghtml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.5-pyhd8ed1ab_2.tar.bz2 + version: 1.1.5 +- category: main + dependencies: + python: '>=2.7' + hash: + md5: f832c45a477c78bebd107098db465095 + sha256: f0f3d697349d6580e4c2f35ba9ce05c65dc34f9f049e85e45da03800b46139c1 + manager: conda + name: toml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + version: 0.10.2 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: 5844808ffab9ebdb694585b50ba02a96 + sha256: 4cd48aba7cd026d17e86886af48d0d2ebc67ed36f87f6534f4b67138f5a5a58f + manager: conda + name: tomli + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + version: 2.0.1 +- category: main + dependencies: + python: '>=3.5' + hash: + md5: 92facfec94bc02d6ccf42e7173831a36 + sha256: 90229da7665175b0185183ab7b53f50af487c7f9b0f47cf09c184cbc139fd24b + manager: conda + name: toolz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.0-pyhd8ed1ab_0.tar.bz2 + version: 0.12.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 5f4386493c11ddad5b5fb7bd7a0fe4ba + sha256: 089c817ee6a6391ee60fd9ecb49eb04dbcdbf4df7f86612cf0d4a863998404ba + manager: conda + name: types-pyyaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.4-pyhd8ed1ab_0.tar.bz2 + version: 6.0.4 +- category: main + dependencies: + python: '>=3' + hash: + md5: e6573ac68718f17b9d4f5c8eda3190f2 + sha256: ec1cfe0b7dc55a22223562cad799e0b16d122dab611c9923b6068d27a784ba2f + manager: conda + name: typing + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/typing-3.10.0.0-pyhd8ed1ab_0.tar.bz2 + version: 3.10.0.0 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: a9d85960bc62d53cc4ea0d1d27f73c98 + sha256: 1fe5b48aa997616a7537de4d05c0b7fd11b712895e35493cac7604e8d5f97ad7 + manager: conda + name: typing_extensions + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.3.0-pyha770c72_0.tar.bz2 + version: 4.3.0 +- category: main + dependencies: + python: '' + hash: + md5: 3563be4c5611a44210d9ba0c16113136 + sha256: 302f4f4bd1ad00c0be1426ecf6bb01db59cfd8aff3de0cf1596526dca1a6b70e + manager: conda + name: webencodings + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-py_1.tar.bz2 + version: 0.5.1 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: f3b20ec2c97bad7104679b1d62eb7a11 + sha256: 911ac2b5c2bbe602c806ded8e5a40bd132e99ffa1dda10e27e6bc046c962fed6 + manager: conda + name: websocket-client + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.4.1-pyhd8ed1ab_0.tar.bz2 + version: 1.4.1 +- category: main + dependencies: + python: '!=3.0,!=3.1,!=3.2,!=3.3,!=3.4' + hash: + md5: 1ca02aaf78d9c70d9a81a3bed5752022 + sha256: aede66e6370f3b936164a703e48362f9080d7162234058fb2ee63cc84d528afc + manager: conda + name: wheel + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.37.1-pyhd8ed1ab_0.tar.bz2 + version: 0.37.1 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: b5b33faed6ed2b4ba47a690b8f5c0818 + sha256: eb40b33ae953e0020406318c9be0eb6edf62f3aa8e64ab0bf1953440b1a92763 + manager: conda + name: xmltodict + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/xmltodict-0.13.0-pyhd8ed1ab_0.tar.bz2 + version: 0.13.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-inputproto: '' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-libxext: 1.3.* + xorg-libxfixes: 5.0.* + hash: + md5: e77615e5141cad5a2acaa043d1cf0ca5 + sha256: 745c1284a96b4282fe6fe122b2643e1e8c26a7ff40b733a8f4b61357238c4e68 + manager: conda + name: xorg-libxi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.7.10-h7f98852_0.tar.bz2 + version: 1.7.10 +- category: main + dependencies: + python: '>=3.7' + hash: + md5: a3508a0c850745b875de88aea4c40cc5 + sha256: bb6920451dad059ca31581ca6e36c5f1534fad8a8efe869c7eb9c9e3846b4f53 + manager: conda + name: zipp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.8.1-pyhd8ed1ab_0.tar.bz2 + version: 3.8.1 +- category: main + dependencies: + python: '>=3.6' + pytz: '' + hash: + md5: 72f1c6d03109d7a70087bc1d029a8eda + sha256: 45297f4ce5786ff5bdf188846fcaa163f45629eebc285faf2e9e2cbeb6e57a91 + manager: conda + name: babel + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/babel-2.10.3-pyhd8ed1ab_0.tar.bz2 + version: 2.10.3 +- category: main + dependencies: + python: '>=3.6' + typing_extensions: '' + hash: + md5: be3b5cae027b3ead96829ef7717c76c3 + sha256: 4592888a3c5f1ad2e36ff89039ff1912c623695f985622cf0fcfc2d0cb315053 + manager: conda + name: botocore-stubs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-stubs-1.24.7-pyhd8ed1ab_0.tar.bz2 + version: 1.24.7 +- category: main + dependencies: + libffi: '>=3.4.2,<3.5.0a0' + libgcc-ng: '>=12' + pycparser: '' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 61e961a94c8fd535e4496b17e7452dfe + sha256: 36340ca4f6935f5841197aa91c6ffef5966b031fa1267cdee7e3add5ba4dfc81 + manager: conda + name: cffi + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.15.1-py39he91dace_0.tar.bz2 + version: 1.15.1 +- category: main + dependencies: + clang-format: 14.0.6 default_h2e3cab8_0 + libclang: '>=14.0.6,<14.1.0a0' + libclang-cpp14: '>=14.0.6,<14.1.0a0' + libgcc-ng: '>=12' + libllvm14: '>=14.0.6,<14.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 8ab329e2e110199b9adcf872c523df1a + sha256: ee142d5db1a2e1cde2fb678cd12b67db28da5b98e15b699988051ff65c6f1af4 + manager: conda + name: clang-tools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/clang-tools-14.0.6-default_h2e3cab8_0.tar.bz2 + version: 14.0.6 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 40edd9ebc04e4b4ec27c1008e5e3f99d + sha256: f828e0eac4f14d8868039f93cb4674582d95be4c1d89b34007f8154af3af4edf + manager: conda + name: click + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/click-8.1.3-py39hf3d152e_0.tar.bz2 + version: 8.1.3 +- category: main + dependencies: + crashtest: '>=0.3.0,<0.4.0' + pastel: '>=0.2.0,<0.3.0' + pylev: '>=1.3,<2.0' + python: '' + hash: + md5: 159273f717a11e53b2656f8b6521a5e2 + sha256: 59b5c9ea3415e45e1beb1c191e3a0bf0dcca92c200a184704ea55002d1ef535c + manager: conda + name: clikit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/clikit-0.6.2-pyh9f0ad1d_0.tar.bz2 + version: 0.6.2 +- category: main + dependencies: + python: '' + six: '>=1.4.0' + hash: + md5: c69f19038efee4eb534623610d0c2053 + sha256: 2ba7e3e4f75e07b42246b4ba8569c983ecbdcda47b1b900632858a23d91826f2 + manager: conda + name: docker-pycreds + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/docker-pycreds-0.4.0-py_0.tar.bz2 + version: 0.4.0 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: ec83bf44e734dfd8f0b507156df855a0 + sha256: 23e9ab2a539949427b4e4e02bf52a32427da1fe06cb21154e5cd8205ee40098b + manager: conda + name: docutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.15.2-py39hf3d152e_5.tar.bz2 + version: 0.15.2 +- category: main + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libarchive: '>=3.5.2,<3.6.0a0' + libcurl: '>=7.82.0,<8.0a0' + libgcc-ng: '>=10.3.0' + libmicrohttpd: '>=0.9.75,<0.10.0a0' + libstdcxx-ng: '>=10.3.0' + libzlib: '>=1.2.11,<1.3.0a0' + sqlite: '>=3.38.2,<4.0a0' + xz: '>=5.2.5,<5.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + hash: + md5: 2e9ec0e21d51118b004f1f98e4fbf598 + sha256: bee5b4a723472cc844775a36dbdca35ecb24f40fbb162924bd8536b05930c3dc + manager: conda + name: elfutils + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/elfutils-0.187-h989201e_0.tar.bz2 + version: '0.187' +- category: main + dependencies: + curl: '>=7.83.1,<8.0a0' + expat: '>=2.4.8,<3.0a0' + gettext: '' + libgcc-ng: '>=12' + libiconv: '>=1.16,<1.17.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + openssl: '>=1.1.1q,<1.1.2a' + pcre2: '>=10.37,<10.38.0a0' + perl: 5.* + hash: + md5: a84d39ce9a34295720b85bbddac14c02 + sha256: 2f889cbbbb16e460e1589d55aeb3a92b3c005403cfd8c64e682b4dab62e30b98 + manager: conda + name: git + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/git-2.37.3-pl5321h36853c3_0.tar.bz2 + version: 2.37.3 +- category: main + dependencies: + python: '>=3.4' + smmap: '>=3.0.1,<4' + hash: + md5: 40fc6b14a45dee3a3fd9f302d026108e + sha256: fa018c53bd1c171dccde16c4eb9dd9f3ff6b7f2d222c564d48b5516ec1ee24ec + manager: conda + name: gitdb + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/gitdb-4.0.9-pyhd8ed1ab_0.tar.bz2 + version: 4.0.9 +- category: main + dependencies: + gmp: '>=6.2.1,<7.0a0' + libgcc-ng: '>=9.4.0' + mpc: '>=1.2.1,<2.0a0' + mpfr: '>=4.1.0,<5.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 465c0b520e3ac7d7ed001cb31d1ad3c4 + sha256: 90ede58bfaac41a33801263426cb1f792e6ea48153fe344dc48de0b0fb6cbd7a + manager: conda + name: gmpy2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gmpy2-2.1.2-py39h78fa15d_0.tar.bz2 + version: 2.1.2 +- category: main + dependencies: + python: '>=3.6' + typing_extensions: '>=4' + hash: + md5: d3641a0cd477a56cf13b7f7a5bb9e933 + sha256: 697a9d1be6e3add3e3fbf1e737e87fdc223ab423f382c455372f1bfcc8766bce + manager: conda + name: graphql-core + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/graphql-core-3.2.1-pyhd8ed1ab_0.tar.bz2 + version: 3.2.1 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + freetype: '>=2.12.1,<3.0a0' + graphite2: '' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libstdcxx-ng: '>=12' + hash: + md5: 3c5f4fbd64c7254fbe246ca9d87863b6 + sha256: 4def14eb862e0b05ffce33edbfc2cfc4d0e1720f134d52e378c4b661467069cf + manager: conda + name: harfbuzz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-5.2.0-hf9f4e7c_0.tar.bz2 + version: 5.2.0 +- category: main + dependencies: + python: '' + six: '>=1.9' + webencodings: '' + hash: + md5: b2355343d6315c892543200231d7154a + sha256: 9ad06446fe9847e86cb20d220bf11614afcd2cbe9f58096f08d5d4018877bee4 + manager: conda + name: html5lib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/html5lib-1.1-pyh9f0ad1d_0.tar.bz2 + version: '1.1' +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: f67fbf5dd896aeac1e145638bd1a7abf + sha256: bffda3932fb8aa968ac6ba35d9de9cd3f5b8f8a39945071576c86ec5109482ed + manager: conda + name: humanfriendly + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/humanfriendly-10.0-py39hf3d152e_2.tar.bz2 + version: '10.0' +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + zipp: '>=0.5' + hash: + md5: 4c2a0eabf0b8980b2c755646a6f750eb + sha256: 3a13f3af58e7a5b50516c9bf10473953e51d9a5367f93fafd04c2bccc9162983 + manager: conda + name: importlib-metadata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/importlib-metadata-4.11.4-py39hf3d152e_0.tar.bz2 + version: 4.11.4 +- category: main + dependencies: + python: '>=3.6' + zipp: '>=0.4' + hash: + md5: 24dd95143fc4f3898143c93a6d5a5d41 + sha256: 7a32c0b58ae4e2673f47c73ed1f010681501198e6aaa279c5eddc714bca12b48 + manager: conda + name: importlib_resources + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-3.3.1-pyhd8ed1ab_1.tar.bz2 + version: 3.3.1 +- category: main + dependencies: + more-itertools: '' + python: '>=3.7' + hash: + md5: 6e2ef6e4a000db889c124f3927c24f7c + sha256: 82f11df8c7464fe28eb6dab0ebd755aacd8d2b4f15ba97b769bdaee27983e4d8 + manager: conda + name: jaraco.classes + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.2.2-pyhd8ed1ab_0.tar.bz2 + version: 3.2.2 +- category: main + dependencies: + jsonpointer: '>=1.9' + python: '>=3.6' + hash: + md5: 09150b51b0528a31a0f6500b96fdde82 + sha256: d87fd8da2d3327744821b6b1d1e5b76e4077224fb626ce02d6623a1bc6ee2563 + manager: conda + name: jsonpatch + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonpatch-1.32-pyhd8ed1ab_0.tar.bz2 + version: '1.32' +- category: main + dependencies: + python: '' + six: '' + hash: + md5: 7b503c6c097fa8677d6ff17d2bfb623f + sha256: b89ace740500f4a311475ae44add2675d72dc42c02971910ea844812edf93736 + manager: conda + name: junit-xml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/junit-xml-1.9-pyh9f0ad1d_0.tar.bz2 + version: '1.9' +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: c5d6241b3ec5d02c316a5f66f14024c7 + sha256: 32fa01aacf67d40b54fbcf9c7e89aae964450ffdb58bb93baba068d8b5c72c3e + manager: conda + name: kiwisolver + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.3.1-py39h1a9c180_1.tar.bz2 + version: 1.3.1 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 7cda413e43b252044a270c2477031c5c + sha256: 05e22cdcefeebe18698acc1b7445fd7e8b4b07c4d65c99f688ddeff8569d42d0 + manager: conda + name: markupsafe + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.1-py39hb9d737c_1.tar.bz2 + version: 2.1.1 +- category: main + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 35b4a1a56408657cd2c6ce7145c21ecf + sha256: f3a6149980035ee354ddbaf026e8e82db91dcdd1759439522e10d0d64decf237 + manager: conda + name: msgpack-python + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.4-py39hf939315_0.tar.bz2 + version: 1.0.4 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: fc7500ebc3299b6f4a66652fa83f627e + sha256: 2f6ad58442a4f1daa114b440fff46e018cc7323493f91a2bab0bb23d5935f03d + manager: conda + name: mypy_extensions + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mypy_extensions-0.4.3-py39hf3d152e_5.tar.bz2 + version: 0.4.3 +- category: main + dependencies: + libblas: '>=3.8.0,<4.0a0' + libcblas: '>=3.8.0,<4.0a0' + libgcc-ng: '>=10.3.0' + liblapack: '>=3.8.0,<4.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 0cf333996ebdeeba8d1c8c1c0ee9eff9 + sha256: 6ec8d7ade9e083de4f8a532d9e71d14e780cc9059a625b57174cc68f9a99b930 + manager: conda + name: numpy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.19.5-py39hd249d9e_3.tar.bz2 + version: 1.19.5 +- category: main + dependencies: + pyparsing: '>=2.0.2' + python: '>=2.7' + hash: + md5: be69a38e912054a62dc82cc3c7711a64 + sha256: 887645177378f0d383b150259c7f255e9a1a47383872be118e197dc175718316 + manager: conda + name: packaging + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/packaging-20.9-pyh44b312d_0.tar.bz2 + version: '20.9' +- category: main + dependencies: + ptyprocess: '>=0.5' + python: '' + hash: + md5: 5909e7b978141dd80d28dbf9de627827 + sha256: 04eef875d461732ef22cd19bf2c989c40e73b5da625bf6a6b82ddae200e90e56 + manager: conda + name: pexpect + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.8.0-pyh9f0ad1d_2.tar.bz2 + version: 4.8.0 +- category: main + dependencies: + freetype: '>=2.10.4,<3.0a0' + jpeg: '>=9e,<10a' + lcms2: '>=2.12,<3.0a0' + libgcc-ng: '>=12' + libtiff: '>=4.4.0,<5.0a0' + libwebp-base: '>=1.2.4,<2.0a0' + libxcb: '>=1.13,<1.14.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + openjpeg: '>=2.5.0,<2.6.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + tk: '>=8.6.12,<8.7.0a0' + hash: + md5: 3b74a959f6a8008f5901de60b3572c09 + sha256: 607a85830e1c39ded9c825ab0fb24d0768a5c11314dc99957f10479cd2961936 + manager: conda + name: pillow + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pillow-9.2.0-py39hd5dbb17_2.tar.bz2 + version: 9.2.0 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: c375c89340e563053f3656c7f134d265 + sha256: d82e717937e171a2b124030acd2625e0a3ab62e82a137a21c03a91013280c29f + manager: conda + name: pluggy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pluggy-1.0.0-py39hf3d152e_3.tar.bz2 + version: 1.0.0 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: bfefe349de77edb720cb4688821ff78e + sha256: 83cdcf4c17264d63e972f079408bd86ab15a9b14230d168b3c35b5971860be11 + manager: conda + name: poetry-core + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/poetry-core-1.0.8-py39hf3d152e_1.tar.bz2 + version: 1.0.8 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 1e7ffe59e21862559e06b981817e5058 + sha256: ffd165f67a3d5bec03fd3d7c9ab35b8ff4d0f66c5be42f5d4d50db96637a34aa + manager: conda + name: psutil + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.2-py39hb9d737c_0.tar.bz2 + version: 5.9.2 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: b7d981539b1a880d19c6a158104a3fa1 + sha256: e7685b82c1d6269d5fc3a626a4f26138e4136b4b470f308f1a65b01ff17b3b38 + manager: conda + name: pycosat + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pycosat-0.6.3-py39hb9d737c_1010.tar.bz2 + version: 0.6.3 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 306061499621615a60841fa7fc8ba75b + sha256: c7d6dc368e1e3092dc3b3eae5841a6f1d0952033f4e259fb639ab54958c4a6b8 + manager: conda + name: pyinotify + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyinotify-0.9.6-py39hf3d152e_1005.tar.bz2 + version: 0.9.6 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: e2575d7508c7933047544ac7a15e021d + sha256: 9da8d2a32f1d961eaefb5f9aedb53ce74ad4da1a6272ae4cd4eb2fab7d6ed1b0 + manager: conda + name: pyrsistent + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyrsistent-0.18.1-py39hb9d737c_1.tar.bz2 + version: 0.18.1 +- category: main + dependencies: + python: '>=3.6' + six: '>=1.5' + hash: + md5: dd999d1cc9f79e67dbb855c8924c7984 + sha256: 54d7785c7678166aa45adeaccfc1d2b8c3c799ca2dc05d4a82bb39b1968bd7da + manager: conda + name: python-dateutil + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.8.2-pyhd8ed1ab_0.tar.bz2 + version: 2.8.2 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + yaml: '>=0.2.5,<0.3.0a0' + hash: + md5: 896c2e9e5ed4b8b9148380b658898fdf + sha256: 030c5a81b4aafcfa169ba13ef7cbc5f1cf201b524013082903edd68471086d1e + manager: conda + name: pyyaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-5.4.1-py39hb9d737c_3.tar.bz2 + version: 5.4.1 +- category: main + dependencies: + expat: '>=2.4.8,<3.0a0' + gmp: '>=6.2.1,<7.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + mpc: '>=1.2.1,<2.0a0' + mpfr: '>=4.1.0,<5.0a0' + ncurses: '>=6.3,<7.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 8a574054a336665b34ffebca58dba813 + sha256: null + manager: conda + name: riscv-tools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/riscv-tools-1.0.1-0_h1234567_gdcdbcaf.tar.bz2 + version: 1.0.1 +- category: main + dependencies: + pyasn1: '>=0.1.3' + python: '' + hash: + md5: 3452ab3790dbb1df9508b3fa4ea2f806 + sha256: 6ea0fcd8f40c7f78e2c6cff344bb91f457682aa352ee48364246371a41410ee8 + manager: conda + name: rsa + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/rsa-4.7.2-pyh44b312d_0.tar.bz2 + version: 4.7.2 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: a0fabd69dd35bb24ec84d28dc01c3c5b + sha256: 388a1b6b559156b27f6eb1952a85632ad907f0572d31e3897dba338d28c44860 + manager: conda + name: ruamel.yaml.clib + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml.clib-0.2.6-py39hb9d737c_1.tar.bz2 + version: 0.2.6 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + yaml: '>=0.2.5,<0.3.0a0' + hash: + md5: 89efb3c015ef8bc2a33535a2c1b852b2 + sha256: d417615e90a5f66004ef9f742396db129eaa0dcbe7f723288eb2ddc34d39750f + manager: conda + name: ruamel_yaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel_yaml-0.15.80-py39hb9d737c_1007.tar.bz2 + version: 0.15.80 +- category: main + dependencies: + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 4252d0c211566a9f65149ba7f6e87aa4 + sha256: ec8146799fabb0edfd0b2622fdd05413c9a2fcd13dfa846958214f9909ab3435 + manager: conda + name: setuptools + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/setuptools-59.8.0-py39hf3d152e_1.tar.bz2 + version: 59.8.0 +- category: main + dependencies: + python: '>=3.6' + typing: '>=3.6,<4.0' + hash: + md5: c57d6a6abb22c3796add680597ee0096 + sha256: 824543c373d6318c335f7c304ef38dec40fe8e0f88ad7c7db92e181e3c5b1170 + manager: conda + name: tomlkit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.11.4-pyha770c72_0.tar.bz2 + version: 0.11.4 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: a3c57360af28c0d9956622af99a521cd + sha256: c51e56ebf493a94f4f25840a0175405b3f650cd63ebcd6e19a68ac9cfb5e5411 + manager: conda + name: tornado + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.2-py39hb9d737c_0.tar.bz2 + version: '6.2' +- category: main + dependencies: + colorama: '' + python: '>=2.7' + hash: + md5: 5526ff3f88f9db87bb0924b9ce575345 + sha256: d196e0c3a057a840147fa23d3d43eafd6b63258846bdafe8ac17f70b534f91bd + manager: conda + name: tqdm + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.64.1-pyhd8ed1ab_0.tar.bz2 + version: 4.64.1 +- category: main + dependencies: + typing_extensions: 4.3.0 pyha770c72_0 + hash: + md5: f3e98e944832fb271a0dbda7b7771dc6 + sha256: 57ea0e9a150b698f5a7b21b12987da7c321bb331fd07116ecced24eb1e056d2f + manager: conda + name: typing-extensions + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.3.0-hd8ed1ab_0.tar.bz2 + version: 4.3.0 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + ncurses: '>=6.2,<7.0.0a0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + readline: '>=8.0,<9.0a0' + zlib: '>=1.2.11,<1.3.0a0' + hash: + md5: bf0434c73a112c64bb1dd4ea6129e8c2 + sha256: c456c945aeb463d725ce133934f0294a2f4b85bd6ca6d433f3f95454d1112d6b + manager: conda + name: util-linux + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/util-linux-2.36-py39h28948ff_1.tar.bz2 + version: '2.36' +- category: main + dependencies: + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + ncurses: '>=6.3,<7.0a0' + perl: '>=5.32.1,<5.33.0a0 *_perl5' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: ccb6242365b032a5469310116286d834 + sha256: e2b8864ce60cc0f39da4e82cb786d474d7b572114952cc3dea20a287e3731684 + manager: conda + name: vim + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/vim-9.0.0335-py39pl5321h20e6244_0.tar.bz2 + version: 9.0.0335 +- category: main + dependencies: + distlib: '>=0.3.5,<1' + filelock: '>=3.4.1,<4' + platformdirs: '>=2.4,<3' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 165e71a44187ac22e2e1669fd3ca2392 + sha256: 31540fea0c3fd62543ee65ad4b2deff1eac08f4765b1037db7d6a82fbc4719c2 + manager: conda + name: virtualenv + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/virtualenv-20.16.5-py39hf3d152e_0.tar.bz2 + version: 20.16.5 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 25a4f17bf308bc36a15ebe63c3864ac7 + sha256: 3b9eaa6d7040406ab31023bd7596b4c49c4128216b702ee64a8a9cccc74b45e0 + manager: conda + name: wrapt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.14.1-py39hb9d737c_0.tar.bz2 + version: 1.14.1 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + xorg-inputproto: '' + xorg-libx11: '>=1.7.1,<2.0a0' + xorg-libxext: 1.3.* + xorg-libxi: 1.7.* + xorg-recordproto: '' + hash: + md5: a220b1a513e19d5cb56c1311d44f12e6 + sha256: 9a51ae2869b9a47735539dada9d85534418a765d1461c9f91fe7564f3ee75e87 + manager: conda + name: xorg-libxtst + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.3-h7f98852_1002.tar.bz2 + version: 1.2.3 +- category: main + dependencies: + cffi: '>=1.0.0' + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 05a99367d885ec9990f25e74128a8a08 + sha256: 4a520850207e965244c70a412f030f1c353b70b942ad99a0a0cfb83e64bbd60e + manager: conda + name: brotlipy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/brotlipy-0.7.0-py39hb9d737c_1004.tar.bz2 + version: 0.7.0 +- category: main + dependencies: + clikit: '>=0.6.0,<0.7.0' + python: '>=3.6' + hash: + md5: 4c82b11a3d06031bd58e7d869f53d965 + sha256: a3a5beaf5b4a5ba671580164e6b1da77837f9d69414b095bd3231e84a85f505c + manager: conda + name: cleo + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cleo-0.8.1-pyhd8ed1ab_2.tar.bz2 + version: 0.8.1 +- category: main + dependencies: + click: '' + python: '>=3.6' + hash: + md5: 72a46ffc25701c173932fd55cf0965d3 + sha256: 7384b6c194f9822d7cc2c9d82409b2fd571fad96f95e6e27c9098f63772d36fd + manager: conda + name: click-default-group + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/click-default-group-1.2.2-pyhd8ed1ab_1.tar.bz2 + version: 1.2.2 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + tqdm: '' + hash: + md5: ae2e8e8dd87ed4286c89fc8c081e9bdf + sha256: e11ea9eac5dcaf43b3a3292c8daeed9f6c9dbf568a7ca2e27909d3a95c35ef35 + manager: conda + name: conda-package-handling + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-package-handling-1.9.0-py39hb9d737c_0.tar.bz2 + version: 1.9.0 +- category: main + dependencies: + cffi: '>=1.12' + libgcc-ng: '>=12' + openssl: '>=1.1.1q,<1.1.2a' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: edc3668e7b71657237f94cf25e286478 + sha256: 5082e58789cb9d8920c5ca1aff9bbf07a78b44173d2db85f1e9b2081e0aebe52 + manager: conda + name: cryptography + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/cryptography-37.0.4-py39hd97740a_0.tar.bz2 + version: 37.0.4 +- category: main + dependencies: + cloudpickle: '' + pyinotify: '' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: b672b2aae86f427adab76a571ef1cb89 + sha256: 45df810e229b5c15ad9e8197e15c2d2ec47c5170dcaf1b99d3ea4189744d003c + manager: conda + name: doit + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/doit-0.35.0-py39hf3d152e_0.tar.bz2 + version: 0.35.0 +- category: main + dependencies: + e2fsprogs-libs: 1.46.2 h166bdaf_0 + libgcc-ng: '>=10.3.0' + util-linux: '>=2.36,<2.37.0a0' + hash: + md5: 3a5caf0e611d38f05b004a25423e07cb + sha256: fac9c225ac324519cf1224cd87c201a7b18f0c5f42033ef9db7a480a9163f348 + manager: conda + name: e2fsprogs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/e2fsprogs-1.46.2-h166bdaf_0.tar.bz2 + version: 1.46.2 +- category: main + dependencies: + gmpy2: '' + python: '>=3.3' + six: '>=1.9.0' + hash: + md5: 566165664cc0964a7202dc239af6619d + sha256: 7770998e7b1ad6b80d1c3ffa71ae3f8812260676f0268d339abe32879115bc0c + manager: conda + name: ecdsa + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/ecdsa-0.18.0-pyhd8ed1ab_1.tar.bz2 + version: 0.18.0 +- category: main + dependencies: + gitdb: '>=4.0.1,<5' + python: '>=3.7' + typing_extensions: '>=3.7.4.3' + hash: + md5: 20acbaab17a50ac9b64138eb9a0e1af8 + sha256: 6f523156cdc0f2c597ad869d10d12503143a361259d01d180769a06fbdbcc9ec + manager: conda + name: gitpython + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.27-pyhd8ed1ab_0.tar.bz2 + version: 3.1.27 +- category: main + dependencies: + importlib-metadata: '>=4.11.4,<4.11.5.0a0' + hash: + md5: 9a1925fdb91c81437b8012e48ede6851 + sha256: 85049d953d6894e1379162e0f01cf4b8828d40f707cc511edb201e9159f091fc + manager: conda + name: importlib_metadata + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-4.11.4-hd8ed1ab_0.tar.bz2 + version: 4.11.4 +- category: main + dependencies: + markupsafe: '>=2.0' + python: '>=3.7' + hash: + md5: c8490ed5c70966d232fdd389d0dbed37 + sha256: b045faba7130ab263db6a8fdc96b1a3de5fcf85c4a607c5f11a49e76851500b5 + manager: conda + name: jinja2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.2-pyhd8ed1ab_1.tar.bz2 + version: 3.1.2 +- category: main + dependencies: + attrs: '>=17.4.0' + importlib-metadata: '' + pyrsistent: '>=0.14.0' + python: '>=3.6' + setuptools: '' + six: '>=1.11.0' + hash: + md5: 66125e28711d8ffc04a207a2b170316d + sha256: d74a3ddd3c3dd9bd7b00110a196e3af90490c5660674f18bfd53a8fdf91de418 + manager: conda + name: jsonschema + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-3.2.0-pyhd8ed1ab_3.tar.bz2 + version: 3.2.0 +- category: main + dependencies: + elfutils: '>=0.187,<0.188.0a0' + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 5b3ed39ee3809d63d347b649de0a45f8 + sha256: null + manager: conda + name: libdwarf + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/libdwarf-0.0.0.20190110_28_ga81397fc4-h753d276_0.tar.bz2 + version: 0.0.0.20190110_28_ga81397fc4 +- category: main + dependencies: + python: '' + setuptools: '' + six: '' + tornado: '' + hash: + md5: b7190e3ec3eff52839434bf4698e2d62 + sha256: 0e88f8f8abc0a641c2f3b1b306258fab87c39a95f3495e53e6b3873107da1765 + manager: conda + name: livereload + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/livereload-2.6.3-pyh9f0ad1d_0.tar.bz2 + version: 2.6.3 +- category: main + dependencies: + certifi: '>=2020.06.20' + cycler: '>=0.10' + freetype: '>=2.10.4,<3.0a0' + kiwisolver: '>=1.0.1' + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + numpy: '>=1.19.5,<2.0a0' + pillow: '>=6.2.0' + pyparsing: '>=2.0.3,!=2.0.4,!=2.1.2,!=2.1.6' + python: '>=3.9,<3.10.0a0' + python-dateutil: '>=2.1' + python_abi: 3.9.* *_cp39 + setuptools: '' + tk: '>=8.6.10,<8.7.0a0' + tornado: '' + hash: + md5: 9ec0b2186fab9121c54f4844f93ee5b7 + sha256: 1c5ddf4b934f34da73e91f3009a171d64372eac0eb8801916a0acadf9693e61e + manager: conda + name: matplotlib-base + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.3.4-py39h2fa2bec_0.tar.bz2 + version: 3.3.4 +- category: main + dependencies: + libgcc-ng: '>=9.4.0' + mypy_extensions: '>=0.4.3,<0.5.0' + psutil: '>=4.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + tomli: '>=1.1.0' + typing_extensions: '>=3.7.4' + hash: + md5: 2ec6c26d45a781f3d3810fb2de290e8f + sha256: 5329a800c4caa0cb43b4340e7ce0b0ce7a1b0e9dde450b864c83605f4c08492c + manager: conda + name: mypy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mypy-0.931-py39h3811e60_2.tar.bz2 + version: '0.931' +- category: main + dependencies: + alsa-lib: '>=1.2.7.2,<1.2.8.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + giflib: '>=5.2.1,<5.3.0a0' + harfbuzz: '>=5.1.0,<6.0a0' + jpeg: '>=9e,<10a' + lcms2: '>=2.12,<3.0a0' + libcups: '>=2.3.3,<2.4.0a0' + libgcc-ng: '>=12' + libpng: '>=1.6.37,<1.7.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + xorg-libx11: '' + xorg-libxext: '' + xorg-libxi: '' + xorg-libxrender: '' + xorg-libxtst: '' + hash: + md5: cd1b2e4756ca8d14bc7501e38360aa79 + sha256: 1274f314793e9b1abb27a2aea581e661d751a4f685be50787bcc135e03fd185b + manager: conda + name: openjdk + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openjdk-17.0.3-h85293d2_2.tar.bz2 + version: 17.0.3 +- category: main + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + numpy: '>=1.19.4,<2.0a0' + python: '>=3.9,<3.10.0a0' + python-dateutil: '>=2.7.3' + python_abi: 3.9.* *_cp39 + pytz: '>=2017.2' + setuptools: <60.0.0 + hash: + md5: 79fc4b5b3a865b90dd3701cecf1ad33c + sha256: f104a60194c3d39b1b0097bfd889aec57d5d5f074e3e76ac9173318ba8de07fd + manager: conda + name: pandas + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pandas-1.1.5-py39hde0f152_0.tar.bz2 + version: 1.1.5 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + fribidi: '>=1.0.10,<2.0a0' + harfbuzz: '>=5.1.0,<6.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + hash: + md5: fead2b3178129155c334c751df4daba6 + sha256: b3bce2d710dbaeb6e704099f5b8866d56e83afd4bc15007f5b31fd8b46509c9c + manager: conda + name: pango + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pango-1.50.10-hc4f8a73_0.tar.bz2 + version: 1.50.10 +- category: main + dependencies: + python: '>=3.7' + setuptools: '' + wheel: '' + hash: + md5: 0b43abe4d3ee93e82742d37def53a836 + sha256: 507ae896a2f9ccc7bbedc2f7fd10dc2ac666575769b55b5e94ca44b86db193e0 + manager: conda + name: pip + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pip-22.2.2-pyhd8ed1ab_0.tar.bz2 + version: 22.2.2 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + typing-extensions: '>=4.1.0' + hash: + md5: e2b6f1e8fb5669ab40c8cb235e0f3a21 + sha256: e7325b056f10f92d20502c3a29ac8301edc87ce1eafadf13c567e54edefbbe39 + manager: conda + name: pydantic + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-1.10.2-py39hb9d737c_0.tar.bz2 + version: 1.10.2 +- category: main + dependencies: + python: '>=3.6' + setuptools: '' + hash: + md5: 9f478e8eedd301008b5f395bad0caaed + sha256: 4f61addd5ab463c5fe7a3040a2d710ff2aed9c989b6cee2de2486187108bcdd5 + manager: conda + name: pygments + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.13.0-pyhd8ed1ab_0.tar.bz2 + version: 2.13.0 +- category: main + dependencies: + attrs: '>=19.2.0' + iniconfig: '' + packaging: '' + pluggy: '>=0.12,<2' + py: '>=1.8.2' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + toml: '' + hash: + md5: 6e76597729a7ac9b0124303c326f4706 + sha256: 12d9d5b7d6e5aa639725dddc35d3f8dec8fe01bd05ccf60ac45975f93d1534cf + manager: conda + name: pytest + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pytest-6.2.5-py39hf3d152e_3.tar.bz2 + version: 6.2.5 +- category: main + dependencies: + libgcc-ng: '>=10.3.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + ruamel.yaml.clib: '>=0.1.2' + setuptools: '' + hash: + md5: 2b94cf785616198b112170b9838262a4 + sha256: 69d7d081acf7880f05d01ab93bfbecb3bc59b4bc8812630a359651b211aadb6a + manager: conda + name: ruamel.yaml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.21-py39hb9d737c_1.tar.bz2 + version: 0.17.21 +- category: main + dependencies: + markupsafe: '>=2.1.1' + python: '>=3.7' + hash: + md5: 8e69568592e552919201f730b01a58c2 + sha256: 3bb3d6a98f9e3c6081166d81368e4a0e48fdbfe19e683a957ac344b063c42412 + manager: conda + name: werkzeug + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/werkzeug-2.2.2-pyhd8ed1ab_0.tar.bz2 + version: 2.2.2 +- category: main + dependencies: + importlib_metadata: '>=0.23,<5' + python: '>=3.5' + hash: + md5: b8152341fc3fc9880c6e1b9d188974e5 + sha256: 2abb116f5bdc62d5e83c9dd15e5fc30c2a9571f728ccc012fad03350ed1d581e + manager: conda + name: argcomplete + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/argcomplete-1.12.3-pyhd8ed1ab_2.tar.bz2 + version: 1.12.3 +- category: main + dependencies: + click: '>=8.0' + importlib-metadata: '>=3.6.0' + itsdangerous: '>=2.0' + jinja2: '>=3.0' + python: '>=3.7' + werkzeug: '>=2.2.2' + hash: + md5: 85fad4c7889dd969ed4c02cf63cfe9c5 + sha256: e047c40122dc3fd53c534924271e9635d3dbf5ba606ccd2bd7f7c70b63697037 + manager: conda + name: flask + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/flask-2.2.2-pyhd8ed1ab_0.tar.bz2 + version: 2.2.2 +- category: main + dependencies: + atk-1.0: '>=2.36.0' + cairo: '>=1.16.0,<1.17.0a0' + gdk-pixbuf: '>=2.42.6,<3.0a0' + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=9.4.0' + libglib: '>=2.70.2,<3.0a0' + pango: '>=1.50.3,<1.51.0a0' + hash: + md5: 957a0255ab58aaf394a91725d73ab422 + sha256: 66d189ec36d67309fa3eb52d14d77b82359c10303c400eecc14f8eaca5939b87 + manager: conda + name: gtk2 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/gtk2-2.24.33-h90689f9_2.tar.bz2 + version: 2.24.33 +- category: main + dependencies: + importlib_metadata: '' + python: ==2.7.*|>=3.5 + hash: + md5: 35f19fabdfd44c8b53889be95333848c + sha256: d497c6f3b064d3dd8b76f277ea8d6a507acfe8cb04e31811baf66d8c533b8c08 + manager: conda + name: jsonpickle + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonpickle-2.2.0-pyhd8ed1ab_0.tar.bz2 + version: 2.2.0 +- category: main + dependencies: + elfutils: '>=0.187,<0.188.0a0' + libdwarf: 0.0.0.20190110_28_ga81397fc4 h753d276_0 + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 899c511688e6c41cb51c2921a8d25e63 + sha256: null + manager: conda + name: libdwarf-dev + optional: false + platform: linux-64 + url: https://conda.anaconda.org/ucb-bar/linux-64/libdwarf-dev-0.0.0.20190110_28_ga81397fc4-h753d276_0.tar.bz2 + version: 0.0.0.20190110_28_ga81397fc4 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + gdk-pixbuf: '>=2.42.8,<3.0a0' + gettext: '>=0.19.8.1,<1.0a0' + libgcc-ng: '>=12' + libglib: '>=2.70.2,<3.0a0' + libxml2: '>=2.9.14,<2.10.0a0' + pango: '>=1.50.7,<1.51.0a0' + hash: + md5: 921e53675ed5ea352f022b79abab076a + sha256: 9b81f3854660e902a417e8194b43ed2f5d2a082227df28ba6804c68ac7c16aa0 + manager: conda + name: librsvg + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/librsvg-2.54.4-h7abd40a_0.tar.bz2 + version: 2.54.4 +- category: main + dependencies: + pip: '' + python: '>=3.6' + hash: + md5: 6cfd80f8f255415a400c5a2728087fce + sha256: 20ccc89905946674603db22f906269c73c075262edccc988f4ff640ba09bc238 + manager: conda + name: pbr + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pbr-5.10.0-pyhd8ed1ab_0.tar.bz2 + version: 5.10.0 +- category: main + dependencies: + cryptography: '>=35.0' + python: '>=3.6' + hash: + md5: 1d7e241dfaf5475e893d4b824bb71b44 + sha256: 02ee40855abbce429022d2653b9e1649f23398b2ebab53247de69bd35bc05ba5 + manager: conda + name: pyopenssl + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-22.0.0-pyhd8ed1ab_0.tar.bz2 + version: 22.0.0 +- category: main + dependencies: + pytest: '>=3.6.0' + python: '' + hash: + md5: b6764e23dece9f9cda0469af044fafeb + sha256: bdb25a7daf3efb7255b1a19d7b5d41d7d4d96bc647b8e5f7407ec4dd9e384257 + manager: conda + name: pytest-dependency + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pytest-dependency-0.5.1-pyh9f0ad1d_0.tar.bz2 + version: 0.5.1 +- category: main + dependencies: + pytest: '>=5.0' + python: '>=3.7' + hash: + md5: 6af5653a74c450ddc16ef5b39d2dedcd + sha256: 24ede819260551a29696590ae444d4728d7dbb655d26c549294cedaa5df8aeb5 + manager: conda + name: pytest-mock + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pytest-mock-3.7.0-pyhd8ed1ab_1.tar.bz2 + version: 3.7.0 +- category: main + dependencies: + cryptography: '' + ecdsa: '!=0.15' + pyasn1: '' + python: '>=3.6' + rsa: '' + hash: + md5: 8fa19760945f1c3754c9419c6459f7e0 + sha256: 31bcedfa1803116e589602a24db4a01dbda2e0df819f497cb5d48c29d17631ec + manager: conda + name: python-jose + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/python-jose-3.3.0-pyh6c4a22f_1.tar.bz2 + version: 3.3.0 +- category: main + dependencies: + __unix: '' + openjdk: '>=8' + hash: + md5: 55bcf8ad86ccc77091b90c28844184a4 + sha256: c16ca3887235e265bec9cbb1c46030c0debf5dfd8c5bfd3cb00374fd09a01ce2 + manager: conda + name: sbt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sbt-1.7.1-hd8ed1ab_0.tar.bz2 + version: 1.7.1 +- category: main + dependencies: + cryptography: '' + dbus: '' + jeepney: '>=0.6' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 19c5efd8d571b01b15afe65648faf262 + sha256: c19c7a07b3f74b997057e544e02acdd0073e97a67dddd6219e6c59990fb1b52d + manager: conda + name: secretstorage + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py39hf3d152e_0.tar.bz2 + version: 3.3.3 +- category: main + dependencies: + cryptography: '>=2.1.4' + ecdsa: '>=0.13' + python: '>=3.6' + hash: + md5: b8359fec314d52ccb52b59d47cd2c2c0 + sha256: d19ddc51a4e0c09172f3d70a4f75d2b7f67a9b0204eb25ae586e94830ffe4b44 + manager: conda + name: sshpubkeys + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sshpubkeys-3.3.1-pyhd8ed1ab_0.tar.bz2 + version: 3.3.1 +- category: main + dependencies: + flask: '>=0.9' + python: '' + six: '' + hash: + md5: f06be6d2d27dc3ea2b3da84ade76583c + sha256: 0ffe072bf8b7bfdbb3a2e6f41cd65264259a92a77db3fb3ffc4e74f3eee2ea4d + manager: conda + name: flask_cors + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/flask_cors-3.0.10-pyhd3deb0d_0.tar.bz2 + version: 3.0.10 +- category: main + dependencies: + cairo: '>=1.16.0,<1.17.0a0' + expat: '>=2.4.8,<3.0a0' + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + gdk-pixbuf: '>=2.42.8,<3.0a0' + gtk2: '' + gts: '>=0.7.6,<0.8.0a0' + libgcc-ng: '>=12' + libgd: '>=2.3.3,<2.4.0a0' + libglib: '>=2.72.1,<3.0a0' + librsvg: '>=2.54.4,<3.0a0' + libstdcxx-ng: '>=12' + libtool: '' + libwebp-base: '>=1.2.4,<2.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + pango: '>=1.50.9,<1.51.0a0' + zlib: '>=1.2.12,<1.3.0a0' + hash: + md5: 123c55da3e9ea8664f73c70e13ef08c2 + sha256: b361670365155a56f0714fef9bae58ff858a0fc13d7f04530e4252e98b9b164d + manager: conda + name: graphviz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/graphviz-6.0.1-h5abf519_0.tar.bz2 + version: 6.0.1 +- category: main + dependencies: + attrs: '' + jsonpickle: '' + pbr: '' + python: '>=3.6' + hash: + md5: 686ca7c72f9583791fe424600987411f + sha256: 244f9103888438b57ab9f4aac7a8aba8db19947267fd2ddbdaa2222c39f6c8a9 + manager: conda + name: jschema-to-python + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jschema-to-python-1.2.3-pyhd8ed1ab_0.tar.bz2 + version: 1.2.3 +- category: main + dependencies: + importlib_metadata: '>=3.6' + jaraco.classes: '' + jeepney: '>=0.4.2' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + secretstorage: '>=3.2' + hash: + md5: 53de394e0ab10ccb6b9db0528050123f + sha256: 4e5d918992cd28e91382c9bbc7e2911530d51641f03cbc33ed0eb98297b2a5eb + manager: conda + name: keyring + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/keyring-23.9.3-py39hf3d152e_0.tar.bz2 + version: 23.9.3 +- category: main + dependencies: + attrs: '' + pbr: '' + python: '>=3.6' + hash: + md5: 010e6280a9dc265d0488b598c45103d9 + sha256: 02e18825ab15654d6555aa2d78c396e726e200e398691bd0bce3b810205e28df + manager: conda + name: sarif-om + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sarif-om-1.0.4-pyhd8ed1ab_0.tar.bz2 + version: 1.0.4 +- category: main + dependencies: + brotlipy: '>=0.6.0' + certifi: '' + cryptography: '>=1.3.4' + idna: '>=2.0.0' + pyopenssl: '>=0.14' + pysocks: '>=1.5.6,<2.0,!=1.5.7' + python: <4.0 + hash: + md5: 0738978569b10669bdef41c671252dd1 + sha256: 57a823b83428156aa2bc18f34159a744657c9bd117a125ca4559b0518a2e4fa2 + manager: conda + name: urllib3 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/urllib3-1.26.11-pyhd8ed1ab_0.tar.bz2 + version: 1.26.11 +- category: main + dependencies: + jmespath: '>=0.7.1,<1.0.0' + python: '>=3.6' + python-dateutil: '>=2.1,<3.0.0' + urllib3: '>=1.25.4,<1.27' + hash: + md5: 61d89d20596a5cc470422abd81c7823e + sha256: 7902f3f4b21cebe5093752eca8810046a61a5f6fb15441d2a0d350f9de7688fa + manager: conda + name: botocore + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.23.21-pyhd8ed1ab_0.tar.bz2 + version: 1.23.21 +- category: main + dependencies: + graphviz: '>=2.46.1' + python: '>=3' + hash: + md5: cd0b0b05f32477491145e9829f6000e1 + sha256: f62e0e1bf66af069c763a8383f085d31ac6252f9ef5021c9488ef68572060589 + manager: conda + name: python-graphviz + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/python-graphviz-0.19-pyhaef67bd_0.tar.bz2 + version: '0.19' +- category: main + dependencies: + certifi: '>=2017.4.17' + charset-normalizer: '>=2,<3' + idna: '>=2.5,<4' + python: '>=3.7,<4.0' + urllib3: '>=1.21.1,<1.27' + hash: + md5: 089382ee0e2dc2eae33a04cc3c2bddb0 + sha256: b45d0da6774c8231ab4fef0427b3050e7c54c84dfe453143dd4010999c89e050 + manager: conda + name: requests + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/requests-2.28.1-pyhd8ed1ab_1.tar.bz2 + version: 2.28.1 +- category: main + dependencies: + botocore: '>=1.11.3' + python: '>=3.4' + wrapt: '' + hash: + md5: f5e722eaa36ec10f604195907d443fc3 + sha256: 8d3e8e01c8a3462b71393a3ec4c3bf81d5ee62a1e56fb20ff33a9bf38667b573 + manager: conda + name: aws-xray-sdk + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/aws-xray-sdk-2.10.0-pyhd8ed1ab_0.tar.bz2 + version: 2.10.0 +- category: main + dependencies: + msgpack-python: '>=0.5.2' + python: '>=3.6' + requests: '' + hash: + md5: 6eefee9888f33f150b5d44d616b1a613 + sha256: c863c2bf200008e255f69bececda3477c1bb23e2b63a82612099a91a418ca2ea + manager: conda + name: cachecontrol + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-0.12.11-pyhd8ed1ab_0.tar.bz2 + version: 0.12.11 +- category: main + dependencies: + conda-package-handling: '>=1.3.0' + pycosat: '>=0.6.3' + pyopenssl: '>=16.2.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + requests: '>=2.20.1,<3' + ruamel_yaml: '>=0.11.14,<0.16' + setuptools: '>=31.0.1' + toolz: '>=0.8.1' + hash: + md5: b037107136fc0afe811f6e06380a3de6 + sha256: be820e87023b67f458c3043d202554f9f367e5106bd68792388fe7ef682f1ba5 + manager: conda + name: conda + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-4.14.0-py39hf3d152e_0.tar.bz2 + version: 4.14.0 +- category: main + dependencies: + appdirs: '>=1.4.3' + asn1crypto: '>=0.22.0' + cffi: '>=1.10.0' + cryptography: '>=1.9' + docker-pycreds: '>=0.3.0' + idna: '>=2.5' + packaging: '>=16.8' + pycparser: '>=2.17' + pyopenssl: '>=17.0.0' + pyparsing: '>=2.2.0' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + requests: '>=2.14.2' + six: '>=1.10.0' + websocket-client: '>=0.40.0' + hash: + md5: adbd239e5bf8b3f85fbc31fc98151e3c + sha256: bc7bec670f6ce5c011d64211422d45a8a4ad89713b6f46b56b05f2f3b74ad5a9 + manager: conda + name: docker-py + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/docker-py-5.0.3-py39hf3d152e_2.tar.bz2 + version: 5.0.3 +- category: main + dependencies: + appdirs: '' + click: '>=5.1' + filelock: '' + python: '>=3.7' + requests: '>=2' + hash: + md5: c99ae3abf501990769047b4b40a98f17 + sha256: b71784b6c24d2320b2f796d074e75e7dd1be7b7fc0f719c5cf3a582270b368d6 + manager: conda + name: ensureconda + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/ensureconda-1.4.3-pyhd8ed1ab_0.tar.bz2 + version: 1.4.3 +- category: main + dependencies: + python: '' + requests: '>=2.0.1,<=3.0.0' + hash: + md5: 402668adee8fcba9a9c265cdc2a88f5a + sha256: 1f2f3329127844be226bdc9bd9922d84a8767ae208d4a650c3ba655c84cb1e1c + manager: conda + name: requests-toolbelt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-0.9.1-py_0.tar.bz2 + version: 0.9.1 +- category: main + dependencies: + python: '>=3.7' + requests: '>=2.0,<3.0' + urllib3: '>=1.25.10' + hash: + md5: 5b21c0b72f49d216ee1d01a4e7f96f9e + sha256: 2a3046ef1902919b40f637c4c749100508a685a5c6a05e0f3834a0e3c94514df + manager: conda + name: responses + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/responses-0.21.0-pyhd8ed1ab_0.tar.bz2 + version: 0.21.0 +- category: main + dependencies: + botocore: '>=1.12.36,<2.0a.0' + python: '>=3.6' + hash: + md5: 9377d7f899e4a766c9f58d73e8297e1a + sha256: 487d3420574ede3ef513fa2b1f39b0c4648d66e0245a5cf97d301aafcfb66c97 + manager: conda + name: s3transfer + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/s3transfer-0.5.2-pyhd8ed1ab_0.tar.bz2 + version: 0.5.2 +- category: main + dependencies: + alabaster: '>=0.7,<0.8' + babel: '>=1.3' + colorama: '>=0.3.5' + docutils: '>=0.14,<0.20' + imagesize: '' + importlib-metadata: '>=4.4' + jinja2: '>=2.3' + packaging: '' + pygments: '>=2.0' + python: '>=3.7' + requests: '>=2.5.0' + snowballstemmer: '>=1.1' + sphinxcontrib-applehelp: '' + sphinxcontrib-devhelp: '' + sphinxcontrib-htmlhelp: '>=2.0.0' + sphinxcontrib-jsmath: '' + sphinxcontrib-qthelp: '' + sphinxcontrib-serializinghtml: '>=1.1.5' + hash: + md5: cd1129e88f6278787212624e1b7a8001 + sha256: 9d614432deff37f90ba406855fd9a21799ef09ab43ec27f5af12ac810fcd1dd1 + manager: conda + name: sphinx + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx-5.1.1-pyhd8ed1ab_1.tar.bz2 + version: 5.1.1 +- category: main + dependencies: + botocore: 1.23.21 + colorama: '>=0.2.5,<0.4.4' + docutils: '>=0.10,<0.16' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + pyyaml: '>=3.10,<5.5' + rsa: '>=3.1.2,<4.8' + s3transfer: '>=0.5.0,<0.6.0' + hash: + md5: d783b1992e8a34bff10aedacc839c504 + sha256: fccfa6ab25797b3af07b0d0a867caac63ce5520e478d8a6ec1e315c5f566515f + manager: conda + name: awscli + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.22.21-py39hf3d152e_0.tar.bz2 + version: 1.22.21 +- category: main + dependencies: + botocore: '>=1.23.21,<1.24.0' + jmespath: '>=0.7.1,<1.0.0' + python: '>=3.6' + s3transfer: '>=0.5.0,<0.6.0' + hash: + md5: 207e3f9ab548bf82044289e499f6ad1f + sha256: 84f87e1e0b2dabb166a4c006ef56180ae04983114661be8d108f3aced91fbebe + manager: conda + name: boto3 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.20.21-pyhd8ed1ab_0.tar.bz2 + version: 1.20.21 +- category: main + dependencies: + colorama: '' + conda: '' + networkx: '' + python: '>=3.6' + hash: + md5: 74c9c60684e578fb92b27df42846b733 + sha256: 1c726baaa6ffd3986b0f1bfd655b8311da0345be915d31738b4965c397b2e92d + manager: conda + name: conda-tree + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/conda-tree-1.0.5-pyhd8ed1ab_0.tar.bz2 + version: 1.0.5 +- category: main + dependencies: + conda: '>=4.6' + conda-standalone: '' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + ruamel_yaml: '>=0.11.14,<0.16' + hash: + md5: e5596cad685fd9edec29955a614abf69 + sha256: 214a4055b49d6288393afeecb53c2a3d8d6559fff686aa03c2d6abef69577522 + manager: conda + name: constructor + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/constructor-3.3.1-py39hf3d152e_0.tar.bz2 + version: 3.3.1 +- category: main + dependencies: + cachecontrol: '>=0.12.9,<0.13.0' + cachy: '>=0.3.0,<0.4.0' + cleo: '>=0.8.1,<0.9.0' + clikit: '>=0.6.2,<0.7.0' + crashtest: '>=0.3.0,<0.4.0' + html5lib: '>=1.0,<2.0' + keyring: '>=21.2.0' + lockfile: '>=0.9' + packaging: '>=20.4,<21.0' + pexpect: '>=4.7.0,<5.0.0' + pkginfo: '>=1.4,<2.0' + poetry-core: '>=1.0.7,<1.1.0' + ptyprocess: '>=0.5' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + requests: '>=2.18,<3.0' + requests-toolbelt: '>=0.9.1,<0.10.0' + shellingham: '>=1.1,<2.0' + tomlkit: '>=0.7.0,<1.0.0' + virtualenv: '>=20.0.26,<21.0.0' + hash: + md5: 0685495d547bc110b90852ad186dc8a1 + sha256: b2ae9a17f7f35b0bf422a15c3ac54766170dfbb78af5ecc77aa70d057cc13b48 + manager: conda + name: poetry + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/poetry-1.1.15-py39hf3d152e_0.tar.bz2 + version: 1.1.15 +- category: main + dependencies: + livereload: '>=2.3.0' + python: '>=3.6' + sphinx: '' + hash: + md5: 1909f784dc37b4ab97afe2c95aeeabaa + sha256: 1c07ab809254c2454c5417c5be01af2dc8bcaae2f3315a0a9d8812997ede8297 + manager: conda + name: sphinx-autobuild + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx-autobuild-2021.3.14-pyhd8ed1ab_0.tar.bz2 + version: 2021.3.14 +- category: main + dependencies: + docutils: <0.18 + python: '>=2.7' + sphinx: '>=1.6' + hash: + md5: 9f633f2f2869184e31acfeae95b24345 + sha256: 3752f28effe86b371475492d42550b30125d9ca2ead88af7e49da2a793e82e68 + manager: conda + name: sphinx_rtd_theme + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx_rtd_theme-1.0.0-pyhd8ed1ab_0.tar.bz2 + version: 1.0.0 +- category: main + dependencies: + boto3: ~=1.5 + jsonschema: ~=3.2 + python: '>=3.6' + six: ~=1.15 + hash: + md5: 4a1e98f7bdd975767e314a58b0262eb6 + sha256: deecd8a08d6de0616b5fc2e169cea53e71701cd146e835abe58c1c4e571721fe + manager: conda + name: aws-sam-translator + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/aws-sam-translator-1.51.0-pyhd8ed1ab_0.tar.bz2 + version: 1.51.0 +- category: main + dependencies: + boto3: '' + python: '' + typing_extensions: '' + hash: + md5: bbe05c4cec5e4a1551d20a58d10b8ad9 + sha256: ef3d78ea133eefa4b41f4cbf5f6a24c4c036a6d4fb02e292abeb4076e9efeaa1 + manager: conda + name: boto3-stubs + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-stubs-1.21.6-pyhd8ed1ab_0.tar.bz2 + version: 1.21.6 +- category: main + dependencies: + click: '>=8.0' + click-default-group: '' + ensureconda: '>=1.3' + jinja2: '' + poetry: '' + pydantic: '>=1.8.1' + python: '>=3.6' + pyyaml: '>=5.1' + requests: '>=2' + ruamel.yaml: '' + setuptools: '' + toml: '' + typing-extensions: '' + hash: + md5: 2d1c6d733a45b168eef7acc6212109ed + sha256: 023ffdae76edde9f2d3fc6a8696cc8d8a60d61b2b8ae6d951f4e4802e47ef606 + manager: conda + name: conda-lock + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/conda-lock-1.1.1-pyhd8ed1ab_0.tar.bz2 + version: 1.1.1 +- category: main + dependencies: + boto3: '' + python: '>=3.6' + typing-extensions: '' + hash: + md5: e071737257e2b6f43fb37a5338aba185 + sha256: c7be01a3087498a0d8bb43a0b2bfbab65b31d3d43c1146814cb7f244417e71ba + manager: conda + name: mypy-boto3-s3 + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/mypy-boto3-s3-1.21.0-pyhd8ed1ab_0.tar.bz2 + version: 1.21.0 +- category: main + dependencies: + aws-sam-translator: '>=1.40.0' + importlib_resources: '>=1.4,<4' + jschema-to-python: ~=1.2.3 + jsonpatch: '' + jsonschema: ~=3.0 + junit-xml: ~=1.9 + networkx: ~=2.4 + python: '>=3.6' + pyyaml: '>5.4' + sarif-om: ~=1.0.4 + six: '>=1.11' + hash: + md5: 0a4bc1ea085254997e21f9c505c1495a + sha256: 5d227b4ad729a4ef43b28436466b47ebb3915a15ad968b81872726e8a05626f2 + manager: conda + name: cfn-lint + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/cfn-lint-0.65.1-pyhd8ed1ab_0.tar.bz2 + version: 0.65.1 +- category: main + dependencies: + aws-xray-sdk: '!=0.96,>=0.93' + boto3: '>=1.9.201' + botocore: '>=1.12.201' + cfn-lint: '>=0.4.0' + cryptography: '>=3.3.1' + docker-py: '>=2.5.1' + flask: '' + flask_cors: '' + graphql-core: '' + idna: '>=2.5,<4' + importlib_metadata: '' + jinja2: '>=2.10.1' + jsondiff: '>=1.1.2' + python: '>=3.3' + python-dateutil: '>=2.1,<3.0.0' + python-jose: '>=3.1.0,<4.0.0' + pytz: '' + pyyaml: '>=5.1' + requests: '>=2.5' + responses: '>=0.9.0' + setuptools: '' + sshpubkeys: '>=3.1.0' + werkzeug: '' + xmltodict: '' + hash: + md5: 7b8e817121549206d4d053871daea842 + sha256: 64fe8478cecb8628906847060e8618103cd8b79734459cb7f111f1cd65349e85 + manager: conda + name: moto + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/moto-3.1.0-pyhd8ed1ab_0.tar.bz2 + version: 3.1.0 +- category: main + dependencies: {} + hash: + sha256: bfb67f6a6c72dfb0a02f3df51550aa1862708e55128b22543e2b42c74f3620d7 + manager: pip + name: bcrypt + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/c5/77/14bbcd08ad265577ad6ea8e8980b9c0ad668cecfd241ae169b6747c4491b/bcrypt-4.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + version: 4.0.0 +- category: main + dependencies: {} + hash: + sha256: 122fcb64ee37cfad5b3f48d7a7d51875d7031aaf3d8be7c42e2bee25044eee62 + manager: pip + name: mock + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/5c/03/b7e605db4a57c0f6fba744b11ef3ddf4ddebcada35022927a2b5fc623fdf/mock-4.0.3-py3-none-any.whl + version: 4.0.3 +- category: main + dependencies: {} + hash: + sha256: 9967365f2037ac8fd43ff678ad1b72c82b184b2498440579d5cfae9d63e5b0f9 + manager: pip + name: mypy-boto3-ec2 + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/a4/60/815ee785b017d49e09f42175e791a3a3495293b0dbce7d18c74f43a1e8a4/mypy_boto3_ec2-1.21.9-py3-none-any.whl + version: 1.21.9 +- category: main + dependencies: + six: '*' + hash: + sha256: e3305297c744ae53ffa032c45dc347286165e4ffce6875dc662b205db0623d86 + manager: pip + name: asttokens + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/2d/1b/fdbdf82b86e07ca90985740ac160a1dd4ab09cb81071ec12d71c701e1138/asttokens-2.0.8-py2.py3-none-any.whl + version: 2.0.8 +- category: main + dependencies: + bcrypt: '>=3' + cryptography: '>=1.6' + hash: + sha256: 29751590f293e75ee868dc52fa98d5c54047eafebc9568d4930b70872183fbf6 + manager: pip + name: paramiko-ng + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/9f/53/1ac75eab589149b1e02e38185ecebf09e1b805fc3fdeadbc16d1a2b7d208/paramiko_ng-2.8.10-py2.py3-none-any.whl + version: 2.8.10 +- category: main + dependencies: + mock: '*' + six: '*' + hash: + sha256: 34ae88c846046742ef074036bf311dc90ab152b7bc09c342b281cebf676727a2 + manager: pip + name: sure + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/c7/ee/043531858afab5f312ca02867de51189c0c1dd76ba652f1d95ffa13d07f7/sure-2.0.0.tar.gz + version: 2.0.0 +- category: main + dependencies: + paramiko-ng: '*' + six: '>=1.10.0' + hash: + sha256: 7fe3dfd0d9d5d0dd7e650b42fc7d62ec5d643ac4275a77f483ec2b57f19c3e58 + manager: pip + name: fab-classic + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/86/f4/c301effc438788c184bbd0c08a586135f325581e6c4cf9f1d40229f9894b/fab_classic-1.19.1-py2.py3-none-any.whl + version: 1.19.1 +- category: main + dependencies: + asttokens: '>=2,<3' + typing-extensions: '*' + hash: + sha256: 1a441dad41c9a0615c6ae96464190eddccd2de8153254059ff18ffd7b3b84800 + manager: pip + name: icontract + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/d8/91/9756e7cf0b155e80bf9a62beffdd1dec4afce43cc6ab7f432f2267c62762/icontract-2.6.2-py3-none-any.whl + version: 2.6.2 +- category: main + dependencies: + icontract: '>=2.0.1,<3' + typing-extensions: '>=3.6.6' + hash: + sha256: e5608063e3f6122db255acde636255f9c0da3a8e6b7edd35498b95280ff18961 + manager: pip + name: pylddwrap + optional: false + platform: linux-64 + source: null + url: https://files.pythonhosted.org/packages/6b/4e/aebc1cff19a572dbcc7e60d8e74f38fd568ef9185650b39f72fde9ff84d1/pylddwrap-1.2.1.tar.gz + version: 1.2.1 +version: 1 diff --git a/conda-requirements-riscv-tools.yaml b/conda-requirements-riscv-tools.yaml new file mode 100644 index 00000000..7c7803f5 --- /dev/null +++ b/conda-requirements-riscv-tools.yaml @@ -0,0 +1,132 @@ +channels: + - ucb-bar + - conda-forge + - nodefaults + +dependencies: + # https://conda-forge.org/feedstock-outputs/ + # filterable list of all conda-forge packages + # https://conda-forge.org/#contribute + # instructions on adding a recipe + # https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/pkg-specs.html#package-match-specifications + # documentation on package_spec syntax for constraining versions + + + # handy tool for introspecting package relationships and file ownership + # see https://github.com/rvalieris/conda-tree + - conda-tree + + # bundle FireSim driver with deps into installer shell-script + - constructor + + - gcc + - gxx + - sysroot_linux-64>=2.17 # needed to match pre-built CI XRT glibc version + - conda-gcc-specs + - binutils + + - dromajo # from ucb-bar channel - https://github.com/riscv-boom/dromajo + - riscv-tools # from ucb-bar channel - https://github.com/ucb-bar/riscv-tools-feedstock + + # firemarshal deps + - python>=3.8 + - bc + - patch + - which + - diffutils + - bash + - gzip + - bzip2 + - perl + - tar + - file + - findutils + - rsync + - psutil + - doit=0.35.0 + - gitpython + - humanfriendly + - e2fsprogs + - ctags + - bison + - flex + - expat + - make + - pyyaml + - unzip + - readline + - coreutils + - lzop + - qemu # from ucb-bar channel - https://github.com/ucb-bar/qemu-feedstock + + - bash-completion + - sbt + - ca-certificates + - mosh + - gmp + - mpfr + - mpc + - zlib + - vim + - git + - openjdk + - gengetopt + - libffi + - expat + - libusb1 + - ncurses + - cmake + - graphviz + - expect + - dtc + - verilator==4.226 + - screen + - elfutils + - libdwarf-dev==0.0.0.20190110_28_ga81397fc4 # from ucb-bar channel - using mainline libdwarf-feedstock + - conda-lock>=1 + - wget + - sed + - autoconf + + # clang-format for driver coding style enforcement. + - clang-format + - clang-tools + + # python packages + # While it is possible to install using pip after creating the + # conda environment, pip's dependency resolution can conflict with + # conda and create broken environments. It's best to use the conda + # packages so that the environment is consistent + - boto3==1.20.21 + - colorama==0.4.3 + - argcomplete==1.12.3 + - python-graphviz==0.19 + - pyparsing==3.0.6 + - numpy==1.19.5 + - kiwisolver==1.3.1 + - matplotlib-base==3.3.4 + - pandas==1.1.5 + - awscli==1.22.21 + - pytest==6.2.5 + - pytest-dependency==0.5.1 + - pytest-mock==3.7.0 + - moto==3.1.0 + - pyyaml==5.4.1 + - mypy==0.931 + - types-pyyaml==6.0.4 + - boto3-stubs==1.21.6 + - botocore-stubs==1.24.7 + - mypy-boto3-s3==1.21.0 + - pip + - pip: + - fab-classic==1.19.1 + - mypy-boto3-ec2==1.21.9 + - sure==2.0.0 + - pylddwrap==1.2.1 + + # doc requirements + - sphinx + - pygments + - sphinx-autobuild + - sphinx_rtd_theme + - docutils diff --git a/dockerfiles/Dockerfile b/dockerfiles/Dockerfile index 7011f38e..a9a9af34 100644 --- a/dockerfiles/Dockerfile +++ b/dockerfiles/Dockerfile @@ -2,59 +2,49 @@ # BUILD BASE FOR CI -FROM ubuntu:18.04 as base +FROM ubuntu:20.04 as base ARG CHIPYARD_HASH MAINTAINER https://groups.google.com/forum/#!forum/chipyard -SHELL ["/bin/bash", "-c"] +SHELL ["/bin/bash", "-c"] # Install dependencies for ubuntu-req.sh RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ - curl \ - git \ - sudo \ - ca-certificates \ - keyboard-configuration \ - console-setup \ - bc \ - unzip + curl \ + wget \ + git \ + sudo \ + ca-certificates \ + keyboard-configuration \ + console-setup \ + bc \ + unzip WORKDIR /root # Install Chipyard and run ubuntu-req.sh to install necessary dependencies RUN git clone https://github.com/ucb-bar/chipyard.git && \ cd chipyard && \ - git checkout $CHIPYARD_HASH && \ - ./scripts/ubuntu-req.sh 1>/dev/null && \ - sudo rm -rf /var/lib/apt/lists/* + git checkout $CHIPYARD_HASH -# Update PATH for RISCV toolchain (note: hardcoded for CircleCI) -ENV RISCV="/root/riscv-tools-install" -ENV LD_LIBRARY_PATH="$RISCV/lib" -ENV PATH="$RISCV/bin:$PATH" +RUN ./chipyard/.github/scripts/install-conda.sh # BUILD IMAGE WITH TOOLCHAINS # Use above build as base FROM base as base-with-tools -# Init submodules +SHELL ["/bin/bash", "-cl"] + +# Initialize repo RUN cd chipyard && \ export MAKEFLAGS=-"j $(nproc)" && \ - ./scripts/init-submodules-no-riscv-tools.sh 1>/dev/null - -# Install riscv-tools -RUN cd chipyard && \ - export MAKEFLAGS=-"j $(nproc)" && \ - ./scripts/build-toolchains.sh riscv-tools 1>/dev/null - -# Install esp-tools -RUN cd chipyard && \ - export MAKEFLAGS=-"j $(nproc)" && \ - ./scripts/build-toolchains.sh esp-tools 1>/dev/null + conda activate base && \ + ./setup.sh --env-name chipyard --skip-validate +SHELL ["/opt/conda/bin/conda", "run", "-n", "chipyard", "/bin/bash", "-cl"] # Set up FireMarshal. Building and cleaning br-base.json builds the underlying # buildroot image (which takes a long time) but doesn't keep all the br-base @@ -64,9 +54,8 @@ RUN cd chipyard && \ cd software/firemarshal && \ ./init-submodules.sh && \ pip3 install -r python-requirements.txt && \ - marshal build br-base.json && \ - marshal clean br-base.json - + ./marshal build br-base.json && \ + ./marshal clean br-base.json # Run script to set environment variables on entry ENTRYPOINT ["chipyard/scripts/entrypoint.sh"] diff --git a/docs/Chipyard-Basics/Initial-Repo-Setup.rst b/docs/Chipyard-Basics/Initial-Repo-Setup.rst index 2638d852..1c322da5 100644 --- a/docs/Chipyard-Basics/Initial-Repo-Setup.rst +++ b/docs/Chipyard-Basics/Initial-Repo-Setup.rst @@ -1,33 +1,58 @@ Initial Repository Setup ======================================================== -Requirements +Prerequisites ------------------------------------------- Chipyard is developed and tested on Linux-based systems. -.. Warning:: It is possible to use this on macOS or other BSD-based systems, although GNU tools will need to be installed; it is also recommended to install the RISC-V toolchain from ``brew``. +.. Warning:: It is possible to use this on macOS or other BSD-based systems, although GNU tools will need to be installed; + it is also recommended to install the RISC-V toolchain from ``brew``. .. Warning:: Working under Windows is not recommended. +Running on AWS EC2 with FireSim +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In CentOS-based platforms, we recommend installing the following dependencies: +If you plan on using Chipyard alongside FireSim on AWS EC2 instances, you should refer to the :fsim_doc:`FireSim documentation <>`. +Specifically, you should follow the :fsim_doc:`Initial Setup/Installation ` +section of the docs up until :fsim_doc:`Setting up the FireSim Repo `. +At that point, instead of cloning FireSim you can clone Chipyard by following :ref:`Chipyard-Basics/Initial-Repo-Setup:Setting up the Chipyard Repo`. -.. include:: /../scripts/centos-req.sh - :code: bash +Default Requirements Installation +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In Ubuntu/Debian-based platforms (Ubuntu), we recommend installing the following dependencies. -These dependencies were written based on Ubuntu 16.04 LTS and 18.04 LTS - If they don't work for you, you can try out the Docker image (:ref:`Chipyard-Basics/Initial-Repo-Setup:Pre-built Docker Image`) before manually installing or removing dependencies: +In Chipyard, we use the `Conda `__ package manager to help manage system dependencies. +Conda allows users to create an "environment" that holds system dependencies like ``make``, ``gcc``, etc. -.. include:: /../scripts/ubuntu-req.sh - :code: bash +.. Note:: Chipyard can also run on systems without a Conda installation. However, users on these systems must manually install toolchains and dependencies. -.. Note:: When running on an Amazon Web Services EC2 FPGA-development instance (for FireSim), FireSim includes a machine setup script that will install all of the aforementioned dependencies (and some additional ones). +First, Chipyard requires Conda to be installed on the system. +Please refer to the `Conda installation instructions `__ on how to install Conda with the **Miniforge** installer. +Afterwards, verify that Conda is a sufficient version (we test on version 4.12.0 but higher is most likely fine). + +.. Note:: If you have installed conda separately from this documentation (i.e. from miniconda or full Anaconda), please ensure you follow https://conda-forge.org/docs/user/introduction.html#how-can-i-install-packages-from-conda-forge to use ``conda-forge`` packages without any issues. + +.. code-block:: shell + + conda --version # must be version 4.12.0 or higher + +After Conda is installed and is on your ``PATH``, we need to install a version of ``git`` to initially checkout the repository. +For this you can use the system package manager like ``yum`` or ``apt`` to install ``git``. +This ``git`` is only used to first checkout the repository, we will later install a newer version of ``git`` with Conda. + +Finally we need to install ``conda-lock`` into the ``base`` conda environment. +This is done by the following: + +.. code-block:: shell + + conda install -n base conda-lock + conda activate base Setting up the Chipyard Repo ------------------------------------------- -Start by fetching Chipyard's sources. Run: +Start by checking out the proper Chipyard version. Run: .. parsed-literal:: @@ -36,40 +61,60 @@ Start by fetching Chipyard's sources. Run: # checkout latest official chipyard release # note: this may not be the latest release if the documentation version != "stable" git checkout |version| - ./scripts/init-submodules-no-riscv-tools.sh -This will initialize and checkout all of the necessary git submodules. -This will also validate that you are on a tagged branch, otherwise it will prompt for confirmation. - -When updating Chipyard to a new version, you will also want to rerun this script to update the submodules. -Using git directly will try to initialize all submodules; this is not recommended unless you expressly desire this behavior. - -.. _build-toolchains: - -Building a Toolchain ------------------------- - -The `toolchains` directory contains toolchains that include a cross-compiler toolchain, frontend server, and proxy kernel, which you will need in order to compile code to RISC-V instructions and run them on your design. -Currently there are two toolchains, one for normal RISC-V programs, and another for Hwacha (``esp-tools``). -For custom installations, Each tool within the toolchains contains individual installation procedures within its README file. -To get a basic installation (which is the only thing needed for most Chipyard use-cases), just the following steps are necessary. -This will take about 20-30 minutes. You can expedite the process by setting a ``make`` environment variable to use parallel cores: ``export MAKEFLAGS=-j8``. +Next run the following script to create Chipyard's Conda environment including a pre-built RISC-V toolchain. +There are two toolchains, one for normal RISC-V programs called ``riscv-tools`` which is the one needed for most Chipyard use-cases, and another for Hwacha/Gemmini called ``esp-tools``. +Run the following script based off which compiler you would like to use. .. code-block:: shell - ./scripts/build-toolchains.sh riscv-tools # for a normal risc-v toolchain + ./build-setup.sh riscv-tools # or esp-tools -.. Note:: If you are planning to use the Hwacha vector unit, or other RoCC-based accelerators, you should build the esp-tools toolchain by adding the ``esp-tools`` argument to the script above. - If you are running on an Amazon Web Services EC2 instance, intending to use FireSim, you can also use the ``--ec2fast`` flag for an expedited installation of a pre-compiled toolchain. +This script wraps around the conda environment initialization process and also runs the ``init-submodules-no-riscv-tools.sh`` and ``build-toolchain-extra.sh`` scripts. -Once the script is run, a ``env.sh`` file is emitted that sets the ``PATH``, ``RISCV``, and ``LD_LIBRARY_PATH`` environment variables. -You can put this in your ``.bashrc`` or equivalent environment setup file to get the proper variables, or directly include it in your current environment: +The ``init-subodules-no-riscv-tools.sh`` script will initialize and checkout all of the necessary git submodules. +This will also validate that you are on a tagged branch, otherwise it will prompt for confirmation. +When updating Chipyard to a new version, you will also want to rerun this script to update the submodules. +Using ``git`` directly will try to initialize all submodules; this is not recommended unless you expressly desire this behavior. + +The ``build-toolchain-extra.sh`` script will install extra toolchain utilities/tests used by Chipyard. +This command builds utilities like Spike, RISC-V Proxy Kernel, libgloss, and RISC-V tests from source for a specific toolchain type. + +.. Note:: By default, the ``build-toolchain-extra.sh`` script installs to ``$CONDA_PREFIX/``. Thus, if you uninstall the compiler using ``conda remove`` these utilities/tests will also have to be re-installed/built. + +.. Note:: If you already have a working conda environment setup, separate Chipyard clones can use that pre-used environment in combination with running the aforementioned scripts yourself (``init-submodules...`` and ``build-toolchain...``). + +.. Note:: If you are a power user and would like to build your own compiler/toolchain, you can refer to the https://github.com/ucb-bar/riscv-tools-feedstock and https://github.com/ucb-bar/esp-tools-feedstock repositories (submoduled in the ``toolchains/*`` directories) on how to build the compiler yourself. + +By running the following command you should see a environment listed with the path ``$CHIPYARD_DIRECTORY/.conda-env``. + +.. code-block:: shell + + conda env list + +.. Note:: Refer to FireSim's :fsim_doc:`Conda documentation ` on more information + on how to use Conda and some of its benefits. + +Sourcing ``env.sh`` +------------------- + +Once setup is complete, an emitted ``env.sh`` file should exist in the top-level repository. +This file activates the conda environment created in ``build-setup.sh`` and sets up necessary environment variables needed for future Chipyard steps (needed for the ``make`` system to work properly). +Once the script is run, the ``PATH``, ``RISCV``, and ``LD_LIBRARY_PATH`` environment variables will be set properly for the toolchain requested. +You can source this file in your ``.bashrc`` or equivalent environment setup file to get the proper variables, or directly include it in your current environment: .. code-block:: shell source ./env.sh -These variables need to be set for the ``make`` system to work properly. +.. Warning:: This ``env.sh`` file should always be sourced before running any ``make`` commands. + +.. Note:: You can deactivate/activate a compiler/toolchain (but keep it installed) by running ``source $CONDA_PREFIX/etc/conda/deactivate.d/deactivate-${PKG_NAME}.sh`` or ``$CONDA_PREFIX/etc/conda/activate.d/activate-${PKG_NAME}.sh`` (``PKG_NAME`` for example is ``ucb-bar-riscv-tools``). This will modify the aforementioned 3 environment variables. + +.. Warning:: ``env.sh`` files are generated per-Chipyard repository. + In a multi-Chipyard repository setup, it is possible to source multiple ``env.sh`` files (in any order). + However, it is recommended that the final ``env.sh`` file sourced is the ``env.sh`` located in the + Chipyard repo that you expect to run ``make`` commands in. Pre-built Docker Image ------------------------------------------- @@ -115,20 +160,22 @@ In order to upgrade between Chipyard versions, we recommend using a fresh clone Chipyard is a complex framework that depends on a mix of build systems and scripts. Specifically, it relies on git submodules, on sbt build files, and on custom written bash scripts and generated files. -For this reason, upgrading between Chipyard versions is **not** as trivial as just running ``git submodule update -recursive``. This will result in recursive cloning of large submodules that are not necessarily used within your specific Chipyard environments. Furthermore, it will not resolve the status of stale state generated files which may not be compatible between release versions. +For this reason, upgrading between Chipyard versions is **not** as trivial as just running ``git submodule update --recursive``. This will result in recursive cloning of large submodules that are not necessarily used within your specific Chipyard environments. +Furthermore, it will not resolve the status of stale state generated files which may not be compatible between release versions. -If you are an advanced git user, an alternative approach to a fresh repository clone may be to run ``git clean -dfx``, and then run the standard Chipyard setup sequence. This approach is dangerous, and **not-recommended** for users who are not deeply familiar with git, since it "blows up" the repository state and removes all untracked and modified files without warning. Hence, if you were working on custom un-committed changes, you would lose them. +If you are an advanced git user, an alternative approach to a fresh repository clone may be to run ``git clean -dfx``, and then run the standard Chipyard setup sequence. +This approach is dangerous, and **not-recommended** for users who are not deeply familiar with git, since it "blows up" the repository state and removes all untracked and modified files without warning. +Hence, if you were working on custom un-committed changes, you would lose them. If you would still like to try to perform an in-place manual version upgrade (**not-recommended**), we recommend at least trying to resolve stale state in the following areas: * Delete stale ``target`` directories generated by sbt. -* Delete jar collateral generated by FIRRTL (``lib/firrtl.jar``) - * Re-generate generated scripts and source files (for example, ``env.sh``) * Re-generating/deleting target software state (Linux kernel binaries, Linux images) within FireMarshal -This is by no means a comprehensive list of potential stale state within Chipyard. Hence, as mentioned earlier, the recommended method for a Chipyard version upgrade is a fresh clone (or a merge, and then a fresh clone). +This is by no means a comprehensive list of potential stale state within Chipyard. +Hence, as mentioned earlier, the recommended method for a Chipyard version upgrade is a fresh clone (or a merge, and then a fresh clone). diff --git a/docs/Customization/Boot-Process.rst b/docs/Customization/Boot-Process.rst index f52a7afc..a84c4e99 100644 --- a/docs/Customization/Boot-Process.rst +++ b/docs/Customization/Boot-Process.rst @@ -74,6 +74,6 @@ mode, thus starting userspace execution. The easiest way to build a BBL image that boots Linux is to use the FireMarshal tool that lives in the `firesim-software `_ repository. Directions on how to use FireMarshal can be found in the -`FireSim documentation `_. +:fsim_doc:`FireSim documentation `. Using FireMarshal, you can add custom kernel configurations and userspace software to your workload. diff --git a/docs/Simulation/FPGA-Accelerated-Simulation.rst b/docs/Simulation/FPGA-Accelerated-Simulation.rst index 86f0eb8b..50d48c4e 100644 --- a/docs/Simulation/FPGA-Accelerated-Simulation.rst +++ b/docs/Simulation/FPGA-Accelerated-Simulation.rst @@ -6,30 +6,28 @@ FPGA-Accelerated Simulation FireSim ----------------------- -`FireSim `__ is an open-source cycle-accurate FPGA-accelerated full-system hardware simulation platform that runs on cloud FPGAs (Amazon EC2 F1). +`FireSim `__ is an open-source cycle-accurate FPGA-accelerated full-system hardware simulation platform that runs on FPGAs (Amazon EC2 F1 FPGAs and local FPGAs). FireSim allows RTL-level simulation at orders-of-magnitude faster speeds than software RTL simulators. FireSim also provides additional device models to allow full-system simulation, including memory models and network models. -FireSim currently supports running only on Amazon EC2 F1 FPGA-enabled virtual instances. -In order to simulate your Chipyard design using FireSim, if you have not -already, follow the initial EC2 setup instructions as detailed in the `FireSim -documentation `__. -Then clone Chipyard onto your FireSim manager -instance, and setup your Chipyard repository as you would normally. +FireSim supports running on Amazon EC2 F1 FPGA-enabled cloud instances and on locally managed Linux machines with FPGAs attached. +The rest of this documentation assumes you are running on an Amazon EC2 F1 FPGA-enabled virtual instance. +In order to simuate your Chipyard design using FireSim, make sure to follow the repository setup as described by +:ref:`Chipyard-Basics/Initial-Repo-Setup:Initial Repository Setup`, if you have not already. Next, initalize FireSim as a library in Chipyard by running: .. code-block:: shell # At the root of your chipyard repo - ./scripts/firesim-setup.sh --fast + ./scripts/firesim-setup.sh ``firesim-setup.sh`` initializes additional submodules and then invokes -firesim's ``build-setup.sh`` script adding ``--library`` to properly -initialize FireSim as a library submodule in chipyard. You may run +FireSim's ``build-setup.sh`` script adding ``--library`` to properly +initialize FireSim as a library submodule in Chipyard. You may run ``./sims/firesim/build-setup.sh --help`` to see more options. -Finally, source the following environment at the root of the firesim directory: +Finally, source the following environment at the root of the FireSim directory: .. code-block:: shell @@ -40,13 +38,13 @@ Finally, source the following environment at the root of the firesim directory: .. Note:: Every time you want to use FireSim with a fresh shell, you must source this ``sourceme-f1-manager.sh`` At this point you're ready to use FireSim with Chipyard. If you're not already -familiar with FireSim, please return to the `FireSim Docs -`__, +familiar with FireSim, please return to the :fsim_doc:`FireSim Docs `, and proceed with the rest of the tutorial. Running your Design in FireSim ------------------------------ -Converting a Chipyard config (one in ``chipyard/src/main/scala`` to run in FireSim is simple, and can be done either through the traditional configuration system or through FireSim's build-recipes scheme. + +Converting a Chipyard config (one in ``chipyard/src/main/scala`` to run in FireSim is simple, and can be done either through the traditional configuration system or through FireSim's build-recipes scheme. A FireSim simulation requires 3 additional config fragments: diff --git a/docs/conf.py b/docs/conf.py index acf781f5..7bd8dcb2 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -32,14 +32,17 @@ import subprocess # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. -extensions = ['sphinx.ext.autodoc', +extensions = [ + 'sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.mathjax', 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', 'sphinx.ext.githubpages', - 'sphinx.ext.autosectionlabel'] + 'sphinx.ext.autosectionlabel', + 'sphinx.ext.extlinks', +] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] @@ -67,6 +70,8 @@ if on_rtd: for item, value in os.environ.items(): print("[READTHEDOCS] {} = {}".format(item, value)) +# default to latest for non rtd builds (this will be overridden on rtd) +rtd_version = "latest" if on_rtd: rtd_version = os.environ.get("READTHEDOCS_VERSION") if rtd_version == "latest": @@ -93,7 +98,7 @@ release = version # # This is also used if you do content translation via gettext catalogs. # Usually you set "language" from the command line for these cases. -language = None +language = "en" # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. @@ -227,3 +232,8 @@ intersphinx_mapping = {'python' : ('https://docs.python.org/', None), # resolve label conflict between documents autosectionlabel_prefix_document = True + +# shorten FireSim references +extlinks = { + 'fsim_doc' : ('https://docs.fires.im/en/' + rtd_version + '/%s', 'fsim_doc %s') +} diff --git a/docs/requirements.txt b/docs/requirements.txt deleted file mode 100644 index ad19f37d..00000000 --- a/docs/requirements.txt +++ /dev/null @@ -1,5 +0,0 @@ -Sphinx==1.8.5 -Pygments==2.7.4 -sphinx-autobuild -sphinx_rtd_theme==0.2.5b1 -docutils==0.16 diff --git a/fpga/fpga-shells b/fpga/fpga-shells index f9fb9fd3..60adb8c6 160000 --- a/fpga/fpga-shells +++ b/fpga/fpga-shells @@ -1 +1 @@ -Subproject commit f9fb9fd338e5fca2ff5116b1d01506c424280d70 +Subproject commit 60adb8c62c81c57b7eabd0402d9505c0ea1545f9 diff --git a/generators/boom b/generators/boom index ad64c541..fac2c370 160000 --- a/generators/boom +++ b/generators/boom @@ -1 +1 @@ -Subproject commit ad64c5419151e5e886daee7084d8399713b46b4b +Subproject commit fac2c370c9deae97ca52aca6b34857e9ac0f6e9d diff --git a/generators/chipyard/src/main/scala/CustomBusTopologies.scala b/generators/chipyard/src/main/scala/CustomBusTopologies.scala deleted file mode 100644 index 7bbd53f1..00000000 --- a/generators/chipyard/src/main/scala/CustomBusTopologies.scala +++ /dev/null @@ -1,82 +0,0 @@ - -package chipyard - -import freechips.rocketchip.config.{Field, Config, Parameters} -import freechips.rocketchip.diplomacy._ -import freechips.rocketchip.tilelink._ -import freechips.rocketchip.util.{Location, Symmetric} -import freechips.rocketchip.subsystem._ - -// I'm putting this code here temporarily as I think it should be a candidate -// for upstreaming based on input from Henry Cook, but don't wnat to deal with -// an RC branch just yet. - -// For subsystem/BusTopology.scala - -// Biancolin: This, modified from Henry's email -/** Parameterization of a topology containing a banked coherence manager and a bus for attaching memory devices. */ -case class CoherentMulticlockBusTopologyParams( - sbus: SystemBusParams, // TODO remove this after better width propagation - mbus: MemoryBusParams, - l2: BankedL2Params, - sbusToMbusXType: ClockCrossingType = NoCrossing -) extends TLBusWrapperTopology( - instantiations = (if (l2.nBanks == 0) Nil else List( - (MBUS, mbus), - (L2, CoherenceManagerWrapperParams(mbus.blockBytes, mbus.beatBytes, l2.nBanks, L2.name)(l2.coherenceManager)))), - connections = if (l2.nBanks == 0) Nil else List( - (SBUS, L2, TLBusWrapperConnection(xType = NoCrossing, driveClockFromMaster = Some(true), nodeBinding = BIND_STAR)()), - (L2, MBUS, TLBusWrapperConnection.crossTo( - xType = sbusToMbusXType, - driveClockFromMaster = None, - nodeBinding = BIND_QUERY)) - ) -) - -// This differs from upstream only in that it does not use the legacy crossTo -// and crossFrom functions, and it ensures driveClockFromMaster = None -case class HierarchicalMulticlockBusTopologyParams( - pbus: PeripheryBusParams, - fbus: FrontBusParams, - cbus: PeripheryBusParams, - xTypes: SubsystemCrossingParams -) extends TLBusWrapperTopology( - instantiations = List( - (PBUS, pbus), - (FBUS, fbus), - (CBUS, cbus)), - connections = List( - (SBUS, CBUS, TLBusWrapperConnection. crossTo(xType = xTypes.sbusToCbusXType, driveClockFromMaster = None)), - (CBUS, PBUS, TLBusWrapperConnection. crossTo(xType = xTypes.cbusToPbusXType, driveClockFromMaster = None)), - (FBUS, SBUS, TLBusWrapperConnection.crossFrom(xType = xTypes.fbusToSbusXType, driveClockFromMaster = None))) -) - -// For subsystem/Configs.scala - -class WithMulticlockCoherentBusTopology extends Config((site, here, up) => { - case TLNetworkTopologyLocated(InSubsystem) => List( - JustOneBusTopologyParams(sbus = site(SystemBusKey)), - HierarchicalMulticlockBusTopologyParams( - pbus = site(PeripheryBusKey), - fbus = site(FrontBusKey), - cbus = site(ControlBusKey), - xTypes = SubsystemCrossingParams( - sbusToCbusXType = site(SbusToCbusXTypeKey), - cbusToPbusXType = site(CbusToPbusXTypeKey), - fbusToSbusXType = site(FbusToSbusXTypeKey))), - CoherentMulticlockBusTopologyParams( - sbus = site(SystemBusKey), - mbus = site(MemoryBusKey), - l2 = site(BankedL2Key), - sbusToMbusXType = site(SbusToMbusXTypeKey))) -}) - -class WithMulticlockIncoherentBusTopology extends Config((site, here, up) => { - case TLNetworkTopologyLocated(InSubsystem) => List( - JustOneBusTopologyParams(sbus = site(SystemBusKey)), - HierarchicalMulticlockBusTopologyParams( - pbus = site(PeripheryBusKey), - fbus = site(FrontBusKey), - cbus = site(ControlBusKey), - xTypes = SubsystemCrossingParams())) -}) diff --git a/generators/chipyard/src/main/scala/Subsystem.scala b/generators/chipyard/src/main/scala/Subsystem.scala index 93d7c237..f5e35477 100644 --- a/generators/chipyard/src/main/scala/Subsystem.scala +++ b/generators/chipyard/src/main/scala/Subsystem.scala @@ -13,8 +13,6 @@ import freechips.rocketchip.config.{Field, Parameters} import freechips.rocketchip.devices.tilelink._ import freechips.rocketchip.devices.debug.{HasPeripheryDebug, HasPeripheryDebugModuleImp, ExportDebug, DebugModuleKey} import freechips.rocketchip.diplomacy._ -import freechips.rocketchip.diplomaticobjectmodel.model.{OMInterrupt} -import freechips.rocketchip.diplomaticobjectmodel.logicaltree.{RocketTileLogicalTreeNode, LogicalModuleTree} import freechips.rocketchip.tile._ import freechips.rocketchip.tilelink._ import freechips.rocketchip.interrupts._ diff --git a/generators/chipyard/src/main/scala/System.scala b/generators/chipyard/src/main/scala/System.scala index 31bedae7..827b97c0 100644 --- a/generators/chipyard/src/main/scala/System.scala +++ b/generators/chipyard/src/main/scala/System.scala @@ -60,7 +60,7 @@ trait CanHaveMasterTLMemPort { this: BaseSubsystem => private val device = new MemoryDevice private val idBits = memPortParamsOpt.map(_.master.idBits).getOrElse(1) - val memTLNode = TLManagerNode(memPortParamsOpt.map({ case MemoryPortParams(memPortParams, nMemoryChannels) => + val memTLNode = TLManagerNode(memPortParamsOpt.map({ case MemoryPortParams(memPortParams, nMemoryChannels, _) => Seq.tabulate(nMemoryChannels) { channel => val base = AddressSet.misaligned(memPortParams.base, memPortParams.size) val filter = AddressSet(channel * mbus.blockBytes, ~((nMemoryChannels-1) * mbus.blockBytes)) diff --git a/generators/chipyard/src/main/scala/config/AbstractConfig.scala b/generators/chipyard/src/main/scala/config/AbstractConfig.scala index 3cbeb32a..1f43dcbf 100644 --- a/generators/chipyard/src/main/scala/config/AbstractConfig.scala +++ b/generators/chipyard/src/main/scala/config/AbstractConfig.scala @@ -41,20 +41,21 @@ class AbstractConfig extends Config( new chipyard.iobinders.WithCustomBootPin ++ new chipyard.iobinders.WithDividerOnlyClockGenerator ++ - new testchipip.WithSerialTLWidth(32) ++ // fatten the serialTL interface to improve testing performance - new testchipip.WithDefaultSerialTL ++ // use serialized tilelink port to external serialadapter/harnessRAM - new chipyard.config.WithBootROM ++ // use default bootrom - new chipyard.config.WithUART ++ // add a UART - new chipyard.config.WithL2TLBs(1024) ++ // use L2 TLBs - new chipyard.config.WithNoSubsystemDrivenClocks ++ // drive the subsystem diplomatic clocks from ChipTop instead of using implicit clocks - new chipyard.config.WithInheritBusFrequencyAssignments ++ // Unspecified clocks within a bus will receive the bus frequency if set - new chipyard.config.WithPeripheryBusFrequencyAsDefault ++ // Unspecified frequencies with match the pbus frequency (which is always set) - new chipyard.config.WithMemoryBusFrequency(100.0) ++ // Default 100 MHz mbus - new chipyard.config.WithPeripheryBusFrequency(100.0) ++ // Default 100 MHz pbus - new freechips.rocketchip.subsystem.WithJtagDTM ++ // set the debug module to expose a JTAG port - new freechips.rocketchip.subsystem.WithNoMMIOPort ++ // no top-level MMIO master port (overrides default set in rocketchip) - new freechips.rocketchip.subsystem.WithNoSlavePort ++ // no top-level MMIO slave port (overrides default set in rocketchip) - new freechips.rocketchip.subsystem.WithInclusiveCache ++ // use Sifive L2 cache - new freechips.rocketchip.subsystem.WithNExtTopInterrupts(0) ++ // no external interrupts - new chipyard.WithMulticlockCoherentBusTopology ++ // hierarchical buses including mbus+l2 - new freechips.rocketchip.system.BaseConfig) // "base" rocketchip system + new testchipip.WithSerialTLWidth(32) ++ // fatten the serialTL interface to improve testing performance + new testchipip.WithDefaultSerialTL ++ // use serialized tilelink port to external serialadapter/harnessRAM + new chipyard.config.WithBootROM ++ // use default bootrom + new chipyard.config.WithUART ++ // add a UART + new chipyard.config.WithL2TLBs(1024) ++ // use L2 TLBs + new chipyard.config.WithNoSubsystemDrivenClocks ++ // drive the subsystem diplomatic clocks from ChipTop instead of using implicit clocks + new chipyard.config.WithInheritBusFrequencyAssignments ++ // Unspecified clocks within a bus will receive the bus frequency if set + new chipyard.config.WithPeripheryBusFrequencyAsDefault ++ // Unspecified frequencies with match the pbus frequency (which is always set) + new chipyard.config.WithMemoryBusFrequency(100.0) ++ // Default 100 MHz mbus + new chipyard.config.WithPeripheryBusFrequency(100.0) ++ // Default 100 MHz pbus + new freechips.rocketchip.subsystem.WithJtagDTM ++ // set the debug module to expose a JTAG port + new freechips.rocketchip.subsystem.WithNoMMIOPort ++ // no top-level MMIO master port (overrides default set in rocketchip) + new freechips.rocketchip.subsystem.WithNoSlavePort ++ // no top-level MMIO slave port (overrides default set in rocketchip) + new freechips.rocketchip.subsystem.WithInclusiveCache ++ // use Sifive L2 cache + new freechips.rocketchip.subsystem.WithNExtTopInterrupts(0) ++ // no external interrupts + new freechips.rocketchip.subsystem.WithDontDriveBusClocksFromSBus ++ // leave the bus clocks undriven by sbus + new freechips.rocketchip.subsystem.WithCoherentBusTopology ++ // hierarchical buses including sbus/mbus/pbus/fbus/cbus/l2 + new freechips.rocketchip.system.BaseConfig) // "base" rocketchip system diff --git a/generators/chipyard/src/main/scala/config/RocketConfigs.scala b/generators/chipyard/src/main/scala/config/RocketConfigs.scala index 0f9b5992..42805714 100644 --- a/generators/chipyard/src/main/scala/config/RocketConfigs.scala +++ b/generators/chipyard/src/main/scala/config/RocketConfigs.scala @@ -15,7 +15,7 @@ class TinyRocketConfig extends Config( new chipyard.config.WithTLSerialLocation( freechips.rocketchip.subsystem.FBUS, freechips.rocketchip.subsystem.PBUS) ++ // attach TL serial adapter to f/p busses - new chipyard.WithMulticlockIncoherentBusTopology ++ // use incoherent bus topology + new freechips.rocketchip.subsystem.WithIncoherentBusTopology ++ // use incoherent bus topology new freechips.rocketchip.subsystem.WithNBanks(0) ++ // remove L2$ new freechips.rocketchip.subsystem.WithNoMemPort ++ // remove backing memory new freechips.rocketchip.subsystem.With1TinyCore ++ // single tiny rocket-core diff --git a/generators/chipyard/src/main/scala/example/TutorialTile.scala b/generators/chipyard/src/main/scala/example/TutorialTile.scala index 97294428..6303e31a 100644 --- a/generators/chipyard/src/main/scala/example/TutorialTile.scala +++ b/generators/chipyard/src/main/scala/example/TutorialTile.scala @@ -7,7 +7,6 @@ import freechips.rocketchip.config._ import freechips.rocketchip.subsystem._ import freechips.rocketchip.devices.tilelink._ import freechips.rocketchip.diplomacy._ -import freechips.rocketchip.diplomaticobjectmodel.logicaltree.{LogicalTreeNode} import freechips.rocketchip.rocket._ import freechips.rocketchip.subsystem.{RocketCrossingParams} import freechips.rocketchip.tilelink._ diff --git a/generators/cva6 b/generators/cva6 index 705c48a1..31fd9cdf 160000 --- a/generators/cva6 +++ b/generators/cva6 @@ -1 +1 @@ -Subproject commit 705c48a1dacc011cef9b4d021a88b4948e7f9b64 +Subproject commit 31fd9cdf801b407acee3989622902db59e474f90 diff --git a/generators/firechip/src/main/scala/FireSim.scala b/generators/firechip/src/main/scala/FireSim.scala index 3839bf14..bd35341b 100644 --- a/generators/firechip/src/main/scala/FireSim.scala +++ b/generators/firechip/src/main/scala/FireSim.scala @@ -262,9 +262,7 @@ class FireSim(implicit val p: Parameters) extends RawModule with HasHarnessSigna // instantiation of the dut, otherwise the initial instance will be // reused across each node import freechips.rocketchip.subsystem.AsyncClockGroupsKey - val lazyModule = LazyModule(p(BuildTop)(p.alterPartial({ - case AsyncClockGroupsKey => p(AsyncClockGroupsKey).copy - }))) + val lazyModule = LazyModule(p(BuildTop)(p)) val module = Module(lazyModule.module) lazyModule match { case d: HasIOBinders => diff --git a/generators/riscv-sodor b/generators/riscv-sodor index 5643a8e2..fc56b712 160000 --- a/generators/riscv-sodor +++ b/generators/riscv-sodor @@ -1 +1 @@ -Subproject commit 5643a8e245d562647f626295ad2dab9b4d5f6a13 +Subproject commit fc56b7128f8d5fd3d9022e19ee53c93e0ecfad05 diff --git a/generators/rocket-chip b/generators/rocket-chip index 114325b2..44b0b824 160000 --- a/generators/rocket-chip +++ b/generators/rocket-chip @@ -1 +1 @@ -Subproject commit 114325b27cfe5312c86a8a325b187be9455a62af +Subproject commit 44b0b8249279d25bd75ea693b725d9ff1b96e2ab diff --git a/generators/sifive-blocks b/generators/sifive-blocks index 545a396f..e8adf0e3 160000 --- a/generators/sifive-blocks +++ b/generators/sifive-blocks @@ -1 +1 @@ -Subproject commit 545a396f3486132b01ceef3cbce2085608984478 +Subproject commit e8adf0e3ef94f76f73001fbeda767d6899c60eb3 diff --git a/generators/sifive-cache b/generators/sifive-cache index e3a3000c..2e47c707 160000 --- a/generators/sifive-cache +++ b/generators/sifive-cache @@ -1 +1 @@ -Subproject commit e3a3000cc1fd4cdf3a4e638e4d081b8aae94ebf0 +Subproject commit 2e47c707e04dbbbdbf81561a979c055f87ac8df2 diff --git a/generators/testchipip b/generators/testchipip index eea390af..f99b1eb5 160000 --- a/generators/testchipip +++ b/generators/testchipip @@ -1 +1 @@ -Subproject commit eea390af19a05b9d6874c3ec51903d89c5520bf2 +Subproject commit f99b1eb59a34d7934059904f03237d5bc8d4a680 diff --git a/project/plugins.sbt b/project/plugins.sbt index cf207f2d..216a060d 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,3 +1,3 @@ addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.15.0") addSbtPlugin("ch.epfl.scala" % "sbt-scalafix" % "0.9.21") -addSbtPlugin("ch.epfl.scala" % "sbt-bloop" % "1.4.11") +addSbtPlugin("ch.epfl.scala" % "sbt-bloop" % "1.5.3") diff --git a/scripts/build-toolchain-extra.sh b/scripts/build-toolchain-extra.sh new file mode 100755 index 00000000..c8be3d97 --- /dev/null +++ b/scripts/build-toolchain-extra.sh @@ -0,0 +1,110 @@ +#!/usr/bin/env bash + +# exit script if any command fails +set -e +set -o pipefail + +RDIR=$(git rev-parse --show-toplevel) + +# get helpful utilities +source $RDIR/scripts/utils.sh + +common_setup + +# Allow user to override MAKE +[ -n "${MAKE:+x}" ] || MAKE=$(command -v gnumake || command -v gmake || command -v make) +readonly MAKE + +usage() { + echo "usage: ${0} [OPTIONS] [riscv-tools | esp-tools]" + echo "" + echo "Installation Types" + echo " riscv-tools: if set, builds the riscv toolchain (this is also the default)" + echo " esp-tools: if set, builds esp-tools toolchain used for the hwacha vector accelerator" + echo "" + echo "Options" + echo " --prefix PREFIX : Install destination. If unset, defaults to $CONDA_PREFIX/riscv-tools" + echo " or $CONDA_PREFIX/esp-tools" + echo " --clean-after-install : Run make clean in calls to module_make and module_build" + echo " --force -f : Skip prompt checking for conda" + echo " --skip-validate : DEPRECATED: Same functionality as --force" + echo " --help -h : Display this message" + exit "$1" +} + +TOOLCHAIN="riscv-tools" +CLEANAFTERINSTALL="" +RISCV="" +FORCE=false + +# getopts does not support long options, and is inflexible +while [ "$1" != "" ]; +do + case $1 in + -h | -H | --help | help ) + usage 3 ;; + -p | --prefix ) + shift + RISCV=$(realpath $1) ;; + --clean-after-install ) + CLEANAFTERINSTALL="true" ;; + riscv-tools | esp-tools) + TOOLCHAIN=$1 ;; + --force | -f | --skip-validate) + FORCE=true; + ;; + * ) + error "invalid option $1" + usage 1 ;; + esac + shift +done + +if [ "$FORCE" = false ]; then + if [ -z ${CONDA_DEFAULT_ENV+x} ]; then + error "ERROR: No conda environment detected. Did you activate the conda environment (e.x. 'conda activate chipyard')?" + exit 1 + fi +fi + +if [ -z "$RISCV" ] ; then + RISCV="$CONDA_PREFIX/$TOOLCHAIN" +fi + +XLEN=64 + +echo "Installing extra toolchain utilities/tests to $RISCV" + +# install risc-v tools +export RISCV="$RISCV" + +cd "${RDIR}" + +SRCDIR="$(pwd)/toolchains/${TOOLCHAIN}" +[ -d "${SRCDIR}" ] || die "unsupported toolchain: ${TOOLCHAIN}" +. ./scripts/build-util.sh + +echo '==> Installing Spike' +# disable boost explicitly for https://github.com/riscv-software-src/riscv-isa-sim/issues/834 +# since we don't have it in our requirements +module_all riscv-isa-sim --prefix="${RISCV}" --with-boost=no --with-boost-asio=no --with-boost-regex=no +# build static libfesvr library for linking into firesim driver (or others) +echo '==> Installing libfesvr static library' +OLDCLEANAFTERINSTALL=$CLEANAFTERINSTALL +CLEANAFTERINSTALL="" +module_make riscv-isa-sim libfesvr.a +cp -p "${SRCDIR}/riscv-isa-sim/build/libfesvr.a" "${RISCV}/lib/" +CLEANAFTERINSTALL=$OLDCLEANAFTERINSTALL + +echo '==> Installing Proxy Kernel' +CC= CXX= module_all riscv-pk --prefix="${RISCV}" --host=riscv${XLEN}-unknown-elf + +echo '==> Installing RISC-V tests' +module_all riscv-tests --prefix="${RISCV}/riscv${XLEN}-unknown-elf" --with-xlen=${XLEN} + +# Common tools (not in any particular toolchain dir) + +echo '==> Installing libgloss' +CC= CXX= SRCDIR="$(pwd)/toolchains" module_all libgloss --prefix="${RISCV}/riscv${XLEN}-unknown-elf" --host=riscv${XLEN}-unknown-elf + +echo "Extra Toolchain Utilities/Tests Build Complete!" diff --git a/scripts/build-toolchains.sh b/scripts/build-toolchains.sh deleted file mode 100755 index 0d472464..00000000 --- a/scripts/build-toolchains.sh +++ /dev/null @@ -1,227 +0,0 @@ -#!/usr/bin/env bash - -#this script is based on the firesim build toolchains script - -# exit script if any command fails -set -e -set -o pipefail - -# On macOS, use GNU readlink from 'coreutils' package in Homebrew/MacPorts -if [ "$(uname -s)" = "Darwin" ] ; then - READLINK=greadlink -else - READLINK=readlink -fi - -# If BASH_SOURCE is undefined, we may be running under zsh, in that case -# provide a zsh-compatible alternative -DIR="$(dirname "$($READLINK -f "${BASH_SOURCE[0]:-${(%):-%x}}")")" -CHIPYARD_DIR="$(dirname "$DIR")" - -# Allow user to override MAKE -[ -n "${MAKE:+x}" ] || MAKE=$(command -v gnumake || command -v gmake || command -v make) -readonly MAKE - -usage() { - echo "usage: ${0} [OPTIONS] [riscv-tools | esp-tools | ec2fast]" - echo "" - echo "Installation Types" - echo " riscv-tools: if set, builds the riscv toolchain (this is also the default)" - echo " esp-tools: if set, builds esp-tools toolchain used for the hwacha vector accelerator" - echo " ec2fast: if set, pulls in a pre-compiled RISC-V toolchain for an EC2 manager instance" - echo "" - echo "Options" - echo " --prefix PREFIX : Install destination. If unset, defaults to $(pwd)/riscv-tools-install" - echo " or $(pwd)/esp-tools-install" - echo " --ignore-qemu : Ignore installing QEMU" - echo " --clean-after-install : Run make clean in calls to module_make and module_build" - echo " --arch -a : Architecture (e.g., rv64gc)" - echo " --help -h : Display this message" - exit "$1" -} - -error() { - echo "${0##*/}: ${1}" >&2 -} -die() { - error "$1" - exit "${2:--1}" -} - -TOOLCHAIN="riscv-tools" -EC2FASTINSTALL="false" -IGNOREQEMU="" -CLEANAFTERINSTALL="" -RISCV="" -ARCH="" - -# getopts does not support long options, and is inflexible -while [ "$1" != "" ]; -do - case $1 in - -h | --help | help ) - usage 3 ;; - -p | --prefix ) - shift - RISCV=$(realpath $1) ;; - --ignore-qemu ) - IGNOREQEMU="true" ;; - -a | --arch ) - shift - ARCH=$1 ;; - --clean-after-install ) - CLEANAFTERINSTALL="true" ;; - riscv-tools | esp-tools) - TOOLCHAIN=$1 ;; - ec2fast ) - EC2FASTINSTALL="true" ;; - * ) - error "invalid option $1" - usage 1 ;; - esac - shift -done - -if [ -z "$RISCV" ] ; then - INSTALL_DIR="$TOOLCHAIN-install" - RISCV="$(pwd)/$INSTALL_DIR" -fi - -if [ -z "$ARCH" ] ; then - XLEN=64 -elif [[ "$ARCH" =~ ^rv(32|64)((i?m?a?f?d?|g?)c?)$ ]]; then - XLEN=${BASH_REMATCH[1]} -else - error "invalid arch $ARCH" - usage 1 -fi - -echo "Installing toolchain to $RISCV" - -# install risc-v tools -export RISCV="$RISCV" - -cd "${CHIPYARD_DIR}" - -SRCDIR="$(pwd)/toolchains/${TOOLCHAIN}" -[ -d "${SRCDIR}" ] || die "unsupported toolchain: ${TOOLCHAIN}" -. ./scripts/build-util.sh - - -if [ "${EC2FASTINSTALL}" = true ] ; then - [ "${TOOLCHAIN}" = 'riscv-tools' ] || - die "unsupported precompiled toolchain: ${TOOLCHAIN}" - - echo '=> Fetching pre-built toolchain' - module=toolchains/riscv-tools/riscv-gnu-toolchain-prebuilt - git config --unset submodule."${module}".update || : - git submodule update --init --depth 1 "${module}" - - echo '==> Verifying toolchain version hash' - # Find commit hash without initializing the submodule - hashsrc="$(git ls-tree -d HEAD "${SRCDIR}/riscv-gnu-toolchain" | { - unset IFS && read -r _ type obj _ && - test -n "${obj}" && test "${type}" = 'commit' && echo "${obj}" - }; )" || - die 'failed to obtain riscv-gnu-toolchain submodule hash' "$?" - - read -r hashbin < "${module}/HASH" || - die 'failed to obtain riscv-gnu-toolchain-prebuilt hash' "$?" - - echo "==> ${hashsrc}" - [ "${hashsrc}" = "${hashbin}" ] || - die "pre-built version mismatch: ${hashbin}" - - echo '==> Installing pre-built toolchain' - "${MAKE}" -C "${module}" DESTDIR="${RISCV}" install - git submodule deinit "${module}" || : - -else - MAKE_VER=$("${MAKE}" --version) || true - case ${MAKE_VER} in - 'GNU Make '[4-9]\.*) - ;; - 'GNU Make '[1-9][0-9]) - ;; - *) - die 'obsolete make version; need GNU make 4.x or later' - ;; - esac - - module_prepare riscv-gnu-toolchain qemu - module_build riscv-gnu-toolchain --prefix="${RISCV}" --with-cmodel=medany ${ARCH:+--with-arch=${ARCH}} - echo '==> Building GNU/Linux toolchain' - module_make riscv-gnu-toolchain linux -fi - -# disable boost explicitly for https://github.com/riscv-software-src/riscv-isa-sim/issues/834 -# since we don't have it in our requirements -module_all riscv-isa-sim --prefix="${RISCV}" --with-boost=no --with-boost-asio=no --with-boost-regex=no -# build static libfesvr library for linking into firesim driver (or others) -echo '==> Installing libfesvr static library' -module_make riscv-isa-sim libfesvr.a -cp -p "${SRCDIR}/riscv-isa-sim/build/libfesvr.a" "${RISCV}/lib/" - -CC= CXX= module_all riscv-pk --prefix="${RISCV}" --host=riscv${XLEN}-unknown-elf -module_all riscv-tests --prefix="${RISCV}/riscv${XLEN}-unknown-elf" --with-xlen=${XLEN} - -# Common tools (not in any particular toolchain dir) - -CC= CXX= SRCDIR="$(pwd)/toolchains" module_all libgloss --prefix="${RISCV}/riscv${XLEN}-unknown-elf" --host=riscv${XLEN}-unknown-elf - -if [ -z "$IGNOREQEMU" ] ; then - echo "=> Starting qemu build" - dir="$(pwd)/toolchains/qemu" - echo "==> Initializing qemu submodule" - #since we don't want to use the global config we init passing rewrite config in to the command - git -c url.https://github.com/qemu.insteadOf=https://git.qemu.org/git submodule update --init --recursive "$dir" - echo "==> Applying url-rewriting to avoid git.qemu.org" - # and once the clones exist, we recurse through them and set the rewrite - # in the local config so that any further commands by the user have the rewrite. uggh. git, why you so ugly? - git -C "$dir" config --local url.https://github.com/qemu.insteadOf https://git.qemu.org/git - git -C "$dir" submodule foreach --recursive 'git config --local url.https://github.com/qemu.insteadOf https://git.qemu.org/git' - - # check to see whether the rewrite rules are needed any more - # If you find git.qemu.org in any .gitmodules file below qemu, you still need them - # the /dev/null redirection in the submodule grepping is to quiet non-existance of further .gitmodules - ! grep -q 'git\.qemu\.org' "$dir/.gitmodules" && \ - git -C "$dir" submodule foreach --quiet --recursive '! grep -q "git\.qemu\.org" .gitmodules 2>/dev/null' && \ - echo "==> PLEASE REMOVE qemu URL-REWRITING from scripts/build-toolchains.sh. It is no longer needed!" && exit 1 - - ( - # newer version of BFD-based ld has made '-no-pie' an error because it renamed to '--no-pie' - # meanwhile, ld.gold will still accept '-no-pie' - # QEMU 5.0 still uses '-no-pie' in it's linker options - - # default LD to ld if it isn't set - if ( set +o pipefail; ${LD:-ld} -no-pie |& grep 'did you mean --no-pie' >/dev/null); then - echo "==> LD doesn't like '-no-pie'" - # LD has the problem, look for ld.gold - if type ld.gold >&/dev/null; then - echo "==> Using ld.gold to link QEMU" - export LD=ld.gold - fi - fi - - # now actually do the build - SRCDIR="$(pwd)/toolchains" module_build qemu --prefix="${RISCV}" --target-list=riscv${XLEN}-softmmu --disable-werror - ) -fi - -# make Dromajo -git submodule update --init $CHIPYARD_DIR/tools/dromajo/dromajo-src -make -C $CHIPYARD_DIR/tools/dromajo/dromajo-src/src - -# create specific env.sh -cat > "$CHIPYARD_DIR/env-$TOOLCHAIN.sh" <> env.sh -echo "source $(printf '%q' "$CHIPYARD_DIR/env-$TOOLCHAIN.sh")" >> env.sh -echo "Toolchain Build Complete!" diff --git a/scripts/centos-req.sh b/scripts/centos-req.sh deleted file mode 100755 index 8c7ac3a0..00000000 --- a/scripts/centos-req.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash - -set -ex - -sudo yum groupinstall -y "Development tools" -sudo yum install -y gmp-devel mpfr-devel libmpc-devel zlib-devel vim git java java-devel - -# Install SBT https://www.scala-sbt.org/release/docs/Installing-sbt-on-Linux.html#Red+Hat+Enterprise+Linux+and+other+RPM-based+distributions -# sudo rm -f /etc/yum.repos.d/bintray-rpm.repo -# Use rm above if sbt installed from bintray before. -curl -L https://www.scala-sbt.org/sbt-rpm.repo > sbt-rpm.repo -sudo mv sbt-rpm.repo /etc/yum.repos.d/ - -sudo yum install -y sbt texinfo gengetopt -sudo yum install -y expat-devel libusb1-devel ncurses-devel cmake "perl(ExtUtils::MakeMaker)" -# deps for poky -sudo yum install -y python38 patch diffstat texi2html texinfo subversion chrpath git wget -# deps for qemu -sudo yum install -y gtk3-devel -# deps for firemarshal -sudo yum install -y python38-pip python38-devel rsync libguestfs-tools makeinfo expat ctags -# Install GNU make 4.x (needed to cross-compile glibc 2.28+) -sudo yum install -y centos-release-scl -sudo yum install -y devtoolset-8-make -# install DTC -sudo yum install -y dtc -sudo yum install -y python - -# install verilator -git clone http://git.veripool.org/git/verilator -cd verilator -git checkout v4.034 -autoconf && ./configure && make -j$(nproc) && sudo make install diff --git a/scripts/check-tracegen.sh b/scripts/check-tracegen.sh index 947e7312..e2974fb1 100755 --- a/scripts/check-tracegen.sh +++ b/scripts/check-tracegen.sh @@ -7,17 +7,24 @@ AXE_DIR=$(realpath ${SCRIPT_DIR}/../tools/axe) ROCKET_DIR=$(realpath ${SCRIPT_DIR}/../generators/rocket-chip) TO_AXE=${ROCKET_DIR}/scripts/toaxe.py +TO_AXE_PY3=/tmp/toaxe.py AXE=${AXE_DIR}/src/axe AXE_SHRINK=${AXE_DIR}/src/axe-shrink.py +AXE_SHRINK_PY3=/tmp/axe-shrink.py + +# TODO: convert scripts to py3 in src +2to3 $TO_AXE -o /tmp -n -w +sed -i '30d' $TO_AXE_PY3 # remove import sets +2to3 $AXE_SHRINK -o /tmp -n -w PATH=$PATH:${AXE_DIR}/src grep '.*:.*#.*@' $1 > /tmp/clean-trace.txt -python2 "$TO_AXE" /tmp/clean-trace.txt > /tmp/trace.axe +python "$TO_AXE_PY3" /tmp/clean-trace.txt > /tmp/trace.axe result=$("$AXE" check wmo /tmp/trace.axe) if [ "$result" != OK ]; then - "$AXE_SHRINK" wmo /tmp/trace.axe + "$AXE_SHRINK_PY3" wmo /tmp/trace.axe else echo OK fi diff --git a/scripts/firesim-setup.sh b/scripts/firesim-setup.sh index a7f265f1..2572ffc2 100755 --- a/scripts/firesim-setup.sh +++ b/scripts/firesim-setup.sh @@ -5,13 +5,12 @@ set -e set -o pipefail -RDIR=$(pwd) -scripts_dir="$( cd "$( dirname "${BASH_SOURCE[0]:-${(%):-%x}}" )" >/dev/null 2>&1 && pwd )" +RDIR=$(git rev-parse --show-toplevel) -cd "${scripts_dir}/.." +cd "$RDIR" # Reenable the FireSim submodule git config --unset submodule.sims/firesim.update || true -cd sims/firesim +pushd sims/firesim ./build-setup.sh "$@" --library --skip-validate -cd "$RDIR" +popd diff --git a/scripts/init-fpga.sh b/scripts/init-fpga.sh index a0ab8ef6..0182bd4b 100755 --- a/scripts/init-fpga.sh +++ b/scripts/init-fpga.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash + # exit script if any command fails set -e set -o pipefail diff --git a/scripts/init-software.sh b/scripts/init-software.sh index 8a8a95a2..f0ca3f7d 100755 --- a/scripts/init-software.sh +++ b/scripts/init-software.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash + # exit script if any command fails set -e set -o pipefail diff --git a/scripts/init-submodules-no-riscv-tools-nolog.sh b/scripts/init-submodules-no-riscv-tools-nolog.sh index e2379ecc..8fee2bbb 100755 --- a/scripts/init-submodules-no-riscv-tools-nolog.sh +++ b/scripts/init-submodules-no-riscv-tools-nolog.sh @@ -4,27 +4,35 @@ set -e set -o pipefail -SKIP_VALIDATE=false +RDIR=$(git rev-parse --show-toplevel) + +# get helpful utilities +source $RDIR/scripts/utils.sh + +common_setup function usage { - echo "Usage: $0 [--skip-validate]" + echo "Usage: $0 [--force]" echo "Initialize Chipyard submodules and setup initial env.sh script." echo "" - echo " --skip-validate Skip prompt checking for tagged release" + echo " --force -f : Skip prompt checking for tagged release" + echo " --skip-validate : DEPRECATED: Same functionality as --force" } +FORCE=false while test $# -gt 0 do case "$1" in - --skip-validate) - SKIP_VALIDATE=true; + --force | -f | --skip-validate) + FORCE=true; ;; - -h | -H | --help) + -h | -H | --help | help) usage exit 1 ;; - *) echo "ERROR: bad argument $1" + *) + echo "ERROR: bad argument $1" usage exit 2 ;; @@ -32,47 +40,52 @@ do shift done -# Check that git version is at least 1.7.8 +# check that git version is at least 1.7.8 MYGIT=$(git --version) MYGIT=${MYGIT#'git version '} # Strip prefix case ${MYGIT} in -[1-9]*) ;; -*) echo 'warning: unknown git version' ;; + [1-9]*) + ;; + *) + echo "WARNING: unknown git version" + ;; esac MINGIT="1.8.5" if [ "$MINGIT" != "$(echo -e "$MINGIT\n$MYGIT" | sort -V | head -n1)" ]; then echo "This script requires git version $MINGIT or greater. Exiting." - false + exit 4 fi # before doing anything verify that you are on a release branch/tag +save_bash_options set +e -tag=$(git describe --exact-match --tags) -tag_ret_code=$? -set -e -if [ $tag_ret_code -ne 0 ]; then - if [ "$SKIP_VALIDATE" = false ]; then - read -p "WARNING: You are not on an official release of Chipyard."$'\n'"Type \"y\" to continue if this is intended, otherwise see https://chipyard.readthedocs.io/en/stable/Chipyard-Basics/Initial-Repo-Setup.html#setting-up-the-chipyard-repo: " validate - [[ $validate == [yY] ]] || exit 3 - echo "Setting up non-official Chipyard release" +git_tag=$(git describe --exact-match --tags) +git_tag_rc=$? +restore_bash_options +if [ "$git_tag_rc" -ne 0 ]; then + if [ "$FORCE" == false ]; then + while true; do + read -p "WARNING: You are not on an official release of Chipyard."$'\n'"Type \"y\" to continue if this is intended or \"n\" if not: " validate + case "$validate" in + y | Y) + echo "Continuing on to setting up non-official Chipyard release repository" + break + ;; + n | N) + error "See https://chipyard.readthedocs.io/en/stable/Chipyard-Basics/Initial-Repo-Setup.html#setting-up-the-chipyard-repo for setting up an official release of Chipyard. " + exit 3 + ;; + *) + error "Invalid response. Please type \"y\" or \"n\"" + ;; + esac + done fi else - echo "Setting up official Chipyard release: $tag" + echo "Setting up official Chipyard release: $git_tag" fi -# On macOS, use GNU readlink from 'coreutils' package in Homebrew/MacPorts -if [ "$(uname -s)" = "Darwin" ] ; then - READLINK=greadlink -else - READLINK=readlink -fi - -# If BASH_SOURCE is undefined we may be running under zsh, in that case -# provide a zsh-compatible alternative -DIR="$(dirname "$($READLINK -f "${BASH_SOURCE[0]:-${(%):-%x}}")")" -CHIPYARD_DIR="$(dirname "$DIR")" - -cd "$CHIPYARD_DIR" +cd "$RDIR" ( # Blocklist of submodules to initially skip: @@ -84,9 +97,8 @@ cd "$CHIPYARD_DIR" # Call the given subcommand (shell function) on each submodule # path to temporarily exclude during the recursive update for name in \ - toolchains/*-tools/*/ \ + toolchains/*-tools/* \ toolchains/libgloss \ - toolchains/qemu \ generators/sha3 \ generators/gemmini \ sims/firesim \ @@ -107,36 +119,40 @@ cd "$CHIPYARD_DIR" _unskip() { git config --local --unset-all "submodule.${1}.update" || : ; } trap 'git_submodule_exclude _unskip' EXIT INT TERM - set -x - git_submodule_exclude _skip - git submodule update --init --recursive #--jobs 8 - set +x + ( + set -x + git_submodule_exclude _skip + git submodule update --init --recursive #--jobs 8 + ) ) -set -x +( + # Non-recursive clone to exclude riscv-linux + git submodule update --init generators/sha3 -# Non-recursive clone to exclude riscv-linux -git submodule update --init generators/sha3 + # Non-recursive clone to exclude gemmini-software + git submodule update --init generators/gemmini + git -C generators/gemmini/ submodule update --init --recursive software/gemmini-rocc-tests -# Non-recursive clone to exclude gemmini-software -git submodule update --init generators/gemmini -git -C generators/gemmini/ submodule update --init --recursive software/gemmini-rocc-tests + # Minimal non-recursive clone to initialize sbt dependencies + git submodule update --init sims/firesim + git config --local submodule.sims/firesim.update none -# Minimal non-recursive clone to initialize sbt dependencies -git submodule update --init sims/firesim -git config --local submodule.sims/firesim.update none - -# Only shallow clone needed for basic SW tests -git submodule update --init software/firemarshal - -set +x + # Only shallow clone needed for basic SW tests + git submodule update --init software/firemarshal +) # Configure firemarshal to know where our firesim installation is if [ ! -f ./software/firemarshal/marshal-config.yaml ]; then echo "firesim-dir: '../../sims/firesim/'" > ./software/firemarshal/marshal-config.yaml fi -echo "# line auto-generated by init-submodules-no-riscv-tools.sh" >> env.sh -echo '__DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]:-${(%):-%x}}")")"' >> env.sh -echo "PATH=\$__DIR/bin:\$PATH" >> env.sh -echo "PATH=\$__DIR/software/firemarshal:\$PATH" >> env.sh +cat << EOT >> env.sh +# line auto-generated by init-submodules-no-riscv-tools.sh +__DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]:-${(%):-%x}}")")" +PATH=\$__DIR/bin:\$PATH +PATH=\$__DIR/software/firemarshal:\$PATH +if [ -z \${CONDA_DEFAULT_ENV+x} ]; then + echo "WARNING: No conda environment detected. Did you activate the conda environment (e.x. 'conda activate chipyard')?" +fi +EOT diff --git a/scripts/init-vlsi.sh b/scripts/init-vlsi.sh index f2eb83cd..8613bf61 100755 --- a/scripts/init-vlsi.sh +++ b/scripts/init-vlsi.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash + # exit script if any command fails set -e set -o pipefail diff --git a/scripts/repo-clean.sh b/scripts/repo-clean.sh index 40234d4b..55a803b1 100644 --- a/scripts/repo-clean.sh +++ b/scripts/repo-clean.sh @@ -3,19 +3,9 @@ set -e # this should be run from chipyard repo top -TOPDIR=$(pwd) +RDIR=$(git rev-parse --show-toplevel) -cd generators/cva6/src/main/resources/vsrc -git submodule deinit cva6 - -cd $TOPDIR - -cd toolchains/qemu/roms/ -git submodule deinit edk2 -cd ../ -rm -rf build - -cd ../libgloss +cd $RDIR/libgloss rm -rf build.log cd ../riscv-tools/riscv-isa-sim/ @@ -27,6 +17,5 @@ rm -rf build.log cd ../riscv-tests rm -rf build.log -cd $TOPDIR -cd tools/api-config-chipsalliance +cd $RDIR/tools/api-config-chipsalliance git config --local status.showUntrackedFiles no diff --git a/scripts/tutorial-setup.sh b/scripts/tutorial-setup.sh index cfa73636..080043f5 100755 --- a/scripts/tutorial-setup.sh +++ b/scripts/tutorial-setup.sh @@ -1,6 +1,10 @@ #!/bin/bash -set -e -x +set -ex + +RDIR=$(git rev-parse --show-toplevel) + +cd $RDIR git rm generators/chipyard/src/main/scala/config/RocketSha3Configs.scala git rm -rf generators/sha3 diff --git a/scripts/ubuntu-req.sh b/scripts/ubuntu-req.sh deleted file mode 100755 index ff5fe3ad..00000000 --- a/scripts/ubuntu-req.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash - -set -ex - -sudo apt-get install -y build-essential bison flex software-properties-common curl -sudo apt-get install -y libgmp-dev libmpfr-dev libmpc-dev zlib1g-dev vim default-jdk default-jre -# install sbt: https://www.scala-sbt.org/release/docs/Installing-sbt-on-Linux.html#Ubuntu+and+other+Debian-based+distributions -echo "deb https://repo.scala-sbt.org/scalasbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list -curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo apt-key add -sudo apt-get update -sudo apt-get install -y sbt -sudo apt-get install -y texinfo gengetopt -sudo apt-get install -y libexpat1-dev libusb-dev libncurses5-dev cmake -# deps for poky -sudo apt-get install -y python3.8 patch diffstat texi2html texinfo subversion chrpath wget -# deps for qemu -sudo apt-get install -y libgtk-3-dev gettext -# deps for firemarshal -sudo apt-get install -y python3-pip python3.8-dev rsync libguestfs-tools expat ctags -# install DTC -sudo apt-get install -y device-tree-compiler -sudo apt-get install -y python -# install git >= 2.17 -sudo add-apt-repository ppa:git-core/ppa -y -sudo apt-get update -sudo apt-get install git -y - -# install verilator -sudo apt-get install -y autoconf -git clone http://git.veripool.org/git/verilator -cd verilator -git checkout v4.034 -autoconf && ./configure && make -j$(nproc) && sudo make install diff --git a/scripts/utils.sh b/scripts/utils.sh new file mode 100644 index 00000000..30d3e092 --- /dev/null +++ b/scripts/utils.sh @@ -0,0 +1,55 @@ +#/usr/bin/env bash + +####################################### +# Common setup. Init MacOS compatibility +# variables. +# Globals: +# READLINK +####################################### +function common_setup +{ + # On macOS, use GNU readlink from 'coreutils' package in Homebrew/MacPorts + if [ "$(uname -s)" = "Darwin" ] ; then + READLINK=greadlink + else + READLINK=readlink + fi +} + +####################################### +# Error echo wrapper +####################################### +function error +{ + echo "${0##*/}: ${1}" >&2 +} + +####################################### +# Error then exit wrapper +# Arguments: +# string to print before exit +# (optional) int error code +####################################### +function die +{ + error "$1" + exit "${2:--1}" +} + +####################################### +# Save bash options. Must be called +# before a corresponding `restore_bash_options`. +####################################### +function save_bash_options +{ + OLDSTATE=$(set +o) +} + +####################################### +# Restore bash options. Must be called +# after a corresponding `save_bash_options`. +####################################### +function restore_bash_options +{ + set +vx; eval "$OLDSTATE" +} diff --git a/sims/firesim b/sims/firesim index d7a8b6c5..28dcc88b 160000 --- a/sims/firesim +++ b/sims/firesim @@ -1 +1 @@ -Subproject commit d7a8b6c50f28f0af1b14469e9db572e36b33980a +Subproject commit 28dcc88b5bd0333476d62f3de7a52a8aad415afa diff --git a/software/firemarshal b/software/firemarshal index da820669..e6f9e31d 160000 --- a/software/firemarshal +++ b/software/firemarshal @@ -1 +1 @@ -Subproject commit da820669117f7619bfb6b7a8fc21e6080c33cfc1 +Subproject commit e6f9e31d99a1e6b19f4280beb8f32cc8e16ee4bb diff --git a/toolchains/esp-tools/esp-tools-feedstock b/toolchains/esp-tools/esp-tools-feedstock new file mode 160000 index 00000000..76a16c8d --- /dev/null +++ b/toolchains/esp-tools/esp-tools-feedstock @@ -0,0 +1 @@ +Subproject commit 76a16c8ddbf3a8af420e1551192d58c4d41e7f66 diff --git a/toolchains/esp-tools/riscv-gnu-toolchain b/toolchains/esp-tools/riscv-gnu-toolchain deleted file mode 160000 index 9f532293..00000000 --- a/toolchains/esp-tools/riscv-gnu-toolchain +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9f532293985d08b0c176d96c7b650e5f433780e1 diff --git a/toolchains/qemu b/toolchains/qemu deleted file mode 160000 index fdd76fec..00000000 --- a/toolchains/qemu +++ /dev/null @@ -1 +0,0 @@ -Subproject commit fdd76fecdde1ad444ff4deb7f1c4f7e4a1ef97d6 diff --git a/toolchains/riscv-tools/riscv-gnu-toolchain b/toolchains/riscv-tools/riscv-gnu-toolchain deleted file mode 160000 index 2855d823..00000000 --- a/toolchains/riscv-tools/riscv-gnu-toolchain +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2855d823a6e93d50af604264b02ced951e80de67 diff --git a/toolchains/riscv-tools/riscv-gnu-toolchain-prebuilt b/toolchains/riscv-tools/riscv-gnu-toolchain-prebuilt deleted file mode 160000 index 918be237..00000000 --- a/toolchains/riscv-tools/riscv-gnu-toolchain-prebuilt +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 918be2371723257ed6590c77d5996ed040261c85 diff --git a/toolchains/riscv-tools/riscv-tools-feedstock b/toolchains/riscv-tools/riscv-tools-feedstock new file mode 160000 index 00000000..917b56ef --- /dev/null +++ b/toolchains/riscv-tools/riscv-tools-feedstock @@ -0,0 +1 @@ +Subproject commit 917b56ef1a78871be22283ecdb01658ac11cbe61 diff --git a/tools/DRAMSim2 b/tools/DRAMSim2 index 2ec7965b..49ec2f32 160000 --- a/tools/DRAMSim2 +++ b/tools/DRAMSim2 @@ -1 +1 @@ -Subproject commit 2ec7965b2ee051aaff03d5db21c6709aea4dd24e +Subproject commit 49ec2f32eea6687a36acdb8d1d636d992d9e8daa diff --git a/tools/dromajo/dromajo.mk b/tools/dromajo/dromajo.mk index 320aee94..0d0d6b5f 100644 --- a/tools/dromajo/dromajo.mk +++ b/tools/dromajo/dromajo.mk @@ -4,7 +4,7 @@ DROMAJO_DIR = $(base_dir)/tools/dromajo/dromajo-src/src DROMAJO_LIB_NAME = dromajo_cosim -DROMAJO_LIB = $(DROMAJO_DIR)/lib$(DROMAJO_LIB_NAME).a +DROMAJO_LIB = $(CONDA_PREFIX)/lib/lib$(DROMAJO_LIB_NAME).a # Dromajo assumes using the default bootrom DROMAJO_ROM = $(build_dir)/bootrom.rv64.img diff --git a/variables.mk b/variables.mk index 7025d89e..d5834bee 100644 --- a/variables.mk +++ b/variables.mk @@ -179,7 +179,7 @@ SBT_CLIENT_FLAG = --client endif # passes $(JAVA_TOOL_OPTIONS) from env to java -SBT_BIN ?= java -jar $(ROCKETCHIP_DIR)/sbt-launch.jar $(SBT_OPTS) +SBT_BIN ?= sbt SBT = $(SBT_BIN) $(SBT_CLIENT_FLAG) SBT_NON_THIN = $(subst $(SBT_CLIENT_FLAG),,$(SBT))