diff --git a/.github/scripts/defaults.sh b/.github/scripts/defaults.sh index d1074c03..1028960e 100755 --- a/.github/scripts/defaults.sh +++ b/.github/scripts/defaults.sh @@ -34,7 +34,7 @@ grouping["group-accels"]="chipyard-mempress chipyard-sha3 chipyard-hwacha chipya grouping["group-constellation"]="chipyard-constellation" grouping["group-tracegen"]="tracegen tracegen-boom" grouping["group-other"]="icenet testchipip constellation rocketchip-amba rocketchip-tlsimple rocketchip-tlwidth rocketchip-tlxbar" -grouping["group-fpga"]="arty vcu118 vc707" +grouping["group-fpga"]="arty vcu118 vc707 arty100t" # key value store to get the build strings declare -A mapping @@ -81,3 +81,4 @@ mapping["rocketchip-tlxbar"]="SUB_PROJECT=rocketchip CONFIG=TLXbarUnitTestConfig mapping["arty"]="SUB_PROJECT=arty verilog" mapping["vcu118"]="SUB_PROJECT=vcu118 verilog" mapping["vc707"]="SUB_PROJECT=vc707 verilog" +mapping["arty100t"]="SUB_PROJECT=arty100t verilog" diff --git a/.github/workflows/chipyard-full-flow.yml b/.github/workflows/chipyard-full-flow.yml index 79f1b191..9c6bf0bc 100644 --- a/.github/workflows/chipyard-full-flow.yml +++ b/.github/workflows/chipyard-full-flow.yml @@ -143,6 +143,7 @@ jobs: echo "par.openroad.openroad_bin: $PWD/.conda-openroad/bin/openroad" >> tutorial.yml echo "par.openroad.klayout_bin: $PWD/.conda-klayout/bin/klayout" >> tutorial.yml echo "drc.magic.magic_bin: $PWD/.conda-signoff/bin/magic" >> tutorial.yml + echo "drc.klayout.klayout_bin: $PWD/.conda-klayout/bin/klayout" >> tutorial.yml echo "lvs.netgen.netgen_bin: $PWD/.conda-signoff/bin/netgen" >> tutorial.yml echo "" >> tutorial.yml echo "# speed up tutorial runs & declutter log output" >> tutorial.yml @@ -157,12 +158,13 @@ jobs: export VLSI_TOP=RocketTile make buildfile make syn + # NOTE: commenting out for now bc this times out - need to debug why # openroad freezes during some write commands after detailed route # so need to stop the flow & run last step separately - make par HAMMER_EXTRA_ARGS="--stop_after_step extraction" - make redo-par HAMMER_EXTRA_ARGS="--start_before_step extraction" - make drc - make lvs + # make par HAMMER_EXTRA_ARGS="--stop_after_step extraction" + # make redo-par HAMMER_EXTRA_ARGS="--start_before_step extraction" + # make drc + # make lvs cleanup: diff --git a/.github/workflows/chipyard-run-tests-gpu.yml b/.github/workflows/chipyard-run-tests-gpu.yml new file mode 100644 index 00000000..d0983855 --- /dev/null +++ b/.github/workflows/chipyard-run-tests-gpu.yml @@ -0,0 +1,696 @@ +name: chipyard-ci-gpu + +on: + push: + branches: + - graphics + +defaults: + run: + shell: bash -leo pipefail {0} + +env: + 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: + name: cancel-prior-workflows + runs-on: self-hosted + steps: + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@0.11.0 + with: + access_token: ${{ github.token }} + + # Set up a set of boolean conditions to control which branches of the CI + # workflow will execute This is based off the conditional job execution + # example here: https://github.com/dorny/paths-filter#examples + change-filters: + name: filter-jobs-on-changes + runs-on: self-hosted + # Queried by downstream jobs to determine if they should run. + outputs: + needs-rtl: ${{ steps.filter.outputs.all_count != steps.filter.outputs.skip-rtl_count }} + + steps: + - uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - uses: dorny/paths-filter@v2 + id: filter + with: + filters: | + all: + - '**' + + # If any of the files changed match, do a doc build + docs: &docs-filter + - 'docs/**' + - '.readthedocs.yml' + + # If all files match to this filter, skip the main ci pipeline + skip-rtl: + - *docs-filter + - '**/*.md' + - '**/.gitignore' + - '.github/ISSUE_TEMPLATE/**' + + create-conda-env: + name: create-conda-env + needs: [change-filters, cancel-prior-workflows] + if: needs.change-filters.outputs.needs-rtl == 'true' + 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: 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: [create-conda-env] + runs-on: self-hosted + steps: + - name: Set up complete + run: echo Set up is complete! + + ########################################################################## + + prepare-chipyard-cores: + name: prepare-chipyard-cores + 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: Build RTL on self-hosted + uses: ./.github/actions/prepare-rtl + with: + group-key: "group-cores" + + prepare-chipyard-accels: + name: prepare-chipyard-accels + 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: Build RTL on self-hosted + uses: ./.github/actions/prepare-rtl + with: + group-key: "group-accels" + + prepare-chipyard-tracegen: + name: prepare-chipyard-tracegen + 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: Build RTL on self-hosted + uses: ./.github/actions/prepare-rtl + with: + group-key: "group-tracegen" + + prepare-chipyard-other: + name: prepare-chipyard-other + 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: Build RTL on self-hosted + uses: ./.github/actions/prepare-rtl + with: + group-key: "group-other" + + ########################################################################## + + chipyard-spike-gemmini-run-tests: + name: chipyard-spike-gemmini-run-tests + needs: prepare-chipyard-accels # technically doesn't depend on RTL but should be after the build.sh for Gemmini + 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: Build Gemmini FireMarshal + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + cd ${{ github.workspace }} && ./scripts/init-submodules-no-riscv-tools.sh --force + cd ${{ github.workspace }} && source ./scripts/fix-open-files.sh + git submodule update --init software/firemarshal && cd software/firemarshal && ./init-submodules.sh + cd ${{ github.workspace }}/generators/gemmini/software && ${{ github.workspace }}/software/firemarshal/marshal -v -d build gemmini-smoke.json + - name: Running Gemmini FireMarshal smoke test + run: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + cd ${{ github.workspace }}/generators/gemmini/software && ${{ github.workspace }}/software/firemarshal/marshal -v -d launch -s gemmini-smoke.json + + chipyard-rocket-run-tests: + name: chipyard-rocket-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-rocket" + + chipyard-prefetchers-run-tests: + name: chipyard-prefetchers-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-prefetchers" + + chipyard-hetero-run-tests: + name: chipyard-hetero-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-hetero" + + chipyard-boom-run-tests: + name: chipyard-boom-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-boom" + + chipyard-shuttle-run-tests: + name: chipyard-shuttle-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-shuttle" + + chipyard-cva6-run-tests: + name: chipyard-cva6-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-cva6" + + chipyard-ibex-run-tests: + name: chipyard-ibex-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-ibex" + + chipyard-sodor-run-tests: + name: chipyard-sodor-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-sodor" + + chipyard-spike-run-tests: + name: chipyard-spike-run-tests + needs: prepare-chipyard-cores + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-cores" + project-key: "chipyard-spike" + + chipyard-sha3-run-tests: + name: chipyard-sha3-run-tests + needs: prepare-chipyard-accels + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-accels" + project-key: "chipyard-sha3" + + chipyard-gemmini-run-tests: + name: chipyard-gemmini-run-tests + needs: prepare-chipyard-accels + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-accels" + project-key: "chipyard-gemmini" + + chipyard-manymmioaccels-run-tests: + name: chipyard-manymmioaccels-run-tests + needs: prepare-chipyard-accels + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-accels" + project-key: "chipyard-manymmioaccels" + + # chipyard-nvdla-run-tests: + # name: chipyard-nvdla-run-tests + # needs: prepare-chipyard-accels + # 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 + # uses: ./.github/actions/run-tests + # with: + # group-key: "group-accels" + # project-key: "chipyard-nvdla" + + chipyard-mempress-run-tests: + name: chipyard-mempress-run-tests + needs: prepare-chipyard-accels + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-accels" + project-key: "chipyard-mempress" + + + tracegen-boom-run-tests: + name: tracegen-boom-run-tests + needs: prepare-chipyard-tracegen + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-tracegen" + project-key: "tracegen-boom" + + tracegen-run-tests: + name: tracegen-run-tests + needs: prepare-chipyard-tracegen + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-tracegen" + project-key: "tracegen" + + icenet-run-tests: + name: icenet-run-tests + needs: prepare-chipyard-other + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-other" + project-key: "icenet" + + testchipip-run-tests: + name: testchipip-run-tests + needs: prepare-chipyard-other + 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 + uses: ./.github/actions/run-tests + with: + group-key: "group-other" + project-key: "testchipip" + + rocketchip-run-tests: + name: rocketchip-run-tests + needs: prepare-chipyard-other + 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 amba tests + uses: ./.github/actions/run-tests + with: + group-key: "group-other" + project-key: "rocketchip-amba" + # Below tests segfault with verilator, work fine in VCS + # - name: Run tlsimple tests + # uses: ./.github/actions/run-tests + # with: + # group-key: "group-other" + # project-key: "rocketchip-tlsimple" + # - name: Run tlwidth tests + # uses: ./.github/actions/run-tests + # with: + # group-key: "group-other" + # project-key: "rocketchip-tlwidth" + # - name: Run tlxbar tests + # uses: ./.github/actions/run-tests + # with: + # group-key: "group-other" + # project-key: "rocketchip-tlxbar" + + # Sentinel job to simplify how we specify which checks need to pass in branch + # protection and in Mergify + # + # When adding new top level jobs, please add them to `needs` below + all_tests_passed: + name: "all tests passed" + needs: [chipyard-rocket-run-tests, + chipyard-hetero-run-tests, + chipyard-boom-run-tests, + chipyard-shuttle-run-tests, + chipyard-cva6-run-tests, + chipyard-ibex-run-tests, + chipyard-sodor-run-tests, + chipyard-sha3-run-tests, + chipyard-gemmini-run-tests, + chipyard-manymmioaccels-run-tests, # chipyard-nvdla-run-tests, + chipyard-prefetchers-run-tests, + chipyard-mempress-run-tests, + tracegen-boom-run-tests, + tracegen-run-tests, + icenet-run-tests, + testchipip-run-tests, + rocketchip-run-tests, + ] + runs-on: self-hosted + steps: + - run: echo Success! diff --git a/.github/workflows/chipyard-run-tests.yml b/.github/workflows/chipyard-run-tests.yml index 07383e92..3e171fef 100644 --- a/.github/workflows/chipyard-run-tests.yml +++ b/.github/workflows/chipyard-run-tests.yml @@ -62,122 +62,6 @@ jobs: - '**/.gitignore' - '.github/ISSUE_TEMPLATE/**' - commit-on-master-check: - name: commit-on-master-check - needs: change-filters - if: needs.change-filters.outputs.needs-rtl == 'true' - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:3f9150 - 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@v3 - - name: Git workaround - uses: ./.github/actions/git-workaround - - name: Create conda env - uses: ./.github/actions/create-conda-env - - name: Check commits of each submodule - 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 - needs: change-filters - if: needs.change-filters.outputs.needs-rtl == 'true' - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:3f9150 - 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@v3 - - name: Git workaround - uses: ./.github/actions/git-workaround - - name: Create conda env - uses: ./.github/actions/create-conda-env - - name: Check that the tutorial-setup patches apply - 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:3f9150 - 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@v3 - - name: Git workaround - uses: ./.github/actions/git-workaround - - name: Create conda env - uses: ./.github/actions/create-conda-env - - name: Check that documentation builds with no warnings/errors - run: | - 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 - - build-extra-tests: - name: build-extra-tests - needs: [change-filters] - if: needs.change-filters.outputs.needs-rtl == 'true' - runs-on: ubuntu-latest - container: - image: ucbbar/chipyard-ci-image:3f9150 - 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@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 "extra-tests-cache-key=extra-tests-${{ github.sha }}" >> $GITHUB_OUTPUT - - 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: | - conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools - .github/scripts/build-extra-tests.sh - create-conda-env-jktgz: name: create-conda-env-jktgz needs: [change-filters, cancel-prior-workflows] @@ -225,7 +109,7 @@ jobs: # When adding new prep jobs, please add them to `needs` below setup-complete: name: setup-complete - needs: [create-conda-env-jktgz, create-conda-env-jktqos, build-extra-tests] + needs: [create-conda-env-jktgz, create-conda-env-jktqos] runs-on: ubuntu-latest steps: - name: Set up complete @@ -233,6 +117,110 @@ jobs: ########################################################################## + commit-on-master-check: + name: commit-on-master-check + needs: [setup-complete] + if: needs.change-filters.outputs.needs-rtl == 'true' + 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: Check commits of each submodule + 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 + needs: [setup-complete] + if: needs.change-filters.outputs.needs-rtl == 'true' + 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: Check that the tutorial-setup patches apply + 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: [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: Check that documentation builds with no warnings/errors + run: | + 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 + + build-extra-tests: + name: build-extra-tests + needs: [setup-complete] + if: needs.change-filters.outputs.needs-rtl == 'true' + 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: Generate keys + id: genkey + run: | + echo "extra-tests-cache-key=extra-tests-${{ github.sha }}" >> $GITHUB_OUTPUT + - 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: | + conda activate ${{ env.conda-env-name-no-time }}-$(date --date "${{ env.workflow-timestamp }}" +%Y%m%d)-riscv-tools + .github/scripts/build-extra-tests.sh + prepare-chipyard-cores: name: prepare-chipyard-cores needs: setup-complete diff --git a/.gitmodules b/.gitmodules index 18285bbb..962735df 100644 --- a/.gitmodules +++ b/.gitmodules @@ -64,9 +64,6 @@ [submodule "software/nvdla-workload"] path = software/nvdla-workload url = https://github.com/ucb-bar/nvdla-workload.git -[submodule "tools/dromajo/dromajo-src"] - path = tools/dromajo/dromajo-src - url = https://github.com/riscv-boom/dromajo.git [submodule "generators/riscv-sodor"] path = generators/riscv-sodor url = https://github.com/ucb-bar/riscv-sodor.git diff --git a/common.mk b/common.mk index 9d772077..c8c29b1f 100644 --- a/common.mk +++ b/common.mk @@ -68,7 +68,6 @@ include $(base_dir)/generators/cva6/cva6.mk include $(base_dir)/generators/ibex/ibex.mk include $(base_dir)/generators/tracegen/tracegen.mk include $(base_dir)/generators/nvdla/nvdla.mk -include $(base_dir)/tools/dromajo/dromajo.mk include $(base_dir)/tools/torture.mk ######################################################################################### diff --git a/conda-reqs/chipyard.yaml b/conda-reqs/chipyard.yaml index 8b39591b..81a3ea67 100644 --- a/conda-reqs/chipyard.yaml +++ b/conda-reqs/chipyard.yaml @@ -29,7 +29,6 @@ dependencies: - conda-gcc-specs - binutils - - dromajo # from ucb-bar channel - https://github.com/riscv-boom/dromajo - firtool==1.30.0 # from ucb-bar channel - https://github.com/ucb-bar/firtool-feedstock # misc @@ -103,7 +102,7 @@ dependencies: - sty - open_pdks.sky130a - pip: - - hammer-vlsi[asap7]==1.1.1 + - hammer-vlsi[asap7]==1.1.2 # doc requirements - sphinx diff --git a/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml b/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml index 189641de..2c3ad90e 100644 --- a/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml +++ b/conda-reqs/conda-lock-reqs/conda-requirements-esp-tools-linux-64.conda-lock.yml @@ -7,9 +7,9 @@ # 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 +# 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/abejgonza/cy/conda-reqs/chipyard.yaml -f /scratch/abejgonza/cy/conda-reqs/esp-tools.yaml -f /scratch/abejgonza/cy-check/conda-reqs/chipyard.yaml -f /scratch/abejgonza/cy-check/conda-reqs/esp-tools.yaml -f /scratch/abejgonza/new-cy/conda-reqs/chipyard.yaml -f /scratch/abejgonza/new-cy/conda-reqs/esp-tools.yaml --lockfile conda-requirements-esp-tools-linux-64.conda-lock.yml +# conda-lock -f /scratch/abejgonza/cy/conda-reqs/chipyard.yaml -f /scratch/abejgonza/cy/conda-reqs/esp-tools.yaml -f /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/chipyard.yaml -f /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/esp-tools.yaml --lockfile conda-requirements-esp-tools-linux-64.conda-lock.yml metadata: channels: - url: ucb-bar @@ -21,16 +21,14 @@ metadata: - url: nodefaults used_env_vars: [] content_hash: - linux-64: 967545a3d2b81a4de0339614d0f20b58c49406462f629da7d0dcc2451fb276aa + linux-64: f800845ae6c2481c1c2508f993d739a035bb8e0338f57b72b74ba660f677f51e platforms: - linux-64 sources: - /scratch/abejgonza/cy/conda-reqs/chipyard.yaml - /scratch/abejgonza/cy/conda-reqs/esp-tools.yaml - - /scratch/abejgonza/cy-check/conda-reqs/chipyard.yaml - - /scratch/abejgonza/cy-check/conda-reqs/esp-tools.yaml - - /scratch/abejgonza/new-cy/conda-reqs/chipyard.yaml - - /scratch/abejgonza/new-cy/conda-reqs/esp-tools.yaml + - /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/chipyard.yaml + - /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/esp-tools.yaml package: - category: main dependencies: {} @@ -68,25 +66,25 @@ package: - category: main dependencies: {} hash: - md5: f5c65075fc34438d5b456c7f3f5ab695 - sha256: 0cf1bb3d0bfc5519b60af2c360fa4888fb838e1476b1e0f65b9dbc48b45c7345 + md5: a73ecd2988327ad4c8f2c331482917f2 + sha256: 525b7b6b5135b952ec1808de84e5eca57c7c7ff144e29ef3e96ae4040ff432c1 manager: conda name: ca-certificates optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.5.7-hbcca054_0.conda - version: 2023.5.7 + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.7.22-hbcca054_0.conda + version: 2023.7.22 - category: main dependencies: {} hash: - md5: dbc503dcc77ca9b81ba956d21c3a2ea4 - sha256: cbe3c2391106204ad7ee10eafae72ea70744a32339846f637131be486099338e + md5: 8d22677b00e9ea665f757c70a98d2c6f + sha256: 327b40fc91521ad7ba7cc979e9ae40fafec145536b23c8f87a73cbb403eee1d8 manager: conda name: conda-standalone optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/conda-standalone-22.11.1-ha770c72_0.conda - version: 22.11.1 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-standalone-23.7.2-ha770c72_0.conda + version: 23.7.2 - category: main dependencies: {} hash: @@ -189,14 +187,14 @@ package: - category: main dependencies: {} hash: - md5: 0fde972b336190cd618fe158e7b8f295 - sha256: b72044c8657645a8a8f7a7e1b8f37b552080cd67df06ef1054e34831677ca66d + md5: 9da14a0b14cf61245d1a026b2f281405 + sha256: 423a10bbf512b1530c98c01c414ef97d551d0b0920d393ecc164dde17ce475f7 manager: conda name: open_pdks.sky130a optional: false platform: linux-64 - url: https://conda.anaconda.org/litex-hub/noarch/open_pdks.sky130a-1.0.423_0_g1604945-20230709_210322.tar.bz2 - version: 1.0.423_0_g1604945 + url: https://conda.anaconda.org/litex-hub/noarch/open_pdks.sky130a-1.0.440_0_g43e733e-20230724_080446.tar.bz2 + version: 1.0.440_0_g43e733e - category: main dependencies: {} hash: @@ -398,14 +396,14 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: 2975fe44881f8dce5c3759b53abf11d1 - sha256: 1c65245dc63a3f5a57040074c61baa2ae9dcb401753503712401867b02c6dcab + md5: ff6707b0adc04518a452a0340db13a07 + sha256: 5f5400cb5a27389f78422c9864fa948734989568a3fcfdde8bbee0f92077d056 manager: conda name: coreutils optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/coreutils-9.3-h0b41bf4_0.conda - version: '9.3' + url: https://conda.anaconda.org/conda-forge/linux-64/coreutils-9.4-hd590300_0.conda + version: '9.4' - category: main dependencies: libgcc-ng: '>=7.3.0' @@ -424,7 +422,6 @@ package: libstdcxx-ng: '>=12' hash: md5: 6bfb79319763a11c7423c9d0e0ee00b7 - sha256: null manager: conda name: dromajo optional: false @@ -573,14 +570,14 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: 61641e239f96eae2b8492dc7e755828c - sha256: fc57c0876695c5b4ab7173438580c1d7eaa7dccaf14cb6467ca9e0e97abe0cf0 + md5: e805cbec4c29feb22e019245f7e47b6c + sha256: 610a583c2c356fe7a864cd6e5b0fa73c25bdafcfbcada9d0d9f999392a412a51 manager: conda name: libbrotlicommon optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: libgcc-ng: '>=12' @@ -681,16 +678,16 @@ package: dependencies: libgcc-ng: '>=12' libgfortran-ng: '' - libgfortran5: '>=11.3.0' + libgfortran5: '>=12.3.0' hash: - md5: 9c5ea51ccb8ffae7d06c645869d24ce6 - sha256: 00aee12d04979d024c7f9cabccff5f5db2852c934397ec863a4abde3e09d5a79 + md5: 6e4ef6ca28655124dcde9bd500e44c32 + sha256: c8e080ae4d57506238023e98869928ae93564e6407ef5b0c4d3a337e8c2b7662 manager: conda name: libopenblas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.23-pthreads_h80387f5_0.conda - version: 0.3.23 + url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.24-pthreads_h413a1c8_0.conda + version: 0.3.24 - category: main dependencies: libgcc-ng: '>=12.3.0' @@ -767,14 +764,14 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: e5cb4fe581a18ca2185a016eb848fc00 - sha256: dc14922a6d5cf7fde55c0aa8f6661d6871c6a2e94369e7455a8a5927c3065080 + md5: d23c76f7e6dcd6243d1b6ef5e62d17d2 + sha256: 4bc4c946e9a532c066442714eeeeb1ffbd03cd89789c4047293f5e782b5fedd7 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 + url: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.46.0-hd590300_0.conda + version: 1.46.0 - category: main dependencies: libgcc-ng: '>=12' @@ -889,14 +886,14 @@ package: ca-certificates: '' libgcc-ng: '>=12' hash: - md5: 2e1d7b458ac8f1e3ca4e18b77add6277 - sha256: 407d655643389bdb49266842a816815c981ae98f3513a6a2059b908b3abb380a + md5: e5ac5227582d6c83ccf247288c0eb095 + sha256: b113fbac327c90cdc29c2fac0f2a2e5cc0d1918b2a5ffa7abd49b695b9b3c6e9 manager: conda name: openssl optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.1-hd590300_1.conda - version: 3.1.1 + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.2-hd590300_0.conda + version: 3.1.2 - category: main dependencies: libgcc-ng: '>=9.3.0' @@ -937,13 +934,13 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: 0bcb0ab6faa796a22b40de3a41e3b2de - sha256: 3f7e1e46d0967f8d08026116aa84fda07bc93d11d44dc3c03a29ad9d3ffc63cc + md5: 4cabe3858a856bff08d9a0992e413084 + sha256: 475f68cac8981ff2b10c56e53c2f376fc3c805fbc7ec30d22f870cd88f1479ba 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 + url: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-hd590300_2.conda version: 1.4.3 - category: main dependencies: @@ -1007,16 +1004,16 @@ package: version: 1.0.7 - category: main dependencies: - libgcc-ng: '>=9.3.0' + libgcc-ng: '>=12' hash: - md5: d6b0b50b49eccfe0be0373be628be0f3 - sha256: f15ce1dff16823888bcc2be1738aadcb36699be1e2dd2afa347794c7ec6c1587 + md5: b462a33c0be1421532f28bfe8f4a7514 + sha256: 5aa9b3682285bb2bf1a8adc064cb63aff76ef9178769740d855abb42b0d24236 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 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda + version: 1.1.1 - category: main dependencies: libgcc-ng: '>=12' @@ -1239,42 +1236,42 @@ package: version: '1.6' - category: main dependencies: - libopenblas: '>=0.3.23,<1.0a0' + libopenblas: '>=0.3.24,<1.0a0' hash: - md5: 57fb44770b1bc832fb2dbefa1bd502de - sha256: 5a9dfeb9ede4b7ac136ac8c0b589309f8aba5ce79d14ca64ad8bffb3876eb04b + md5: bcddbb497582ece559465b9cd11042e7 + sha256: 92142c12eb42172365c96c865be8f164a2653649b28b23bded0e658f8d5d0815 manager: conda name: libblas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-17_linux64_openblas.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-18_linux64_openblas.conda version: 3.9.0 - category: main dependencies: - libbrotlicommon: 1.0.9 h166bdaf_9 + libbrotlicommon: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: 081aa22f4581c08e4372b0b6c2f8478e - sha256: 564f301430c3c61bc5e149e74157ec181ed2a758befc89f7c38466d515a0f614 + md5: 43017394a280a42b48d11d2a6e169901 + sha256: 4eb58ab712e20d89b712a4a9e53a25ed94f63c36135d3f537ce2c51507c5abc9 manager: conda name: libbrotlidec optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: - libbrotlicommon: 1.0.9 h166bdaf_9 + libbrotlicommon: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: 1f0a03af852a9659ed2bf08f2f1704fd - sha256: d27bc2562ea3f3b2bfd777f074f1cac6bfa4a737233dad288cd87c4634a9bb3a + md5: 8e3e1cb77c4b355a3776bdfb74095bed + sha256: f15b3f3d6b33d46c49f5574e2427b76a3c713e27bf6c043b8f0fd84ffc57d51e manager: conda name: libbrotlienc optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: libgcc-ng: '>=7.5.0' @@ -1347,32 +1344,32 @@ package: version: 1.6.39 - category: main dependencies: - libabseil: '>=20230125.2,<20230126.0a0' + libabseil: '>=20230125.3,<20230126.0a0' libgcc-ng: '>=12' libstdcxx-ng: '>=12' libzlib: '>=1.2.13,<1.3.0a0' hash: - md5: c8da7f04073ed0fabcb60885a4c1a722 - sha256: b0255d3c46c71e184d0513566a770356abf2cede5e795c4944521c4f7b6a26d4 + md5: 78c10e8637a6f8d377f9989327d0267d + sha256: 2e2a9b612b8ef8b928f8efac835cd2914722bbab348fa643b99db2efd3b34185 manager: conda name: libprotobuf optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.23.3-hd1fb520_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.23.3-hd1fb520_1.conda version: 4.23.3 - category: main dependencies: libgcc-ng: '>=12' libzlib: '>=1.2.13,<1.3.0a0' hash: - md5: fdaae20a1cf7cd62130a0973190a31b7 - sha256: 72e958870f49174ebc0ddcd4129e9a9f48de815f20aa3b553f136b514f29bb3a + md5: 903fa782a9067d5934210df6d79220f6 + sha256: e715fab7ec6b3f3df2a5962ef372ff0f871d215fe819482dcd80357999513652 manager: conda name: libsqlite optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.42.0-h2797004_0.conda - version: 3.42.0 + url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.43.0-h2797004_0.conda + version: 3.43.0 - category: main dependencies: libgcc-ng: '>=12' @@ -1477,13 +1474,13 @@ package: libgcc-ng: '>=12' libnsl: '>=2.0.0,<2.1.0a0' hash: - md5: 53dc30c420516340641b00ec1571dd53 - sha256: 7e282c6b4106ccb00b3e5be9fc7f863b003d732ba51f76696ab23544a047a4fb + md5: 3e785bff761095eb7f8676f4694bd1b1 + sha256: 6e18c1488d191cb1a43a483f44fffa75668779a29927319b4adeb10da12ad06b manager: conda name: perl optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-3_hd590300_perl5.conda + url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-4_hd590300_perl5.conda version: 5.32.1 - category: main dependencies: @@ -1565,18 +1562,18 @@ package: version: '5.0' - category: main dependencies: - libgcc-ng: '>=9.3.0' - libuuid: '>=2.32.1,<3.0a0' - xorg-libice: 1.0.* + libgcc-ng: '>=12' + libuuid: '>=2.38.1,<3.0a0' + xorg-libice: '>=1.1.1,<2.0a0' hash: - md5: 9e856f78d5c80d5a78f61e72d1d473a3 - sha256: bdb350539521ddc1f30cc721b6604eced8ef72a0ec146e378bfe89e2be17ab35 + md5: 93ee23f12bc2e684548181256edd2cf6 + sha256: 089ad5f0453c604e18985480218a84b27009e9e6de9a0fa5f4a20b8778ede1f1 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 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda + version: 1.2.4 - category: main dependencies: libgcc-ng: '>=12' @@ -1596,14 +1593,14 @@ package: libstdcxx-ng: '>=12' libzlib: '>=1.2.13,<1.3.0a0' hash: - md5: 32ae18eb2a687912fc9e92a501c0a11b - sha256: a7f7e765dfb7af5265a38080e46f18cb07cfeecf81fe28fad23c4538e7d521c3 + md5: 04b88013080254850d6c01ed54810589 + sha256: 607cbeb1a533be98ba96cf5cdf0ddbb101c78019f1fda063261871dad6248609 manager: conda name: zstd optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.2-hfc55251_7.conda - version: 1.5.2 + url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda + version: 1.5.5 - category: main dependencies: libgcc-ng: '>=12' @@ -1623,13 +1620,13 @@ package: libgcc-ng: '>=12' readline: '>=8.2,<9.0a0' hash: - md5: 23b559a791d63ba4f51906763eb6bc53 - sha256: a7b2ea50068d86ac6e3749f76b118b15947d3f5ce48535eb5ab2ff7e22659c49 + md5: 91824b6e55d580d39050fa4ff8e26edd + sha256: 20aed66138e13e1906ea925ee9ad661749492fc57762d2b4b6d631635274be7d manager: conda name: bash optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/bash-5.2.15-hfbf034d_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/bash-5.2.15-h7f99829_1.conda version: 5.2.15 - category: main dependencies: @@ -1647,18 +1644,18 @@ package: version: 3.8.2 - category: main dependencies: - libbrotlidec: 1.0.9 h166bdaf_9 - libbrotlienc: 1.0.9 h166bdaf_9 + libbrotlidec: 1.1.0 hd590300_0 + libbrotlienc: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: d47dee1856d9cb955b8076eeff304a5b - sha256: 1c128f136a59ee2fa47d7fbd9b6fc8afa8460d340e4ae0e6f5419ebbd7539a10 + md5: aeafb07a327e3f14a796bf081ea07472 + sha256: f4ad40d9fddefbf0e920d508fe10b7da77faa3eed20cf09779ea5b78bbf04675 manager: conda name: brotli-bin optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: gcc_impl_linux-64: '>=12.3.0,<12.3.1.0a0' @@ -1716,13 +1713,13 @@ package: dependencies: gcc_impl_linux-64: 12.3.0.* hash: - md5: 8da41232e71a99e3ff1cc43350d0f0fb - sha256: 1cd58fecd56680f8e8eda18fa3d557231b7016cd3de50c73a0ce8b79303d37b9 + md5: cb7c7892032ecf45fcad76d67b6a3e9b + sha256: 19d68909b1016ce07f6d3056e32d23dbade083111ac2110ab1782c1309164234 manager: conda name: gcc optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.3.0-h8d2909c_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.3.0-h8d2909c_1.conda version: 12.3.0 - category: main dependencies: @@ -1793,15 +1790,15 @@ package: version: 3.5.2 - category: main dependencies: - libblas: 3.9.0 17_linux64_openblas + libblas: 3.9.0 18_linux64_openblas hash: - md5: 7ef0969b00fe3d6eef56a8151d3afb29 - sha256: 535bc0a6bc7641090b1bdd00a001bb6c4ac43bce2a11f238bc6676252f53eb3f + md5: 93dd9ab275ad888ed8113953769af78c + sha256: b5a3eac5a1e14ad7054a19249afeee6536ab8c9fb6d6ddc26e277f5c3b1acce4 manager: conda name: libcblas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-17_linux64_openblas.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-18_linux64_openblas.conda version: 3.9.0 - category: main dependencies: @@ -1823,15 +1820,15 @@ package: version: 2.76.4 - category: main dependencies: - libblas: 3.9.0 17_linux64_openblas + libblas: 3.9.0 18_linux64_openblas hash: - md5: a2103882c46492e26500fcb56c03de8b - sha256: 45128394d2f4d4caf949c1b02bff1cace3ef2e33762dbe8f0edec7701a16aaa9 + md5: a1244707531e5b143c420c70573c8ec5 + sha256: 7b59c9bf8399b34818d36c7bbd30cd447649fe4ff2136d3102bb67da0af67a3a manager: conda name: liblapack optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-17_linux64_openblas.conda + url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-18_linux64_openblas.conda version: 3.9.0 - category: main dependencies: @@ -1856,18 +1853,18 @@ package: libgcc-ng: '>=12' libjpeg-turbo: '>=2.1.5.1,<3.0a0' libstdcxx-ng: '>=12' - libwebp-base: '>=1.3.0,<2.0a0' + libwebp-base: '>=1.3.1,<2.0a0' libzlib: '>=1.2.13,<1.3.0a0' xz: '>=5.2.6,<6.0a0' zstd: '>=1.5.2,<1.6.0a0' hash: - md5: 8ad377fb60abab446a9f02c62b3c2190 - sha256: 920943ad46869938bd070ccd4c0117594e07538bc6b27b75462594c67b6f215d + md5: 5b09e13d732dda1a2bc9adc711164f4d + sha256: 631ccfdd460eda9661b6371aa459fe5ce174816365873deb5af955c9e10bf8c2 manager: conda name: libtiff optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.5.1-h8b53f26_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.5.1-h8b53f26_1.conda version: 4.5.1 - category: main dependencies: @@ -1908,24 +1905,24 @@ package: libffi: '>=3.4,<4.0a0' libgcc-ng: '>=12' libnsl: '>=2.0.0,<2.1.0a0' - libsqlite: '>=3.40.0,<4.0a0' - libuuid: '>=2.32.1,<3.0a0' + libsqlite: '>=3.43.0,<4.0a0' + libuuid: '>=2.38.1,<3.0a0' libzlib: '>=1.2.13,<1.3.0a0' - ncurses: '>=6.3,<7.0a0' - openssl: '>=3.0.7,<4.0a0' - readline: '>=8.1.2,<9.0a0' + ncurses: '>=6.4,<7.0a0' + openssl: '>=3.1.2,<4.0a0' + readline: '>=8.2,<9.0a0' tk: '>=8.6.12,<8.7.0a0' tzdata: '' xz: '>=5.2.6,<6.0a0' hash: - md5: 95c9b7c96a7fd7342e0c9d0a917b8f78 - sha256: 00bcb28a294aa78bf9d2a2ecaae8cb887188eae710f9197d823d36fb8a5d9767 + md5: 3ede353bc605068d9677e700b1847382 + sha256: 18db2220328abee8eb19f51c8df88bcfdf3a557b8181e7f5bda291deb067e40f manager: conda name: python optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.16-h2782a2a_0_cpython.conda - version: 3.9.16 + url: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.18-h0755675_0_cpython.conda + version: 3.9.18 - category: main dependencies: libgcc-ng: '>=12' @@ -1948,19 +1945,19 @@ package: - category: main dependencies: libgcc-ng: '>=12' - libsqlite: 3.42.0 h2797004_0 + libsqlite: 3.43.0 h2797004_0 libzlib: '>=1.2.13,<1.3.0a0' - ncurses: '>=6.3,<7.0a0' + ncurses: '>=6.4,<7.0a0' readline: '>=8.2,<9.0a0' hash: - md5: 1192f6ec654a5bc4ee1d64bdc4a3e5cc - sha256: 9cf59fa9891248e0e3a86a41041156cec367653d423e5d8a09b4c8ab98441a27 + md5: 713f9eac95d051abe14c3774376854fe + sha256: b3db86c1ae67bca79328a5d517330e1c95cf4e1f666e46ac9a90e64caf86449d manager: conda name: sqlite optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.42.0-h2c6b66d_0.conda - version: 3.42.0 + url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.43.0-h2c6b66d_0.conda + version: 3.43.0 - category: main dependencies: libgcc-ng: '>=9.4.0' @@ -2055,6 +2052,20 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/attrs-23.1.0-pyh71513ae_1.conda version: 23.1.0 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 38045de15fdcc13a5052f6387b877703 + sha256: 88a2c81d4933b3d076987f3415739f038245520de12264364f9e6d8b2cd57133 + manager: conda + name: bcrypt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-4.0.1-py39h9fdd4d6_0.conda + version: 4.0.1 - category: main dependencies: python: '>=3.7' @@ -2069,19 +2080,31 @@ package: version: 1.6.2 - category: main dependencies: - brotli-bin: 1.0.9 h166bdaf_9 - libbrotlidec: 1.0.9 h166bdaf_9 - libbrotlienc: 1.0.9 h166bdaf_9 + python: 2.7.*|>=3.7 + hash: + md5: 033eb25fffd222aceeca6d58cd953680 + sha256: 4ff828cceb8f55cb26d23b1a4c174d22c7cd92350221724bcaf2d6632e33fdee + manager: conda + name: boltons + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/boltons-23.0.0-pyhd8ed1ab_0.conda + version: 23.0.0 +- category: main + dependencies: + brotli-bin: 1.1.0 hd590300_0 + libbrotlidec: 1.1.0 hd590300_0 + libbrotlienc: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: 4601544b4982ba1861fa9b9c607b2c06 - sha256: 2357d205931912def55df0dc53573361156b27856f9bf359d464da162812ec1f + md5: 3db48055eab680e43a122e2c7494e7ae + sha256: 8ec33c09c428fcc5fd453e1bd349bb0000ca226716901d356bdf89cdd9b67ab2 manager: conda name: brotli optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: python: '>=3.6' @@ -2098,14 +2121,14 @@ package: dependencies: python: '>=3.7' hash: - md5: 5d1b71c942b8421285934dad1d891ebc - sha256: f839a6e04d94069f90dd85337ea9108f058dc76771bb469a413f32bb1ba0b256 + md5: 7f3dbc9179b4dde7da98dfb151d0ad22 + sha256: db66e31866ff4250c190788769e3a8a1709237c3e9c38d7143aae95ab75fcb31 manager: conda name: certifi optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/certifi-2023.5.7-pyhd8ed1ab_0.conda - version: 2023.5.7 + url: https://conda.anaconda.org/conda-forge/noarch/certifi-2023.7.22-pyhd8ed1ab_0.conda + version: 2023.7.22 - category: main dependencies: python: '>=3.6.1' @@ -2135,14 +2158,14 @@ package: __unix: '' python: '>=3.8' hash: - md5: fcae73fbdce7981fd500c626bb1ba6ab - sha256: 63f2b103488ba80b274f25bade66394fdd02344024fce45ab44e45861931c61d + md5: f3ad426304898027fc619827ff428eca + sha256: f0016cbab6ac4138a429e28dbcb904a90305b34b3fe41a9b89d697c90401caec manager: conda name: click optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/click-8.1.4-unix_pyh707e725_0.conda - version: 8.1.4 + url: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda + version: 8.1.7 - category: main dependencies: python: '>=3.6' @@ -2209,14 +2232,14 @@ package: dependencies: python: 2.7|>=3.6 hash: - md5: b65b4d50dbd2d50fa0aeac367ec9eed7 - sha256: 06eb7167d4d760b3b437a491e32ab5b3f89e2a18f023c117fe213b038d88538a + md5: 12d8aae6994f342618443a8f05c652a0 + sha256: 13c887cb4a29e1e853a118cfc0e42b72a7e1d1c50c66c0974885d37f0db30619 manager: conda name: distlib optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.6-pyhd8ed1ab_0.tar.bz2 - version: 0.3.6 + url: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.7-pyhd8ed1ab_0.conda + version: 0.3.7 - category: main dependencies: python: '>=3.9,<3.10.0a0' @@ -2241,7 +2264,6 @@ package: python_abi: 3.9.* *_cp39 hash: md5: ae197de48b202c65efd7a61135ac0ae5 - sha256: null manager: conda name: esp-tools optional: false @@ -2252,26 +2274,26 @@ package: dependencies: python: '>=3.7' hash: - md5: de4cb3384374e1411f0454edcf546cdb - sha256: 7b23ea0169fa6e7c3a0867d96d9eacd312759f83e5d83ad0fcc93e85379c16ae + md5: e6518222753f519e911e83136d2158d9 + sha256: c28f715e049fe0f09785660bcbffa175ffb438720e5bc5a60d56d4b08364b315 manager: conda name: exceptiongroup optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.1.2-pyhd8ed1ab_0.conda - version: 1.1.2 + url: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.1.3-pyhd8ed1ab_0.conda + version: 1.1.3 - category: main dependencies: python: '>=3.7' hash: - md5: 53522ec72e6adae42bd373ef58357230 - sha256: 1cbae9f05860f2e566e2977f14dfcd5494beb22c028b0a853ade4ec381d9de71 + md5: 3104cf0ab9fb9de393051bf92b10dbe9 + sha256: 47635be45aa6cbfd6af65c13b5f649aef84c484e1897aef625e4ad717663eebc manager: conda name: filelock optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.12.2-pyhd8ed1ab_0.conda - version: 3.12.2 + url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.12.3-pyhd8ed1ab_0.conda + version: 3.12.3 - category: main dependencies: expat: '>=2.5.0,<3.0a0' @@ -2294,26 +2316,26 @@ package: python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 hash: - md5: e5e0bc1285c83d925b42ad139adca58f - sha256: dbbc7345460425791271e6fc34c5ee2adcc66f18f637ff6a219880dc4375a720 + md5: 3d56db0f3499528244df173a6ede4fde + sha256: 4940d9bc55e998ab359ce91e0935c56da370b14d67715f1a5e0a13cf4c15af42 manager: conda name: frozenlist optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.3.3-py39hb9d737c_0.tar.bz2 - version: 1.3.3 + url: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.4.0-py39hd1e30aa_0.conda + version: 1.4.0 - category: main dependencies: python: '>=3.8' hash: - md5: 50ea2067ec92dfcc38b4f07992d7e235 - sha256: 0015e12d85b454ca8e09085e9e788a6156f4f1da1b270019cab2658381d60258 + md5: b4a3c7bb3f45d47e085764ff096fa259 + sha256: 7c953b38e7d06be62a80d85dc72f899a90814e21079cb1189aa08ca6277f94ee manager: conda name: fsspec optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2023.6.0-pyh1a96a4e_0.conda - version: 2023.6.0 + url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2023.9.0-pyh1a96a4e_0.conda + version: 2023.9.0 - category: main dependencies: libgcc-ng: '>=12' @@ -2367,13 +2389,13 @@ package: gcc: 12.3.0.* gxx_impl_linux-64: 12.3.0.* hash: - md5: c6f5830abf6e0849e32eeaa8feb6af2e - sha256: e6734338ae19b90956532cbab5792e57ec0885fd1e36ab95fe0d1f6e5b5959e4 + md5: 52061516ce5d0aebb4282f72ef2347e5 + sha256: 99157a7719683e8a18d31f73a04b7b8e3121181840c9c8066b5c0438d7f49e4f manager: conda name: gxx optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.3.0-h8d2909c_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.3.0-h8d2909c_1.conda version: 12.3.0 - category: main dependencies: @@ -2491,14 +2513,28 @@ package: python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 hash: - md5: 41679a052a8ce841c74df1ebc802e411 - sha256: eb28254cc7029e702d0059536d986b010221de62f9c8588a5a83e95a00b4e74d + md5: 3822b0ae733e022c10469c0e46bdddc4 + sha256: 760ed6e19a1f5773c7864d1442012f32d058922e7984bf5bca04cdea7d8cb065 manager: conda name: kiwisolver optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.4-py39hf939315_1.tar.bz2 - version: 1.4.4 + url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py39h7633fee_0.conda + version: 1.4.5 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: a0238daacd28c07735c6bc75aedf2014 + sha256: bbae929b429f39a10432e86d87bf02864e6640287245de71edeac6b3c29b0ff7 + manager: conda + name: lazy-object-proxy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lazy-object-proxy-1.9.0-py39h72bdee0_0.conda + version: 1.9.0 - category: main dependencies: libgcc-ng: '>=12' @@ -2644,16 +2680,28 @@ package: version: 2.1.3 - category: main dependencies: - python: '>=3.6' + python: '>=3.8' hash: - md5: 1698a717f83cfecf644a877c174c84bd - sha256: 3ee8cbbe4004c56b695a5e734b7dc4d59dacbfefc193ee42c82238b1cf888e08 + md5: 8549fafed0351bbfaa1ddaa15fdf9b4e + sha256: 07ce65497dec537e490992758934ddbc4fb5ed9285b41387a7cca966f1a98a0f manager: conda name: more-itertools optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/more-itertools-9.1.0-pyhd8ed1ab_0.conda - version: 9.1.0 + url: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.1.0-pyhd8ed1ab_0.conda + version: 10.1.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: dbf6e2d89137da32fa6670f3bffc024e + sha256: a4f025c712ec1502a55c471b56a640eaeebfce38dd497d5a1a33729014cac47a + manager: conda + name: mpmath + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/mpmath-1.3.0-pyhd8ed1ab_0.conda + version: 1.3.0 - category: main dependencies: libgcc-ng: '>=12' @@ -2711,14 +2759,14 @@ package: dependencies: python: '>=3.8' hash: - md5: bb45ff9deddb045331fd039949f39650 - sha256: a8e3531fdb6f9acfde885dd94c8639c020013215dab98ff4ed82db7aa745277a + md5: 254f787d5068bc89f578bf63893ce8b4 + sha256: 6b955c8530985fa727ad3323653a54af44ecf453cfdb1b549b3edff609bd3728 manager: conda name: networkx optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/networkx-2.8.8-pyhd8ed1ab_0.tar.bz2 - version: 2.8.8 + url: https://conda.anaconda.org/conda-forge/noarch/networkx-3.1-pyhd8ed1ab_0.conda + version: '3.1' - category: main dependencies: libblas: '>=3.9.0,<4.0a0' @@ -2729,14 +2777,14 @@ package: python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 hash: - md5: d3e2ec4b400a6ad93057a29b7e3cb701 - sha256: 282da8ac8a70cf6fbc7a28fd5dcd12a09957bcb14ab3b9956ee67c7ed011d583 + md5: f1c358d06344bd7f9a293f9af4b9b8fc + sha256: 469e5370d7b6c66284e42e5b700ace2793bbb942d3084643082109ffe7590c32 manager: conda name: numpy optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.25.1-py39h6183b62_0.conda - version: 1.25.1 + url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.25.2-py39h6183b62_0.conda + version: 1.25.2 - category: main dependencies: libgcc-ng: '>=12' @@ -2777,6 +2825,18 @@ package: 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.7' + hash: + md5: f3e7301de38fd621c902faf8087bc564 + sha256: 7258b7f6a8e5fcd5e5a22e0a85b89e03e9cf5049d1591bc98420fd080007f25d + manager: conda + name: pathable + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pathable-0.4.3-pyhd8ed1ab_0.tar.bz2 + version: 0.4.3 - category: main dependencies: python: '>=3.6' @@ -2789,18 +2849,30 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda version: 1.9.6 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 89e3c7cdde7d3aaa2aee933b604dd07f + sha256: 7d055ffc8a02bf781a89d069db3454b453605cdaff300b82cedcc7133283e47e + manager: conda + name: pkgutil-resolve-name + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_0.tar.bz2 + version: 1.3.10 - category: main dependencies: python: '>=3.8' hash: - md5: 7263924c642d22e311d9e59b839f1b33 - sha256: ff1f70e0bd50693be7e2bad0efb2539f5dcc5ec4d638e787e703f28098e72de4 + md5: 2390bd10bed1f3fdc7a537fb5a447d8d + sha256: 7bf2ad9d747e71f1e93d0863c2c8061dd0f2fe1e582f28d292abfb40264a2eb5 manager: conda name: pluggy optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.2.0-pyhd8ed1ab_0.conda - version: 1.2.0 + url: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.3.0-pyhd8ed1ab_0.conda + version: 1.3.0 - category: main dependencies: python: '>=3.9,<3.10.0a0' @@ -2870,26 +2942,26 @@ package: dependencies: python: '>=3.7' hash: - md5: d316679235612869eba305aa7d41d9bf - sha256: 1bddeb54863c77ed5613b535a3e06a3a16b55786301a5e28c9bf011656bda686 + md5: 40e5cb18165466773619e5c963f00a7b + sha256: 3f0f0fadc6084960ec8cc00a32a03529c562ffea3b527eb73b1653183daad389 manager: conda name: pygments optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.15.1-pyhd8ed1ab_0.conda - version: 2.15.1 + url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.16.1-pyhd8ed1ab_0.conda + version: 2.16.1 - category: main dependencies: python: '>=3.6' hash: - md5: 99e28be5a278e2319834d7dc99e7bfdd - sha256: f3a64306fa0f405f10f4108d7ff42043d6fd393f940f9e98e395a3756687fc98 + md5: 912c0194f898fdb783021fd25f913c31 + sha256: 88ac94c42ade15113397e30d1831dd341399b5262fb5330b9240f915c33cd232 manager: conda name: pyjwt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.7.0-pyhd8ed1ab_0.conda - version: 2.7.0 + url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.8.0-pyhd8ed1ab_0.conda + version: 2.8.0 - category: main dependencies: python: '>=3.3' @@ -2906,14 +2978,14 @@ package: dependencies: python: '>=3.6' hash: - md5: d3ed087d1f7f8f5590e8e87b57a8ce64 - sha256: 18e3bd52c64f23bbc7c200fd2fc4152dd29423936dc43e8f129cb43f1af0136c + md5: 176f7d56f0cfe9008bdf1bccd7de02fb + sha256: 4a1332d634b6c2501a973655d68f08c9c42c0bd509c349239127b10572b8354b manager: conda name: pyparsing optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.0-pyhd8ed1ab_0.conda - version: 3.1.0 + url: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.1-pyhd8ed1ab_0.conda + version: 3.1.1 - category: main dependencies: libgcc-ng: '>=12' @@ -2957,14 +3029,14 @@ package: dependencies: python: '>=3.6' hash: - md5: d3076b483092a435832603243567bc31 - sha256: e4999484f21763ca4b8f92c95b22cb6d1edc1b61d0a2bb073ee2bd11f39401b9 + md5: c93346b446cd08c169d843ae5fc0da97 + sha256: 6b680e63d69aaf087cd43ca765a23838723ef59b0a328799e6363eb13f52c49e manager: conda name: pytz optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pytz-2023.3-pyhd8ed1ab_0.conda - version: '2023.3' + url: https://conda.anaconda.org/conda-forge/noarch/pytz-2023.3.post1-pyhd8ed1ab_0.conda + version: 2023.3.post1 - category: main dependencies: __unix: '' @@ -2985,14 +3057,28 @@ package: python_abi: 3.9.* *_cp39 yaml: '>=0.2.5,<0.3.0a0' hash: - md5: 36a51b5f1856dc5a8d781220a4bc54ba - sha256: da790c97de2d40421caa5e7119ab4674302603b56f23849660392ab571c52aaa + md5: ccecb3196b3678e9b5fc8441d681c203 + sha256: d8cd6c7646977641e8c0326a5cb13c2e3784b03e07b5a3748846c0dbb3c8d208 manager: conda name: pyyaml optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-5.4.1-py39hb9d737c_4.tar.bz2 - version: 5.4.1 + url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py39hd1e30aa_0.conda + version: 6.0.1 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + hash: + md5: 4c03c01af9e4b4a100f450210ce938a3 + sha256: 8bad81d66b1dce677b1e9bb5c95070c665a6643643b8019c363f5f7948a059a9 + manager: conda + name: regex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/regex-2023.8.8-py39hd1e30aa_0.conda + version: 2023.8.8 - category: main dependencies: libgcc-ng: '>=12' @@ -3026,14 +3112,14 @@ package: dependencies: python: '>=3.7' hash: - md5: 5a7739d0f57ee64133c9d32e6507c46d - sha256: 083a0913f5b56644051f31ac40b4eeea762a88c00aa12437817191b85a753cec + md5: 4fe12573bf499ff85a0a364e00cc5c53 + sha256: dc5a777597e05ceddefc87d2f96389b7ae0afb097e558307af83a453db3e3887 manager: conda name: setuptools optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/setuptools-68.0.0-pyhd8ed1ab_0.conda - version: 68.0.0 + url: https://conda.anaconda.org/conda-forge/noarch/setuptools-68.1.2-pyhd8ed1ab_0.conda + version: 68.1.2 - category: main dependencies: python: '' @@ -3074,74 +3160,14 @@ package: dependencies: python: '>=3.5' hash: - md5: 5a31a7d564f551d0e6dff52fd8cb5b16 - sha256: 802810d8321d55e5666806d565e72949eabf77ad510fe2758ce1da2441675ef1 - manager: conda - name: sphinxcontrib-applehelp - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-1.0.4-pyhd8ed1ab_0.conda - version: 1.0.4 -- 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: 6c8c4d6eb2325e59290ac6dbbeacd5f0 - sha256: aeff20be994e6f9520a91fc177a33cb3e4d0911cdf8d27e575d001f00afa33fd - manager: conda - name: sphinxcontrib-htmlhelp - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.0.1-pyhd8ed1ab_0.conda - version: 2.0.1 -- category: main - dependencies: - python: '>=3.5' - hash: - md5: 67cd9d9c0382d37479b4d306c369a2d4 - sha256: a42415fc789e9f6ae2e18f07ac143d2e9ce73a35a55ecf1dd1b3d055dd1e6dbe + md5: da1d979339e2714c30a8e806a33ec087 + sha256: d4337d83b8edba688547766fc80f1ac86d6ec86ceeeda93f376acc04079c5ce2 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 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-pyhd8ed1ab_0.conda 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: '>=3.6' @@ -3170,14 +3196,14 @@ package: dependencies: python: '>=3.7' hash: - md5: 75838e8556166263a82038b51d01d5f1 - sha256: 3002e87338a98ba501fbf53981f8267b2def2548265a3622d403d06747872ccd + md5: 62f5b331c53d73e2f6c4c130b53518a0 + sha256: dc4abf58ca42f29e12b8c0f8aadedfca49cc1e97dab025d15cf000b1787df773 manager: conda name: tomlkit optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.11.8-pyha770c72_0.conda - version: 0.11.8 + url: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.12.1-pyha770c72_0.conda + version: 0.12.1 - category: main dependencies: python: '>=3.5' @@ -3196,50 +3222,50 @@ package: python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 hash: - md5: da334eecb1ea2248e28294c49e6f6d89 - sha256: b824e8b396eedbb6e0dfe6311b37d43f62a5aaa8eeb6d2015e9e565c86f78874 + md5: ee7f18d58a96b04fdbd2e55f7694ae0d + sha256: eb7b3bc5e515acc138411b466ca64cee56c5b6123ab13ee1cfc21f0f66713e5d manager: conda name: tornado optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.3.2-py39hd1e30aa_0.conda - version: 6.3.2 + url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.3.3-py39hd1e30aa_0.conda + version: 6.3.3 - category: main dependencies: python: '>=3.6' hash: - md5: 2010a97e7298197221abc6295790ff62 - sha256: 5fb56cd0652e7cffc1141c66b09644f1dde588ef6dddcb47849a62d7b0186846 + md5: 1b133b01430fc4d03efba737aae0054f + sha256: 272505b7f8acc7dad0a32efc17e7241c18938f98c0055c5d5fb2530a32e34fe1 manager: conda name: types-pytz optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2023.3.0.0-pyhd8ed1ab_0.conda - version: 2023.3.0.0 + url: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2023.3.0.1-pyhd8ed1ab_0.conda + version: 2023.3.0.1 - category: main dependencies: python: '>=3.6' hash: - md5: 21ab63073cea60bc584a889ae8d765d8 - sha256: ee1fa0049b7c30507beb33b796df3bcd06f54b8f536cc1f69d5bec7088c200f4 + md5: 22776dce28e8ba933e5cbcf20b62c583 + sha256: 61121b7ac3c6caf322ad2789ffe0887ae9e6c3ab28c9e911871afe5977828af7 manager: conda name: types-pyyaml optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.10-pyhd8ed1ab_0.conda - version: 6.0.12.10 + url: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.11-pyhd8ed1ab_0.conda + version: 6.0.12.11 - category: main dependencies: python: '>=3.6' hash: - md5: 9a73576dfe2f764c431347b9dc35a3fc - sha256: 3e3ce73fc2575ab94a41232c8241ad20b564dbb6d0f832b9aa5df65799fc1361 + md5: 06118f39abab2ab953276a50b2775509 + sha256: 43bcd4e976c9b95a0a3d99d500e7ba294f70f713d9808511296a3f450b2f7898 manager: conda name: types-urllib3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-urllib3-1.26.25.13-pyhd8ed1ab_0.conda - version: 1.26.25.13 + url: https://conda.anaconda.org/conda-forge/noarch/types-urllib3-1.26.25.14-pyhd8ed1ab_0.conda + version: 1.26.25.14 - category: main dependencies: python: '>=3.7' @@ -3299,28 +3325,28 @@ package: version: 0.5.1 - category: main dependencies: - python: '>=3.7' + python: '>=3.8' hash: - md5: c34d9325a609381a0b0e8a5b4f325147 - sha256: c71cb65ac49692adb33735f3114b99a96c0c5140db1d56cf4ccef4fe92ea9a4c + md5: 23f16ffe9711ac76b391c60ce4ea4656 + sha256: 93aecd1b6b0fcb0ffbf96e367e56713824e648f6c02c9daaaedfef5f8e03caa9 manager: conda name: websocket-client optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.6.1-pyhd8ed1ab_0.conda - version: 1.6.1 + url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.6.2-pyhd8ed1ab_0.conda + version: 1.6.2 - category: main dependencies: python: '>=3.7' hash: - md5: 49bb0d9e60ce1db25e151780331bb5f3 - sha256: 79b4d29b0c004014a2abd5fc2c9fcd35cc6256222b960c2a317a27c4b0d8884d + md5: 1ccd092478b3e0ee10d7a891adbf8a4f + sha256: 21bcec5373b04d739ab65252b5532b04a08d229865ebb24b5b94902d6d0a77b0 manager: conda name: wheel optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.40.0-pyhd8ed1ab_0.conda - version: 0.40.0 + url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.41.2-pyhd8ed1ab_0.conda + version: 0.41.2 - category: main dependencies: libgcc-ng: '>=12' @@ -3393,31 +3419,31 @@ package: dependencies: libgcc-ng: '>=12' xorg-kbproto: '' - xorg-libice: 1.0.* - xorg-libsm: 1.2.* - xorg-libx11: '>=1.8.4,<2.0a0' + xorg-libice: '>=1.1.1,<2.0a0' + xorg-libsm: '>=1.2.4,<2.0a0' + xorg-libx11: '>=1.8.6,<2.0a0' xorg-xproto: '' hash: - md5: ab2044e8d87dda9f74652e8e084a5569 - sha256: fbceccea26f81d557ac93ca08afa95b3638f713c43deb468488013218be11fed + md5: ae92aab42726eb29d16488924f7312cb + sha256: e7648d1efe2e858c4bc63ccf4a637c841dc971b37ded85a01be97a5e240fecfa manager: conda name: xorg-libxt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxt-1.3.0-hd590300_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxt-1.3.0-hd590300_1.conda version: 1.3.0 - category: main dependencies: python: '>=3.8' hash: - md5: 0ea0b5003b96e53769a5f70175ff5264 - sha256: 14b78fc742efdf46e3ecff0a4b89cbdf780b8cf22c822024cc642e4284339ea4 + md5: 2da0451b54c4563c32490cb1b7cf68a1 + sha256: 16d72127e150a3d5cbdc0b82c4069ef5be135c64bc99e71e7928507910669b41 manager: conda name: zipp optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.16.0-pyhd8ed1ab_1.conda - version: 3.16.0 + url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.16.2-pyhd8ed1ab_0.conda + version: 3.16.2 - category: main dependencies: frozenlist: '>=1.1.0' @@ -3505,16 +3531,16 @@ package: - category: main dependencies: click: '' - python: '>=3.6' + python: '>=2.7' hash: - md5: 72a46ffc25701c173932fd55cf0965d3 - sha256: 7384b6c194f9822d7cc2c9d82409b2fd571fad96f95e6e27c9098f63772d36fd + md5: 7c2b6931f9b3548ed78478332095c3e9 + sha256: b36e35d735ddd29d7c592eb3de4b3979e13a9f76f1b4bc939f2cb4402758d6d0 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 + url: https://conda.anaconda.org/conda-forge/noarch/click-default-group-1.2.4-pyhd8ed1ab_0.conda + version: 1.2.4 - category: main dependencies: pastel: '>=0.2.0,<0.3.0' @@ -3540,7 +3566,7 @@ package: libuv: '' libzlib: '>=1.2.13,<1.3.0a0' ncurses: '>=6.3,<7.0a0' - rhash: '' + rhash: <=1.4.3 xz: '>=5.2.6,<6.0a0' zlib: '' zstd: '>=1.5.2,<1.6.0a0' @@ -3631,14 +3657,14 @@ package: python_abi: 3.9.* *_cp39 unicodedata2: '>=14.0.0' hash: - md5: 5f7c468bf9d9551a80187db7e809ef1f - sha256: 9d4a61bf76070a197ec565943a1811b53260ec3a468a14671bbf8b9c36a1232f + md5: de06dc7edaddbd3b60c050f3a95d6fe6 + sha256: 44485a521b03d351942b2080c861cdfab0015ab177aace442e6cbaeaeb08d561 manager: conda name: fonttools optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.40.0-py39hd1e30aa_0.conda - version: 4.40.0 + url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.42.1-py39hd1e30aa_0.conda + version: 4.42.1 - category: main dependencies: python: '>=3.4' @@ -3694,17 +3720,17 @@ package: version: 6.8.0 - category: main dependencies: - python: '>=3.8' + python: '>=3.7' zipp: '>=3.1.0' hash: - md5: a08b6be5bf18b9d2a927d3457750f82e - sha256: 94c1b2831c0f908ae56212d9aeb9c9173051d307682b4fedfd88fef774b0b8f7 + md5: 748955a096313b51b314263402b83250 + sha256: f6a7af42e185bb188e6959c4af909cebacd291e2e1ceea6b2f246bb4da93eb7e manager: conda name: importlib_resources optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.0.0-pyhd8ed1ab_1.conda - version: 6.0.0 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-5.13.0-pyhd8ed1ab_0.conda + version: 5.13.0 - category: main dependencies: more-itertools: '' @@ -3806,14 +3832,14 @@ package: tomli: '>=1.1.0' typing_extensions: '>=3.10' hash: - md5: 51533b4b6e7faadfffe35dd60bb47767 - sha256: 6139824c025225888eed5cf7032081c87bd720c32ae8e9e80680179a1bd5a74c + md5: 6d56b56423312707fb857b483871de1e + sha256: 901aaa7448c938d7506fc6ff5723d0a1bb077ccb4f5cfbb8019b42877da22dc2 manager: conda name: mypy optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.4.1-py39hd1e30aa_0.conda - version: 1.4.1 + url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.5.1-py39hd1e30aa_0.conda + version: 1.5.1 - category: main dependencies: python: 2.7|>=3.7 @@ -3856,14 +3882,14 @@ package: setuptools: '' wheel: '' hash: - md5: 7288da0d36821349cf1126e8670292df - sha256: 4fe1f47f6eac5b2635a622b6f985640bf835843c1d8d7ccbbae0f7d27cadec92 + md5: e2783aa3f9235225eec92f9081c5b801 + sha256: 9e401b171856e12f6aa32ae5cc1ae1d3708aa7d705ddf359ee7dd0dffd73c2b5 manager: conda name: pip optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pip-23.1.2-pyhd8ed1ab_0.conda - version: 23.1.2 + url: https://conda.anaconda.org/conda-forge/noarch/pip-23.2.1-pyhd8ed1ab_0.conda + version: 23.2.1 - category: main dependencies: colorama: '' @@ -3874,14 +3900,14 @@ package: python: '>=3.7' tomli: '>=1.0.0' hash: - md5: 3cfe9b9e958e7238a386933c75d190db - sha256: 52b2eb4e8d0380d92d45643d0c9706725e691ce8404dab4c2db4aaf58e48a23c + md5: 003aaefc025d902eec9ed8118e76ace7 + sha256: 713f1fd92a4a3d097646f0ca59b0531ad86e74d8a3184667380c99926f540fa6 manager: conda name: pytest optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pytest-7.4.0-pyhd8ed1ab_0.conda - version: 7.4.0 + url: https://conda.anaconda.org/conda-forge/noarch/pytest-7.4.1-pyhd8ed1ab_0.conda + version: 7.4.1 - category: main dependencies: python: '>=3.6' @@ -3914,6 +3940,19 @@ package: 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.5' + six: '' + hash: + md5: fed45fc5ea0813240707998abe49f520 + sha256: 7c7052b51de0b5c558f890bb11f8b5edbb9934a653d76be086b1182b9f54185d + manager: conda + name: rfc3339-validator + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 + version: 0.1.4 - category: main dependencies: pyasn1: '>=0.1.3' @@ -3943,32 +3982,47 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.32-py39hd1e30aa_0.conda version: 0.17.32 +- category: main + dependencies: + __unix: '' + gmpy2: '>=2.0.8' + mpmath: '>=0.19' + python: '>=3.8' + hash: + md5: 2f7d6347d7acf6edf1ac7f2189f44c8f + sha256: 0025dd4e6411423903bf478d1b9fbff0cbbbe546f51c9375dfd6729ef2e1a1ac + manager: conda + name: sympy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sympy-1.12-pypyh9d50eac_103.conda + version: '1.12' - category: main dependencies: colorama: '' python: '>=3.7' hash: - md5: ed792aff3acb977d09c7013358097f83 - sha256: b35f185a678109940d34f68ac5781c3cbda9b118b8d9886b8f68ab5be6afd4fc + md5: 03c97908b976498dcae97eb4e4f3149c + sha256: b61c9222af05e8c5ff27e4a4d2eb81870c21ffd7478346be3ef644b7a3759cc4 manager: conda name: tqdm optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.65.0-pyhd8ed1ab_1.conda - version: 4.65.0 + url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.66.1-pyhd8ed1ab_0.conda + version: 4.66.1 - category: main dependencies: python: '>=3.6' types-urllib3: <1.27 hash: - md5: d4edae6cf0af5332243c2d995f5e8745 - sha256: c417ed8470ad4f5b7189ba3496ce5b5973d7767e64723b5c3d4c7d436d64ced9 + md5: 700fb06cd011d594305e3b487d5a96a2 + sha256: 3be4637a6037786dd6a8b0aed6374c8455fd79987770bc755ce12713aae916a4 manager: conda name: types-requests optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-requests-2.31.0.1-pyhd8ed1ab_0.conda - version: 2.31.0.1 + url: https://conda.anaconda.org/conda-forge/noarch/types-requests-2.31.0.2-pyhd8ed1ab_0.conda + version: 2.31.0.2 - category: main dependencies: typing_extensions: 4.7.1 pyha770c72_0 @@ -3986,34 +4040,34 @@ package: gettext: '>=0.21.1,<1.0a0' libgcc-ng: '>=12' libstdcxx-ng: '>=12' - ncurses: '>=6.3,<7.0a0' + ncurses: '>=6.4,<7.0a0' perl: '>=5.32.1,<5.33.0a0 *_perl5' python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 - xorg-libx11: '>=1.8.4,<2.0a0' - xorg-libxt: '' + xorg-libx11: '>=1.8.6,<2.0a0' + xorg-libxt: '>=1.3.0,<2.0a0' hash: - md5: da1ade321e40a910685104d9120c8d5c - sha256: a8d77a8e2f416a94f74a4acfe3d92b7f6685a4aec6f5e700dbd209925fe859e7 + md5: a0f36da7e54b1f43efb0cd0340199b7b + sha256: 5686d022d58ad6d1941bb0d4f7d02ee5b47f655072dfed191b2778ede51c00ae manager: conda name: vim optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/vim-9.0.1425-py39pl5321hb4338c2_0.conda - version: 9.0.1425 + url: https://conda.anaconda.org/conda-forge/linux-64/vim-9.0.1435-py39pl5321hb4338c2_0.conda + version: 9.0.1435 - category: main dependencies: markupsafe: '>=2.1.1' python: '>=3.8' hash: - md5: 55fbbb3e67185820ee2007395bfe0073 - sha256: 28515f7ddb8a20f1436b9ac3a6ba2aa9be337995e4ee63c72d0f5d0efd6a2062 + md5: e41528da0d8b8bbf4acc7255192132e3 + sha256: b426b0fcb6137ef858746ef86bddee7f0c881a9c84b67ed40b2feb1b5b47f5b6 manager: conda name: werkzeug optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/werkzeug-2.3.6-pyhd8ed1ab_0.conda - version: 2.3.6 + url: https://conda.anaconda.org/conda-forge/noarch/werkzeug-2.3.7-pyhd8ed1ab_0.conda + version: 2.3.7 - category: main dependencies: libgcc-ng: '>=9.3.0' @@ -4061,34 +4115,17 @@ package: version: 0.5.0 - category: main dependencies: - python: '>=3.6' + python: '>=3.7' typing-extensions: '>=3.6.5' hash: - md5: 25e79f9a1133556671becbd65a170c78 - sha256: a08b78e6fadee1ffac0f255363d2a08a0c589c7403fd2a71c1c0b6aafd5e0737 + md5: 3ce482ec3066e6d809dbbb1d1679f215 + sha256: bd8b698e7f037a9c6107216646f1191f4f7a7fc6da6c34d1a6d4c211bcca8979 manager: conda name: async-timeout optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/async-timeout-4.0.2-pyhd8ed1ab_0.tar.bz2 - version: 4.0.2 -- category: main - dependencies: - cffi: '>=1.1' - libgcc-ng: '>=12' - pip: '' - python: '>=3.9,<3.10.0a0' - python_abi: 3.9.* *_cp39 - six: '>=1.4.1' - hash: - md5: 93f72f06a4b00ce36d16007c01e6d1aa - sha256: 8afe6676576da6e661ab7c0f2dfa52acc9e6f9bfc5ad2f1d57bf5131ddbdd975 - manager: conda - name: bcrypt - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-3.2.2-py39hb9d737c_1.tar.bz2 - version: 3.2.2 + url: https://conda.anaconda.org/conda-forge/noarch/async-timeout-4.0.3-pyhd8ed1ab_0.conda + version: 4.0.3 - category: main dependencies: cffi: '>=1.0.0' @@ -4158,16 +4195,16 @@ package: itsdangerous: '>=2.1.2' jinja2: '>=3.1.2' python: '>=3.8' - werkzeug: '>=2.3.3' + werkzeug: '>=2.3.7' hash: - md5: 816d75d4c0f2e41b5765d17498c57a2e - sha256: f93246be286f2d0f93e85c4f08f9ce48f3eed875a79225e2ea119e70c0237421 + md5: 9b0d29067484a8dfacfae85b8fba81bc + sha256: 4f84ffdc5471236e8225db86c7508426b46aa2c3802d58ca40b3c3e174533b39 manager: conda name: flask optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/flask-2.3.2-pyhd8ed1ab_0.conda - version: 2.3.2 + url: https://conda.anaconda.org/conda-forge/noarch/flask-2.3.3-pyhd8ed1ab_0.conda + version: 2.3.3 - category: main dependencies: curl: '' @@ -4176,32 +4213,32 @@ package: libgcc-ng: '>=12' libiconv: '>=1.17,<2.0a0' libzlib: '>=1.2.13,<1.3.0a0' - openssl: '>=3.1.1,<4.0a0' + openssl: '>=3.1.2,<4.0a0' pcre2: '>=10.40,<10.41.0a0' perl: 5.* hash: - md5: 14f8341e26b274362b026bbdc72b14fb - sha256: 46aac096868527843ad7083c254e32b5451fc1e304036dcac4243b66c08a8517 + md5: 96ad24c67e0056d171385859c43218a2 + sha256: 6f6b3d60da46f53f1e1708a63d6ce5f119e6aba0f5243326b7ecaf3b0cdbc6d4 manager: conda name: git optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/git-2.41.0-pl5321h86e50cf_0.conda - version: 2.41.0 + url: https://conda.anaconda.org/conda-forge/linux-64/git-2.42.0-pl5321h86e50cf_0.conda + version: 2.42.0 - category: main dependencies: gitdb: '>=4.0.1,<5' python: '>=3.7' typing_extensions: '>=3.7.4.3' hash: - md5: 5809a12901d57388444c3293c975d0bb - sha256: 07008a94189e570fcabe003b99bd50b8263f60c824f36f81a8819bb7cf7eab1b + md5: 3c3d8c89c2fe64dc925ca492d67fab1a + sha256: e70b7c7c072f099af8ab004feb099f72e85f60fed2dc1e3dcedf166903ab9822 manager: conda name: gitpython optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.32-pyhd8ed1ab_0.conda - version: 3.1.32 + url: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.34-pyhd8ed1ab_0.conda + version: 3.1.34 - category: main dependencies: cairo: '>=1.16.0,<2.0a0' @@ -4222,17 +4259,17 @@ package: version: 7.3.0 - category: main dependencies: - importlib_resources: '>=6.0.0,<6.0.1.0a0' + importlib_resources: '>=5.13.0,<5.13.1.0a0' python: '>=3.7' hash: - md5: d69f29916f934f30adb1dd5fff4d9a8b - sha256: c0247e1a001393e9415c8814a0820cbc84c28a42625dbc3fd389ad1e5a87b796 + md5: 5facf625dd29f34c73733030a10a62a0 + sha256: c989be0c74b25061ba4eec92a9caddca0a916d7a45b05aa306278295b0a29965 manager: conda name: importlib-resources optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.0.0-pyhd8ed1ab_1.conda - version: 6.0.0 + url: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-5.13.0-pyhd8ed1ab_0.conda + version: 5.13.0 - category: main dependencies: importlib-metadata: '>=6.8.0,<6.8.1.0a0' @@ -4249,19 +4286,20 @@ package: dependencies: attrs: '>=17.4.0' importlib-metadata: '' - pyrsistent: '>=0.14.0' - python: '>=3.6' - setuptools: '' - six: '>=1.11.0' + importlib_resources: '>=1.4.0' + pkgutil-resolve-name: '>=1.3.10' + pyrsistent: '!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0' + python: '>=3.7' + typing_extensions: '' hash: - md5: 66125e28711d8ffc04a207a2b170316d - sha256: d74a3ddd3c3dd9bd7b00110a196e3af90490c5660674f18bfd53a8fdf91de418 + md5: 723268a468177cd44568eb8f794e0d80 + sha256: 4f68a23430d1afc5c9b41c46fbac0ade33c0bf57a293c646bfdd6dc65350eada 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 + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.17.3-pyhd8ed1ab_0.conda + version: 4.17.3 - category: main dependencies: elfutils: '>=0.187,<0.188.0a0' @@ -4269,7 +4307,6 @@ package: libzlib: '>=1.2.12,<1.3.0a0' hash: md5: 5b3ed39ee3809d63d347b649de0a45f8 - sha256: null manager: conda name: libdwarf optional: false @@ -4280,21 +4317,21 @@ package: dependencies: libgcc-ng: '>=12' libstdcxx-ng: '>=12' - numpy: '>=1.21.6,<2.0a0' + numpy: '>=1.22.4,<2.0a0' python: '>=3.9,<3.10.0a0' python-dateutil: '>=2.8.1' python-tzdata: '>=2022a' python_abi: 3.9.* *_cp39 pytz: '>=2020.1' hash: - md5: cfe677f02e507f76d6767379e4ff09a9 - sha256: b9a9de37da5f6c73979f317a47176c5954dc7fe84ef4ab107f11976bbf1a8f75 + md5: 0a3624f600f51df010a274176e356ac5 + sha256: 60958d7e48cbff540ae7fa3a1c7ed81ee2fef0253d27ad73d7c42027dacd0e50 manager: conda name: pandas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.0.3-py39h40cae4c_1.conda - version: 2.0.3 + url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.0-py39hddac248_0.conda + version: 2.1.0 - category: main dependencies: pip: '' @@ -4313,14 +4350,29 @@ package: python: '>=3.7' typing-extensions: '>=4.6.3' hash: - md5: e76070baecfaca6ecdb5fbd5af7c9309 - sha256: b5012d6fd30f2462b6ca595539cfdae9aaf61b3b7a56e51ab94aef0fd9efcd3d + md5: 0809187ef9b89a3d94a5c24d13936236 + sha256: 1b5c0ca2f4260c7dd8cfccd8a641c1e41876c79dc594506be379cde08f5b471e manager: conda name: platformdirs optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-3.8.1-pyhd8ed1ab_0.conda - version: 3.8.1 + url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-3.10.0-pyhd8ed1ab_0.conda + version: 3.10.0 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.9,<3.10.0a0' + python_abi: 3.9.* *_cp39 + typing-extensions: '>=4.2.0' + hash: + md5: cfc14a4f4467475813805c86c6bf1da3 + sha256: de9dca982e4aa8c75d5537396d044345bb932d872afd64566a2600c8ee12884b + manager: conda + name: pydantic + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-1.10.12-py39hd1e30aa_1.conda + version: 1.10.12 - category: main dependencies: libgcc-ng: '>=12' @@ -4384,14 +4436,14 @@ package: pip: '' python: '>=3.7,<4.0' hash: - md5: ffabccdca64c44c1f23a8df134708897 - sha256: dbc0641f63dbf6d2d2e9b17a21ae8e0b3cb8e24ffa675e06cf5ce6f76d6a58d8 + md5: 6f590190c5393999bbc399ff15096bc3 + sha256: 000ed005cc95397866267072230e2f08407f5898ba2ac469200018492e73a875 manager: conda name: types-awscrt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-awscrt-0.16.23-pyhd8ed1ab_0.conda - version: 0.16.23 + url: https://conda.anaconda.org/conda-forge/noarch/types-awscrt-0.19.1-pyhd8ed1ab_0.conda + version: 0.19.1 - category: main dependencies: cffi: '' @@ -4427,19 +4479,18 @@ package: version: 1.2.3 - category: main dependencies: - cffi: '>=1.11' + cffi: '>=1.8' libgcc-ng: '>=12' python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 - zstd: '>=1.5.2,<1.6.0a0' hash: - md5: 84ba0f78de14c9ac4418facd5f9c68ef - sha256: a8ad86ef09638293fd3f77a0f8298d4920dad19781dc697fc7d6662058e96a8e + md5: 9e039b28b40db0335eecc3423ce8606d + sha256: fc581aafd0e9da266149ac16fe478ef5d9880cb90a73ca25cafb78a9f6ea5b89 manager: conda name: zstandard optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.19.0-py39h6e5214e_2.conda + url: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.19.0-py39hb9d737c_0.tar.bz2 version: 0.19.0 - category: main dependencies: @@ -4454,28 +4505,28 @@ package: python_abi: 3.9.* *_cp39 yarl: '>=1.0,<2.0' hash: - md5: 21e7462fc6c4657ad728a443f1634011 - sha256: 76f3dac9041e3f827b8a8a0fb9c41bb15324ded084ea10f496557de7e9e398a7 + md5: fe5f76b16e82145b87ac97bced358de2 + sha256: 882d08597436a0f6909f7b9306169e561c81669a14d4cd918eeb0e579c9a2c46 manager: conda name: aiohttp optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.8.4-py39hd1e30aa_1.conda - version: 3.8.4 + url: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.8.5-py39hd1e30aa_0.conda + version: 3.8.5 - category: main dependencies: - python: '>=3.6' + python: '>=3.7,<4.0' types-awscrt: '' - typing_extensions: '' + typing_extensions: '>=4.1.0' hash: - md5: 63ed81138f359d75fb3f8c1e8deadfe0 - sha256: e181ec7110dc831c91b4660de20e0023b0adc898bcde34cc2048d7fc286b2fb3 + md5: 656a8ea23e1f7195e402ee126cd0e036 + sha256: 8533293be957aa444689d17c297207d3a76a3d75308f917edc13dc1703055b6a manager: conda name: botocore-stubs optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/botocore-stubs-1.29.165-pyhd8ed1ab_0.conda - version: 1.29.165 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-stubs-1.31.41-pyhd8ed1ab_0.conda + version: 1.31.41 - category: main dependencies: clang-format: 16.0.3 default_h1cdf331_2 @@ -4498,14 +4549,14 @@ package: python: '>=3.7' zstandard: '>=0.15' hash: - md5: ebe3230a4c1e135954eee4fb6ef8cded - sha256: a437007aa798f6d1c9f079f4dbb2a38685ac306d5a5ce3d1ee797c2de9f7d6e9 + md5: 38253361efb303deead3eab39ae9269b + sha256: 654a2488f77bf43555787d952dbffdc5d97956ff4aa9e0414a7131bb741dcf4c manager: conda name: conda-package-streaming optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/conda-package-streaming-0.8.0-pyhd8ed1ab_0.conda - version: 0.8.0 + url: https://conda.anaconda.org/conda-forge/noarch/conda-package-streaming-0.9.0-pyhd8ed1ab_0.conda + version: 0.9.0 - category: main dependencies: flask: '>=0.9' @@ -4525,14 +4576,14 @@ package: python: '>=3.6' ukkonen: '' hash: - md5: a4085ab0562d5081a9333435837b538a - sha256: 4027103c59220a68b41aed056d2ce89d46e4971033d259293ca07198a8a81fdc + md5: 6fbde8d3bdd1874132a1b26a3554b22c + sha256: 5aece5a948e881e2450be73002e52cd27df089b6ea64416f7694304307f66bd2 manager: conda name: identify optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.24-pyhd8ed1ab_0.conda - version: 2.5.24 + url: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.27-pyhd8ed1ab_0.conda + version: 2.5.27 - category: main dependencies: importlib_metadata: '' @@ -4546,6 +4597,22 @@ package: 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: + jsonschema: '>=4.0.0,<4.18.0' + pathable: '>=0.4.1,<0.5.0' + python: '>=3.6' + pyyaml: '>=5.1' + typing_extensions: '>=4.3.0,<5.0.0' + hash: + md5: eff09facc908d5619097edd090678347 + sha256: 9ed0cbf1fec505c4ed2238453b42c964f8f85baa30490daeb84dbf5afd65c0b1 + manager: conda + name: jsonschema-spec + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-spec-0.1.4-pyhd8ed1ab_0.conda + version: 0.1.4 - category: main dependencies: elfutils: '>=0.187,<0.188.0a0' @@ -4554,7 +4621,6 @@ package: libzlib: '>=1.2.12,<1.3.0a0' hash: md5: 899c511688e6c41cb51c2921a8d25e63 - sha256: null manager: conda name: libdwarf-dev optional: false @@ -4591,17 +4657,19 @@ package: version: 3.7.1 - category: main dependencies: - jsonschema: '>=3.0.0,<5.0.0' + attrs: '>=19.2.0' + jsonschema: '>=4.0.0,<4.18.0' python: '>=3.7' + rfc3339-validator: '' hash: - md5: 277aff70bb1def188c9c016ba4564e23 - sha256: 0c2f971f86211f2b6db431de9d8ab4c9e38eed5422bd06f93cd8be3cbb882a2c + md5: 6294c4a75fdeeca454e99abbea3f250a + sha256: 6b6fff6441e2673a822793776217f1c07d595ad7a73e7b631c7aeb8ac6663041 manager: conda name: openapi-schema-validator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/openapi-schema-validator-0.2.3-pyhd8ed1ab_0.tar.bz2 - version: 0.2.3 + url: https://conda.anaconda.org/conda-forge/noarch/openapi-schema-validator-0.4.4-pyhd8ed1ab_0.conda + version: 0.4.4 - category: main dependencies: alsa-lib: '>=1.2.9,<1.2.10.0a0' @@ -4659,31 +4727,14 @@ package: pynacl: '>=1.5' python: '>=3.6' hash: - md5: f212c7eb95e909df4795297f73690993 - sha256: e425a03e5e2ef2ec5a78711686c59cfceeeeec3a98165fbc7d186bd6a5cb78de + md5: 8d4563992b27cdb8e673d1ca16962c9d + sha256: 9139c13cb7ea5729af862db5fb0523daa5900b9b4fa36637cd7f9c01be665f80 manager: conda name: paramiko optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/paramiko-3.2.0-pyhd8ed1ab_0.conda - version: 3.2.0 -- category: main - dependencies: - annotated-types: '>=0.4.0' - libgcc-ng: '>=12' - pydantic-core: 2.1.2 - python: '>=3.9,<3.10.0a0' - python_abi: 3.9.* *_cp39 - typing-extensions: '>=4.6.1' - hash: - md5: f7d96146fbf4ab45ffc81107159a2683 - sha256: e3b46f24441e27116feb02e5737efeab3f549684ec3c50eb7115104ffc652fd7 - manager: conda - name: pydantic - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-2.0.2-py39hd1e30aa_1.conda - version: 2.0.2 + url: https://conda.anaconda.org/conda-forge/noarch/paramiko-3.3.1-pyhd8ed1ab_0.conda + version: 3.3.1 - category: main dependencies: cryptography: '>=38.0.0,<42,!=40.0.0,!=40.0.1' @@ -4759,32 +4810,33 @@ package: version: 3.3.1 - category: main dependencies: - distlib: <1,>=0.3.6 - filelock: <4,>=3.12 - platformdirs: <4,>=3.5.1 + distlib: <1,>=0.3.7 + filelock: <4,>=3.12.2 + platformdirs: <4,>=3.9.1 python: '>=3.8' hash: - md5: 838b85f656b078bdd882ef97978e7f40 - sha256: 92dd17aef10e5c35289da3a588cbed3e593c22ee53478a00ccb1fdf92fe0e84e + md5: c3feaf947264a59a125e8c26e98c3c5a + sha256: 85c96449202ca87ec12783d8675b3655b4cd7b7afe49f2dc37d743adb0ed177f manager: conda name: virtualenv optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.23.1-pyhd8ed1ab_0.conda - version: 20.23.1 + url: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.24.4-pyhd8ed1ab_0.conda + version: 20.24.4 - category: main dependencies: - conda-package-streaming: '>=0.7.0' + conda-package-streaming: '>=0.9.0' python: '>=3.7' + zstandard: '>=0.15' hash: - md5: 44800e9bd13143292097c65e57323038 - sha256: c453b2a648e7a059f26326d476069cf81627c9a3fa12da4ab22eb39e7bfdc095 + md5: 8a3ae7f6318376aa08ea753367bb7dd6 + sha256: 9a221808405d813d8c555efce6944379b907d36d79e77d526d573efa6b996d26 manager: conda name: conda-package-handling optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/conda-package-handling-2.0.2-pyh38be061_0.conda - version: 2.0.2 + url: https://conda.anaconda.org/conda-forge/noarch/conda-package-handling-2.2.0-pyh38be061_0.conda + version: 2.2.0 - category: main dependencies: atk-1.0: '>=2.36.0' @@ -4855,20 +4907,22 @@ package: version: 2.56.0 - category: main dependencies: - jsonschema: '>=3.2.0,<5.0.0' - openapi-schema-validator: '>=0.2.0,<0.3.0' + importlib_resources: '>=5.8.0,<6.0.0' + jsonschema: '>=4.0.0,<4.18.0' + jsonschema-spec: '>=0.1.1,<0.2.0' + lazy-object-proxy: '>=1.7.1,<2.0.0' + openapi-schema-validator: '>=0.4.2,<0.5' python: '>=3.7' - pyyaml: '>=5.1' - setuptools: '' + typing_extensions: '' hash: - md5: 5ff3ff67d18fd4938c4ae38c3baf21bb - sha256: 11f24d36001aaba0a7197ff7b9a07ab943d05f969b13e5a9c4ffec13eca19cd0 + md5: 365a6ba8516ec76591f32918895502d5 + sha256: 6364d948b9215a15a0482eafab725d9acdad6d03c744501c8fdedfac0d8e12ff manager: conda name: openapi-spec-validator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/openapi-spec-validator-0.4.0-pyhd8ed1ab_1.tar.bz2 - version: 0.4.0 + url: https://conda.anaconda.org/conda-forge/noarch/openapi-spec-validator-0.5.7-pyhd8ed1ab_0.conda + version: 0.5.7 - category: main dependencies: cfgv: '>=2.0.0' @@ -4878,27 +4932,27 @@ package: pyyaml: '>=5.1' virtualenv: '>=20.10.0' hash: - md5: dd64a0e440754ed97610b3e6b502b6b1 - sha256: 3df1434057ce827d88cdd84578732030b3d4b5a0bc6c58bff12b7f8001c1be5b + md5: f0fe759dc1dc02722c15cfb5faa1172b + sha256: 7adddcb9b5651fe5ed08a8438f2c967ac126c8b3fa854376a9a6f97511810c6a manager: conda name: pre-commit optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.3.3-pyha770c72_0.conda - version: 3.3.3 + url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.4.0-pyha770c72_0.conda + version: 3.4.0 - category: main dependencies: __unix: '' openjdk: '>=8' hash: - md5: 67177beb0a5d0968d7b2935b7901d955 - sha256: f0582f7f4f90231754f6532de13d9737ed422a5bb086962dcf0380c0ea2513df + md5: a46fac25dff2221c873bfceab88fcb47 + sha256: 08012e6a1ab95c56b86fe76ca76d236db8aa60f6cb4a47db6ef307671aeb2c1b manager: conda name: sbt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sbt-1.9.2-h707e725_0.conda - version: 1.9.2 + url: https://conda.anaconda.org/conda-forge/noarch/sbt-1.9.4-h707e725_0.conda + version: 1.9.4 - category: main dependencies: brotlipy: '>=0.6.0' @@ -4924,14 +4978,14 @@ package: python-dateutil: '>=2.1,<3.0.0' urllib3: '>=1.25.4,<1.27' hash: - md5: 191ea267121cccd3531e98ea5b869b87 - sha256: 3172c3714a3c6abc729af5335dfbf2ac02acc01ec64ad1d30413bd49f1bd0497 + md5: 157c6bb045111f1b4f68e16df9251e7e + sha256: ab65ee4c7f97d8072f25891c8329ad54dece85fefc5053e31266275ea6db637c manager: conda name: botocore optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.31.2-pyhd8ed1ab_0.conda - version: 1.31.2 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.31.41-pyhd8ed1ab_0.conda + version: 1.31.41 - category: main dependencies: cairo: '>=1.16.0,<2.0a0' @@ -4999,50 +5053,53 @@ package: six: '>=1.11.0' typing-extensions: '>=4.0.1' hash: - md5: 3f61696f5c09ca1e7001d042c9968c1d - sha256: da22c5d95a9ed937509b696568cd51580f3becec90febf0e5b1aca1096bf4c24 + md5: d336f70469313f6c1eaf3c645b071961 + sha256: 826fb6bf9e20fd7afa4ec971ad0c343cc39b7bd872709d3c4d11a0c397006ed6 manager: conda name: azure-core optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/azure-core-1.28.0-pyhd8ed1ab_0.conda - version: 1.28.0 + url: https://conda.anaconda.org/conda-forge/noarch/azure-core-1.29.3-pyhd8ed1ab_0.conda + version: 1.29.3 - category: main dependencies: msgpack-python: '>=0.5.2' - python: '>=3.6' + python: '>=3.7' requests: '>=2.16.0' hash: - md5: 9f0b2eb5f5dd2cec36d5342a80adfec0 - sha256: 894e2f4c59221b9633c60281a17fefe09ba0bf5d996992cebeb504d0585dd0dd + md5: 174bd699bb5aa9e2622eb4b288276ff8 + sha256: aae7ab3a54989f9bf9273e4a17c911ba339a8b9354250bc11fb8eff2e3f4be60 manager: conda name: cachecontrol optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-0.13.0-pyhd8ed1ab_0.conda - version: 0.13.0 + url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-0.13.1-pyhd8ed1ab_0.conda + version: 0.13.1 - category: main dependencies: + boltons: '>=23.0.0' conda-package-handling: '>=1.3.0' + jsonpatch: '>=1.32' + packaging: '>=23.0' pluggy: '>=1.0.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' + requests: '>=2.27.0,<3' ruamel.yaml: '>=0.11.14,<0.18' - setuptools: '>=31.0.1' + setuptools: '>=60.0.0' toolz: '>=0.8.1' tqdm: '>=4' hash: - md5: b2482d4fe1bc47af8e699f3ffec9dbb8 - sha256: 2fcb48155d829cb344ddf83589998babd94f298323166975d625be7e8e7ac1a6 + md5: 28f9479dd8a71fade399e42d67d1506d + sha256: 017e565c58e23da12aba5217bb068170acec66e387143cff79b2208d223f1fd6 manager: conda name: conda optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/conda-22.11.1-py39hf3d152e_1.conda - version: 22.11.1 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-23.7.3-py39hf3d152e_0.conda + version: 23.7.3 - category: main dependencies: packaging: '>=14.0' @@ -5079,19 +5136,19 @@ package: version: 1.4.3 - category: main dependencies: - cryptography: '>=0.6,<43' + cryptography: '>=0.6,<44' pyjwt: '>=1.0.0,<3' python: '>=3.6' requests: '>=2.0.0,<3' hash: - md5: 24c290ee3278fd9a33b00cd1f8d1db0f - sha256: 7f4cc4d6383263ad9cc69dc83bb5dd5d4a309ebe53f117e1d14ffd76f31939de + md5: 4af1ca41814694c1028c4f1b1f88c38f + sha256: 50f80fe167d5ca5be572174f3fcad4f4cef225dcf1feccc88fbaf3d661fe15c9 manager: conda name: msal optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/msal-1.22.0-pyhd8ed1ab_0.conda - version: 1.22.0 + url: https://conda.anaconda.org/conda-forge/noarch/msal-1.23.0-pyhd8ed1ab_0.conda + version: 1.23.0 - category: main dependencies: graphviz: '>=2.46.1' @@ -5127,91 +5184,62 @@ package: botocore: '>=1.12.36,<2.0a.0' python: '>=3.7' hash: - md5: b19a857ac845097e9c823c9f4d35f80e - sha256: 99512bf4f4e297cc7565c94eee8ccc908411f836b341668e2b5d064273e21762 + md5: f57096b122c78f7d8bd6885f52db1077 + sha256: 636453288a2436016235b86ec9bdf6c965aabe2114a68c51809874014255db71 manager: conda name: s3transfer optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/s3transfer-0.6.1-pyhd8ed1ab_0.conda - version: 0.6.1 + url: https://conda.anaconda.org/conda-forge/noarch/s3transfer-0.6.2-pyhd8ed1ab_0.conda + version: 0.6.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.31.2 + botocore: 1.31.41 colorama: '>=0.2.5,<0.4.5' docutils: '>=0.10,<0.17' python: '>=3.9,<3.10.0a0' python_abi: 3.9.* *_cp39 - pyyaml: '>=3.10,<5.5' + pyyaml: '>=3.10,<6.1' rsa: '>=3.1.2,<4.8' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 7d905f150353c988f96214e8938f6f97 - sha256: b5d6ee42625204b702eaa07d612d9b19aad1f5f9f90caac7f6bac1f1a401953e + md5: 03c2e4dfd567f3efefe454fd6c1058b2 + sha256: b5c0e89a663c283807f89f12ed19f78da7fb9620a9f9dcb9da35e2bf1b13ee2f manager: conda name: awscli optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.29.2-py39hf3d152e_0.conda - version: 1.29.2 + url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.29.41-py39hf3d152e_0.conda + version: 1.29.41 - category: main dependencies: - botocore: '>=1.31.2,<1.32.0' + botocore: '>=1.31.41,<1.32.0' jmespath: '>=0.7.1,<2.0.0' python: '>=3.7' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 1ebffec127102119aff7a572243464da - sha256: 454975a1def5ec1043925403547f9cf938c91a534c62cba509eb108b253bbf89 + md5: 904d83242795391e42132fba9ce95884 + sha256: 1766d30554de4c2cda01284620c69e9306d14329bfd1b60324c25668dfa36a18 manager: conda name: boto3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.28.2-pyhd8ed1ab_0.conda - version: 1.28.2 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.28.41-pyhd8ed1ab_0.conda + version: 1.28.41 - category: main dependencies: - cachecontrol: 0.13.0 pyhd8ed1ab_0 - lockfile: '>=0.9' - python: '>=3.6' + cachecontrol: 0.13.1 pyhd8ed1ab_0 + filelock: '>=3.8.0' + python: '>=3.7' hash: - md5: 3fd3d55ea862cc0736ac1cce6f44c2d1 - sha256: a8e20149f8ef160fbac5c751733638ccd5f35e20f3f552cfd46a467ffeceeeaf + md5: 8c4781ca0893cff3a64423954ce234a1 + sha256: 7fd3cd4a667da284ae3aad9b8cb4d592099bc02ed6566cbae00bd8c0b0604e85 manager: conda name: cachecontrol-with-filecache optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-with-filecache-0.13.0-pyhd8ed1ab_0.conda - version: 0.13.0 + url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-with-filecache-0.13.1-pyhd8ed1ab_0.conda + version: 0.13.1 - category: main dependencies: colorama: '' @@ -5230,20 +5258,21 @@ package: - category: main dependencies: __unix: '' - conda: '>=4.6,<23.1.0' + conda: '>=4.6' conda-standalone: '' + jinja2: '' pillow: '>=3.1' python: '>=3.7' - ruamel_yaml: '>=0.11.14,<0.16' + ruamel.yaml: '>=0.11.14,<0.18' hash: - md5: 531dd21a6980012d3f5c01f9e5335c5b - sha256: 311cd96ecabd6557daa8aecaef858fb053acf4cda195a1d34a9a28c998807596 + md5: 874c9c92cfcb27369d5620eb65f9ec9c + sha256: cad7b6bdf433da141dabcbb7c138e8665db20382e000ff9629b6d0c9141528b0 manager: conda name: constructor optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/constructor-3.4.3-pyhe4f9e05_0.conda - version: 3.4.3 + url: https://conda.anaconda.org/conda-forge/noarch/constructor-3.4.5-pyh55f8243_0.conda + version: 3.4.5 - category: main dependencies: msal: '>=0.4.1,<2.0' @@ -5260,46 +5289,20 @@ package: version: 1.0.0 - category: main dependencies: - livereload: '>=2.3.0' - python: '>=3.6' - sphinx: '' + boto3: '>=1.19.5,<2' + jsonschema: '>=3.2,<5' + pydantic: ~=1.10.2 + python: '>=3.7' + typing_extensions: '>=4.4.0,<5' 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: - python: '>=2.7' - sphinx: '>=1.8' - hash: - md5: 914897066d5873acfb13e75705276ad1 - sha256: 2e5f16a2d58f9a31443ffbb8ce3852cfccf533a6349045828cd2e994ef0679ca - manager: conda - name: sphinxcontrib-jquery - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jquery-4.1-pyhd8ed1ab_0.conda - version: '4.1' -- category: main - dependencies: - boto3: ~=1.5 - jsonschema: ~=3.2 - python: '>=3.6' - six: ~=1.15 - hash: - md5: 6a8ad721f4edea85a40070c78f379dd4 - sha256: d9b2ff5fdf1e8de7cf80f2a14a7cb76c65c0bae18a2fe51700e6ed3c71fdb5b5 + md5: 2f1c7e055a216b95454484d831cc60b3 + sha256: ad418000db6c5105416a87be77026944450cd5b922dd46da0d39782fad35ba33 manager: conda name: aws-sam-translator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/aws-sam-translator-1.55.0-pyhd8ed1ab_0.conda - version: 1.55.0 + url: https://conda.anaconda.org/conda-forge/noarch/aws-sam-translator-1.73.0-pyhd8ed1ab_0.conda + version: 1.73.0 - category: main dependencies: azure-core: '>=1.11.0,<2.0.0' @@ -5323,14 +5326,14 @@ package: python: '' typing_extensions: '' hash: - md5: 31349469d53ac0877f3a90842023571d - sha256: feb48351ca5a328d200a7307d041b05f5d1e476151929951e1a11a1ecede8d4e + md5: 772310fe036b21f322cfafff4e3c8169 + sha256: 8695b9bc5fcab93aed3b1aa5bda8f3922340bc10a14088fa623470db4c9a558d manager: conda name: boto3-stubs optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/boto3-stubs-1.28.2-pyhd8ed1ab_0.conda - version: 1.28.2 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-stubs-1.28.41-pyhd8ed1ab_0.conda + version: 1.28.41 - category: main dependencies: cachecontrol-with-filecache: '>=0.12.9' @@ -5371,28 +5374,28 @@ package: python: '>=3.6' typing-extensions: '' hash: - md5: 1c53cbf18ef82bac6c4957398f107d61 - sha256: 5bd251a81e5ee934e0945530d00f46944c4dc5e8fad001ce761ef89310f9c9cc + md5: 7654bffc34df00bef7662f5aaede6024 + sha256: 0bb7792dbb38eaf3a75fe5ae547aaf62197b140feb5a624e80adc028f9fbc864 manager: conda name: mypy-boto3-s3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/mypy-boto3-s3-1.28.0-pyhd8ed1ab_0.conda - version: 1.28.0 + url: https://conda.anaconda.org/conda-forge/noarch/mypy-boto3-s3-1.28.36-pyhd8ed1ab_0.conda + version: 1.28.36 - category: main dependencies: boto3: '' python: '>=3.6' typing-extensions: '' hash: - md5: 7af6a634a654ee7aac1941e05cf1568c - sha256: 4fee92b4e5580dfd13fe942ae307100666064121197b94de5c824c3dd98eb327 + md5: 8678482bae631d4af00874831dbe4798 + sha256: 72f952beb3209ea9cfb20011c26e6239c38b14fdafc216fa773eec4b644db326 manager: conda name: mypy_boto3_ec2 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/mypy_boto3_ec2-1.28.0-pyhd8ed1ab_0.conda - version: 1.28.0 + url: https://conda.anaconda.org/conda-forge/noarch/mypy_boto3_ec2-1.28.41-pyhd8ed1ab_0.conda + version: 1.28.41 - category: main dependencies: boto3: '' @@ -5409,39 +5412,26 @@ package: version: 0.4.2 - category: main dependencies: - docutils: <0.19 - python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*' - sphinx: '>=1.6,<7' - sphinxcontrib-jquery: '>=4,<5' - hash: - md5: 5ef6aaf2cfb3b656cdadb431daed6a9f - sha256: 129cab0a4cddd57fa58930c306ca8363c8ac2c40bd40b784210603b17abb5639 - manager: conda - name: sphinx_rtd_theme - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinx_rtd_theme-1.2.2-pyha770c72_0.conda - version: 1.2.2 -- category: main - dependencies: - aws-sam-translator: '>=1.55.0' - jschema-to-python: ~=1.2.3 + aws-sam-translator: '>=1.73.0' + jschema-to-python: '>=1.2.3,<1.3.dev0' jsonpatch: '' - jsonschema: '>=3.0,<5' - junit-xml: ~=1.9 - networkx: ~=2.4 - python: '>=3.7' + jsonschema: '>=3.0,<4.18' + junit-xml: '>=1.9,<2.dev0' + networkx: '>=2.4,<4' + python: '>=3.7,<4.0' pyyaml: '>5.4' - sarif-om: ~=1.0.4 + regex: '' + sarif-om: '>=1.0.4,<1.1.dev0' + sympy: '>=1.0.0' hash: - md5: 97bf916949bb4eb9f69c77d365a4da72 - sha256: 7d8c32e83b839abbb4c2a6b476b2a4a60f03394ac6156740f81abba64dbcf756 + md5: 7e1bb14c96e20a83a9d2170f7cf99b35 + sha256: c9a71f90673966eb5d449993e134ac74ef8cdb3e1e5a7fe85f77fbfca768369f manager: conda name: cfn-lint optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/cfn-lint-0.75.1-pyhd8ed1ab_0.conda - version: 0.75.1 + url: https://conda.anaconda.org/conda-forge/noarch/cfn-lint-0.79.9-pyhd8ed1ab_0.conda + version: 0.79.9 - category: main dependencies: aws-xray-sdk: '!=0.96,>=0.93' @@ -5471,32 +5461,166 @@ package: werkzeug: '>=0.5,!=2.2.0,!=2.2.1' xmltodict: '' hash: - md5: 2ad89e262b7d71adc0820e207329d659 - sha256: 4a348f91127ca5456c224114329705b68c18812d67060f3cc93bb0310e5ebeba + md5: 779af6a36cd3a8f7260a074462e5e587 + sha256: d5128b843ac0f338f955bb1a93c3565be87b6a5c241300ee2a34fcd4509f7390 manager: conda name: moto optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/moto-4.1.12-pyhd8ed1ab_0.conda - version: 4.1.12 + url: https://conda.anaconda.org/conda-forge/noarch/moto-4.2.2-pyhd8ed1ab_0.conda + version: 4.2.2 +- 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: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: aebfabcb60c33a89c1f9290cab49bc93 + sha256: 67e2b386c7b3c858ead88fa71fe4fa5eb1f4f59d7994d167b3910a744db392d3 + manager: conda + name: sphinxcontrib-applehelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-1.0.7-pyhd8ed1ab_0.conda + version: 1.0.7 +- category: main + dependencies: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: ebf08f5184d8eaa486697bc060031953 + sha256: 770e13ebfef321426c09ec51d95c57755512db160518b2922a4337546ee51672 + manager: conda + name: sphinxcontrib-devhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-devhelp-1.0.5-pyhd8ed1ab_0.conda + version: 1.0.5 +- category: main + dependencies: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: a9a89000dfd19656ad004b937eeb6828 + sha256: 5f09cd4a08a6c194c11999871a8c7cedc2cd7edd9ff7ceb6f0667b6698be4cc5 + manager: conda + name: sphinxcontrib-htmlhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.0.4-pyhd8ed1ab_0.conda + version: 2.0.4 +- category: main + dependencies: + python: '>=2.7' + sphinx: '>=1.8' + hash: + md5: 914897066d5873acfb13e75705276ad1 + sha256: 2e5f16a2d58f9a31443ffbb8ce3852cfccf533a6349045828cd2e994ef0679ca + manager: conda + name: sphinxcontrib-jquery + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jquery-4.1-pyhd8ed1ab_0.conda + version: '4.1' +- category: main + dependencies: + docutils: <0.19 + python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*' + sphinx: '>=1.6,<8' + sphinxcontrib-jquery: '>=4,<5' + hash: + md5: a615c369167e508293d8409973b34863 + sha256: 1288aac6167e320b576d89855262f05b1903e446c3dfc92cc67b12b39fb62502 + manager: conda + name: sphinx_rtd_theme + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx_rtd_theme-1.3.0-pyha770c72_0.conda + version: 1.3.0 +- category: main + dependencies: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: cf5c9649272c677a964a7313279e3a9b + sha256: 9ba5cea9cbab64106e8b5a9b19add855dcb52b8fbb1674398c715bccdbc04471 + manager: conda + name: sphinxcontrib-qthelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-qthelp-1.0.6-pyhd8ed1ab_0.conda + version: 1.0.6 +- 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: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: 0612e497d7860728f2cda421ea2aec09 + sha256: c5710ae7bb7465f25a29cc845d9fb6ad0ea561972d796d379fcb48d801e96d6d + manager: conda + name: sphinxcontrib-serializinghtml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.9-pyhd8ed1ab_0.conda + version: 1.1.9 - category: main dependencies: {} hash: - sha256: 0e0bc5ba78b8db3667ad636d964eb963dc97a59f04c6f6214c5f0e4a8f726c56 + sha256: 18c694e5ae8a208cdb3d2c20a993ca1a7b0efa258c247a1e565150f477f83744 manager: pip name: mock optional: false platform: linux-64 - source: null - url: https://files.pythonhosted.org/packages/27/6f/fbb16f260a7107ee98871d83f6793d88c4311b7189b10ef239da0b2181db/mock-5.0.2-py3-none-any.whl - version: 5.0.2 + url: https://files.pythonhosted.org/packages/6b/20/471f41173930550f279ccb65596a5ac19b9ac974a8d93679bcd3e0c31498/mock-5.1.0-py3-none-any.whl + version: 5.1.0 - dependencies: {} hash: sha256: 40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0 manager: pip name: pyyaml platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/12/fc/a4d5a7554e0067677823f7265cb3ae22aed8a238560b5133b58cda252dad/PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl version: '6.0' - category: main @@ -5508,7 +5632,6 @@ package: name: asttokens optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/f3/e1/64679d9d0759db5b182222c81ff322c2fe2c31e156a59afd6e9208c960e5/asttokens-2.2.1-py2.py3-none-any.whl version: 2.2.1 - category: main @@ -5520,7 +5643,6 @@ package: name: gdspy optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/1d/e4/97b8add92fbec2a9890ad4777272e9a9e4d7a0ceeac42b7e1febe94f0e86/gdspy-1.4.zip version: '1.4' - category: main @@ -5533,7 +5655,6 @@ package: 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 - dependencies: @@ -5543,21 +5664,19 @@ package: manager: pip name: pydantic platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/65/d3/8ea06a592f4c218d3079ddb6d267015e6635c11ea4b282c2f5a9b62ca60b/pydantic-1.10.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl version: 1.10.11 - category: main dependencies: ruamel.yaml.clib: '>=0.2.7' hash: - sha256: 25d0ee82a0a9a6f44683dcf8c282340def4074a4562f3a24f55695bb254c1693 + sha256: 23cd2ed620231677564646b0c6a89d138b6822a0d78656df7abda5879ec4f447 manager: pip name: ruamel.yaml optional: false platform: linux-64 - source: null - url: https://files.pythonhosted.org/packages/23/33/dbc62343de0cf92e0f9c15bc0a287bdaea0953f1cadca0480c78d5ac6641/ruamel.yaml-0.17.26-py3-none-any.whl - version: 0.17.26 + url: https://files.pythonhosted.org/packages/d9/0e/2a05efa11ea33513fbdf4a2e2576fe94fd8fa5ad226dbb9c660886390974/ruamel.yaml-0.17.32-py3-none-any.whl + version: 0.17.32 - category: main dependencies: mock: '*' @@ -5568,7 +5687,6 @@ package: name: sure optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/dd/ae/eb28ee3b6768e51cb938abcf521cb678217203f33385a2df54d3f23331c5/sure-2.0.1.tar.gz version: 2.0.1 - category: main @@ -5581,7 +5699,6 @@ package: name: fab-classic optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/6b/0f/efc537eebfd2a2c470250c0ac8bd8a05ffc13d95a7fb22021367890d7c46/fab_classic-1.19.2-py2.py3-none-any.whl version: 1.19.2 - category: main @@ -5592,14 +5709,13 @@ package: pyyaml: '>=6.0,<7.0' ruamel.yaml: '>=0.17.21,<0.18.0' hash: - sha256: f4fb4dd5f7fac1f2206a25d0949024046fe8f855198e8edbd5206fa9d58ab05f + sha256: 47f1fc5904756b01d46a8d23a4f3950382086b716138e21a027cd44dc5101f27 manager: pip name: hammer-vlsi optional: false platform: linux-64 - source: null - url: https://files.pythonhosted.org/packages/0a/da/1897421311c6332655e2f73d02d8c914ecb724198a1988aacd8f4c61ae6e/hammer_vlsi-1.1.1-py3-none-any.whl - version: 1.1.1 + url: https://files.pythonhosted.org/packages/30/e4/37b77c7921b80d58d8b2a325c031e75d656319b676e7fd4555e02b651a9d/hammer_vlsi-1.1.2-py3-none-any.whl + version: 1.1.2 - category: main dependencies: asttokens: '>=2,<3' @@ -5610,7 +5726,6 @@ package: 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 @@ -5623,7 +5738,6 @@ package: name: pylddwrap optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/c9/12/4afd6542c43cd20271f0e53bf0211decc10079a76a41e53c0288025a7b85/pylddwrap-1.2.2.tar.gz version: 1.2.2 version: 1 diff --git a/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml b/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml index fcac3de5..64bd5ff6 100644 --- a/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml +++ b/conda-reqs/conda-lock-reqs/conda-requirements-riscv-tools-linux-64.conda-lock.yml @@ -7,9 +7,9 @@ # 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 +# 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/abejgonza/cy/conda-reqs/chipyard.yaml -f /scratch/abejgonza/cy/conda-reqs/riscv-tools.yaml -f /scratch/abejgonza/cy-check/conda-reqs/chipyard.yaml -f /scratch/abejgonza/cy-check/conda-reqs/riscv-tools.yaml -f /scratch/abejgonza/new-cy/conda-reqs/chipyard.yaml -f /scratch/abejgonza/new-cy/conda-reqs/riscv-tools.yaml --lockfile conda-requirements-riscv-tools-linux-64.conda-lock.yml +# conda-lock -f /scratch/abejgonza/cy/conda-reqs/chipyard.yaml -f /scratch/abejgonza/cy/conda-reqs/riscv-tools.yaml -f /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/chipyard.yaml -f /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/riscv-tools.yaml --lockfile conda-requirements-riscv-tools-linux-64.conda-lock.yml metadata: channels: - url: ucb-bar @@ -21,16 +21,14 @@ metadata: - url: nodefaults used_env_vars: [] content_hash: - linux-64: c21b046554fff6a17a993f763664cc9d9994650e380510f7391ababd82f27219 + linux-64: 0316ec2ff5cf432ddafadc75598f6b4f8bb206bdd13a8bfc2e3bcd184b559617 platforms: - linux-64 sources: - /scratch/abejgonza/cy/conda-reqs/chipyard.yaml - /scratch/abejgonza/cy/conda-reqs/riscv-tools.yaml - - /scratch/abejgonza/cy-check/conda-reqs/chipyard.yaml - - /scratch/abejgonza/cy-check/conda-reqs/riscv-tools.yaml - - /scratch/abejgonza/new-cy/conda-reqs/chipyard.yaml - - /scratch/abejgonza/new-cy/conda-reqs/riscv-tools.yaml + - /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/chipyard.yaml + - /scratch/abejgonza/firesim/target-design/chipyard/conda-reqs/riscv-tools.yaml package: - category: main dependencies: {} @@ -68,25 +66,25 @@ package: - category: main dependencies: {} hash: - md5: f5c65075fc34438d5b456c7f3f5ab695 - sha256: 0cf1bb3d0bfc5519b60af2c360fa4888fb838e1476b1e0f65b9dbc48b45c7345 + md5: a73ecd2988327ad4c8f2c331482917f2 + sha256: 525b7b6b5135b952ec1808de84e5eca57c7c7ff144e29ef3e96ae4040ff432c1 manager: conda name: ca-certificates optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.5.7-hbcca054_0.conda - version: 2023.5.7 + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.7.22-hbcca054_0.conda + version: 2023.7.22 - category: main dependencies: {} hash: - md5: dbc503dcc77ca9b81ba956d21c3a2ea4 - sha256: cbe3c2391106204ad7ee10eafae72ea70744a32339846f637131be486099338e + md5: 8d22677b00e9ea665f757c70a98d2c6f + sha256: 327b40fc91521ad7ba7cc979e9ae40fafec145536b23c8f87a73cbb403eee1d8 manager: conda name: conda-standalone optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/conda-standalone-22.11.1-ha770c72_0.conda - version: 22.11.1 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-standalone-23.7.2-ha770c72_0.conda + version: 23.7.2 - category: main dependencies: {} hash: @@ -189,14 +187,14 @@ package: - category: main dependencies: {} hash: - md5: 0fde972b336190cd618fe158e7b8f295 - sha256: b72044c8657645a8a8f7a7e1b8f37b552080cd67df06ef1054e34831677ca66d + md5: 9da14a0b14cf61245d1a026b2f281405 + sha256: 423a10bbf512b1530c98c01c414ef97d551d0b0920d393ecc164dde17ce475f7 manager: conda name: open_pdks.sky130a optional: false platform: linux-64 - url: https://conda.anaconda.org/litex-hub/noarch/open_pdks.sky130a-1.0.423_0_g1604945-20230709_210322.tar.bz2 - version: 1.0.423_0_g1604945 + url: https://conda.anaconda.org/litex-hub/noarch/open_pdks.sky130a-1.0.440_0_g43e733e-20230724_080446.tar.bz2 + version: 1.0.440_0_g43e733e - category: main dependencies: {} hash: @@ -398,14 +396,14 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: 2975fe44881f8dce5c3759b53abf11d1 - sha256: 1c65245dc63a3f5a57040074c61baa2ae9dcb401753503712401867b02c6dcab + md5: ff6707b0adc04518a452a0340db13a07 + sha256: 5f5400cb5a27389f78422c9864fa948734989568a3fcfdde8bbee0f92077d056 manager: conda name: coreutils optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/coreutils-9.3-h0b41bf4_0.conda - version: '9.3' + url: https://conda.anaconda.org/conda-forge/linux-64/coreutils-9.4-hd590300_0.conda + version: '9.4' - category: main dependencies: libgcc-ng: '>=7.3.0' @@ -424,7 +422,6 @@ package: libstdcxx-ng: '>=12' hash: md5: 6bfb79319763a11c7423c9d0e0ee00b7 - sha256: null manager: conda name: dromajo optional: false @@ -573,14 +570,14 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: 61641e239f96eae2b8492dc7e755828c - sha256: fc57c0876695c5b4ab7173438580c1d7eaa7dccaf14cb6467ca9e0e97abe0cf0 + md5: e805cbec4c29feb22e019245f7e47b6c + sha256: 610a583c2c356fe7a864cd6e5b0fa73c25bdafcfbcada9d0d9f999392a412a51 manager: conda name: libbrotlicommon optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: libgcc-ng: '>=12' @@ -681,16 +678,16 @@ package: dependencies: libgcc-ng: '>=12' libgfortran-ng: '' - libgfortran5: '>=11.3.0' + libgfortran5: '>=12.3.0' hash: - md5: 9c5ea51ccb8ffae7d06c645869d24ce6 - sha256: 00aee12d04979d024c7f9cabccff5f5db2852c934397ec863a4abde3e09d5a79 + md5: 6e4ef6ca28655124dcde9bd500e44c32 + sha256: c8e080ae4d57506238023e98869928ae93564e6407ef5b0c4d3a337e8c2b7662 manager: conda name: libopenblas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.23-pthreads_h80387f5_0.conda - version: 0.3.23 + url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.24-pthreads_h413a1c8_0.conda + version: 0.3.24 - category: main dependencies: libgcc-ng: '>=12.3.0' @@ -767,14 +764,14 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: e5cb4fe581a18ca2185a016eb848fc00 - sha256: dc14922a6d5cf7fde55c0aa8f6661d6871c6a2e94369e7455a8a5927c3065080 + md5: d23c76f7e6dcd6243d1b6ef5e62d17d2 + sha256: 4bc4c946e9a532c066442714eeeeb1ffbd03cd89789c4047293f5e782b5fedd7 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 + url: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.46.0-hd590300_0.conda + version: 1.46.0 - category: main dependencies: libgcc-ng: '>=12' @@ -889,14 +886,14 @@ package: ca-certificates: '' libgcc-ng: '>=12' hash: - md5: 2e1d7b458ac8f1e3ca4e18b77add6277 - sha256: 407d655643389bdb49266842a816815c981ae98f3513a6a2059b908b3abb380a + md5: e5ac5227582d6c83ccf247288c0eb095 + sha256: b113fbac327c90cdc29c2fac0f2a2e5cc0d1918b2a5ffa7abd49b695b9b3c6e9 manager: conda name: openssl optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.1-hd590300_1.conda - version: 3.1.1 + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.2-hd590300_0.conda + version: 3.1.2 - category: main dependencies: libgcc-ng: '>=9.3.0' @@ -937,13 +934,13 @@ package: dependencies: libgcc-ng: '>=12' hash: - md5: 0bcb0ab6faa796a22b40de3a41e3b2de - sha256: 3f7e1e46d0967f8d08026116aa84fda07bc93d11d44dc3c03a29ad9d3ffc63cc + md5: 4cabe3858a856bff08d9a0992e413084 + sha256: 475f68cac8981ff2b10c56e53c2f376fc3c805fbc7ec30d22f870cd88f1479ba 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 + url: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-hd590300_2.conda version: 1.4.3 - category: main dependencies: @@ -1007,16 +1004,16 @@ package: version: 1.0.7 - category: main dependencies: - libgcc-ng: '>=9.3.0' + libgcc-ng: '>=12' hash: - md5: d6b0b50b49eccfe0be0373be628be0f3 - sha256: f15ce1dff16823888bcc2be1738aadcb36699be1e2dd2afa347794c7ec6c1587 + md5: b462a33c0be1421532f28bfe8f4a7514 + sha256: 5aa9b3682285bb2bf1a8adc064cb63aff76ef9178769740d855abb42b0d24236 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 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda + version: 1.1.1 - category: main dependencies: libgcc-ng: '>=12' @@ -1239,42 +1236,42 @@ package: version: '1.6' - category: main dependencies: - libopenblas: '>=0.3.23,<1.0a0' + libopenblas: '>=0.3.24,<1.0a0' hash: - md5: 57fb44770b1bc832fb2dbefa1bd502de - sha256: 5a9dfeb9ede4b7ac136ac8c0b589309f8aba5ce79d14ca64ad8bffb3876eb04b + md5: bcddbb497582ece559465b9cd11042e7 + sha256: 92142c12eb42172365c96c865be8f164a2653649b28b23bded0e658f8d5d0815 manager: conda name: libblas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-17_linux64_openblas.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-18_linux64_openblas.conda version: 3.9.0 - category: main dependencies: - libbrotlicommon: 1.0.9 h166bdaf_9 + libbrotlicommon: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: 081aa22f4581c08e4372b0b6c2f8478e - sha256: 564f301430c3c61bc5e149e74157ec181ed2a758befc89f7c38466d515a0f614 + md5: 43017394a280a42b48d11d2a6e169901 + sha256: 4eb58ab712e20d89b712a4a9e53a25ed94f63c36135d3f537ce2c51507c5abc9 manager: conda name: libbrotlidec optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: - libbrotlicommon: 1.0.9 h166bdaf_9 + libbrotlicommon: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: 1f0a03af852a9659ed2bf08f2f1704fd - sha256: d27bc2562ea3f3b2bfd777f074f1cac6bfa4a737233dad288cd87c4634a9bb3a + md5: 8e3e1cb77c4b355a3776bdfb74095bed + sha256: f15b3f3d6b33d46c49f5574e2427b76a3c713e27bf6c043b8f0fd84ffc57d51e manager: conda name: libbrotlienc optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: libgcc-ng: '>=7.5.0' @@ -1347,32 +1344,32 @@ package: version: 1.6.39 - category: main dependencies: - libabseil: '>=20230125.2,<20230126.0a0' + libabseil: '>=20230125.3,<20230126.0a0' libgcc-ng: '>=12' libstdcxx-ng: '>=12' libzlib: '>=1.2.13,<1.3.0a0' hash: - md5: c8da7f04073ed0fabcb60885a4c1a722 - sha256: b0255d3c46c71e184d0513566a770356abf2cede5e795c4944521c4f7b6a26d4 + md5: 78c10e8637a6f8d377f9989327d0267d + sha256: 2e2a9b612b8ef8b928f8efac835cd2914722bbab348fa643b99db2efd3b34185 manager: conda name: libprotobuf optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.23.3-hd1fb520_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.23.3-hd1fb520_1.conda version: 4.23.3 - category: main dependencies: libgcc-ng: '>=12' libzlib: '>=1.2.13,<1.3.0a0' hash: - md5: fdaae20a1cf7cd62130a0973190a31b7 - sha256: 72e958870f49174ebc0ddcd4129e9a9f48de815f20aa3b553f136b514f29bb3a + md5: 903fa782a9067d5934210df6d79220f6 + sha256: e715fab7ec6b3f3df2a5962ef372ff0f871d215fe819482dcd80357999513652 manager: conda name: libsqlite optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.42.0-h2797004_0.conda - version: 3.42.0 + url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.43.0-h2797004_0.conda + version: 3.43.0 - category: main dependencies: libgcc-ng: '>=12' @@ -1477,13 +1474,13 @@ package: libgcc-ng: '>=12' libnsl: '>=2.0.0,<2.1.0a0' hash: - md5: 53dc30c420516340641b00ec1571dd53 - sha256: 7e282c6b4106ccb00b3e5be9fc7f863b003d732ba51f76696ab23544a047a4fb + md5: 3e785bff761095eb7f8676f4694bd1b1 + sha256: 6e18c1488d191cb1a43a483f44fffa75668779a29927319b4adeb10da12ad06b manager: conda name: perl optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-3_hd590300_perl5.conda + url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-4_hd590300_perl5.conda version: 5.32.1 - category: main dependencies: @@ -1565,18 +1562,18 @@ package: version: '5.0' - category: main dependencies: - libgcc-ng: '>=9.3.0' - libuuid: '>=2.32.1,<3.0a0' - xorg-libice: 1.0.* + libgcc-ng: '>=12' + libuuid: '>=2.38.1,<3.0a0' + xorg-libice: '>=1.1.1,<2.0a0' hash: - md5: 9e856f78d5c80d5a78f61e72d1d473a3 - sha256: bdb350539521ddc1f30cc721b6604eced8ef72a0ec146e378bfe89e2be17ab35 + md5: 93ee23f12bc2e684548181256edd2cf6 + sha256: 089ad5f0453c604e18985480218a84b27009e9e6de9a0fa5f4a20b8778ede1f1 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 + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda + version: 1.2.4 - category: main dependencies: libgcc-ng: '>=12' @@ -1596,14 +1593,14 @@ package: libstdcxx-ng: '>=12' libzlib: '>=1.2.13,<1.3.0a0' hash: - md5: 32ae18eb2a687912fc9e92a501c0a11b - sha256: a7f7e765dfb7af5265a38080e46f18cb07cfeecf81fe28fad23c4538e7d521c3 + md5: 04b88013080254850d6c01ed54810589 + sha256: 607cbeb1a533be98ba96cf5cdf0ddbb101c78019f1fda063261871dad6248609 manager: conda name: zstd optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.2-hfc55251_7.conda - version: 1.5.2 + url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda + version: 1.5.5 - category: main dependencies: libgcc-ng: '>=12' @@ -1623,13 +1620,13 @@ package: libgcc-ng: '>=12' readline: '>=8.2,<9.0a0' hash: - md5: 23b559a791d63ba4f51906763eb6bc53 - sha256: a7b2ea50068d86ac6e3749f76b118b15947d3f5ce48535eb5ab2ff7e22659c49 + md5: 91824b6e55d580d39050fa4ff8e26edd + sha256: 20aed66138e13e1906ea925ee9ad661749492fc57762d2b4b6d631635274be7d manager: conda name: bash optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/bash-5.2.15-hfbf034d_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/bash-5.2.15-h7f99829_1.conda version: 5.2.15 - category: main dependencies: @@ -1647,18 +1644,18 @@ package: version: 3.8.2 - category: main dependencies: - libbrotlidec: 1.0.9 h166bdaf_9 - libbrotlienc: 1.0.9 h166bdaf_9 + libbrotlidec: 1.1.0 hd590300_0 + libbrotlienc: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: d47dee1856d9cb955b8076eeff304a5b - sha256: 1c128f136a59ee2fa47d7fbd9b6fc8afa8460d340e4ae0e6f5419ebbd7539a10 + md5: aeafb07a327e3f14a796bf081ea07472 + sha256: f4ad40d9fddefbf0e920d508fe10b7da77faa3eed20cf09779ea5b78bbf04675 manager: conda name: brotli-bin optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: gcc_impl_linux-64: '>=12.3.0,<12.3.1.0a0' @@ -1716,13 +1713,13 @@ package: dependencies: gcc_impl_linux-64: 12.3.0.* hash: - md5: 8da41232e71a99e3ff1cc43350d0f0fb - sha256: 1cd58fecd56680f8e8eda18fa3d557231b7016cd3de50c73a0ce8b79303d37b9 + md5: cb7c7892032ecf45fcad76d67b6a3e9b + sha256: 19d68909b1016ce07f6d3056e32d23dbade083111ac2110ab1782c1309164234 manager: conda name: gcc optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.3.0-h8d2909c_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.3.0-h8d2909c_1.conda version: 12.3.0 - category: main dependencies: @@ -1793,15 +1790,15 @@ package: version: 3.5.2 - category: main dependencies: - libblas: 3.9.0 17_linux64_openblas + libblas: 3.9.0 18_linux64_openblas hash: - md5: 7ef0969b00fe3d6eef56a8151d3afb29 - sha256: 535bc0a6bc7641090b1bdd00a001bb6c4ac43bce2a11f238bc6676252f53eb3f + md5: 93dd9ab275ad888ed8113953769af78c + sha256: b5a3eac5a1e14ad7054a19249afeee6536ab8c9fb6d6ddc26e277f5c3b1acce4 manager: conda name: libcblas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-17_linux64_openblas.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-18_linux64_openblas.conda version: 3.9.0 - category: main dependencies: @@ -1823,15 +1820,15 @@ package: version: 2.76.4 - category: main dependencies: - libblas: 3.9.0 17_linux64_openblas + libblas: 3.9.0 18_linux64_openblas hash: - md5: a2103882c46492e26500fcb56c03de8b - sha256: 45128394d2f4d4caf949c1b02bff1cace3ef2e33762dbe8f0edec7701a16aaa9 + md5: a1244707531e5b143c420c70573c8ec5 + sha256: 7b59c9bf8399b34818d36c7bbd30cd447649fe4ff2136d3102bb67da0af67a3a manager: conda name: liblapack optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-17_linux64_openblas.conda + url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-18_linux64_openblas.conda version: 3.9.0 - category: main dependencies: @@ -1856,18 +1853,18 @@ package: libgcc-ng: '>=12' libjpeg-turbo: '>=2.1.5.1,<3.0a0' libstdcxx-ng: '>=12' - libwebp-base: '>=1.3.0,<2.0a0' + libwebp-base: '>=1.3.1,<2.0a0' libzlib: '>=1.2.13,<1.3.0a0' xz: '>=5.2.6,<6.0a0' zstd: '>=1.5.2,<1.6.0a0' hash: - md5: 8ad377fb60abab446a9f02c62b3c2190 - sha256: 920943ad46869938bd070ccd4c0117594e07538bc6b27b75462594c67b6f215d + md5: 5b09e13d732dda1a2bc9adc711164f4d + sha256: 631ccfdd460eda9661b6371aa459fe5ce174816365873deb5af955c9e10bf8c2 manager: conda name: libtiff optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.5.1-h8b53f26_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.5.1-h8b53f26_1.conda version: 4.5.1 - category: main dependencies: @@ -1948,19 +1945,19 @@ package: - category: main dependencies: libgcc-ng: '>=12' - libsqlite: 3.42.0 h2797004_0 + libsqlite: 3.43.0 h2797004_0 libzlib: '>=1.2.13,<1.3.0a0' - ncurses: '>=6.3,<7.0a0' + ncurses: '>=6.4,<7.0a0' readline: '>=8.2,<9.0a0' hash: - md5: 1192f6ec654a5bc4ee1d64bdc4a3e5cc - sha256: 9cf59fa9891248e0e3a86a41041156cec367653d423e5d8a09b4c8ab98441a27 + md5: 713f9eac95d051abe14c3774376854fe + sha256: b3db86c1ae67bca79328a5d517330e1c95cf4e1f666e46ac9a90e64caf86449d manager: conda name: sqlite optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.42.0-h2c6b66d_0.conda - version: 3.42.0 + url: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.43.0-h2c6b66d_0.conda + version: 3.43.0 - category: main dependencies: libgcc-ng: '>=9.4.0' @@ -2055,6 +2052,20 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/attrs-23.1.0-pyh71513ae_1.conda version: 23.1.0 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.10,<3.11.0a0' + python_abi: 3.10.* *_cp310 + hash: + md5: 3bf53ba99470a36f488b416528061373 + sha256: 9e3bdb8d25b855f1969b24fa4934d8d93c7ede62a4d1c6e3c01d8d06403fceda + manager: conda + name: bcrypt + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-4.0.1-py310hcb5633a_0.conda + version: 4.0.1 - category: main dependencies: python: '>=3.7' @@ -2069,19 +2080,31 @@ package: version: 1.6.2 - category: main dependencies: - brotli-bin: 1.0.9 h166bdaf_9 - libbrotlidec: 1.0.9 h166bdaf_9 - libbrotlienc: 1.0.9 h166bdaf_9 + python: 2.7.*|>=3.7 + hash: + md5: 033eb25fffd222aceeca6d58cd953680 + sha256: 4ff828cceb8f55cb26d23b1a4c174d22c7cd92350221724bcaf2d6632e33fdee + manager: conda + name: boltons + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/boltons-23.0.0-pyhd8ed1ab_0.conda + version: 23.0.0 +- category: main + dependencies: + brotli-bin: 1.1.0 hd590300_0 + libbrotlidec: 1.1.0 hd590300_0 + libbrotlienc: 1.1.0 hd590300_0 libgcc-ng: '>=12' hash: - md5: 4601544b4982ba1861fa9b9c607b2c06 - sha256: 2357d205931912def55df0dc53573361156b27856f9bf359d464da162812ec1f + md5: 3db48055eab680e43a122e2c7494e7ae + sha256: 8ec33c09c428fcc5fd453e1bd349bb0000ca226716901d356bdf89cdd9b67ab2 manager: conda name: brotli optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.0.9-h166bdaf_9.conda - version: 1.0.9 + url: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_0.conda + version: 1.1.0 - category: main dependencies: python: '>=3.6' @@ -2098,14 +2121,14 @@ package: dependencies: python: '>=3.7' hash: - md5: 5d1b71c942b8421285934dad1d891ebc - sha256: f839a6e04d94069f90dd85337ea9108f058dc76771bb469a413f32bb1ba0b256 + md5: 7f3dbc9179b4dde7da98dfb151d0ad22 + sha256: db66e31866ff4250c190788769e3a8a1709237c3e9c38d7143aae95ab75fcb31 manager: conda name: certifi optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/certifi-2023.5.7-pyhd8ed1ab_0.conda - version: 2023.5.7 + url: https://conda.anaconda.org/conda-forge/noarch/certifi-2023.7.22-pyhd8ed1ab_0.conda + version: 2023.7.22 - category: main dependencies: python: '>=3.6.1' @@ -2135,14 +2158,14 @@ package: __unix: '' python: '>=3.8' hash: - md5: fcae73fbdce7981fd500c626bb1ba6ab - sha256: 63f2b103488ba80b274f25bade66394fdd02344024fce45ab44e45861931c61d + md5: f3ad426304898027fc619827ff428eca + sha256: f0016cbab6ac4138a429e28dbcb904a90305b34b3fe41a9b89d697c90401caec manager: conda name: click optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/click-8.1.4-unix_pyh707e725_0.conda - version: 8.1.4 + url: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda + version: 8.1.7 - category: main dependencies: python: '>=3.6' @@ -2209,14 +2232,14 @@ package: dependencies: python: 2.7|>=3.6 hash: - md5: b65b4d50dbd2d50fa0aeac367ec9eed7 - sha256: 06eb7167d4d760b3b437a491e32ab5b3f89e2a18f023c117fe213b038d88538a + md5: 12d8aae6994f342618443a8f05c652a0 + sha256: 13c887cb4a29e1e853a118cfc0e42b72a7e1d1c50c66c0974885d37f0db30619 manager: conda name: distlib optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.6-pyhd8ed1ab_0.tar.bz2 - version: 0.3.6 + url: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.7-pyhd8ed1ab_0.conda + version: 0.3.7 - category: main dependencies: python: '>=3.10,<3.11.0a0' @@ -2234,26 +2257,26 @@ package: dependencies: python: '>=3.7' hash: - md5: de4cb3384374e1411f0454edcf546cdb - sha256: 7b23ea0169fa6e7c3a0867d96d9eacd312759f83e5d83ad0fcc93e85379c16ae + md5: e6518222753f519e911e83136d2158d9 + sha256: c28f715e049fe0f09785660bcbffa175ffb438720e5bc5a60d56d4b08364b315 manager: conda name: exceptiongroup optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.1.2-pyhd8ed1ab_0.conda - version: 1.1.2 + url: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.1.3-pyhd8ed1ab_0.conda + version: 1.1.3 - category: main dependencies: python: '>=3.7' hash: - md5: 53522ec72e6adae42bd373ef58357230 - sha256: 1cbae9f05860f2e566e2977f14dfcd5494beb22c028b0a853ade4ec381d9de71 + md5: 3104cf0ab9fb9de393051bf92b10dbe9 + sha256: 47635be45aa6cbfd6af65c13b5f649aef84c484e1897aef625e4ad717663eebc manager: conda name: filelock optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.12.2-pyhd8ed1ab_0.conda - version: 3.12.2 + url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.12.3-pyhd8ed1ab_0.conda + version: 3.12.3 - category: main dependencies: expat: '>=2.5.0,<3.0a0' @@ -2276,26 +2299,26 @@ package: python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 hash: - md5: 25e1626333f9a0646579a162e7b174ee - sha256: 1a213bfa274e847d08cf0d8b068dc94be002c9f17acd040b5c9f2ead80c3c7c0 + md5: e239a69f354349af1117e336dd124067 + sha256: 36246402e402b5cd55ee3b216fc9a07591f554c46aabc50dcabd4607f6a33e94 manager: conda name: frozenlist optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.3.3-py310h5764c6d_0.tar.bz2 - version: 1.3.3 + url: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.4.0-py310h2372a71_0.conda + version: 1.4.0 - category: main dependencies: python: '>=3.8' hash: - md5: 50ea2067ec92dfcc38b4f07992d7e235 - sha256: 0015e12d85b454ca8e09085e9e788a6156f4f1da1b270019cab2658381d60258 + md5: b4a3c7bb3f45d47e085764ff096fa259 + sha256: 7c953b38e7d06be62a80d85dc72f899a90814e21079cb1189aa08ca6277f94ee manager: conda name: fsspec optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2023.6.0-pyh1a96a4e_0.conda - version: 2023.6.0 + url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2023.9.0-pyh1a96a4e_0.conda + version: 2023.9.0 - category: main dependencies: libgcc-ng: '>=12' @@ -2349,13 +2372,13 @@ package: gcc: 12.3.0.* gxx_impl_linux-64: 12.3.0.* hash: - md5: c6f5830abf6e0849e32eeaa8feb6af2e - sha256: e6734338ae19b90956532cbab5792e57ec0885fd1e36ab95fe0d1f6e5b5959e4 + md5: 52061516ce5d0aebb4282f72ef2347e5 + sha256: 99157a7719683e8a18d31f73a04b7b8e3121181840c9c8066b5c0438d7f49e4f manager: conda name: gxx optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.3.0-h8d2909c_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.3.0-h8d2909c_1.conda version: 12.3.0 - category: main dependencies: @@ -2473,14 +2496,28 @@ package: python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 hash: - md5: ad5647e517ba68e2868ef2e6e6ff7723 - sha256: f56d1772472b90ddda6fd0963a80dcf1960f1277b9653667a9bde62ae125f972 + md5: 741385a84f6a1b6623eb39226cc669e8 + sha256: 54bdf1fe6fdcd382d0a1c4b275aa3d3c2737bcfe4d869644ce0f351c96f995f3 manager: conda name: kiwisolver optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.4-py310hbf28c38_1.tar.bz2 - version: 1.4.4 + url: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py310hd41b1e2_0.conda + version: 1.4.5 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.10,<3.11.0a0' + python_abi: 3.10.* *_cp310 + hash: + md5: 8664f43451412071a7111211fe7e38f2 + sha256: a26e8c55b8d1b17e784c6e2ffa75ed4dec4a335c7df17f183dcc9c5149d6cd70 + manager: conda + name: lazy-object-proxy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/lazy-object-proxy-1.9.0-py310h1fa729e_0.conda + version: 1.9.0 - category: main dependencies: libgcc-ng: '>=12' @@ -2626,16 +2663,28 @@ package: version: 2.1.3 - category: main dependencies: - python: '>=3.6' + python: '>=3.8' hash: - md5: 1698a717f83cfecf644a877c174c84bd - sha256: 3ee8cbbe4004c56b695a5e734b7dc4d59dacbfefc193ee42c82238b1cf888e08 + md5: 8549fafed0351bbfaa1ddaa15fdf9b4e + sha256: 07ce65497dec537e490992758934ddbc4fb5ed9285b41387a7cca966f1a98a0f manager: conda name: more-itertools optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/more-itertools-9.1.0-pyhd8ed1ab_0.conda - version: 9.1.0 + url: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.1.0-pyhd8ed1ab_0.conda + version: 10.1.0 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: dbf6e2d89137da32fa6670f3bffc024e + sha256: a4f025c712ec1502a55c471b56a640eaeebfce38dd497d5a1a33729014cac47a + manager: conda + name: mpmath + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/mpmath-1.3.0-pyhd8ed1ab_0.conda + version: 1.3.0 - category: main dependencies: libgcc-ng: '>=12' @@ -2693,14 +2742,14 @@ package: dependencies: python: '>=3.8' hash: - md5: bb45ff9deddb045331fd039949f39650 - sha256: a8e3531fdb6f9acfde885dd94c8639c020013215dab98ff4ed82db7aa745277a + md5: 254f787d5068bc89f578bf63893ce8b4 + sha256: 6b955c8530985fa727ad3323653a54af44ecf453cfdb1b549b3edff609bd3728 manager: conda name: networkx optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/networkx-2.8.8-pyhd8ed1ab_0.tar.bz2 - version: 2.8.8 + url: https://conda.anaconda.org/conda-forge/noarch/networkx-3.1-pyhd8ed1ab_0.conda + version: '3.1' - category: main dependencies: libblas: '>=3.9.0,<4.0a0' @@ -2711,14 +2760,14 @@ package: python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 hash: - md5: 3810cbf2635cb1d0edb97715d4ad74e7 - sha256: 38ec15fe0afe9fb90bd50314ccd506f0e7d1642db0c7eb2b77627d448aa9ee6c + md5: 188e72aa313da668464e35309e9a32b0 + sha256: 81bba557f0f6109f7a1cb8f4d739e5c9ef310a49f8a2842f1fc67bd3545067b0 manager: conda name: numpy optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.25.1-py310ha4c1d20_0.conda - version: 1.25.1 + url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.25.2-py310ha4c1d20_0.conda + version: 1.25.2 - category: main dependencies: libgcc-ng: '>=12' @@ -2759,6 +2808,18 @@ package: 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.7' + hash: + md5: f3e7301de38fd621c902faf8087bc564 + sha256: 7258b7f6a8e5fcd5e5a22e0a85b89e03e9cf5049d1591bc98420fd080007f25d + manager: conda + name: pathable + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pathable-0.4.3-pyhd8ed1ab_0.tar.bz2 + version: 0.4.3 - category: main dependencies: python: '>=3.6' @@ -2771,18 +2832,30 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.9.6-pyhd8ed1ab_0.conda version: 1.9.6 +- category: main + dependencies: + python: '>=3.6' + hash: + md5: 89e3c7cdde7d3aaa2aee933b604dd07f + sha256: 7d055ffc8a02bf781a89d069db3454b453605cdaff300b82cedcc7133283e47e + manager: conda + name: pkgutil-resolve-name + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_0.tar.bz2 + version: 1.3.10 - category: main dependencies: python: '>=3.8' hash: - md5: 7263924c642d22e311d9e59b839f1b33 - sha256: ff1f70e0bd50693be7e2bad0efb2539f5dcc5ec4d638e787e703f28098e72de4 + md5: 2390bd10bed1f3fdc7a537fb5a447d8d + sha256: 7bf2ad9d747e71f1e93d0863c2c8061dd0f2fe1e582f28d292abfb40264a2eb5 manager: conda name: pluggy optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.2.0-pyhd8ed1ab_0.conda - version: 1.2.0 + url: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.3.0-pyhd8ed1ab_0.conda + version: 1.3.0 - category: main dependencies: python: '>=3.10,<3.11.0a0' @@ -2852,26 +2925,26 @@ package: dependencies: python: '>=3.7' hash: - md5: d316679235612869eba305aa7d41d9bf - sha256: 1bddeb54863c77ed5613b535a3e06a3a16b55786301a5e28c9bf011656bda686 + md5: 40e5cb18165466773619e5c963f00a7b + sha256: 3f0f0fadc6084960ec8cc00a32a03529c562ffea3b527eb73b1653183daad389 manager: conda name: pygments optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.15.1-pyhd8ed1ab_0.conda - version: 2.15.1 + url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.16.1-pyhd8ed1ab_0.conda + version: 2.16.1 - category: main dependencies: python: '>=3.6' hash: - md5: 99e28be5a278e2319834d7dc99e7bfdd - sha256: f3a64306fa0f405f10f4108d7ff42043d6fd393f940f9e98e395a3756687fc98 + md5: 912c0194f898fdb783021fd25f913c31 + sha256: 88ac94c42ade15113397e30d1831dd341399b5262fb5330b9240f915c33cd232 manager: conda name: pyjwt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.7.0-pyhd8ed1ab_0.conda - version: 2.7.0 + url: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.8.0-pyhd8ed1ab_0.conda + version: 2.8.0 - category: main dependencies: python: '>=3.3' @@ -2939,14 +3012,14 @@ package: dependencies: python: '>=3.6' hash: - md5: d3076b483092a435832603243567bc31 - sha256: e4999484f21763ca4b8f92c95b22cb6d1edc1b61d0a2bb073ee2bd11f39401b9 + md5: c93346b446cd08c169d843ae5fc0da97 + sha256: 6b680e63d69aaf087cd43ca765a23838723ef59b0a328799e6363eb13f52c49e manager: conda name: pytz optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pytz-2023.3-pyhd8ed1ab_0.conda - version: '2023.3' + url: https://conda.anaconda.org/conda-forge/noarch/pytz-2023.3.post1-pyhd8ed1ab_0.conda + version: 2023.3.post1 - category: main dependencies: __unix: '' @@ -2967,14 +3040,28 @@ package: python_abi: 3.10.* *_cp310 yaml: '>=0.2.5,<0.3.0a0' hash: - md5: 99a4d5b5df0c98e65fe625ea3ba8cc82 - sha256: 2c1b9e511cec0f90cdf524fe873d87d31cf96917a11552848d298e77e2309418 + md5: 511120451bf728d52bb37c73d4069e57 + sha256: 134f2bf206e21eff1b075c35b43e28dd97a9070ebc6879166629a7bac690348b manager: conda name: pyyaml optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-5.4.1-py310h5764c6d_4.tar.bz2 - version: 5.4.1 + url: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py310h2372a71_0.conda + version: 6.0.1 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.10,<3.11.0a0' + python_abi: 3.10.* *_cp310 + hash: + md5: 5312e9c375fbe6a45e5537ce12c8a98e + sha256: cfe6c65db315e0b5860d9cb2bb7b838a575bdb65447182f3865fe4026b521b8d + manager: conda + name: regex + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/regex-2023.8.8-py310h2372a71_0.conda + version: 2023.8.8 - category: main dependencies: __glibc: '>=2.17,<3.0.a0' @@ -3027,14 +3114,14 @@ package: dependencies: python: '>=3.7' hash: - md5: 5a7739d0f57ee64133c9d32e6507c46d - sha256: 083a0913f5b56644051f31ac40b4eeea762a88c00aa12437817191b85a753cec + md5: 4fe12573bf499ff85a0a364e00cc5c53 + sha256: dc5a777597e05ceddefc87d2f96389b7ae0afb097e558307af83a453db3e3887 manager: conda name: setuptools optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/setuptools-68.0.0-pyhd8ed1ab_0.conda - version: 68.0.0 + url: https://conda.anaconda.org/conda-forge/noarch/setuptools-68.1.2-pyhd8ed1ab_0.conda + version: 68.1.2 - category: main dependencies: python: '' @@ -3075,74 +3162,14 @@ package: dependencies: python: '>=3.5' hash: - md5: 5a31a7d564f551d0e6dff52fd8cb5b16 - sha256: 802810d8321d55e5666806d565e72949eabf77ad510fe2758ce1da2441675ef1 - manager: conda - name: sphinxcontrib-applehelp - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-1.0.4-pyhd8ed1ab_0.conda - version: 1.0.4 -- 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: 6c8c4d6eb2325e59290ac6dbbeacd5f0 - sha256: aeff20be994e6f9520a91fc177a33cb3e4d0911cdf8d27e575d001f00afa33fd - manager: conda - name: sphinxcontrib-htmlhelp - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.0.1-pyhd8ed1ab_0.conda - version: 2.0.1 -- category: main - dependencies: - python: '>=3.5' - hash: - md5: 67cd9d9c0382d37479b4d306c369a2d4 - sha256: a42415fc789e9f6ae2e18f07ac143d2e9ce73a35a55ecf1dd1b3d055dd1e6dbe + md5: da1d979339e2714c30a8e806a33ec087 + sha256: d4337d83b8edba688547766fc80f1ac86d6ec86ceeeda93f376acc04079c5ce2 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 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jsmath-1.0.1-pyhd8ed1ab_0.conda 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: '>=3.6' @@ -3171,14 +3198,14 @@ package: dependencies: python: '>=3.7' hash: - md5: 75838e8556166263a82038b51d01d5f1 - sha256: 3002e87338a98ba501fbf53981f8267b2def2548265a3622d403d06747872ccd + md5: 62f5b331c53d73e2f6c4c130b53518a0 + sha256: dc4abf58ca42f29e12b8c0f8aadedfca49cc1e97dab025d15cf000b1787df773 manager: conda name: tomlkit optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.11.8-pyha770c72_0.conda - version: 0.11.8 + url: https://conda.anaconda.org/conda-forge/noarch/tomlkit-0.12.1-pyha770c72_0.conda + version: 0.12.1 - category: main dependencies: python: '>=3.5' @@ -3197,50 +3224,50 @@ package: python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 hash: - md5: 1c510e74c87dc9b8fe1f7f9e8dbcef96 - sha256: 56bcfc59da0f6fc78afe79447b8b1327e9149a52c9dc6ee805ac73bf18ac22b6 + md5: dfb49d3ac440e1a236080f9c300e642f + sha256: 38d517c89f79f3ff0d8f3f1ce46218e0f8e3a3fea743e7f3661eb913919aa94e manager: conda name: tornado optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.3.2-py310h2372a71_0.conda - version: 6.3.2 + url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.3.3-py310h2372a71_0.conda + version: 6.3.3 - category: main dependencies: python: '>=3.6' hash: - md5: 2010a97e7298197221abc6295790ff62 - sha256: 5fb56cd0652e7cffc1141c66b09644f1dde588ef6dddcb47849a62d7b0186846 + md5: 1b133b01430fc4d03efba737aae0054f + sha256: 272505b7f8acc7dad0a32efc17e7241c18938f98c0055c5d5fb2530a32e34fe1 manager: conda name: types-pytz optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2023.3.0.0-pyhd8ed1ab_0.conda - version: 2023.3.0.0 + url: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2023.3.0.1-pyhd8ed1ab_0.conda + version: 2023.3.0.1 - category: main dependencies: python: '>=3.6' hash: - md5: 21ab63073cea60bc584a889ae8d765d8 - sha256: ee1fa0049b7c30507beb33b796df3bcd06f54b8f536cc1f69d5bec7088c200f4 + md5: 22776dce28e8ba933e5cbcf20b62c583 + sha256: 61121b7ac3c6caf322ad2789ffe0887ae9e6c3ab28c9e911871afe5977828af7 manager: conda name: types-pyyaml optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.10-pyhd8ed1ab_0.conda - version: 6.0.12.10 + url: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.11-pyhd8ed1ab_0.conda + version: 6.0.12.11 - category: main dependencies: python: '>=3.6' hash: - md5: 9a73576dfe2f764c431347b9dc35a3fc - sha256: 3e3ce73fc2575ab94a41232c8241ad20b564dbb6d0f832b9aa5df65799fc1361 + md5: 06118f39abab2ab953276a50b2775509 + sha256: 43bcd4e976c9b95a0a3d99d500e7ba294f70f713d9808511296a3f450b2f7898 manager: conda name: types-urllib3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-urllib3-1.26.25.13-pyhd8ed1ab_0.conda - version: 1.26.25.13 + url: https://conda.anaconda.org/conda-forge/noarch/types-urllib3-1.26.25.14-pyhd8ed1ab_0.conda + version: 1.26.25.14 - category: main dependencies: python: '>=3.7' @@ -3300,28 +3327,28 @@ package: version: 0.5.1 - category: main dependencies: - python: '>=3.7' + python: '>=3.8' hash: - md5: c34d9325a609381a0b0e8a5b4f325147 - sha256: c71cb65ac49692adb33735f3114b99a96c0c5140db1d56cf4ccef4fe92ea9a4c + md5: 23f16ffe9711ac76b391c60ce4ea4656 + sha256: 93aecd1b6b0fcb0ffbf96e367e56713824e648f6c02c9daaaedfef5f8e03caa9 manager: conda name: websocket-client optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.6.1-pyhd8ed1ab_0.conda - version: 1.6.1 + url: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.6.2-pyhd8ed1ab_0.conda + version: 1.6.2 - category: main dependencies: python: '>=3.7' hash: - md5: 49bb0d9e60ce1db25e151780331bb5f3 - sha256: 79b4d29b0c004014a2abd5fc2c9fcd35cc6256222b960c2a317a27c4b0d8884d + md5: 1ccd092478b3e0ee10d7a891adbf8a4f + sha256: 21bcec5373b04d739ab65252b5532b04a08d229865ebb24b5b94902d6d0a77b0 manager: conda name: wheel optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.40.0-pyhd8ed1ab_0.conda - version: 0.40.0 + url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.41.2-pyhd8ed1ab_0.conda + version: 0.41.2 - category: main dependencies: libgcc-ng: '>=12' @@ -3394,31 +3421,31 @@ package: dependencies: libgcc-ng: '>=12' xorg-kbproto: '' - xorg-libice: 1.0.* - xorg-libsm: 1.2.* - xorg-libx11: '>=1.8.4,<2.0a0' + xorg-libice: '>=1.1.1,<2.0a0' + xorg-libsm: '>=1.2.4,<2.0a0' + xorg-libx11: '>=1.8.6,<2.0a0' xorg-xproto: '' hash: - md5: ab2044e8d87dda9f74652e8e084a5569 - sha256: fbceccea26f81d557ac93ca08afa95b3638f713c43deb468488013218be11fed + md5: ae92aab42726eb29d16488924f7312cb + sha256: e7648d1efe2e858c4bc63ccf4a637c841dc971b37ded85a01be97a5e240fecfa manager: conda name: xorg-libxt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxt-1.3.0-hd590300_0.conda + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxt-1.3.0-hd590300_1.conda version: 1.3.0 - category: main dependencies: python: '>=3.8' hash: - md5: 0ea0b5003b96e53769a5f70175ff5264 - sha256: 14b78fc742efdf46e3ecff0a4b89cbdf780b8cf22c822024cc642e4284339ea4 + md5: 2da0451b54c4563c32490cb1b7cf68a1 + sha256: 16d72127e150a3d5cbdc0b82c4069ef5be135c64bc99e71e7928507910669b41 manager: conda name: zipp optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.16.0-pyhd8ed1ab_1.conda - version: 3.16.0 + url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.16.2-pyhd8ed1ab_0.conda + version: 3.16.2 - category: main dependencies: frozenlist: '>=1.1.0' @@ -3506,16 +3533,16 @@ package: - category: main dependencies: click: '' - python: '>=3.6' + python: '>=2.7' hash: - md5: 72a46ffc25701c173932fd55cf0965d3 - sha256: 7384b6c194f9822d7cc2c9d82409b2fd571fad96f95e6e27c9098f63772d36fd + md5: 7c2b6931f9b3548ed78478332095c3e9 + sha256: b36e35d735ddd29d7c592eb3de4b3979e13a9f76f1b4bc939f2cb4402758d6d0 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 + url: https://conda.anaconda.org/conda-forge/noarch/click-default-group-1.2.4-pyhd8ed1ab_0.conda + version: 1.2.4 - category: main dependencies: pastel: '>=0.2.0,<0.3.0' @@ -3541,7 +3568,7 @@ package: libuv: '' libzlib: '>=1.2.13,<1.3.0a0' ncurses: '>=6.3,<7.0a0' - rhash: '' + rhash: <=1.4.3 xz: '>=5.2.6,<6.0a0' zlib: '' zstd: '>=1.5.2,<1.6.0a0' @@ -3632,14 +3659,14 @@ package: python_abi: 3.10.* *_cp310 unicodedata2: '>=14.0.0' hash: - md5: d3d83b419c81ac718a9221442707882b - sha256: e5d22bcf75a4414d84000a3d905c70d4d2a1db96c0dfbf5a89169817351b2bb7 + md5: 1f18231ffab82f236ce074b2aaa07e54 + sha256: 63c6f5a5b94e6eb8a567e8e187761fea0edab749422aabfe85906a92062bcbe3 manager: conda name: fonttools optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.40.0-py310h2372a71_0.conda - version: 4.40.0 + url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.42.1-py310h2372a71_0.conda + version: 4.42.1 - category: main dependencies: python: '>=3.4' @@ -3693,6 +3720,19 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-6.8.0-pyha770c72_0.conda version: 6.8.0 +- category: main + dependencies: + python: '>=3.7' + zipp: '>=3.1.0' + hash: + md5: 748955a096313b51b314263402b83250 + sha256: f6a7af42e185bb188e6959c4af909cebacd291e2e1ceea6b2f246bb4da93eb7e + manager: conda + name: importlib_resources + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-5.13.0-pyhd8ed1ab_0.conda + version: 5.13.0 - category: main dependencies: more-itertools: '' @@ -3794,14 +3834,14 @@ package: tomli: '>=1.1.0' typing_extensions: '>=3.10' hash: - md5: b5750d448bc0ce0d0a10da0bb7bd9d96 - sha256: 5322d2c5cb45a1abfb7807ac1190cc949654c9fd91e0ae5a2b70f4279be995db + md5: 9b8878a92795d51dd78c40ee0f36f19a + sha256: d334188ba5268af085d7ad5cb763825ee977c3f464447b2e0404d53b10f3ed79 manager: conda name: mypy optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.4.1-py310h2372a71_0.conda - version: 1.4.1 + url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.5.1-py310h2372a71_0.conda + version: 1.5.1 - category: main dependencies: python: 2.7|>=3.7 @@ -3844,14 +3884,14 @@ package: setuptools: '' wheel: '' hash: - md5: 7288da0d36821349cf1126e8670292df - sha256: 4fe1f47f6eac5b2635a622b6f985640bf835843c1d8d7ccbbae0f7d27cadec92 + md5: e2783aa3f9235225eec92f9081c5b801 + sha256: 9e401b171856e12f6aa32ae5cc1ae1d3708aa7d705ddf359ee7dd0dffd73c2b5 manager: conda name: pip optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pip-23.1.2-pyhd8ed1ab_0.conda - version: 23.1.2 + url: https://conda.anaconda.org/conda-forge/noarch/pip-23.2.1-pyhd8ed1ab_0.conda + version: 23.2.1 - category: main dependencies: colorama: '' @@ -3862,14 +3902,14 @@ package: python: '>=3.7' tomli: '>=1.0.0' hash: - md5: 3cfe9b9e958e7238a386933c75d190db - sha256: 52b2eb4e8d0380d92d45643d0c9706725e691ce8404dab4c2db4aaf58e48a23c + md5: 003aaefc025d902eec9ed8118e76ace7 + sha256: 713f1fd92a4a3d097646f0ca59b0531ad86e74d8a3184667380c99926f540fa6 manager: conda name: pytest optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pytest-7.4.0-pyhd8ed1ab_0.conda - version: 7.4.0 + url: https://conda.anaconda.org/conda-forge/noarch/pytest-7.4.1-pyhd8ed1ab_0.conda + version: 7.4.1 - category: main dependencies: python: '>=3.6' @@ -3902,6 +3942,19 @@ package: 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.5' + six: '' + hash: + md5: fed45fc5ea0813240707998abe49f520 + sha256: 7c7052b51de0b5c558f890bb11f8b5edbb9934a653d76be086b1182b9f54185d + manager: conda + name: rfc3339-validator + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 + version: 0.1.4 - category: main dependencies: pyasn1: '>=0.1.3' @@ -3931,32 +3984,47 @@ package: platform: linux-64 url: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.17.32-py310h2372a71_0.conda version: 0.17.32 +- category: main + dependencies: + __unix: '' + gmpy2: '>=2.0.8' + mpmath: '>=0.19' + python: '>=3.8' + hash: + md5: 2f7d6347d7acf6edf1ac7f2189f44c8f + sha256: 0025dd4e6411423903bf478d1b9fbff0cbbbe546f51c9375dfd6729ef2e1a1ac + manager: conda + name: sympy + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sympy-1.12-pypyh9d50eac_103.conda + version: '1.12' - category: main dependencies: colorama: '' python: '>=3.7' hash: - md5: ed792aff3acb977d09c7013358097f83 - sha256: b35f185a678109940d34f68ac5781c3cbda9b118b8d9886b8f68ab5be6afd4fc + md5: 03c97908b976498dcae97eb4e4f3149c + sha256: b61c9222af05e8c5ff27e4a4d2eb81870c21ffd7478346be3ef644b7a3759cc4 manager: conda name: tqdm optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.65.0-pyhd8ed1ab_1.conda - version: 4.65.0 + url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.66.1-pyhd8ed1ab_0.conda + version: 4.66.1 - category: main dependencies: python: '>=3.6' types-urllib3: <1.27 hash: - md5: d4edae6cf0af5332243c2d995f5e8745 - sha256: c417ed8470ad4f5b7189ba3496ce5b5973d7767e64723b5c3d4c7d436d64ced9 + md5: 700fb06cd011d594305e3b487d5a96a2 + sha256: 3be4637a6037786dd6a8b0aed6374c8455fd79987770bc755ce12713aae916a4 manager: conda name: types-requests optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-requests-2.31.0.1-pyhd8ed1ab_0.conda - version: 2.31.0.1 + url: https://conda.anaconda.org/conda-forge/noarch/types-requests-2.31.0.2-pyhd8ed1ab_0.conda + version: 2.31.0.2 - category: main dependencies: typing_extensions: 4.7.1 pyha770c72_0 @@ -3974,34 +4042,34 @@ package: gettext: '>=0.21.1,<1.0a0' libgcc-ng: '>=12' libstdcxx-ng: '>=12' - ncurses: '>=6.3,<7.0a0' + ncurses: '>=6.4,<7.0a0' perl: '>=5.32.1,<5.33.0a0 *_perl5' python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 - xorg-libx11: '>=1.8.4,<2.0a0' - xorg-libxt: '' + xorg-libx11: '>=1.8.6,<2.0a0' + xorg-libxt: '>=1.3.0,<2.0a0' hash: - md5: e7f0a31678b40de1586967a9087cca8b - sha256: f996584fc8c85e11d9caf7554b0c857060498e5dc6ba608d0551b14b67ccaa1d + md5: 31cdaa92553ca7a1822eab5859f49c68 + sha256: 7d9a6238161940f9953ae6489ef4b7f20b6dbec9ef1b4282c5ab4e4096b168a9 manager: conda name: vim optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/vim-9.0.1425-py310pl5321he660f0e_0.conda - version: 9.0.1425 + url: https://conda.anaconda.org/conda-forge/linux-64/vim-9.0.1435-py310pl5321he660f0e_0.conda + version: 9.0.1435 - category: main dependencies: markupsafe: '>=2.1.1' python: '>=3.8' hash: - md5: 55fbbb3e67185820ee2007395bfe0073 - sha256: 28515f7ddb8a20f1436b9ac3a6ba2aa9be337995e4ee63c72d0f5d0efd6a2062 + md5: e41528da0d8b8bbf4acc7255192132e3 + sha256: b426b0fcb6137ef858746ef86bddee7f0c881a9c84b67ed40b2feb1b5b47f5b6 manager: conda name: werkzeug optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/werkzeug-2.3.6-pyhd8ed1ab_0.conda - version: 2.3.6 + url: https://conda.anaconda.org/conda-forge/noarch/werkzeug-2.3.7-pyhd8ed1ab_0.conda + version: 2.3.7 - category: main dependencies: libgcc-ng: '>=9.3.0' @@ -4049,34 +4117,17 @@ package: version: 0.5.0 - category: main dependencies: - python: '>=3.6' + python: '>=3.7' typing-extensions: '>=3.6.5' hash: - md5: 25e79f9a1133556671becbd65a170c78 - sha256: a08b78e6fadee1ffac0f255363d2a08a0c589c7403fd2a71c1c0b6aafd5e0737 + md5: 3ce482ec3066e6d809dbbb1d1679f215 + sha256: bd8b698e7f037a9c6107216646f1191f4f7a7fc6da6c34d1a6d4c211bcca8979 manager: conda name: async-timeout optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/async-timeout-4.0.2-pyhd8ed1ab_0.tar.bz2 - version: 4.0.2 -- category: main - dependencies: - cffi: '>=1.1' - libgcc-ng: '>=12' - pip: '' - python: '>=3.10,<3.11.0a0' - python_abi: 3.10.* *_cp310 - six: '>=1.4.1' - hash: - md5: b9ed1abcb93da7b8683fd071b81bab6c - sha256: cd7a5ea724a05f16ff74fdf7fcd1d13ba179e37f600bb56d137ad13a5139ec83 - manager: conda - name: bcrypt - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/bcrypt-3.2.2-py310h5764c6d_1.tar.bz2 - version: 3.2.2 + url: https://conda.anaconda.org/conda-forge/noarch/async-timeout-4.0.3-pyhd8ed1ab_0.conda + version: 4.0.3 - category: main dependencies: cffi: '>=1.0.0' @@ -4146,16 +4197,16 @@ package: itsdangerous: '>=2.1.2' jinja2: '>=3.1.2' python: '>=3.8' - werkzeug: '>=2.3.3' + werkzeug: '>=2.3.7' hash: - md5: 816d75d4c0f2e41b5765d17498c57a2e - sha256: f93246be286f2d0f93e85c4f08f9ce48f3eed875a79225e2ea119e70c0237421 + md5: 9b0d29067484a8dfacfae85b8fba81bc + sha256: 4f84ffdc5471236e8225db86c7508426b46aa2c3802d58ca40b3c3e174533b39 manager: conda name: flask optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/flask-2.3.2-pyhd8ed1ab_0.conda - version: 2.3.2 + url: https://conda.anaconda.org/conda-forge/noarch/flask-2.3.3-pyhd8ed1ab_0.conda + version: 2.3.3 - category: main dependencies: curl: '' @@ -4164,32 +4215,32 @@ package: libgcc-ng: '>=12' libiconv: '>=1.17,<2.0a0' libzlib: '>=1.2.13,<1.3.0a0' - openssl: '>=3.1.1,<4.0a0' + openssl: '>=3.1.2,<4.0a0' pcre2: '>=10.40,<10.41.0a0' perl: 5.* hash: - md5: 14f8341e26b274362b026bbdc72b14fb - sha256: 46aac096868527843ad7083c254e32b5451fc1e304036dcac4243b66c08a8517 + md5: 96ad24c67e0056d171385859c43218a2 + sha256: 6f6b3d60da46f53f1e1708a63d6ce5f119e6aba0f5243326b7ecaf3b0cdbc6d4 manager: conda name: git optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/git-2.41.0-pl5321h86e50cf_0.conda - version: 2.41.0 + url: https://conda.anaconda.org/conda-forge/linux-64/git-2.42.0-pl5321h86e50cf_0.conda + version: 2.42.0 - category: main dependencies: gitdb: '>=4.0.1,<5' python: '>=3.7' typing_extensions: '>=3.7.4.3' hash: - md5: 5809a12901d57388444c3293c975d0bb - sha256: 07008a94189e570fcabe003b99bd50b8263f60c824f36f81a8819bb7cf7eab1b + md5: 3c3d8c89c2fe64dc925ca492d67fab1a + sha256: e70b7c7c072f099af8ab004feb099f72e85f60fed2dc1e3dcedf166903ab9822 manager: conda name: gitpython optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.32-pyhd8ed1ab_0.conda - version: 3.1.32 + url: https://conda.anaconda.org/conda-forge/noarch/gitpython-3.1.34-pyhd8ed1ab_0.conda + version: 3.1.34 - category: main dependencies: cairo: '>=1.16.0,<2.0a0' @@ -4224,19 +4275,20 @@ package: dependencies: attrs: '>=17.4.0' importlib-metadata: '' - pyrsistent: '>=0.14.0' - python: '>=3.6' - setuptools: '' - six: '>=1.11.0' + importlib_resources: '>=1.4.0' + pkgutil-resolve-name: '>=1.3.10' + pyrsistent: '!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0' + python: '>=3.7' + typing_extensions: '' hash: - md5: 66125e28711d8ffc04a207a2b170316d - sha256: d74a3ddd3c3dd9bd7b00110a196e3af90490c5660674f18bfd53a8fdf91de418 + md5: 723268a468177cd44568eb8f794e0d80 + sha256: 4f68a23430d1afc5c9b41c46fbac0ade33c0bf57a293c646bfdd6dc65350eada 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 + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.17.3-pyhd8ed1ab_0.conda + version: 4.17.3 - category: main dependencies: elfutils: '>=0.187,<0.188.0a0' @@ -4244,7 +4296,6 @@ package: libzlib: '>=1.2.12,<1.3.0a0' hash: md5: 5b3ed39ee3809d63d347b649de0a45f8 - sha256: null manager: conda name: libdwarf optional: false @@ -4282,21 +4333,21 @@ package: dependencies: libgcc-ng: '>=12' libstdcxx-ng: '>=12' - numpy: '>=1.21.6,<2.0a0' + numpy: '>=1.22.4,<2.0a0' python: '>=3.10,<3.11.0a0' python-dateutil: '>=2.8.1' python-tzdata: '>=2022a' python_abi: 3.10.* *_cp310 pytz: '>=2020.1' hash: - md5: 11e0099d4571b4974c04386e4ce679ed - sha256: e8937c160b6eb469c5d80971046b25ed305fd97a8b1d6880de7c4a660cd245c3 + md5: 6c92da4ec4e301d09a365c0584e632c8 + sha256: 6e545eeee4e7d223c0bd7efe6a1e5b6f054228e9bfd8b151b24c257fcfe0c893 manager: conda name: pandas optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.0.3-py310h7cbd5c2_1.conda - version: 2.0.3 + url: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.0-py310hcc13569_0.conda + version: 2.1.0 - category: main dependencies: pip: '' @@ -4315,14 +4366,29 @@ package: python: '>=3.7' typing-extensions: '>=4.6.3' hash: - md5: e76070baecfaca6ecdb5fbd5af7c9309 - sha256: b5012d6fd30f2462b6ca595539cfdae9aaf61b3b7a56e51ab94aef0fd9efcd3d + md5: 0809187ef9b89a3d94a5c24d13936236 + sha256: 1b5c0ca2f4260c7dd8cfccd8a641c1e41876c79dc594506be379cde08f5b471e manager: conda name: platformdirs optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-3.8.1-pyhd8ed1ab_0.conda - version: 3.8.1 + url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-3.10.0-pyhd8ed1ab_0.conda + version: 3.10.0 +- category: main + dependencies: + libgcc-ng: '>=12' + python: '>=3.10,<3.11.0a0' + python_abi: 3.10.* *_cp310 + typing-extensions: '>=4.2.0' + hash: + md5: 92818992253ff7f7ea4924785b1eadb9 + sha256: 6ab9ab48fec65d3ddbb7ed2249cd5fc01ba129aee1cdc65003ec79ee6a1e6778 + manager: conda + name: pydantic + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-1.10.12-py310h2372a71_1.conda + version: 1.10.12 - category: main dependencies: libgcc-ng: '>=12' @@ -4386,14 +4452,14 @@ package: pip: '' python: '>=3.7,<4.0' hash: - md5: ffabccdca64c44c1f23a8df134708897 - sha256: dbc0641f63dbf6d2d2e9b17a21ae8e0b3cb8e24ffa675e06cf5ce6f76d6a58d8 + md5: 6f590190c5393999bbc399ff15096bc3 + sha256: 000ed005cc95397866267072230e2f08407f5898ba2ac469200018492e73a875 manager: conda name: types-awscrt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/types-awscrt-0.16.23-pyhd8ed1ab_0.conda - version: 0.16.23 + url: https://conda.anaconda.org/conda-forge/noarch/types-awscrt-0.19.1-pyhd8ed1ab_0.conda + version: 0.19.1 - category: main dependencies: cffi: '' @@ -4429,19 +4495,18 @@ package: version: 1.2.3 - category: main dependencies: - cffi: '>=1.11' + cffi: '>=1.8' libgcc-ng: '>=12' python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 - zstd: '>=1.5.2,<1.6.0a0' hash: - md5: a2b48edcd52593cdf007158ce10e1520 - sha256: 76a443ffcda1c290dbcc8c0bbe15a0f0ee0b57009cf842940f3382672780ddd8 + md5: 74ea667169b1296fb31bb86f13abfa49 + sha256: 958e22d2b24204e08ca0d64db55d63520583db99852cecc82d22c1a3832b23a2 manager: conda name: zstandard optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.19.0-py310h1275a96_2.conda + url: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.19.0-py310h5764c6d_0.tar.bz2 version: 0.19.0 - category: main dependencies: @@ -4456,28 +4521,28 @@ package: python_abi: 3.10.* *_cp310 yarl: '>=1.0,<2.0' hash: - md5: 05d01d95b7838f86796b18a80fd42584 - sha256: 475f5618a9b6228bd1b5ac37c1866ff01d52c39d04fe2c53ddd3ae888f6d19a1 + md5: 0b05c509a96d0bf4bb424fe184170795 + sha256: 5cb7647fe64617424027125dab858b96cd0d7b91b1c39fbc7d508a500b7ba9c1 manager: conda name: aiohttp optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.8.4-py310h2372a71_1.conda - version: 3.8.4 + url: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.8.5-py310h2372a71_0.conda + version: 3.8.5 - category: main dependencies: - python: '>=3.6' + python: '>=3.7,<4.0' types-awscrt: '' - typing_extensions: '' + typing_extensions: '>=4.1.0' hash: - md5: 63ed81138f359d75fb3f8c1e8deadfe0 - sha256: e181ec7110dc831c91b4660de20e0023b0adc898bcde34cc2048d7fc286b2fb3 + md5: 656a8ea23e1f7195e402ee126cd0e036 + sha256: 8533293be957aa444689d17c297207d3a76a3d75308f917edc13dc1703055b6a manager: conda name: botocore-stubs optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/botocore-stubs-1.29.165-pyhd8ed1ab_0.conda - version: 1.29.165 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-stubs-1.31.41-pyhd8ed1ab_0.conda + version: 1.31.41 - category: main dependencies: clang-format: 16.0.3 default_h1cdf331_2 @@ -4500,14 +4565,14 @@ package: python: '>=3.7' zstandard: '>=0.15' hash: - md5: ebe3230a4c1e135954eee4fb6ef8cded - sha256: a437007aa798f6d1c9f079f4dbb2a38685ac306d5a5ce3d1ee797c2de9f7d6e9 + md5: 38253361efb303deead3eab39ae9269b + sha256: 654a2488f77bf43555787d952dbffdc5d97956ff4aa9e0414a7131bb741dcf4c manager: conda name: conda-package-streaming optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/conda-package-streaming-0.8.0-pyhd8ed1ab_0.conda - version: 0.8.0 + url: https://conda.anaconda.org/conda-forge/noarch/conda-package-streaming-0.9.0-pyhd8ed1ab_0.conda + version: 0.9.0 - category: main dependencies: flask: '>=0.9' @@ -4527,14 +4592,14 @@ package: python: '>=3.6' ukkonen: '' hash: - md5: a4085ab0562d5081a9333435837b538a - sha256: 4027103c59220a68b41aed056d2ce89d46e4971033d259293ca07198a8a81fdc + md5: 6fbde8d3bdd1874132a1b26a3554b22c + sha256: 5aece5a948e881e2450be73002e52cd27df089b6ea64416f7694304307f66bd2 manager: conda name: identify optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.24-pyhd8ed1ab_0.conda - version: 2.5.24 + url: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.27-pyhd8ed1ab_0.conda + version: 2.5.27 - category: main dependencies: importlib_metadata: '' @@ -4548,6 +4613,22 @@ package: 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: + jsonschema: '>=4.0.0,<4.18.0' + pathable: '>=0.4.1,<0.5.0' + python: '>=3.6' + pyyaml: '>=5.1' + typing_extensions: '>=4.3.0,<5.0.0' + hash: + md5: eff09facc908d5619097edd090678347 + sha256: 9ed0cbf1fec505c4ed2238453b42c964f8f85baa30490daeb84dbf5afd65c0b1 + manager: conda + name: jsonschema-spec + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-spec-0.1.4-pyhd8ed1ab_0.conda + version: 0.1.4 - category: main dependencies: elfutils: '>=0.187,<0.188.0a0' @@ -4556,7 +4637,6 @@ package: libzlib: '>=1.2.12,<1.3.0a0' hash: md5: 899c511688e6c41cb51c2921a8d25e63 - sha256: null manager: conda name: libdwarf-dev optional: false @@ -4565,17 +4645,19 @@ package: version: 0.0.0.20190110_28_ga81397fc4 - category: main dependencies: - jsonschema: '>=3.0.0,<5.0.0' + attrs: '>=19.2.0' + jsonschema: '>=4.0.0,<4.18.0' python: '>=3.7' + rfc3339-validator: '' hash: - md5: 277aff70bb1def188c9c016ba4564e23 - sha256: 0c2f971f86211f2b6db431de9d8ab4c9e38eed5422bd06f93cd8be3cbb882a2c + md5: 6294c4a75fdeeca454e99abbea3f250a + sha256: 6b6fff6441e2673a822793776217f1c07d595ad7a73e7b631c7aeb8ac6663041 manager: conda name: openapi-schema-validator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/openapi-schema-validator-0.2.3-pyhd8ed1ab_0.tar.bz2 - version: 0.2.3 + url: https://conda.anaconda.org/conda-forge/noarch/openapi-schema-validator-0.4.4-pyhd8ed1ab_0.conda + version: 0.4.4 - category: main dependencies: alsa-lib: '>=1.2.9,<1.2.10.0a0' @@ -4633,31 +4715,14 @@ package: pynacl: '>=1.5' python: '>=3.6' hash: - md5: f212c7eb95e909df4795297f73690993 - sha256: e425a03e5e2ef2ec5a78711686c59cfceeeeec3a98165fbc7d186bd6a5cb78de + md5: 8d4563992b27cdb8e673d1ca16962c9d + sha256: 9139c13cb7ea5729af862db5fb0523daa5900b9b4fa36637cd7f9c01be665f80 manager: conda name: paramiko optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/paramiko-3.2.0-pyhd8ed1ab_0.conda - version: 3.2.0 -- category: main - dependencies: - annotated-types: '>=0.4.0' - libgcc-ng: '>=12' - pydantic-core: 2.1.2 - python: '>=3.10,<3.11.0a0' - python_abi: 3.10.* *_cp310 - typing-extensions: '>=4.6.1' - hash: - md5: 4f6be3167ecdaa7a0da00a9774be695a - sha256: a056749c12c9e287d60aeb8a6796086138dea348b04da1e100ddc19949f1dc7d - manager: conda - name: pydantic - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pydantic-2.0.2-py310h2372a71_1.conda - version: 2.0.2 + url: https://conda.anaconda.org/conda-forge/noarch/paramiko-3.3.1-pyhd8ed1ab_0.conda + version: 3.3.1 - category: main dependencies: cryptography: '>=38.0.0,<42,!=40.0.0,!=40.0.1' @@ -4733,32 +4798,33 @@ package: version: 3.3.1 - category: main dependencies: - distlib: <1,>=0.3.6 - filelock: <4,>=3.12 - platformdirs: <4,>=3.5.1 + distlib: <1,>=0.3.7 + filelock: <4,>=3.12.2 + platformdirs: <4,>=3.9.1 python: '>=3.8' hash: - md5: 838b85f656b078bdd882ef97978e7f40 - sha256: 92dd17aef10e5c35289da3a588cbed3e593c22ee53478a00ccb1fdf92fe0e84e + md5: c3feaf947264a59a125e8c26e98c3c5a + sha256: 85c96449202ca87ec12783d8675b3655b4cd7b7afe49f2dc37d743adb0ed177f manager: conda name: virtualenv optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.23.1-pyhd8ed1ab_0.conda - version: 20.23.1 + url: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.24.4-pyhd8ed1ab_0.conda + version: 20.24.4 - category: main dependencies: - conda-package-streaming: '>=0.7.0' + conda-package-streaming: '>=0.9.0' python: '>=3.7' + zstandard: '>=0.15' hash: - md5: 44800e9bd13143292097c65e57323038 - sha256: c453b2a648e7a059f26326d476069cf81627c9a3fa12da4ab22eb39e7bfdc095 + md5: 8a3ae7f6318376aa08ea753367bb7dd6 + sha256: 9a221808405d813d8c555efce6944379b907d36d79e77d526d573efa6b996d26 manager: conda name: conda-package-handling optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/conda-package-handling-2.0.2-pyh38be061_0.conda - version: 2.0.2 + url: https://conda.anaconda.org/conda-forge/noarch/conda-package-handling-2.2.0-pyh38be061_0.conda + version: 2.2.0 - category: main dependencies: atk-1.0: '>=2.36.0' @@ -4829,20 +4895,22 @@ package: version: 2.56.0 - category: main dependencies: - jsonschema: '>=3.2.0,<5.0.0' - openapi-schema-validator: '>=0.2.0,<0.3.0' + importlib_resources: '>=5.8.0,<6.0.0' + jsonschema: '>=4.0.0,<4.18.0' + jsonschema-spec: '>=0.1.1,<0.2.0' + lazy-object-proxy: '>=1.7.1,<2.0.0' + openapi-schema-validator: '>=0.4.2,<0.5' python: '>=3.7' - pyyaml: '>=5.1' - setuptools: '' + typing_extensions: '' hash: - md5: 5ff3ff67d18fd4938c4ae38c3baf21bb - sha256: 11f24d36001aaba0a7197ff7b9a07ab943d05f969b13e5a9c4ffec13eca19cd0 + md5: 365a6ba8516ec76591f32918895502d5 + sha256: 6364d948b9215a15a0482eafab725d9acdad6d03c744501c8fdedfac0d8e12ff manager: conda name: openapi-spec-validator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/openapi-spec-validator-0.4.0-pyhd8ed1ab_1.tar.bz2 - version: 0.4.0 + url: https://conda.anaconda.org/conda-forge/noarch/openapi-spec-validator-0.5.7-pyhd8ed1ab_0.conda + version: 0.5.7 - category: main dependencies: cfgv: '>=2.0.0' @@ -4852,27 +4920,27 @@ package: pyyaml: '>=5.1' virtualenv: '>=20.10.0' hash: - md5: dd64a0e440754ed97610b3e6b502b6b1 - sha256: 3df1434057ce827d88cdd84578732030b3d4b5a0bc6c58bff12b7f8001c1be5b + md5: f0fe759dc1dc02722c15cfb5faa1172b + sha256: 7adddcb9b5651fe5ed08a8438f2c967ac126c8b3fa854376a9a6f97511810c6a manager: conda name: pre-commit optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.3.3-pyha770c72_0.conda - version: 3.3.3 + url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.4.0-pyha770c72_0.conda + version: 3.4.0 - category: main dependencies: __unix: '' openjdk: '>=8' hash: - md5: 67177beb0a5d0968d7b2935b7901d955 - sha256: f0582f7f4f90231754f6532de13d9737ed422a5bb086962dcf0380c0ea2513df + md5: a46fac25dff2221c873bfceab88fcb47 + sha256: 08012e6a1ab95c56b86fe76ca76d236db8aa60f6cb4a47db6ef307671aeb2c1b manager: conda name: sbt optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sbt-1.9.2-h707e725_0.conda - version: 1.9.2 + url: https://conda.anaconda.org/conda-forge/noarch/sbt-1.9.4-h707e725_0.conda + version: 1.9.4 - category: main dependencies: brotlipy: '>=0.6.0' @@ -4898,14 +4966,14 @@ package: python-dateutil: '>=2.1,<3.0.0' urllib3: '>=1.25.4,<1.27' hash: - md5: 191ea267121cccd3531e98ea5b869b87 - sha256: 3172c3714a3c6abc729af5335dfbf2ac02acc01ec64ad1d30413bd49f1bd0497 + md5: 157c6bb045111f1b4f68e16df9251e7e + sha256: ab65ee4c7f97d8072f25891c8329ad54dece85fefc5053e31266275ea6db637c manager: conda name: botocore optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.31.2-pyhd8ed1ab_0.conda - version: 1.31.2 + url: https://conda.anaconda.org/conda-forge/noarch/botocore-1.31.41-pyhd8ed1ab_0.conda + version: 1.31.41 - category: main dependencies: cairo: '>=1.16.0,<2.0a0' @@ -4973,50 +5041,53 @@ package: six: '>=1.11.0' typing-extensions: '>=4.0.1' hash: - md5: 3f61696f5c09ca1e7001d042c9968c1d - sha256: da22c5d95a9ed937509b696568cd51580f3becec90febf0e5b1aca1096bf4c24 + md5: d336f70469313f6c1eaf3c645b071961 + sha256: 826fb6bf9e20fd7afa4ec971ad0c343cc39b7bd872709d3c4d11a0c397006ed6 manager: conda name: azure-core optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/azure-core-1.28.0-pyhd8ed1ab_0.conda - version: 1.28.0 + url: https://conda.anaconda.org/conda-forge/noarch/azure-core-1.29.3-pyhd8ed1ab_0.conda + version: 1.29.3 - category: main dependencies: msgpack-python: '>=0.5.2' - python: '>=3.6' + python: '>=3.7' requests: '>=2.16.0' hash: - md5: 9f0b2eb5f5dd2cec36d5342a80adfec0 - sha256: 894e2f4c59221b9633c60281a17fefe09ba0bf5d996992cebeb504d0585dd0dd + md5: 174bd699bb5aa9e2622eb4b288276ff8 + sha256: aae7ab3a54989f9bf9273e4a17c911ba339a8b9354250bc11fb8eff2e3f4be60 manager: conda name: cachecontrol optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-0.13.0-pyhd8ed1ab_0.conda - version: 0.13.0 + url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-0.13.1-pyhd8ed1ab_0.conda + version: 0.13.1 - category: main dependencies: + boltons: '>=23.0.0' conda-package-handling: '>=1.3.0' + jsonpatch: '>=1.32' + packaging: '>=23.0' pluggy: '>=1.0.0' pycosat: '>=0.6.3' pyopenssl: '>=16.2.0' python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 - requests: '>=2.20.1,<3' + requests: '>=2.27.0,<3' ruamel.yaml: '>=0.11.14,<0.18' - setuptools: '>=31.0.1' + setuptools: '>=60.0.0' toolz: '>=0.8.1' tqdm: '>=4' hash: - md5: c50e15e4014d4a2fca0085a813cd6393 - sha256: f7ab7af6f2850ba7da16436b485cd007a2c6b022f9af2ecc56511aebd9f5a085 + md5: f31c3517413898e0429d44a1c848f1fd + sha256: 111119742c7e25b6241c89a026f07c11d4668e6a6f1ce21216ed322a549b09e8 manager: conda name: conda optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/conda-22.11.1-py310hff52083_1.conda - version: 22.11.1 + url: https://conda.anaconda.org/conda-forge/linux-64/conda-23.7.3-py310hff52083_0.conda + version: 23.7.3 - category: main dependencies: packaging: '>=14.0' @@ -5053,19 +5124,19 @@ package: version: 1.4.3 - category: main dependencies: - cryptography: '>=0.6,<43' + cryptography: '>=0.6,<44' pyjwt: '>=1.0.0,<3' python: '>=3.6' requests: '>=2.0.0,<3' hash: - md5: 24c290ee3278fd9a33b00cd1f8d1db0f - sha256: 7f4cc4d6383263ad9cc69dc83bb5dd5d4a309ebe53f117e1d14ffd76f31939de + md5: 4af1ca41814694c1028c4f1b1f88c38f + sha256: 50f80fe167d5ca5be572174f3fcad4f4cef225dcf1feccc88fbaf3d661fe15c9 manager: conda name: msal optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/msal-1.22.0-pyhd8ed1ab_0.conda - version: 1.22.0 + url: https://conda.anaconda.org/conda-forge/noarch/msal-1.23.0-pyhd8ed1ab_0.conda + version: 1.23.0 - category: main dependencies: graphviz: '>=2.46.1' @@ -5101,91 +5172,62 @@ package: botocore: '>=1.12.36,<2.0a.0' python: '>=3.7' hash: - md5: b19a857ac845097e9c823c9f4d35f80e - sha256: 99512bf4f4e297cc7565c94eee8ccc908411f836b341668e2b5d064273e21762 + md5: f57096b122c78f7d8bd6885f52db1077 + sha256: 636453288a2436016235b86ec9bdf6c965aabe2114a68c51809874014255db71 manager: conda name: s3transfer optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/s3transfer-0.6.1-pyhd8ed1ab_0.conda - version: 0.6.1 + url: https://conda.anaconda.org/conda-forge/noarch/s3transfer-0.6.2-pyhd8ed1ab_0.conda + version: 0.6.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.31.2 + botocore: 1.31.41 colorama: '>=0.2.5,<0.4.5' docutils: '>=0.10,<0.17' python: '>=3.10,<3.11.0a0' python_abi: 3.10.* *_cp310 - pyyaml: '>=3.10,<5.5' + pyyaml: '>=3.10,<6.1' rsa: '>=3.1.2,<4.8' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 090abd0e0146575f4a7b5c6cbb71e866 - sha256: 2b66dc496eae7517bcf85b8ef54bf5512bc4ca7b710fd710b30d22b68ec4477d + md5: 576254ebc0d459740aadfe1ee0e9a604 + sha256: 4cc5957518f5cf5f1693bbc55f1184a2e1f2a45e1d47cb90613c55a3ad9a88ba manager: conda name: awscli optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.29.2-py310hff52083_0.conda - version: 1.29.2 + url: https://conda.anaconda.org/conda-forge/linux-64/awscli-1.29.41-py310hff52083_0.conda + version: 1.29.41 - category: main dependencies: - botocore: '>=1.31.2,<1.32.0' + botocore: '>=1.31.41,<1.32.0' jmespath: '>=0.7.1,<2.0.0' python: '>=3.7' s3transfer: '>=0.6.0,<0.7.0' hash: - md5: 1ebffec127102119aff7a572243464da - sha256: 454975a1def5ec1043925403547f9cf938c91a534c62cba509eb108b253bbf89 + md5: 904d83242795391e42132fba9ce95884 + sha256: 1766d30554de4c2cda01284620c69e9306d14329bfd1b60324c25668dfa36a18 manager: conda name: boto3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.28.2-pyhd8ed1ab_0.conda - version: 1.28.2 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-1.28.41-pyhd8ed1ab_0.conda + version: 1.28.41 - category: main dependencies: - cachecontrol: 0.13.0 pyhd8ed1ab_0 - lockfile: '>=0.9' - python: '>=3.6' + cachecontrol: 0.13.1 pyhd8ed1ab_0 + filelock: '>=3.8.0' + python: '>=3.7' hash: - md5: 3fd3d55ea862cc0736ac1cce6f44c2d1 - sha256: a8e20149f8ef160fbac5c751733638ccd5f35e20f3f552cfd46a467ffeceeeaf + md5: 8c4781ca0893cff3a64423954ce234a1 + sha256: 7fd3cd4a667da284ae3aad9b8cb4d592099bc02ed6566cbae00bd8c0b0604e85 manager: conda name: cachecontrol-with-filecache optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-with-filecache-0.13.0-pyhd8ed1ab_0.conda - version: 0.13.0 + url: https://conda.anaconda.org/conda-forge/noarch/cachecontrol-with-filecache-0.13.1-pyhd8ed1ab_0.conda + version: 0.13.1 - category: main dependencies: colorama: '' @@ -5204,20 +5246,21 @@ package: - category: main dependencies: __unix: '' - conda: '>=4.6,<23.1.0' + conda: '>=4.6' conda-standalone: '' + jinja2: '' pillow: '>=3.1' python: '>=3.7' - ruamel_yaml: '>=0.11.14,<0.16' + ruamel.yaml: '>=0.11.14,<0.18' hash: - md5: 531dd21a6980012d3f5c01f9e5335c5b - sha256: 311cd96ecabd6557daa8aecaef858fb053acf4cda195a1d34a9a28c998807596 + md5: 874c9c92cfcb27369d5620eb65f9ec9c + sha256: cad7b6bdf433da141dabcbb7c138e8665db20382e000ff9629b6d0c9141528b0 manager: conda name: constructor optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/constructor-3.4.3-pyhe4f9e05_0.conda - version: 3.4.3 + url: https://conda.anaconda.org/conda-forge/noarch/constructor-3.4.5-pyh55f8243_0.conda + version: 3.4.5 - category: main dependencies: msal: '>=0.4.1,<2.0' @@ -5234,46 +5277,20 @@ package: version: 1.0.0 - category: main dependencies: - livereload: '>=2.3.0' - python: '>=3.6' - sphinx: '' + boto3: '>=1.19.5,<2' + jsonschema: '>=3.2,<5' + pydantic: ~=1.10.2 + python: '>=3.7' + typing_extensions: '>=4.4.0,<5' 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: - python: '>=2.7' - sphinx: '>=1.8' - hash: - md5: 914897066d5873acfb13e75705276ad1 - sha256: 2e5f16a2d58f9a31443ffbb8ce3852cfccf533a6349045828cd2e994ef0679ca - manager: conda - name: sphinxcontrib-jquery - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jquery-4.1-pyhd8ed1ab_0.conda - version: '4.1' -- category: main - dependencies: - boto3: ~=1.5 - jsonschema: ~=3.2 - python: '>=3.6' - six: ~=1.15 - hash: - md5: 6a8ad721f4edea85a40070c78f379dd4 - sha256: d9b2ff5fdf1e8de7cf80f2a14a7cb76c65c0bae18a2fe51700e6ed3c71fdb5b5 + md5: 2f1c7e055a216b95454484d831cc60b3 + sha256: ad418000db6c5105416a87be77026944450cd5b922dd46da0d39782fad35ba33 manager: conda name: aws-sam-translator optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/aws-sam-translator-1.55.0-pyhd8ed1ab_0.conda - version: 1.55.0 + url: https://conda.anaconda.org/conda-forge/noarch/aws-sam-translator-1.73.0-pyhd8ed1ab_0.conda + version: 1.73.0 - category: main dependencies: azure-core: '>=1.11.0,<2.0.0' @@ -5297,14 +5314,14 @@ package: python: '' typing_extensions: '' hash: - md5: 31349469d53ac0877f3a90842023571d - sha256: feb48351ca5a328d200a7307d041b05f5d1e476151929951e1a11a1ecede8d4e + md5: 772310fe036b21f322cfafff4e3c8169 + sha256: 8695b9bc5fcab93aed3b1aa5bda8f3922340bc10a14088fa623470db4c9a558d manager: conda name: boto3-stubs optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/boto3-stubs-1.28.2-pyhd8ed1ab_0.conda - version: 1.28.2 + url: https://conda.anaconda.org/conda-forge/noarch/boto3-stubs-1.28.41-pyhd8ed1ab_0.conda + version: 1.28.41 - category: main dependencies: cachecontrol-with-filecache: '>=0.12.9' @@ -5345,28 +5362,28 @@ package: python: '>=3.6' typing-extensions: '' hash: - md5: 1c53cbf18ef82bac6c4957398f107d61 - sha256: 5bd251a81e5ee934e0945530d00f46944c4dc5e8fad001ce761ef89310f9c9cc + md5: 7654bffc34df00bef7662f5aaede6024 + sha256: 0bb7792dbb38eaf3a75fe5ae547aaf62197b140feb5a624e80adc028f9fbc864 manager: conda name: mypy-boto3-s3 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/mypy-boto3-s3-1.28.0-pyhd8ed1ab_0.conda - version: 1.28.0 + url: https://conda.anaconda.org/conda-forge/noarch/mypy-boto3-s3-1.28.36-pyhd8ed1ab_0.conda + version: 1.28.36 - category: main dependencies: boto3: '' python: '>=3.6' typing-extensions: '' hash: - md5: 7af6a634a654ee7aac1941e05cf1568c - sha256: 4fee92b4e5580dfd13fe942ae307100666064121197b94de5c824c3dd98eb327 + md5: 8678482bae631d4af00874831dbe4798 + sha256: 72f952beb3209ea9cfb20011c26e6239c38b14fdafc216fa773eec4b644db326 manager: conda name: mypy_boto3_ec2 optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/mypy_boto3_ec2-1.28.0-pyhd8ed1ab_0.conda - version: 1.28.0 + url: https://conda.anaconda.org/conda-forge/noarch/mypy_boto3_ec2-1.28.41-pyhd8ed1ab_0.conda + version: 1.28.41 - category: main dependencies: boto3: '' @@ -5383,39 +5400,26 @@ package: version: 0.4.2 - category: main dependencies: - docutils: <0.19 - python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*' - sphinx: '>=1.6,<7' - sphinxcontrib-jquery: '>=4,<5' - hash: - md5: 5ef6aaf2cfb3b656cdadb431daed6a9f - sha256: 129cab0a4cddd57fa58930c306ca8363c8ac2c40bd40b784210603b17abb5639 - manager: conda - name: sphinx_rtd_theme - optional: false - platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/sphinx_rtd_theme-1.2.2-pyha770c72_0.conda - version: 1.2.2 -- category: main - dependencies: - aws-sam-translator: '>=1.55.0' - jschema-to-python: ~=1.2.3 + aws-sam-translator: '>=1.73.0' + jschema-to-python: '>=1.2.3,<1.3.dev0' jsonpatch: '' - jsonschema: '>=3.0,<5' - junit-xml: ~=1.9 - networkx: ~=2.4 - python: '>=3.7' + jsonschema: '>=3.0,<4.18' + junit-xml: '>=1.9,<2.dev0' + networkx: '>=2.4,<4' + python: '>=3.7,<4.0' pyyaml: '>5.4' - sarif-om: ~=1.0.4 + regex: '' + sarif-om: '>=1.0.4,<1.1.dev0' + sympy: '>=1.0.0' hash: - md5: 97bf916949bb4eb9f69c77d365a4da72 - sha256: 7d8c32e83b839abbb4c2a6b476b2a4a60f03394ac6156740f81abba64dbcf756 + md5: 7e1bb14c96e20a83a9d2170f7cf99b35 + sha256: c9a71f90673966eb5d449993e134ac74ef8cdb3e1e5a7fe85f77fbfca768369f manager: conda name: cfn-lint optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/cfn-lint-0.75.1-pyhd8ed1ab_0.conda - version: 0.75.1 + url: https://conda.anaconda.org/conda-forge/noarch/cfn-lint-0.79.9-pyhd8ed1ab_0.conda + version: 0.79.9 - category: main dependencies: aws-xray-sdk: '!=0.96,>=0.93' @@ -5445,32 +5449,166 @@ package: werkzeug: '>=0.5,!=2.2.0,!=2.2.1' xmltodict: '' hash: - md5: 2ad89e262b7d71adc0820e207329d659 - sha256: 4a348f91127ca5456c224114329705b68c18812d67060f3cc93bb0310e5ebeba + md5: 779af6a36cd3a8f7260a074462e5e587 + sha256: d5128b843ac0f338f955bb1a93c3565be87b6a5c241300ee2a34fcd4509f7390 manager: conda name: moto optional: false platform: linux-64 - url: https://conda.anaconda.org/conda-forge/noarch/moto-4.1.12-pyhd8ed1ab_0.conda - version: 4.1.12 + url: https://conda.anaconda.org/conda-forge/noarch/moto-4.2.2-pyhd8ed1ab_0.conda + version: 4.2.2 +- 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: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: aebfabcb60c33a89c1f9290cab49bc93 + sha256: 67e2b386c7b3c858ead88fa71fe4fa5eb1f4f59d7994d167b3910a744db392d3 + manager: conda + name: sphinxcontrib-applehelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-applehelp-1.0.7-pyhd8ed1ab_0.conda + version: 1.0.7 +- category: main + dependencies: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: ebf08f5184d8eaa486697bc060031953 + sha256: 770e13ebfef321426c09ec51d95c57755512db160518b2922a4337546ee51672 + manager: conda + name: sphinxcontrib-devhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-devhelp-1.0.5-pyhd8ed1ab_0.conda + version: 1.0.5 +- category: main + dependencies: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: a9a89000dfd19656ad004b937eeb6828 + sha256: 5f09cd4a08a6c194c11999871a8c7cedc2cd7edd9ff7ceb6f0667b6698be4cc5 + manager: conda + name: sphinxcontrib-htmlhelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-htmlhelp-2.0.4-pyhd8ed1ab_0.conda + version: 2.0.4 +- category: main + dependencies: + python: '>=2.7' + sphinx: '>=1.8' + hash: + md5: 914897066d5873acfb13e75705276ad1 + sha256: 2e5f16a2d58f9a31443ffbb8ce3852cfccf533a6349045828cd2e994ef0679ca + manager: conda + name: sphinxcontrib-jquery + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-jquery-4.1-pyhd8ed1ab_0.conda + version: '4.1' +- category: main + dependencies: + docutils: <0.19 + python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*' + sphinx: '>=1.6,<8' + sphinxcontrib-jquery: '>=4,<5' + hash: + md5: a615c369167e508293d8409973b34863 + sha256: 1288aac6167e320b576d89855262f05b1903e446c3dfc92cc67b12b39fb62502 + manager: conda + name: sphinx_rtd_theme + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinx_rtd_theme-1.3.0-pyha770c72_0.conda + version: 1.3.0 +- category: main + dependencies: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: cf5c9649272c677a964a7313279e3a9b + sha256: 9ba5cea9cbab64106e8b5a9b19add855dcb52b8fbb1674398c715bccdbc04471 + manager: conda + name: sphinxcontrib-qthelp + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-qthelp-1.0.6-pyhd8ed1ab_0.conda + version: 1.0.6 +- 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: + python: '>=3.9' + sphinx: '>=5' + hash: + md5: 0612e497d7860728f2cda421ea2aec09 + sha256: c5710ae7bb7465f25a29cc845d9fb6ad0ea561972d796d379fcb48d801e96d6d + manager: conda + name: sphinxcontrib-serializinghtml + optional: false + platform: linux-64 + url: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.9-pyhd8ed1ab_0.conda + version: 1.1.9 - category: main dependencies: {} hash: - sha256: 0e0bc5ba78b8db3667ad636d964eb963dc97a59f04c6f6214c5f0e4a8f726c56 + sha256: 18c694e5ae8a208cdb3d2c20a993ca1a7b0efa258c247a1e565150f477f83744 manager: pip name: mock optional: false platform: linux-64 - source: null - url: https://files.pythonhosted.org/packages/27/6f/fbb16f260a7107ee98871d83f6793d88c4311b7189b10ef239da0b2181db/mock-5.0.2-py3-none-any.whl - version: 5.0.2 + url: https://files.pythonhosted.org/packages/6b/20/471f41173930550f279ccb65596a5ac19b9ac974a8d93679bcd3e0c31498/mock-5.1.0-py3-none-any.whl + version: 5.1.0 - dependencies: {} hash: sha256: f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5 manager: pip name: pyyaml platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/02/25/6ba9f6bb50a3d4fbe22c1a02554dc670682a07c8701d1716d19ddea2c940/PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl version: '6.0' - category: main @@ -5482,7 +5620,6 @@ package: name: asttokens optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/f3/e1/64679d9d0759db5b182222c81ff322c2fe2c31e156a59afd6e9208c960e5/asttokens-2.2.1-py2.py3-none-any.whl version: 2.2.1 - category: main @@ -5494,7 +5631,6 @@ package: name: gdspy optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/1d/e4/97b8add92fbec2a9890ad4777272e9a9e4d7a0ceeac42b7e1febe94f0e86/gdspy-1.4.zip version: '1.4' - category: main @@ -5507,7 +5643,6 @@ package: 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 - dependencies: @@ -5517,21 +5652,19 @@ package: manager: pip name: pydantic platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/b6/8e/7dd215f91528487535e7aa048e4092c20ecd0168df958e58809e2235cece/pydantic-1.10.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl version: 1.10.11 - category: main dependencies: ruamel.yaml.clib: '>=0.2.7' hash: - sha256: 25d0ee82a0a9a6f44683dcf8c282340def4074a4562f3a24f55695bb254c1693 + sha256: 23cd2ed620231677564646b0c6a89d138b6822a0d78656df7abda5879ec4f447 manager: pip name: ruamel.yaml optional: false platform: linux-64 - source: null - url: https://files.pythonhosted.org/packages/23/33/dbc62343de0cf92e0f9c15bc0a287bdaea0953f1cadca0480c78d5ac6641/ruamel.yaml-0.17.26-py3-none-any.whl - version: 0.17.26 + url: https://files.pythonhosted.org/packages/d9/0e/2a05efa11ea33513fbdf4a2e2576fe94fd8fa5ad226dbb9c660886390974/ruamel.yaml-0.17.32-py3-none-any.whl + version: 0.17.32 - category: main dependencies: mock: '*' @@ -5542,7 +5675,6 @@ package: name: sure optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/dd/ae/eb28ee3b6768e51cb938abcf521cb678217203f33385a2df54d3f23331c5/sure-2.0.1.tar.gz version: 2.0.1 - category: main @@ -5555,7 +5687,6 @@ package: name: fab-classic optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/6b/0f/efc537eebfd2a2c470250c0ac8bd8a05ffc13d95a7fb22021367890d7c46/fab_classic-1.19.2-py2.py3-none-any.whl version: 1.19.2 - category: main @@ -5566,14 +5697,13 @@ package: pyyaml: '>=6.0,<7.0' ruamel.yaml: '>=0.17.21,<0.18.0' hash: - sha256: f4fb4dd5f7fac1f2206a25d0949024046fe8f855198e8edbd5206fa9d58ab05f + sha256: 47f1fc5904756b01d46a8d23a4f3950382086b716138e21a027cd44dc5101f27 manager: pip name: hammer-vlsi optional: false platform: linux-64 - source: null - url: https://files.pythonhosted.org/packages/0a/da/1897421311c6332655e2f73d02d8c914ecb724198a1988aacd8f4c61ae6e/hammer_vlsi-1.1.1-py3-none-any.whl - version: 1.1.1 + url: https://files.pythonhosted.org/packages/30/e4/37b77c7921b80d58d8b2a325c031e75d656319b676e7fd4555e02b651a9d/hammer_vlsi-1.1.2-py3-none-any.whl + version: 1.1.2 - category: main dependencies: asttokens: '>=2,<3' @@ -5584,7 +5714,6 @@ package: 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 @@ -5597,7 +5726,6 @@ package: name: pylddwrap optional: false platform: linux-64 - source: null url: https://files.pythonhosted.org/packages/c9/12/4afd6542c43cd20271f0e53bf0211decc10079a76a41e53c0288025a7b85/pylddwrap-1.2.2.tar.gz version: 1.2.2 version: 1 diff --git a/docs/Advanced-Concepts/Architectural-Checkpoints.rst b/docs/Advanced-Concepts/Architectural-Checkpoints.rst index 490bddc5..f1177e19 100644 --- a/docs/Advanced-Concepts/Architectural-Checkpoints.rst +++ b/docs/Advanced-Concepts/Architectural-Checkpoints.rst @@ -36,4 +36,3 @@ The target config should also match the architectural configuration of however s cd sims/vcs make CONFIG=dmiRocketConfig run-binary LOADARCH=../../hello.riscv.0x80000000.1000.loadarch - diff --git a/docs/Advanced-Concepts/Chip-Communication.rst b/docs/Advanced-Concepts/Chip-Communication.rst index 3e067965..5a79e963 100644 --- a/docs/Advanced-Concepts/Chip-Communication.rst +++ b/docs/Advanced-Concepts/Chip-Communication.rst @@ -183,28 +183,21 @@ This new setup (shown below) is a typical Chipyard test chip setup: Simulation Setup of the Example Test Chip ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -To test this type of configuration (TSI/memory transactions over the serial-link), most of the same TSI collateral -would be used. -The main difference is that the TileLink-to-AXI converters and simulated AXI memory resides on the other side of the -serial-link. +The standard test-chip bringup procedure tethers the chip to a FPGA config with serialized tilelink. .. image:: ../_static/images/chip-bringup-simulation.png -.. note:: - Here the simulated AXI memory and the converters can be in a different clock domain in the test harness - than the reference clock of the DUT. - For example, the DUT can be clocked at 3.2GHz while the simulated AXI memory can be clocked at 1GHz. - This functionality is done in the harness binder that instantiates the TSI collateral, TL-to-AXI converters, - and simulated AXI memory. - See :ref:`Advanced-Concepts/Harness-Clocks:Creating Clocks in the Test Harness` on how to generate a clock - in a harness binder. +The entire bringup procedure can be simulated using the Multi-ChipTop simulation feature, where +one ``ChipTop`` is the design-to-be-taped-out, while the other is the FPGA bringup design. -This type of simulation setup is done in the following multi-clock configuration: +This system can be generated and simulated with the following example configuration, which marries +a ``ChipLikeRocketConfig`` (the design to be taped-out) with the ``ChipBringupHostConfig`` (the FPGA +bringup design). -.. literalinclude:: ../../generators/chipyard/src/main/scala/config/RocketConfigs.scala +.. literalinclude:: ../../generators/chipyard/src/main/scala/config/ChipConfigs.scala :language: scala - :start-after: DOC include start: MulticlockAXIOverSerialConfig - :end-before: DOC include end: MulticlockAXIOverSerialConfig + :start-after: DOC include start: TetheredChipLikeRocketConfig + :end-before: DOC include end: TetheredChipLikeRocketConfig Softcore-driven Bringup Setup of the Example Test Chip after Tapeout ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/Advanced-Concepts/Debugging-BOOM.rst b/docs/Advanced-Concepts/Debugging-BOOM.rst deleted file mode 100644 index f4d3b1ff..00000000 --- a/docs/Advanced-Concepts/Debugging-BOOM.rst +++ /dev/null @@ -1,33 +0,0 @@ -Debugging BOOM -====================== - -In addition to the default debugging techniques specified in :ref:`Advanced-Concepts/Debugging-RTL:Debugging RTL`, -single-core BOOM designs can utilize the Dromajo co-simulator (see :ref:`Tools/Dromajo:Dromajo`) -to verify functionality. - -.. warning:: Dromajo currently only works in single-core BOOM systems without accelerators. - -.. warning:: Dromajo currently only works in VCS simulation and FireSim. - -Setting up Dromajo Co-simulation --------------------------------------- - -Dromajo co-simulation is setup to work when three config fragments are added to a BOOM config. - - * A ``chipyard.config.WithTraceIO`` config fragment must be added so that BOOM's traceport is enabled. - * A ``chipyard.iobinders.WithTraceIOPunchthrough`` config fragment must be added to add the ``TraceIO`` to the ``ChipTop`` - * A ``chipyard.harness.WithSimDromajoBridge`` config fragment must be added to instantiate a Dromajo cosimulator in the ``TestHarness`` and connect it to the ``ChipTop``'s ``TraceIO`` - - -Once all config fragments are added Dromajo should be enabled. - -To build/run Dromajo with a BOOM design, run your configuration the following make commands: - -.. code-block:: shell - - # build the default Dromajo BOOM config without waveform dumps - # replace "DromajoBoomConfig" with your particular config - make CONFIG=DromajoBoomConfig ENABLE_DROMAJO=1 - - # run a simulation with Dromajo - make CONFIG=DromajoBoomConfig ENABLE_DROMAJO=1 BINARY= run-binary diff --git a/docs/Advanced-Concepts/Debugging-RTL.rst b/docs/Advanced-Concepts/Debugging-RTL.rst index 6c654982..cd47cdc8 100644 --- a/docs/Advanced-Concepts/Debugging-RTL.rst +++ b/docs/Advanced-Concepts/Debugging-RTL.rst @@ -100,6 +100,6 @@ You can find the overnight options in `overnight/src/main/scala/main.scala` in t Firesim Debugging --------------------------- -Chisel printfs, asserts, Dromajo co-simulation, and waveform generation are also available in FireSim +Chisel printfs, asserts, Cospike co-simulation, and waveform generation are also available in FireSim FPGA-accelerated simulation. See the FireSim `documentation `__ for more detail. diff --git a/docs/Advanced-Concepts/Harness-Clocks.rst b/docs/Advanced-Concepts/Harness-Clocks.rst index f8210b64..c8d7d7e7 100644 --- a/docs/Advanced-Concepts/Harness-Clocks.rst +++ b/docs/Advanced-Concepts/Harness-Clocks.rst @@ -21,4 +21,3 @@ Take the following example: :end-before: DOC include end: HarnessClockInstantiatorEx Here you can see the ``th.harnessClockInstantiator`` is used to request a clock and reset at ``memFreq`` frequency. - diff --git a/docs/Advanced-Concepts/index.rst b/docs/Advanced-Concepts/index.rst index d5455ddb..1a04bb0f 100644 --- a/docs/Advanced-Concepts/index.rst +++ b/docs/Advanced-Concepts/index.rst @@ -11,7 +11,6 @@ They expect you to know about Chisel, Parameters, configs, etc. Top-Testharness Chip-Communication Debugging-RTL - Debugging-BOOM Resources CDEs Harness-Clocks diff --git a/docs/Chipyard-Basics/Chipyard-Components.rst b/docs/Chipyard-Basics/Chipyard-Components.rst index 713bf772..8f8e9045 100644 --- a/docs/Chipyard-Basics/Chipyard-Components.rst +++ b/docs/Chipyard-Basics/Chipyard-Components.rst @@ -86,10 +86,6 @@ Tools **Dsptools** A Chisel library for writing custom signal processing hardware, as well as integrating custom signal processing hardware into an SoC (especially a Rocket-based SoC). -**Dromajo** - A RV64GC emulator primarily used for co-simulation and was originally developed by Esperanto Technologies. - See :ref:`Tools/Dromajo:Dromajo` for more information. - Toolchains ------------------------------------------- diff --git a/docs/Chipyard-Basics/Initial-Repo-Setup.rst b/docs/Chipyard-Basics/Initial-Repo-Setup.rst index cee859d0..9f31624e 100644 --- a/docs/Chipyard-Basics/Initial-Repo-Setup.rst +++ b/docs/Chipyard-Basics/Initial-Repo-Setup.rst @@ -9,7 +9,7 @@ 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:: Working under Windows is not recommended. +.. Warning:: If using Windows, it is recommended that you use `Windows Subsystem for Linux (WSL)`. Running on AWS EC2 with FireSim ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/Customization/Custom-Chisel.rst b/docs/Customization/Custom-Chisel.rst index d40cfa9a..121ca712 100644 --- a/docs/Customization/Custom-Chisel.rst +++ b/docs/Customization/Custom-Chisel.rst @@ -52,7 +52,7 @@ Then add ``yourproject`` to the Chipyard top-level build.sbt file. You can then import the classes defined in the submodule in a new project if you add it as a dependency. For instance, if you want to use this code in -the ``chipyard`` project, add your project to the list of sub-projects in the +the ``chipyard`` project, add your project to the list of sub-projects in the `.dependsOn()` for `lazy val chipyard`. The original code may change over time, but it should look something like this: diff --git a/docs/Customization/RoCC-Accelerators.rst b/docs/Customization/RoCC-Accelerators.rst index ad3bfa54..97544149 100644 --- a/docs/Customization/RoCC-Accelerators.rst +++ b/docs/Customization/RoCC-Accelerators.rst @@ -112,4 +112,3 @@ For instance, if we wanted to add the previously defined accelerator and route c new RocketConfig) To add RoCC instructions in your program, use the RoCC C macros provided in ``tests/rocc.h``. You can find examples in the files ``tests/accum.c`` and ``charcount.c``. - diff --git a/docs/Generators/SiFive-Generators.rst b/docs/Generators/SiFive-Generators.rst index 73bb5b49..d6b174ef 100644 --- a/docs/Generators/SiFive-Generators.rst +++ b/docs/Generators/SiFive-Generators.rst @@ -16,7 +16,7 @@ Peripheral Devices Overview ``sifive-blocks`` includes multiple peripheral device generators, such as UART, SPI, PWM, JTAG, GPIO and more. These peripheral devices usually affect the memory map of the SoC, and its top-level IO as well. -All the peripheral blocks comes with a default memory address that would not collide with each other, but if integrating multiple duplicated blocks in the SoC is needed, you will need to explicitly specify an approriate memory address for that device. +All the peripheral blocks comes with a default memory address that would not collide with each other, but if integrating multiple duplicated blocks in the SoC is needed, you will need to explicitly specify an approriate memory address for that device. Additionally, if the device requires top-level IOs, you will need to define a config fragment to change the top-level configuration of your SoC. When adding a top-level IO, you should also be aware of whether it interacts with the test-harness. @@ -34,7 +34,7 @@ Finally, you add the relevant config fragment to the SoC config. For example: General Purpose I/Os (GPIO) Device ---------------------------------- -GPIO device is a periphery device provided by ``sifive-blocks``. Each general-purpose I/O port has five 32-bit configuration registers, two 32-bit data registers controlling pin input and output values, and eight 32-bit interrupt control/status register for signal level and edge triggering. In addition, all GPIOs can have two 32-bit alternate function selection registers. +GPIO device is a periphery device provided by ``sifive-blocks``. Each general-purpose I/O port has five 32-bit configuration registers, two 32-bit data registers controlling pin input and output values, and eight 32-bit interrupt control/status register for signal level and edge triggering. In addition, all GPIOs can have two 32-bit alternate function selection registers. GPIO main features @@ -67,7 +67,7 @@ Including GPIO in the SoC // Set up Memory Devices // ================================== // ... - + // Peripheral section new chipyard.config.WithGPIO(address = 0x10010000, width = 32) ++ @@ -115,7 +115,7 @@ Including UART in the SoC // Set up Memory Devices // ================================== // ... - + // Peripheral section new chipyard.config.WithUART(address = 0x10020000, baudrate = 115200) ++ @@ -125,7 +125,7 @@ Including UART in the SoC Inter-Integrated Circuit (I2C) Interface Device ------------------------------------------------- -I2C device is a periphery device provided by ``sifive-blocks``. The I2C (inter-integrated circuit) bus interface handles communications to the serial I2C bus. It provides multi-master capability, and controls all I2C bus-specific sequencing, protocol, arbitration and timing. It supports Standard-mode (Sm), Fast-mode (Fm) and Fast-mode Plus (Fm+). +I2C device is a periphery device provided by ``sifive-blocks``. The I2C (inter-integrated circuit) bus interface handles communications to the serial I2C bus. It provides multi-master capability, and controls all I2C bus-specific sequencing, protocol, arbitration and timing. It supports Standard-mode (Sm), Fast-mode (Fm) and Fast-mode Plus (Fm+). I2C main features @@ -158,7 +158,7 @@ Including I2C in the SoC // Set up Memory Devices // ================================== // ... - + // Peripheral section new chipyard.config.WithI2C(address = 0x10040000) ++ @@ -169,9 +169,9 @@ Including I2C in the SoC Serial Peripheral Interface (SPI) Device ------------------------------------------------- -SPI device is a periphery device provided by ``sifive-blocks``. The SPI interface can be used to communicate with external devices using the SPI protocol. +SPI device is a periphery device provided by ``sifive-blocks``. The SPI interface can be used to communicate with external devices using the SPI protocol. -The serial peripheral interface (SPI) protocol supports half-duplex, full-duplex and simplex synchronous, serial communication with external devices. The interface can be configured as master and in this case it provides the communication clock (SCLK) to the external slave device. +The serial peripheral interface (SPI) protocol supports half-duplex, full-duplex and simplex synchronous, serial communication with external devices. The interface can be configured as master and in this case it provides the communication clock (SCLK) to the external slave device. SPI main features @@ -208,7 +208,7 @@ Including SPI in the SoC // Set up Memory Devices // ================================== // ... - + // Peripheral section new chipyard.config.WithSPI(address = 0x10031000) ++ diff --git a/docs/Simulation/Software-RTL-Simulation.rst b/docs/Simulation/Software-RTL-Simulation.rst index 580a5d2e..2e832182 100644 --- a/docs/Simulation/Software-RTL-Simulation.rst +++ b/docs/Simulation/Software-RTL-Simulation.rst @@ -177,8 +177,8 @@ A special target that automatically generates the waveform file for a specific t For a Verilator simulation, this will generate a vcd file (vcd is a standard waveform representation file format) that can be loaded to any common waveform viewer. An open-source vcd-capable waveform viewer is `GTKWave `__. -For a VCS simulation, this will generate a vpd file (this is a proprietary waveform representation format used by Synopsys) that can be loaded to vpd-supported waveform viewers. -If you have Synopsys licenses, we recommend using the DVE waveform viewer. +For a VCS simulation, this will generate an fsdb file that can be loaded to fsdb-supported waveform viewers. +If you have Synopsys licenses, we recommend using the Verdi waveform viewer. Visualizing Chipyard SoCs -------------------------- @@ -187,7 +187,7 @@ During verilog creation, a graphml file is emitted that will allow you to visual To view the graph, first download a viewer such as `yEd `__. -The ``*.graphml`` file will be located in ``generated-src/<...>/``. Open the file in the graph viewer. +The ``*.graphml`` file will be located in ``generated-src/<...>/``. Open the file in the graph viewer. To get a clearer view of the SoC, switch to "hierarchical" view. For yEd, this would be done by selecting ``layout`` -> ``hierarchical``, and then choosing "Ok" without changing any settings. .. _sw-sim-verilator-opts: diff --git a/docs/Tools/Dromajo.rst b/docs/Tools/Dromajo.rst deleted file mode 100644 index 6c25df78..00000000 --- a/docs/Tools/Dromajo.rst +++ /dev/null @@ -1,22 +0,0 @@ -Dromajo -=============================== - -`Dromajo `__ is a RV64GC functional simulator designed for co-simulation. -To use it as a co-simulator, it requires you to pass the committed trace of instructions coming from the core into the tool. -Within Chipyard, this is done by connecting to the `TracePort`` signals that are piped to the top level of the DUT. -While the Rocket core does have a `TracePort`, it does not provide the committed write data that Dromajo requires. -Thus, Dromajo uses the `ExtendedTracePort` only probided by BOOM (BOOM is the only core that supports Dromajo co-simulation). -An example of a divergence and Dromajo's printout is shown below. - -.. code-block:: shell - - [error] EMU PC ffffffe001055d84, DUT PC ffffffe001055d84 - [error] EMU INSN 14102973, DUT INSN 14102973 - [error] EMU WDATA 00000000000220d6, DUT WDATA 00000000000220d4 - [error] EMU MSTATUS a000000a0, DUT MSTATUS 00000000 - [error] DUT pending exception -1 pending interrupt -1 - -Dromajo shows the divergence compared to simulation (PC, inst, inst-bits, write data, etc) and also provides the register state on failure. -It is useful to catch bugs that affect architectural state before a simulation hangs or crashes. - -To use Dromajo with BOOM, refer to :ref:`Advanced-Concepts/Debugging-RTL:Debugging RTL` section on Dromajo. diff --git a/docs/Tools/index.rst b/docs/Tools/index.rst index 88161269..f8d0be95 100644 --- a/docs/Tools/index.rst +++ b/docs/Tools/index.rst @@ -13,4 +13,3 @@ The following pages will introduce them, and how we can use them in order to gen Treadle Dsptools Barstools - Dromajo diff --git a/docs/VLSI/Advanced-Usage.rst b/docs/VLSI/Advanced-Usage.rst index 00c3b1d3..ff785648 100644 --- a/docs/VLSI/Advanced-Usage.rst +++ b/docs/VLSI/Advanced-Usage.rst @@ -8,7 +8,7 @@ Hammer Development and Upgrades If you need to develop Hammer within Chipyard or use a version of Hammer beyond the latest PyPI release, clone the `Hammer repository `__ somewhere else on your disk. Then: .. code-block:: shell - + pip install -e To bump specific plugins to their latest commits and install them, you can use the upgrade script from the Chipyard root directory, with arguments for match patterns for the plugin names: @@ -120,7 +120,7 @@ The given example in ``UPFInputs`` corresponds to a dual-core Rocket config with To run the flow: .. code-block:: shell - + cd chipyard/vlsi make verilog ASPECTS=chipyard.upf.ChipTopUPFAspect diff --git a/docs/VLSI/Sky130-Commercial-Tutorial.rst b/docs/VLSI/Sky130-Commercial-Tutorial.rst index 300a22d7..9ca81583 100644 --- a/docs/VLSI/Sky130-Commercial-Tutorial.rst +++ b/docs/VLSI/Sky130-Commercial-Tutorial.rst @@ -48,7 +48,7 @@ Prerequisites * Python 3.9+ * Genus, Innovus, Voltus, VCS, and Calibre licenses * Sky130A PDK, install `using conda `__ or `these directions `__ -* `Sram22 Sky130 SRAM macros `__ +* `Sram22 Sky130 SRAM macros `__ * These SRAM macros were generated using the `Sram22 SRAM generator `__ (still very heavily under development) @@ -75,7 +75,7 @@ In the Chipyard root, ensure that you have the Chipyard conda environment activa to pull and install the plugin submodules. Note that for technologies other than ``sky130`` or ``asap7``, the tech submodule must be added in the ``vlsi`` folder first. -Now navigate to the ``vlsi`` directory. The remainder of the tutorial will assume you are in this directory. +Now navigate to the ``vlsi`` directory. The remainder of the tutorial will assume you are in this directory. We will summarize a few files in this directory that will be important for the rest of the tutorial. .. code-block:: shell @@ -123,7 +123,7 @@ The ``buildfile`` make target has dependencies on both (1) the Verilog that is e and (2) the mapping of memory instances in the design to SRAM macros; all files related to these two steps reside in the ``generated-src/chipyard.harness.TestHarness.TinyRocketConfig-ChipTop`` directory. Note that the files in ``generated-src`` vary for each tool/technology flow. -This especially applies to the Sky130 Commercial vs OpenROAD tutorial flows +This especially applies to the Sky130 Commercial vs OpenROAD tutorial flows (due to the ``ENABLE_YOSYS_FLOW`` flag present for the OpenROAD flow), so these flows should be run in separate chipyard installations. If the wrong sources are generated, simply run ``make buildfile -B`` to rebuild all targets correctly. diff --git a/docs/VLSI/Sky130-OpenROAD-Tutorial.rst b/docs/VLSI/Sky130-OpenROAD-Tutorial.rst index 6777bb79..a9cfa7b1 100644 --- a/docs/VLSI/Sky130-OpenROAD-Tutorial.rst +++ b/docs/VLSI/Sky130-OpenROAD-Tutorial.rst @@ -46,16 +46,17 @@ Prerequisites ------------- * Python 3.9+ -* OpenROAD flow tools: +* OpenROAD flow tools (NOTE: tutorial may break with different tool versions): - * Yosys (synthesis), install `using conda `__ or `from source `__ - * OpenROAD (place-and-route), install `using conda `__ (note that GUI is disabled in conda package) or `from source `__ - * KLayout (DEF to GDSII conversion), install `using conda `__ or `from source `__ - * Magic (DRC), , install `using conda `__ or `from source `__ - * NetGen (LVS), , install `using conda `__ or `from source `__ + * **Yosys 0.27+3** (synthesis), install `using conda `__ or `from source `__ + * **OpenROAD v2.0-7070-g0264023b6** (place-and-route), install `using conda `__ (note that GUI is disabled in conda package) or + `from source `__ (git hash: 0264023b6c2a8ae803b8d440478d657387277d93) + * **KLayout 0.28.5** (DEF to GDSII conversion, DRC), install `using conda `__ or `from source `__ + * **Magic 8.3.376** (DRC), install `using conda `__ or `from source `__ + * **NetGen 1.5.250** (LVS), install `using conda `__ or `from source `__ * Sky130A PDK, install `using conda `__ or `these directions `__ -* `Sram22 Sky130 SRAM macros `__ +* `Sram22 Sky130 SRAM macros `__ * These SRAM macros were generated using the `Sram22 SRAM generator `__ (still very heavily under development) @@ -67,6 +68,10 @@ Note that we create a new conda environment for each tool because some of them h .. code-block:: shell + # channel settings so openroad/klayout install properly + conda config --set channel_priority true + conda config --add channels defaults + # download all files for Sky130A PDK conda create -c litex-hub --prefix ~/.conda-sky130 open_pdks.sky130a=1.0.399_0_g63dbde9 # clone the SRAM22 Sky130 SRAM macros @@ -78,6 +83,10 @@ Note that we create a new conda environment for each tool because some of them h conda create -c litex-hub --prefix ~/.conda-klayout klayout=0.28.5_98_g87e2def28 conda create -c litex-hub --prefix ~/.conda-signoff magic=8.3.376_0_g5e5879c netgen=1.5.250_0_g178b172 + # revert conda settings + conda config --set channel_priority strict + conda config --remove channels defaults + Initial Setup ------------- In the Chipyard root, ensure that you have the Chipyard conda environment activated. Then, run: @@ -86,10 +95,10 @@ In the Chipyard root, ensure that you have the Chipyard conda environment activa ./scripts/init-vlsi.sh sky130 openroad -to pull and install the plugin submodules. Note that for technologies other than ``sky130`` or ``asap7``, the tech submodule is cloned in the ``vlsi`` folder, +to pull and install the plugin submodules. Note that for technologies other than ``sky130`` or ``asap7``, the tech submodule is cloned in the ``vlsi`` folder, and for the commercial tool flow (set up by omitting the ``openroad`` argument), the tool plugin submodules are cloned into the ``vlsi`` folder. -Now navigate to the ``vlsi`` directory. The remainder of the tutorial will assume you are in this directory. +Now navigate to the ``vlsi`` directory. The remainder of the tutorial will assume you are in this directory. We will summarize a few files in this directory that will be important for the rest of the tutorial. .. code-block:: shell @@ -118,7 +127,7 @@ Add the following YAML keys to the top of this file to specify the location of t example-openroad.yml ^^^^^^^^^^^^^^^^^^^^ This contains the Hammer configuration for the OpenROAD tool flow. -It selects tools for synthesis (Yosys), place and route (OpenROAD), DRC (Magic), and LVS (NetGen). +It selects tools for synthesis (Yosys), place and route (OpenROAD), DRC (KLayout or Magic), and LVS (NetGen). Add the following YAML keys to the top of this file to specify the locations of the tool binaries. Note that this is not required if the tools are already on your PATH. @@ -129,7 +138,8 @@ Note that this is not required if the tools are already on your PATH. # tool binary paths synthesis.yosys.yosys_bin: ~/.conda-yosys/bin/yosys par.openroad.openroad_bin: ~/.conda-openroad/bin/openroad - par.openroad.klayout_bin: ~/.conda-klayout/bin/klayout + par.openroad.klayout_bin: ~/.conda-klayout/bin/klayout # binary that OpenROAD calls for final GDS writeout + drc.klayout.klayout_bin: ~/.conda-klayout/bin/klayout # binary that runs for DRC step drc.magic.magic_bin: ~/.conda-signoff/bin/magic lvs.netgen.netgen_bin: ~/.conda-signoff/bin/netgen @@ -151,7 +161,7 @@ The ``buildfile`` make target has dependencies on both (1) the Verilog that is e and (2) the mapping of memory instances in the design to SRAM macros; all files related to these two steps reside in the ``generated-src/chipyard.harness.TestHarness.TinyRocketConfig-ChipTop`` directory. Note that the files in ``generated-src`` vary for each tool/technology flow. -This especially applies to the Sky130 Commercial vs OpenROAD tutorial flows +This especially applies to the Sky130 Commercial vs OpenROAD tutorial flows (due to the ``ENABLE_YOSYS_FLOW`` flag, explained below), so these flows should be run in separate chipyard installations. If the wrong sources are generated, simply run ``make buildfile -B`` to rebuild all targets correctly. @@ -188,7 +198,7 @@ Place-and-Route make par tutorial=sky130-openroad Note that sometimes OpenROAD freezes on commands following the ``detailed_route`` step, -so for now we recomment running place-and-route until the ``extraction`` step, +so for now we recomment running place-and-route until the ``extraction`` step, then re-starting the flow at this step. See the :ref:`VLSI/Sky130-OpenROAD-Tutorial:VLSI Flow Control` documentation below for how to break up the flow into these steps. @@ -237,10 +247,14 @@ DRC & LVS As a note, this tutorial has been run extensively through commercial signoff tools, thus the open-source signoff flow is not stable or guaranteed to produce useful results. -We welcome any contributions to improving both our `Magic tool plugin `__ +We welcome any contributions to improving our `KLayout tool plugin `__, +`Magic tool plugin `__, and `Netgen tool plugin `__. -To run DRC & LVS in Magic & Netgen, respectively: +We recommend KLayout for DRC to produce readable results, but Magic may be selected in ``example-openroad.yml`` +by uncommenting the line ``vlsi.core.drc_tool: "hammer.drc.magic"``. + +To run DRC & LVS and view the results: .. code-block:: shell @@ -259,7 +273,13 @@ Note that in ``sky130-openroad.yml`` we have set the following YAML keys: These keys cause the Hammer plugin to only generate all necessary scripts, without executing them with the respective tool. This is because Magic and Netgen, as of the writing of this tutorial, do not have a database format that may be loaded interactively, so to view the DRC/LVS results for debugging you must launch the tool interactively, then run DRC/LVS checks, -which is done by the ``generated-scripts/view_[drc|lvs]`` scripts. +which is done by the ``generated-scripts/view_[drc|lvs]`` scripts. This is not the case for KLayout, which does have a loadable database format. + +Below is the window you should see when loading the KLayout DRC results interactively. Note that most of these DRC errors are +from special rules relating to Sky130 SRAMs, which have been verified separately. In the future the KLayout tool plugin should blackbox these +SRAM macros by default, but this feature does not exist yet. + +.. image:: ../_static/images/vlsi-openroad-klayout-drc.png VLSI Flow Control @@ -273,7 +293,7 @@ Firt, refer to the :ref:`VLSI/Hammer:VLSI Flow Control` documentation. The below make par HAMMER_EXTRA_ARGS="--stop_after_step extraction" make redo-par HAMMER_EXTRA_ARGS="--start_before_step extraction" - # the following two commands are equivalent because the extraction + # the following two commands are equivalent because the extraction # step immediately precedes the write_design step make redo-par HAMMER_EXTRA_ARGS="--start_after_step extraction" make redo-par HAMMER_EXTRA_ARGS="--start_before_step write_design" diff --git a/docs/_static/images/vlsi-openroad-klayout-drc.png b/docs/_static/images/vlsi-openroad-klayout-drc.png new file mode 100644 index 00000000..a6bfa8f4 Binary files /dev/null and b/docs/_static/images/vlsi-openroad-klayout-drc.png differ diff --git a/fpga/fpga-shells b/fpga/fpga-shells index 1bdd4362..7d0b79f8 160000 --- a/fpga/fpga-shells +++ b/fpga/fpga-shells @@ -1 +1 @@ -Subproject commit 1bdd436287cde561a7b9e426670ec23c28752e28 +Subproject commit 7d0b79f8559b9bcea1bde8d0293576a502a7a896 diff --git a/fpga/src/main/scala/arty100t/Harness.scala b/fpga/src/main/scala/arty100t/Harness.scala index 94dcb458..47ffe7e0 100644 --- a/fpga/src/main/scala/arty100t/Harness.scala +++ b/fpga/src/main/scala/arty100t/Harness.scala @@ -54,6 +54,7 @@ class Arty100THarness(override implicit val p: Parameters) extends Arty100TShell override lazy val module = new HarnessLikeImpl class HarnessLikeImpl extends Impl with HasHarnessInstantiators { + all_leds.foreach(_ := DontCare) clockOverlay.overlayOutput.node.out(0)._1.reset := ~resetPin val clk_100mhz = clockOverlay.overlayOutput.node.out.head._1.clock diff --git a/fpga/src/main/scala/vcu118/Configs.scala b/fpga/src/main/scala/vcu118/Configs.scala index 7ba39f78..bd48fb4e 100644 --- a/fpga/src/main/scala/vcu118/Configs.scala +++ b/fpga/src/main/scala/vcu118/Configs.scala @@ -77,6 +77,8 @@ class BoomVCU118Config extends Config( ) class WithFPGAFrequency(fMHz: Double) extends Config( + new chipyard.harness.WithHarnessBinderClockFreqMHz(fMHz) ++ + new chipyard.config.WithSystemBusFrequency(fMHz) ++ new chipyard.config.WithPeripheryBusFrequency(fMHz) ++ // assumes using PBUS as default freq. new chipyard.config.WithMemoryBusFrequency(fMHz) ) diff --git a/generators/boom b/generators/boom index 247ed490..96da674b 160000 --- a/generators/boom +++ b/generators/boom @@ -1 +1 @@ -Subproject commit 247ed4903d731d303e44f312999cc810e4bd7244 +Subproject commit 96da674bc97955e7fa068f0a9a1d0a7a479d1d0b diff --git a/generators/chipyard/src/main/resources/csrc/cospike.cc b/generators/chipyard/src/main/resources/csrc/cospike.cc deleted file mode 100644 index 8f2b28a3..00000000 --- a/generators/chipyard/src/main/resources/csrc/cospike.cc +++ /dev/null @@ -1,508 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if __has_include ("cospike_dtm.h") -#define COSPIKE_DTM -#include "testchip_dtm.h" -extern testchip_dtm_t* dtm; -bool spike_loadarch_done = false; -#endif - -#if __has_include ("mm.h") -#define COSPIKE_SIMDRAM -#include "mm.h" -extern std::map backing_mem_data; -#endif - -#define CLINT_BASE (0x2000000) -#define CLINT_SIZE (0x10000) -#define UART_BASE (0x54000000) -#define UART_SIZE (0x1000) -#define PLIC_BASE (0xc000000) -#define PLIC_SIZE (0x4000000) - -#define COSPIKE_PRINTF(...) { \ - printf(__VA_ARGS__); \ - fprintf(stderr, __VA_ARGS__); \ - } - -typedef struct system_info_t { - std::string isa; - int vlen; - int pmpregions; - uint64_t mem0_base; - uint64_t mem0_size; - int nharts; - std::vector bootrom; - std::string priv; -}; - -class read_override_device_t : public abstract_device_t { -public: - read_override_device_t(std::string n, reg_t sz) : was_read_from(false), size(sz), name(n) { }; - virtual bool load(reg_t addr, size_t len, uint8_t* bytes) override { - if (addr + len > size) return false; - COSPIKE_PRINTF("Read from device %s at %lx\n", name.c_str(), addr); - was_read_from = true; - return true; - } - virtual bool store(reg_t addr, size_t len, const uint8_t* bytes) override { - COSPIKE_PRINTF("Store to device %s at %lx\n", name.c_str(), addr); - return (addr + len <= size); - } - bool was_read_from; -private: - reg_t size; - std::string name; -}; - -system_info_t* info = NULL; -sim_t* sim = NULL; -bool cospike_debug; -reg_t tohost_addr = 0; -reg_t fromhost_addr = 0; -reg_t cospike_timeout = 0; -std::set magic_addrs; -cfg_t* cfg; -std::vector> read_override_devices; - -static std::vector> make_mems(const std::vector &layout) -{ - std::vector> mems; - mems.reserve(layout.size()); - for (const auto &cfg : layout) { - mems.push_back(std::make_pair(cfg.get_base(), new mem_t(cfg.get_size()))); - } - return mems; -} - -extern "C" void cospike_set_sysinfo(char* isa, int vlen, char* priv, int pmpregions, - long long int mem0_base, long long int mem0_size, - int nharts, - char* bootrom - ) { - if (!info) { - info = new system_info_t; - // technically the targets aren't zicntr compliant, but they implement the zicntr registers - info->isa = std::string(isa) + "_zicntr"; - info->vlen = vlen; - info->priv = std::string(priv); - info->pmpregions = pmpregions; - info->mem0_base = mem0_base; - info->mem0_size = mem0_size; - info->nharts = nharts; - std::stringstream ss(bootrom); - std::string s; - while (ss >> s) { - info->bootrom.push_back(std::stoi(s)); - } - } -} - -extern "C" void cospike_cosim(long long int cycle, - long long int hartid, - int has_wdata, - int valid, - long long int iaddr, - unsigned long int insn, - int raise_exception, - int raise_interrupt, - unsigned long long int cause, - unsigned long long int wdata, - int priv) -{ - assert(info); - - if (unlikely(!sim)) { - COSPIKE_PRINTF("Configuring spike cosim\n"); - std::vector mem_cfg; - std::vector hartids; - mem_cfg.push_back(mem_cfg_t(info->mem0_base, info->mem0_size)); - for (int i = 0; i < info->nharts; i++) - hartids.push_back(i); - - std::string visa = "vlen:" + std::to_string(info->vlen ? info->vlen : 128) + ",elen:64"; - cfg = new cfg_t(std::make_pair(0, 0), - nullptr, - info->isa.c_str(), - info->priv.c_str(), - visa.c_str(), - false, - endianness_little, - info->pmpregions, - mem_cfg, - hartids, - false, - 0 - ); - - std::vector> mems = make_mems(cfg->mem_layout()); - - size_t default_boot_rom_size = 0x10000; - size_t default_boot_rom_addr = 0x10000; - assert(info->bootrom.size() < default_boot_rom_size); - info->bootrom.resize(default_boot_rom_size); - - std::shared_ptr boot_rom = std::make_shared(info->bootrom); - std::shared_ptr boot_addr_reg = std::make_shared(0x1000); - uint64_t default_boot_addr = 0x80000000; - boot_addr_reg.get()->store(0, 8, (const uint8_t*)(&default_boot_addr)); - - std::shared_ptr clint = std::make_shared("clint", CLINT_SIZE); - std::shared_ptr uart = std::make_shared("uart", UART_SIZE); - std::shared_ptr plic = std::make_shared("plic", PLIC_SIZE); - - read_override_devices.push_back(clint); - read_override_devices.push_back(uart); - read_override_devices.push_back(plic); - - std::vector>> devices; - // The device map is hardcoded here for now - devices.push_back(std::pair(0x4000, boot_addr_reg)); - devices.push_back(std::pair(default_boot_rom_addr, boot_rom)); - devices.push_back(std::pair(CLINT_BASE, clint)); - devices.push_back(std::pair(UART_BASE, uart)); - devices.push_back(std::pair(PLIC_BASE, plic)); - - s_vpi_vlog_info vinfo; - if (!vpi_get_vlog_info(&vinfo)) - abort(); - std::vector htif_args; - bool in_permissive = false; - cospike_debug = false; - for (int i = 1; i < vinfo.argc; i++) { - std::string arg(vinfo.argv[i]); - if (arg == "+permissive") { - in_permissive = true; - } else if (arg == "+permissive-off") { - in_permissive = false; - } else if (arg == "+cospike_debug" || arg == "+cospike-debug") { - cospike_debug = true; - } else if (arg.find("+cospike-timeout=") == 0) { - cospike_timeout = strtoull(arg.substr(17).c_str(), 0, 10); - } else if (!in_permissive) { - htif_args.push_back(arg); - } - } - - debug_module_config_t dm_config = { - .progbufsize = 2, - .max_sba_data_width = 0, - .require_authentication = false, - .abstract_rti = 0, - .support_hasel = true, - .support_abstract_csr_access = true, - .support_abstract_fpr_access = true, - .support_haltgroups = true, - .support_impebreak = true - }; - - COSPIKE_PRINTF("isa string: %s\n", info->isa.c_str()); - COSPIKE_PRINTF("htif args: "); - for (int i = 0; i < htif_args.size(); i++) { - COSPIKE_PRINTF("%s", htif_args[i].c_str()); - } - COSPIKE_PRINTF("\n"); - - std::vector plugin_device_factories; - sim = new sim_t(cfg, false, - mems, - plugin_device_factories, - htif_args, - dm_config, - nullptr, - false, - nullptr, - false, - nullptr - ); - for (auto &it : devices) - sim->add_device(it.first, it.second); - -#ifdef COSPIKE_SIMDRAM - // match sim_t's backing memory with the SimDRAM memory - bus_t temp_mem_bus; - for (auto& pair : mems) temp_mem_bus.add_device(pair.first, pair.second); - - for (auto& pair : backing_mem_data) { - size_t base = pair.first; - size_t size = pair.second.size; - COSPIKE_PRINTF("Matching spike memory initial state for region %lx-%lx\n", base, base + size); - if (!temp_mem_bus.store(base, size, pair.second.data)) { - COSPIKE_PRINTF("Error, unable to match memory at address %lx\n", base); - abort(); - } - } -#endif - - sim->configure_log(true, true); - for (int i = 0; i < info->nharts; i++) { - // Use our own reset vector - sim->get_core(hartid)->get_state()->pc = 0x10040; - // Set MMU to support up to sv39, as our normal hw configs do - sim->get_core(hartid)->set_impl(IMPL_MMU_SV48, false); - sim->get_core(hartid)->set_impl(IMPL_MMU_SV57, false); - - // HACKS: Our processor's don't implement zicntr fully, they don't provide time - sim->get_core(hartid)->get_state()->csrmap.erase(CSR_TIME); - } - sim->set_debug(cospike_debug); - sim->set_histogram(true); - sim->set_procs_debug(cospike_debug); - COSPIKE_PRINTF("Setting up htif for spike cosim\n"); - ((htif_t*)sim)->start(); - COSPIKE_PRINTF("Spike cosim started\n"); - tohost_addr = ((htif_t*)sim)->get_tohost_addr(); - fromhost_addr = ((htif_t*)sim)->get_fromhost_addr(); - COSPIKE_PRINTF("Tohost : %lx\n", tohost_addr); - COSPIKE_PRINTF("Fromhost: %lx\n", fromhost_addr); - COSPIKE_PRINTF("BootROM base : %lx\n", default_boot_rom_addr); - COSPIKE_PRINTF("BootROM size : %lx\n", boot_rom->contents().size()); - COSPIKE_PRINTF("Memory base : %lx\n", info->mem0_base); - COSPIKE_PRINTF("Memory size : %lx\n", info->mem0_size); - } - - if (priv & 0x4) { // debug - return; - } - - if (cospike_timeout && cycle > cospike_timeout) { - if (sim) { - COSPIKE_PRINTF("Cospike reached timeout cycles = %ld, terminating\n", cospike_timeout); - delete sim; - } - exit(0); - } - - - processor_t* p = sim->get_core(hartid); - state_t* s = p->get_state(); -#ifdef COSPIKE_DTM - if (dtm && dtm->loadarch_done && !spike_loadarch_done) { - COSPIKE_PRINTF("Restoring spike state from testchip_dtm loadarch\n"); - // copy the loadarch state into the cosim - loadarch_state_t &ls = dtm->loadarch_state[hartid]; - s->pc = ls.pc; - s->prv = ls.prv; - s->csrmap[CSR_MSTATUS]->write(s->csrmap[CSR_MSTATUS]->read() | MSTATUS_VS | MSTATUS_XS | MSTATUS_FS); -#define RESTORE(CSRID, csr) s->csrmap[CSRID]->write(ls.csr); - RESTORE(CSR_FCSR , fcsr); - RESTORE(CSR_VSTART , vstart); - RESTORE(CSR_VXSAT , vxsat); - RESTORE(CSR_VXRM , vxrm); - RESTORE(CSR_VCSR , vcsr); - RESTORE(CSR_VTYPE , vtype); - RESTORE(CSR_STVEC , stvec); - RESTORE(CSR_SSCRATCH , sscratch); - RESTORE(CSR_SEPC , sepc); - RESTORE(CSR_SCAUSE , scause); - RESTORE(CSR_STVAL , stval); - RESTORE(CSR_SATP , satp); - RESTORE(CSR_MSTATUS , mstatus); - RESTORE(CSR_MEDELEG , medeleg); - RESTORE(CSR_MIDELEG , mideleg); - RESTORE(CSR_MIE , mie); - RESTORE(CSR_MTVEC , mtvec); - RESTORE(CSR_MSCRATCH , mscratch); - RESTORE(CSR_MEPC , mepc); - RESTORE(CSR_MCAUSE , mcause); - RESTORE(CSR_MTVAL , mtval); - RESTORE(CSR_MIP , mip); - RESTORE(CSR_MCYCLE , mcycle); - RESTORE(CSR_MINSTRET , minstret); - if (ls.VLEN != p->VU.VLEN) { - COSPIKE_PRINTF("VLEN mismatch loadarch: $d != spike: $d\n", ls.VLEN, p->VU.VLEN); - abort(); - } - if (ls.ELEN != p->VU.ELEN) { - COSPIKE_PRINTF("ELEN mismatch loadarch: $d != spike: $d\n", ls.ELEN, p->VU.ELEN); - abort(); - } - for (size_t i = 0; i < 32; i++) { - s->XPR.write(i, ls.XPR[i]); - s->FPR.write(i, { (uint64_t)ls.FPR[i], (uint64_t)-1 }); - memcpy(p->VU.reg_file + i * ls.VLEN / 8, ls.VPR[i], ls.VLEN / 8); - } - spike_loadarch_done = true; - p->clear_waiting_for_interrupt(); - } -#endif - uint64_t s_pc = s->pc; - uint64_t interrupt_cause = cause & 0x7FFFFFFFFFFFFFFF; - bool ssip_interrupt = interrupt_cause == 0x1; - bool msip_interrupt = interrupt_cause == 0x3; - bool stip_interrupt = interrupt_cause == 0x5; - bool mtip_interrupt = interrupt_cause == 0x7; - bool debug_interrupt = interrupt_cause == 0xe; - if (raise_interrupt) { - COSPIKE_PRINTF("%d interrupt %lx\n", cycle, cause); - - if (ssip_interrupt || stip_interrupt) { - // do nothing - } else if (msip_interrupt) { - s->mip->backdoor_write_with_mask(MIP_MSIP, MIP_MSIP); - } else if (mtip_interrupt) { - s->mip->backdoor_write_with_mask(MIP_MTIP, MIP_MTIP); - } else if (debug_interrupt) { - return; - } else { - COSPIKE_PRINTF("Unknown interrupt %lx\n", interrupt_cause); - abort(); - } - } - if (raise_exception) - COSPIKE_PRINTF("%d exception %lx\n", cycle, cause); - if (valid) { - p->clear_waiting_for_interrupt(); - COSPIKE_PRINTF("%d Cosim: %lx", cycle, iaddr); - // if (has_wdata) { - // COSPIKE_PRINTF(" s: %lx", wdata); - // } - COSPIKE_PRINTF("\n"); - } - if (valid || raise_interrupt || raise_exception) { - p->clear_waiting_for_interrupt(); - for (auto& e : read_override_devices) e.get()->was_read_from = false; - p->step(1); - if (unlikely(cospike_debug)) { - COSPIKE_PRINTF("spike pc is %lx\n", s->pc); - COSPIKE_PRINTF("spike mstatus is %lx\n", s->mstatus->read()); - COSPIKE_PRINTF("spike mip is %lx\n", s->mip->read()); - COSPIKE_PRINTF("spike mie is %lx\n", s->mie->read()); - COSPIKE_PRINTF("spike wfi state is %d\n", p->is_waiting_for_interrupt()); - } - } - - if (valid && !raise_exception) { - if (s_pc != iaddr) { - COSPIKE_PRINTF("%d PC mismatch spike %llx != DUT %llx\n", cycle, s_pc, iaddr); - if (unlikely(cospike_debug)) { - COSPIKE_PRINTF("spike mstatus is %lx\n", s->mstatus->read()); - COSPIKE_PRINTF("spike mcause is %lx\n", s->mcause->read()); - COSPIKE_PRINTF("spike mtval is %lx\n" , s->mtval->read()); - COSPIKE_PRINTF("spike mtinst is %lx\n", s->mtinst->read()); - } - exit(1); - } - - - auto& mem_write = s->log_mem_write; - auto& log = s->log_reg_write; - auto& mem_read = s->log_mem_read; - - for (auto memwrite : mem_write) { - reg_t waddr = std::get<0>(memwrite); - uint64_t w_data = std::get<1>(memwrite); - if ((waddr == CLINT_BASE + 4*hartid) && w_data == 0) { - s->mip->backdoor_write_with_mask(MIP_MSIP, 0); - } - if ((waddr == CLINT_BASE + 0x4000 + 4*hartid)) { - s->mip->backdoor_write_with_mask(MIP_MTIP, 0); - } - // Try to remember magic_mem addrs, and ignore these in the future - if ( waddr == tohost_addr && w_data >= info->mem0_base && w_data < (info->mem0_base + info->mem0_size)) { - COSPIKE_PRINTF("Probable magic mem %lx\n", w_data); - magic_addrs.insert(w_data); - } - } - - bool scalar_wb = false; - bool vector_wb = false; - uint32_t vector_cnt = 0; - std::vector vector_rds; - - for (auto ®write : log) { - - //TODO: scaling to multi issue reads? - reg_t mem_read_addr = mem_read.empty() ? 0 : std::get<0>(mem_read[0]); - - int rd = regwrite.first >> 4; - int type = regwrite.first & 0xf; - - // 0 => int - // 1 => fp - // 2 => vec - // 3 => vec hint - // 4 => csr - bool device_read = false; - for (auto& e : read_override_devices) if (e.get()->was_read_from) device_read = true; - - bool lr_read = ((insn & MASK_LR_D) == MATCH_LR_D) || ((insn & MASK_LR_W) == MATCH_LR_W); - bool sc_read = ((insn & MASK_SC_D) == MATCH_SC_D) || ((insn & MASK_SC_W) == MATCH_SC_W); - - bool ignore_read = sc_read || (!mem_read.empty() && - (magic_addrs.count(mem_read_addr) || - device_read || - lr_read || - (tohost_addr && mem_read_addr == tohost_addr) || - (fromhost_addr && mem_read_addr == fromhost_addr))); - //COSPIKE_PRINTF("register write type %d\n", type); - // check the type is compliant with writeback first - if ((type == 0 || type == 1)) - scalar_wb = true; - if (type == 2) { - vector_rds.push_back(rd); - vector_wb = true; - } - if (type == 3) continue; - - if ((rd != 0 && type == 0) || type == 1) { - // Override reads from some CSRs - uint64_t csr_addr = (insn >> 20) & 0xfff; - bool csr_read = (insn & 0x7f) == 0x73; - if (csr_read) - COSPIKE_PRINTF("CSR read %lx\n", csr_addr); - if (csr_read && ((csr_addr == 0x301) || // misa - (csr_addr == 0x306) || // mcounteren - (csr_addr == 0xf13) || // mimpid - (csr_addr == 0xf12) || // marchid - (csr_addr == 0xf11) || // mvendorid - (csr_addr == 0xb00) || // mcycle - (csr_addr == 0xb02) || // minstret - (csr_addr == 0xc00) || // cycle - (csr_addr == 0xc01) || // time - (csr_addr == 0xc02) || // instret - (csr_addr >= 0x7a0 && csr_addr <= 0x7aa) || // debug trigger registers - (csr_addr >= 0x3b0 && csr_addr <= 0x3ef) // pmpaddr - )) { - COSPIKE_PRINTF("CSR override\n"); - s->XPR.write(rd, wdata); - } else if (ignore_read) { - // Don't check reads from tohost, reads from magic memory, or reads - // from clint Technically this could be buggy because log_mem_read - // only reports vaddrs, but no software ever should access - // tohost/fromhost/clint with vaddrs anyways - COSPIKE_PRINTF("Read override %lx = %lx\n", mem_read_addr, wdata); - s->XPR.write(rd, wdata); - } else if (wdata != regwrite.second.v[0]) { - COSPIKE_PRINTF("%d wdata mismatch reg %d %lx != %lx\n", cycle, rd, - regwrite.second.v[0], wdata); - exit(1); - } - } - - // TODO FIX: Rocketchip TracedInstruction.wdata should be Valid(UInt) - // if (scalar_wb ^ has_wdata) { - // COSPIKE_PRINTF("Scalar wdata behavior divergence between spike and DUT\n"); - // exit(-1); - // } - } - for (auto &a : vector_rds) { - COSPIKE_PRINTF("vector writeback to v%d\n", a); - } - } -} diff --git a/generators/chipyard/src/main/resources/csrc/cospike_dtm.h b/generators/chipyard/src/main/resources/csrc/cospike_dtm.h deleted file mode 100644 index e69de29b..00000000 diff --git a/generators/chipyard/src/main/resources/vsrc/cospike.v b/generators/chipyard/src/main/resources/vsrc/cospike.v deleted file mode 100644 index 33b8ecdd..00000000 --- a/generators/chipyard/src/main/resources/vsrc/cospike.v +++ /dev/null @@ -1,81 +0,0 @@ -import "DPI-C" function void cospike_set_sysinfo( - input string isa, - input int vlen, - input string priv, - input int pmpregions, - input longint mem0_base, - input longint mem0_size, - input int nharts, - input string bootrom - ); - -import "DPI-C" function void cospike_cosim(input longint cycle, - input longint hartid, - input bit has_wdata, - input bit valid, - input longint iaddr, - input int insn, - input bit raise_exception, - input bit raise_interrupt, - input longint cause, - input longint wdata, - input int priv - ); - - -module SpikeCosim #( - parameter ISA, - parameter PRIV, - parameter VLEN, - parameter PMPREGIONS, - parameter MEM0_BASE, - parameter MEM0_SIZE, - parameter NHARTS, - parameter BOOTROM) ( - input clock, - input reset, - - input [63:0] cycle, - - input [63:0] hartid, - - input trace_0_valid, - input [63:0] trace_0_iaddr, - input [31:0] trace_0_insn, - input trace_0_exception, - input trace_0_interrupt, - input [63:0] trace_0_cause, - input trace_0_has_wdata, - input [63:0] trace_0_wdata, - input [2:0] trace_0_priv, - - input trace_1_valid, - input [63:0] trace_1_iaddr, - input [31:0] trace_1_insn, - input trace_1_exception, - input trace_1_interrupt, - input [63:0] trace_1_cause, - input trace_1_has_wdata, - input [63:0] trace_1_wdata, - input [2:0] trace_1_priv - ); - - initial begin - cospike_set_sysinfo(ISA, VLEN, PRIV, PMPREGIONS, MEM0_BASE, MEM0_SIZE, NHARTS, BOOTROM); - end; - - always @(posedge clock) begin - if (!reset) begin - if (trace_0_valid || trace_0_exception || trace_0_cause) begin - cospike_cosim(cycle, hartid, trace_0_has_wdata, trace_0_valid, trace_0_iaddr, - trace_0_insn, trace_0_exception, trace_0_interrupt, trace_0_cause, - trace_0_wdata, trace_0_priv); - end - if (trace_1_valid || trace_1_exception || trace_1_cause) begin - cospike_cosim(cycle, hartid, trace_1_has_wdata, trace_1_valid, trace_1_iaddr, - trace_1_insn, trace_1_exception, trace_1_interrupt, trace_1_cause, - trace_1_wdata, trace_1_priv); - end - end - end -endmodule; // CospikeCosim diff --git a/generators/chipyard/src/main/resources/vsrc/spiketile.v b/generators/chipyard/src/main/resources/vsrc/spiketile.v index c78d7a0f..8921f68f 100644 --- a/generators/chipyard/src/main/resources/vsrc/spiketile.v +++ b/generators/chipyard/src/main/resources/vsrc/spiketile.v @@ -286,10 +286,10 @@ module SpikeBlackBox #( wire __tcm_d_ready; bit __tcm_d_valid; longint __tcm_d_data; - + reg __tcm_d_valid_reg; reg [63:0] __tcm_d_data_reg; - + always @(posedge clock) begin @@ -429,7 +429,7 @@ module SpikeBlackBox #( __tcm_d_valid_reg <= __tcm_d_valid; __tcm_d_data_reg <= __tcm_d_data; - + end end // always @ (posedge clock) assign insns_retired = __insns_retired_reg; diff --git a/generators/chipyard/src/main/scala/Cospike.scala b/generators/chipyard/src/main/scala/Cospike.scala deleted file mode 100644 index cf6cdbd1..00000000 --- a/generators/chipyard/src/main/scala/Cospike.scala +++ /dev/null @@ -1,93 +0,0 @@ -package chipyard - -import chisel3._ -import chisel3.experimental.{IntParam, StringParam, IO} -import chisel3.util._ - -import org.chipsalliance.cde.config.{Parameters, Field, Config} -import freechips.rocketchip.subsystem._ -import freechips.rocketchip.diplomacy._ -import freechips.rocketchip.devices.tilelink._ -import freechips.rocketchip.util._ - -import testchipip.TileTraceIO - -case class SpikeCosimConfig( - isa: String, - vlen: Int, - priv: String, - pmpregions: Int, - mem0_base: BigInt, - mem0_size: BigInt, - nharts: Int, - bootrom: String, - has_dtm: Boolean -) - -class SpikeCosim(cfg: SpikeCosimConfig) extends BlackBox(Map( - "ISA" -> StringParam(cfg.isa), - "VLEN" -> IntParam(cfg.vlen), - "PRIV" -> StringParam(cfg.priv), - "PMPREGIONS" -> IntParam(cfg.pmpregions), - "MEM0_BASE" -> IntParam(cfg.mem0_base), - "MEM0_SIZE" -> IntParam(cfg.mem0_size), - "NHARTS" -> IntParam(cfg.nharts), - "BOOTROM" -> StringParam(cfg.bootrom) -)) with HasBlackBoxResource -{ - addResource("/csrc/cospike.cc") - addResource("/vsrc/cospike.v") - if (cfg.has_dtm) addResource("/csrc/cospike_dtm.h") - val io = IO(new Bundle { - val clock = Input(Clock()) - val reset = Input(Bool()) - val cycle = Input(UInt(64.W)) - val hartid = Input(UInt(64.W)) - val trace = Input(Vec(2, new Bundle { - val valid = Bool() - val iaddr = UInt(64.W) - val insn = UInt(32.W) - val exception = Bool() - val interrupt = Bool() - val cause = UInt(64.W) - val has_wdata = Bool() - val wdata = UInt(64.W) - val priv = UInt(3.W) - })) - }) -} - -object SpikeCosim -{ - def apply(trace: TileTraceIO, hartid: Int, cfg: SpikeCosimConfig) = { - val cosim = Module(new SpikeCosim(cfg)) - val cycle = withClockAndReset(trace.clock, trace.reset) { - val r = RegInit(0.U(64.W)) - r := r + 1.U - r - } - cosim.io.clock := trace.clock - cosim.io.reset := trace.reset - require(trace.numInsns <= 2) - cosim.io.cycle := cycle - cosim.io.trace.map(t => { - t := DontCare - t.valid := false.B - }) - cosim.io.hartid := hartid.U - for (i <- 0 until trace.numInsns) { - val insn = trace.trace.insns(i) - cosim.io.trace(i).valid := insn.valid - val signed = Wire(SInt(64.W)) - signed := insn.iaddr.asSInt - cosim.io.trace(i).iaddr := signed.asUInt - cosim.io.trace(i).insn := insn.insn - cosim.io.trace(i).exception := insn.exception - cosim.io.trace(i).interrupt := insn.interrupt - cosim.io.trace(i).cause := insn.cause - cosim.io.trace(i).has_wdata := insn.wdata.isDefined.B - cosim.io.trace(i).wdata := insn.wdata.getOrElse(0.U) - cosim.io.trace(i).priv := insn.priv - } - } -} diff --git a/generators/chipyard/src/main/scala/Subsystem.scala b/generators/chipyard/src/main/scala/Subsystem.scala index e98a51bc..d25d4fa3 100644 --- a/generators/chipyard/src/main/scala/Subsystem.scala +++ b/generators/chipyard/src/main/scala/Subsystem.scala @@ -24,7 +24,7 @@ import freechips.rocketchip.amba.axi4._ import boom.common.{BoomTile} -import testchipip.{DromajoHelper, CanHavePeripheryTLSerial, SerialTLKey} +import testchipip.{CanHavePeripheryTLSerial, SerialTLKey} trait CanHaveHTIF { this: BaseSubsystem => // Advertise HTIF if system can communicate with fesvr @@ -124,7 +124,4 @@ class ChipyardSubsystem(implicit p: Parameters) extends BaseSubsystem class ChipyardSubsystemModuleImp[+L <: ChipyardSubsystem](_outer: L) extends BaseSubsystemModuleImp(_outer) with HasTilesModuleImp { - // Generate C header with relevant information for Dromajo - // This is included in the `dromajo_params.h` header file - DromajoHelper.addArtefacts(InSubsystem) } diff --git a/generators/chipyard/src/main/scala/clocking/DividerOnlyClockGenerator.scala b/generators/chipyard/src/main/scala/clocking/DividerOnlyClockGenerator.scala index 0458c621..e52ec674 100644 --- a/generators/chipyard/src/main/scala/clocking/DividerOnlyClockGenerator.scala +++ b/generators/chipyard/src/main/scala/clocking/DividerOnlyClockGenerator.scala @@ -91,4 +91,3 @@ class SimplePllConfiguration( } def referenceSinkParams(): ClockSinkParameters = sinkDividerMap.find(_._2 == 1).get._1 } - diff --git a/generators/chipyard/src/main/scala/clocking/TileClockGater.scala b/generators/chipyard/src/main/scala/clocking/TileClockGater.scala index b50ddd6d..e299d0a9 100644 --- a/generators/chipyard/src/main/scala/clocking/TileClockGater.scala +++ b/generators/chipyard/src/main/scala/clocking/TileClockGater.scala @@ -45,4 +45,3 @@ class TileClockGater(address: BigInt, beatBytes: Int)(implicit p: Parameters, va }): _*) } } - diff --git a/generators/chipyard/src/main/scala/config/BoomConfigs.scala b/generators/chipyard/src/main/scala/config/BoomConfigs.scala index 092da3c3..6b037ec9 100644 --- a/generators/chipyard/src/main/scala/config/BoomConfigs.scala +++ b/generators/chipyard/src/main/scala/config/BoomConfigs.scala @@ -41,13 +41,6 @@ class LoopbackNICLargeBoomConfig extends Config( new chipyard.config.WithSystemBusWidth(128) ++ new chipyard.config.AbstractConfig) -class DromajoBoomConfig extends Config( - new chipyard.harness.WithSimDromajoBridge ++ // attach Dromajo - new chipyard.config.WithTraceIO ++ // enable the traceio - new boom.common.WithNSmallBooms(1) ++ - new chipyard.config.WithSystemBusWidth(128) ++ - new chipyard.config.AbstractConfig) - class MediumBoomCosimConfig extends Config( new chipyard.harness.WithCospike ++ // attach spike-cosim new chipyard.config.WithTraceIO ++ // enable the traceio @@ -67,4 +60,3 @@ class dmiMediumBoomCosimConfig extends Config( new chipyard.config.WithDMIDTM ++ // have debug module expose a clocked DMI port new boom.common.WithNMediumBooms(1) ++ new chipyard.config.AbstractConfig) - diff --git a/generators/chipyard/src/main/scala/config/ChipConfigs.scala b/generators/chipyard/src/main/scala/config/ChipConfigs.scala index 67b8fa7b..cc61794c 100644 --- a/generators/chipyard/src/main/scala/config/ChipConfigs.scala +++ b/generators/chipyard/src/main/scala/config/ChipConfigs.scala @@ -12,27 +12,26 @@ class ChipLikeRocketConfig extends Config( //================================== new chipyard.harness.WithAbsoluteFreqHarnessClockInstantiator ++ // use absolute frequencies for simulations in the harness // NOTE: This only simulates properly in VCS - new chipyard.harness.WithSimAXIMemOverSerialTL ++ // Attach SimDRAM to serial-tl port //================================== // Set up tiles //================================== - new freechips.rocketchip.subsystem.WithAsynchronousRocketTiles(8, 3) ++ // Add async crossings between RocketTile and uncore - new freechips.rocketchip.subsystem.WithNBigCores(1) ++ // 1 RocketTile + new freechips.rocketchip.subsystem.WithAsynchronousRocketTiles(depth=8, sync=3) ++ // Add async crossings between RocketTile and uncore + new freechips.rocketchip.subsystem.WithNBigCores(1) ++ // 1 RocketTile //================================== // Set up I/O //================================== - new testchipip.WithSerialTLWidth(4) ++ - new testchipip.WithSerialTLBackingMemory ++ // Backing memory is over serial TL protocol + new testchipip.WithSerialTLWidth(4) ++ // 4bit wide Serialized TL interface to minimize IO + new testchipip.WithSerialTLBackingMemory ++ // Configure the off-chip memory accessible over serial-tl as backing memory new freechips.rocketchip.subsystem.WithExtMemSize((1 << 30) * 4L) ++ // 4GB max external memory new freechips.rocketchip.subsystem.WithNMemoryChannels(1) ++ // 1 memory channel //================================== // Set up buses //================================== - new testchipip.WithOffchipBusClient(MBUS) ++ - new testchipip.WithOffchipBus ++ + new testchipip.WithOffchipBusClient(MBUS) ++ // offchip bus connects to MBUS, since the serial-tl needs to provide backing memory + new testchipip.WithOffchipBus ++ // attach a offchip bus, since the serial-tl will master some external tilelink memory //================================== // Set up clock./reset @@ -90,12 +89,13 @@ class ChipBringupHostConfig extends Config( // Base is the no-cores config new chipyard.NoCoresConfig) +// DOC include start: TetheredChipLikeRocketConfig class TetheredChipLikeRocketConfig extends Config( new chipyard.harness.WithAbsoluteFreqHarnessClockInstantiator ++ // use absolute freqs for sims in the harness new chipyard.harness.WithMultiChipSerialTL(0, 1) ++ // connect the serial-tl ports of the chips together - new chipyard.harness.WithMultiChip(0, new ChipLikeRocketConfig) ++ - new chipyard.harness.WithMultiChip(1, new ChipBringupHostConfig)) - + new chipyard.harness.WithMultiChip(0, new ChipLikeRocketConfig) ++ // ChipTop0 is the design-to-be-taped-out + new chipyard.harness.WithMultiChip(1, new ChipBringupHostConfig)) // ChipTop1 is the bringup design +// DOC include end: TetheredChipLikeRocketConfig // Verilator does not initialize some of the async-reset reset-synchronizer // flops properly, so this config disables them. diff --git a/generators/chipyard/src/main/scala/config/PeripheralDeviceConfigs.scala b/generators/chipyard/src/main/scala/config/PeripheralDeviceConfigs.scala index aaa1dbe6..7ad7a1ac 100644 --- a/generators/chipyard/src/main/scala/config/PeripheralDeviceConfigs.scala +++ b/generators/chipyard/src/main/scala/config/PeripheralDeviceConfigs.scala @@ -92,4 +92,3 @@ class UARTTSIRocketConfig extends Config( new chipyard.config.WithPeripheryBusFrequency(10) ++ new freechips.rocketchip.subsystem.WithNBigCores(1) ++ // single rocket-core new chipyard.config.AbstractConfig) - diff --git a/generators/chipyard/src/main/scala/config/RocketConfigs.scala b/generators/chipyard/src/main/scala/config/RocketConfigs.scala index 805b4704..466a8db6 100644 --- a/generators/chipyard/src/main/scala/config/RocketConfigs.scala +++ b/generators/chipyard/src/main/scala/config/RocketConfigs.scala @@ -46,13 +46,27 @@ class RadianceROMConfig extends Config( new AbstractConfig) class RadianceConfig extends Config( - new freechips.rocketchip.subsystem.WithRadianceCores() ++ + new freechips.rocketchip.subsystem.WithRadianceCores(use_vx_cache = false) ++ new freechips.rocketchip.subsystem.WithCoherentBusTopology ++ new WithExtMemSize(BigInt("80000000", 16)) ++ new WithRadBootROM() ++ new testchipip.WithMbusScratchpad(base=0x7FFF0000L, size=0x10000, banks=1) ++ new AbstractConfig) +class RadianceConfigVortexCache extends Config( + new freechips.rocketchip.subsystem.WithRadianceCores(use_vx_cache = true) ++ + new freechips.rocketchip.subsystem.WithCoherentBusTopology ++ + // new freechips.rocketchip.subsystem.WithNoMemPort ++ + // new testchipip.WithSbusScratchpad(banks=2) ++ + // new testchipip.WithMbusScratchpad(banks=2) ++ + new WithExtMemSize(BigInt("80000000", 16)) ++ + new WithRadBootROM() ++ + new WithRadROMs(0x7FFF0000L, 0x10000, "sims/vcs/args.bin") ++ + new WithRadROMs(0x20000L, 0x8000, "sims/vcs/op_a.bin") ++ + new WithRadROMs(0x28000L, 0x8000, "sims/vcs/op_b.bin") ++ + new AbstractConfig +) + class TinyRocketConfig extends Config( new chipyard.iobinders.WithDontTouchIOBinders(false) ++ // TODO FIX: Don't dontTouch the ports new freechips.rocketchip.subsystem.WithIncoherentBusTopology ++ // use incoherent bus topology @@ -142,29 +156,6 @@ class MulticlockRocketConfig extends Config( new testchipip.WithAsynchronousSerialSlaveCrossing ++ // Add Async crossing between serial and MBUS. Its master-side is tied to the FBUS new chipyard.config.AbstractConfig) -// DOC include start: MulticlockAXIOverSerialConfig -class MulticlockAXIOverSerialConfig extends Config( - new chipyard.config.WithSystemBusFrequency(250) ++ - new chipyard.config.WithPeripheryBusFrequency(250) ++ - new chipyard.config.WithMemoryBusFrequency(250) ++ - new chipyard.config.WithFrontBusFrequency(50) ++ - new chipyard.config.WithTileFrequency(500, Some(1)) ++ - new chipyard.config.WithTileFrequency(250, Some(0)) ++ - - new chipyard.config.WithFbusToSbusCrossingType(AsynchronousCrossing()) ++ - new testchipip.WithAsynchronousSerialSlaveCrossing ++ - new freechips.rocketchip.subsystem.WithAsynchronousRocketTiles( - AsynchronousCrossing().depth, - AsynchronousCrossing().sourceSync) ++ - - new chipyard.harness.WithSimAXIMemOverSerialTL ++ // add SimDRAM DRAM model for axi4 backing memory over the SerDes link, if axi4 mem is enabled - new testchipip.WithSerialTLBackingMemory ++ // remove axi4 mem port in favor of SerialTL memory - - new freechips.rocketchip.subsystem.WithNBigCores(2) ++ - new freechips.rocketchip.subsystem.WithNMemoryChannels(1) ++ // 1 memory channel - new chipyard.config.AbstractConfig) -// DOC include end: MulticlockAXIOverSerialConfig - class CustomIOChipTopRocketConfig extends Config( new chipyard.example.WithCustomChipTop ++ new chipyard.example.WithCustomIOCells ++ diff --git a/generators/chipyard/src/main/scala/config/fragments/PeripheralFragments.scala b/generators/chipyard/src/main/scala/config/fragments/PeripheralFragments.scala index 50f14bee..8f52be74 100644 --- a/generators/chipyard/src/main/scala/config/fragments/PeripheralFragments.scala +++ b/generators/chipyard/src/main/scala/config/fragments/PeripheralFragments.scala @@ -23,7 +23,7 @@ import chipyard.{ExtTLMem} /** * Config fragment for adding a BootROM to the SoC - * + * * @param address the address of the BootROM device * @param size the size of the BootROM * @param hang the power-on reset vector, i.e. the program counter will be set to this value on reset @@ -42,7 +42,7 @@ class WithBootROM(address: BigInt = 0x10000, size: Int = 0x10000, hang: BigInt = // DOC include start: gpio config fragment /** * Config fragment for adding a GPIO peripheral device to the SoC - * + * * @param address the address of the GPIO device * @param width the number of pins of the GPIO device */ diff --git a/generators/chipyard/src/main/scala/example/FlatTestHarness.scala b/generators/chipyard/src/main/scala/example/FlatTestHarness.scala index afdf67ca..56bc9a78 100644 --- a/generators/chipyard/src/main/scala/example/FlatTestHarness.scala +++ b/generators/chipyard/src/main/scala/example/FlatTestHarness.scala @@ -1,7 +1,7 @@ package chipyard.example import chisel3._ - +import chisel3.experimental.{Analog, BaseModule, DataMirror, Direction} import scala.collection.mutable.{ArrayBuffer, LinkedHashMap} import org.chipsalliance.cde.config.{Field, Parameters} @@ -41,30 +41,19 @@ class FlatTestHarness(implicit val p: Parameters) extends Module { // Serialized TL val sVal = p(SerialTLKey).get val serialTLManagerParams = sVal.serialTLManagerParams.get - val axiDomainParams = serialTLManagerParams.axiMemOverSerialTLParams.get require(serialTLManagerParams.isMemoryDevice) - val memFreq = axiDomainParams.getMemFrequency(lazyDut.system) withClockAndReset(clock, reset) { val serial_bits = dut.serial_tl_pad.bits - dut.serial_tl_pad.clock := clock - val harnessMultiClockAXIRAM = TSIHarness.connectMultiClockAXIRAM( + if (DataMirror.directionOf(dut.serial_tl_pad.clock) == Direction.Input) { + dut.serial_tl_pad.clock := clock + } + val harnessRAM = TSIHarness.connectRAM( lazyDut.system.serdesser.get, serial_bits, - clock, reset) - io.success := SimTSI.connect(Some(harnessMultiClockAXIRAM.module.io.tsi), clock, reset) + io.success := SimTSI.connect(Some(harnessRAM.module.io.tsi), clock, reset) - // connect SimDRAM from the AXI port coming from the harness multi clock axi ram - (harnessMultiClockAXIRAM.mem_axi4.get zip harnessMultiClockAXIRAM.memNode.get.edges.in).map { case (axi_port, edge) => - val memSize = serialTLManagerParams.memParams.size - val memBase = serialTLManagerParams.memParams.base - val lineSize = p(CacheBlockBytes) - val mem = Module(new SimDRAM(memSize, lineSize, BigInt(memFreq.toLong), memBase, edge.bundle)).suggestName("simdram") - mem.io.axi <> axi_port.bits - mem.io.clock := axi_port.clock - mem.io.reset := axi_port.reset - } } // JTAG diff --git a/generators/chipyard/src/main/scala/harness/HarnessBinders.scala b/generators/chipyard/src/main/scala/harness/HarnessBinders.scala index 288655fc..b670fd74 100644 --- a/generators/chipyard/src/main/scala/harness/HarnessBinders.scala +++ b/generators/chipyard/src/main/scala/harness/HarnessBinders.scala @@ -128,46 +128,6 @@ class WithSimAXIMem extends OverrideHarnessBinder({ } }) -class WithSimAXIMemOverSerialTL extends OverrideHarnessBinder({ - (system: CanHavePeripheryTLSerial, th: HasHarnessInstantiators, ports: Seq[ClockedIO[SerialIO]]) => { - implicit val p = chipyard.iobinders.GetSystemParameters(system) - - p(SerialTLKey).map({ sVal => - val serialTLManagerParams = sVal.serialTLManagerParams.get - val axiDomainParams = serialTLManagerParams.axiMemOverSerialTLParams.get - require(serialTLManagerParams.isMemoryDevice) - - val memFreq = axiDomainParams.getMemFrequency(system.asInstanceOf[HasTileLinkLocations]) - - ports.map({ port => -// DOC include start: HarnessClockInstantiatorEx - val memOverSerialTLClock = th.harnessClockInstantiator.requestClockHz("mem_over_serial_tl_clock", memFreq) - val serial_bits = port.bits - port.clock := th.harnessBinderClock - val harnessMultiClockAXIRAM = TSIHarness.connectMultiClockAXIRAM( - system.serdesser.get, - serial_bits, - memOverSerialTLClock, - th.harnessBinderReset) - // DOC include end: HarnessClockInstantiatorEx - val success = SimTSI.connect(Some(harnessMultiClockAXIRAM.module.io.tsi), th.harnessBinderClock, th.harnessBinderReset.asBool) - when (success) { th.success := true.B } - - // connect SimDRAM from the AXI port coming from the harness multi clock axi ram - (harnessMultiClockAXIRAM.mem_axi4.get zip harnessMultiClockAXIRAM.memNode.get.edges.in).map { case (axi_port, edge) => - val memSize = serialTLManagerParams.memParams.size - val memBase = serialTLManagerParams.memParams.base - val lineSize = p(CacheBlockBytes) - val mem = Module(new SimDRAM(memSize, lineSize, BigInt(memFreq.toLong), memBase, edge.bundle)).suggestName("simdram") - mem.io.axi <> axi_port.bits - mem.io.clock := axi_port.clock - mem.io.reset := axi_port.reset - } - }) - }) - } -}) - class WithBlackBoxSimMem(additionalLatency: Int = 0) extends OverrideHarnessBinder({ (system: CanHaveMasterAXI4MemPort, th: HasHarnessInstantiators, ports: Seq[ClockedAndResetIO[AXI4Bundle]]) => { val p: Parameters = chipyard.iobinders.GetSystemParameters(system) @@ -305,7 +265,9 @@ class WithSimTSIOverSerialTL extends OverrideHarnessBinder({ implicit val p = chipyard.iobinders.GetSystemParameters(system) ports.map({ port => val bits = port.bits - port.clock := th.harnessBinderClock + if (DataMirror.directionOf(port.clock) == Direction.Input) { + port.clock := th.harnessBinderClock + } val ram = TSIHarness.connectRAM(system.serdesser.get, bits, th.harnessBinderReset) val success = SimTSI.connect(Some(ram.module.io.tsi), th.harnessBinderClock, th.harnessBinderReset.asBool) when (success) { th.success := true.B } @@ -352,12 +314,6 @@ class WithTraceGenSuccess extends OverrideHarnessBinder({ } }) -class WithSimDromajoBridge extends ComposeHarnessBinder({ - (system: CanHaveTraceIOModuleImp, th: HasHarnessInstantiators, ports: Seq[TraceOutputTop]) => { - ports.map { p => p.traces.map(tileTrace => SimDromajoBridge(tileTrace)(system.p)) } - } -}) - class WithCospike extends ComposeHarnessBinder({ (system: CanHaveTraceIOModuleImp, th: HasHarnessInstantiators, ports: Seq[TraceOutputTop]) => { implicit val p = chipyard.iobinders.GetSystemParameters(system) @@ -391,6 +347,7 @@ class WithClockAndResetFromHarness extends OverrideHarnessBinder({ (system: HasChipyardPRCI, th: HasHarnessInstantiators, ports: Seq[Data]) => { implicit val p = GetSystemParameters(system) val clocks = ports.collect { case c: ClockWithFreq => c } +// DOC include start: HarnessClockInstantiatorEx ports.map ({ case c: ClockWithFreq => { val clock = th.harnessClockInstantiator.requestClockMHz(s"clock_${c.freqMHz.toInt}MHz", c.freqMHz) @@ -398,5 +355,6 @@ class WithClockAndResetFromHarness extends OverrideHarnessBinder({ } case r: AsyncReset => r := th.referenceReset.asAsyncReset }) +// DOC include end: HarnessClockInstantiatorEx } }) diff --git a/generators/chipyard/src/main/scala/stage/ChipyardOptions.scala b/generators/chipyard/src/main/scala/stage/ChipyardOptions.scala index 2ed01ef9..8d8eb6e3 100644 --- a/generators/chipyard/src/main/scala/stage/ChipyardOptions.scala +++ b/generators/chipyard/src/main/scala/stage/ChipyardOptions.scala @@ -38,4 +38,3 @@ class ChipyardOptions private[stage] ( if (!topPackage.isEmpty && !configClass.isEmpty) Some(s"${topPackage.get}.${configClass.get}") else None } } - diff --git a/generators/firechip/src/main/scala/BridgeBinders.scala b/generators/firechip/src/main/scala/BridgeBinders.scala index 888a9062..db6ec2fb 100644 --- a/generators/firechip/src/main/scala/BridgeBinders.scala +++ b/generators/firechip/src/main/scala/BridgeBinders.scala @@ -9,7 +9,7 @@ import chisel3.util.experimental.BoringUtils import org.chipsalliance.cde.config.{Field, Config, Parameters} import freechips.rocketchip.diplomacy.{LazyModule} -import freechips.rocketchip.devices.debug.{Debug, HasPeripheryDebug} +import freechips.rocketchip.devices.debug.{Debug, HasPeripheryDebug, ExportDebug, DMI} import freechips.rocketchip.amba.axi4.{AXI4Bundle} import freechips.rocketchip.subsystem._ import freechips.rocketchip.tile.{RocketTile} @@ -108,48 +108,6 @@ class WithBlockDeviceBridge extends OverrideHarnessBinder({ } }) -class WithAXIOverSerialTLCombinedBridges extends OverrideHarnessBinder({ - (system: CanHavePeripheryTLSerial, th: FireSim, ports: Seq[ClockedIO[SerialIO]]) => { - implicit val p = GetSystemParameters(system) - - p(SerialTLKey).map({ sVal => - val serialTLManagerParams = sVal.serialTLManagerParams.get - val axiDomainParams = serialTLManagerParams.axiMemOverSerialTLParams.get - require(serialTLManagerParams.isMemoryDevice) - val memFreq = axiDomainParams.getMemFrequency(system.asInstanceOf[HasTileLinkLocations]) - - ports.map({ port => - val axiClock = th.harnessClockInstantiator.requestClockHz("mem_over_serial_tl_clock", memFreq) - - val serial_bits = port.bits - port.clock := th.harnessBinderClock - val harnessMultiClockAXIRAM = TSIHarness.connectMultiClockAXIRAM( - system.serdesser.get, - serial_bits, - axiClock, - ResetCatchAndSync(axiClock, th.harnessBinderReset.asBool)) - TSIBridge(th.harnessBinderClock, harnessMultiClockAXIRAM.module.io.tsi, Some(MainMemoryConsts.globalName), th.harnessBinderReset.asBool) - - // connect SimAxiMem - (harnessMultiClockAXIRAM.mem_axi4.get zip harnessMultiClockAXIRAM.memNode.get.edges.in).map { case (axi4, edge) => - val nastiKey = NastiParameters(axi4.bits.r.bits.data.getWidth, - axi4.bits.ar.bits.addr.getWidth, - axi4.bits.ar.bits.id.getWidth) - system match { - case s: BaseSubsystem => FASEDBridge(axi4.clock, axi4.bits, axi4.reset.asBool, - CompleteConfig(p(firesim.configs.MemModelKey), - nastiKey, - Some(AXI4EdgeSummary(edge)), - Some(MainMemoryConsts.globalName))) - case _ => throw new Exception("Attempting to attach FASED Bridge to misconfigured design") - } - } - }) - }) - - Nil - } -}) class WithFASEDBridge extends OverrideHarnessBinder({ (system: CanHaveMasterAXI4MemPort, th: FireSim, ports: Seq[ClockedAndResetIO[AXI4Bundle]]) => { @@ -178,12 +136,26 @@ class WithTracerVBridge extends ComposeHarnessBinder({ } }) -class WithDromajoBridge extends ComposeHarnessBinder({ - (system: CanHaveTraceIOModuleImp, th: FireSim, ports: Seq[TraceOutputTop]) => - ports.map { p => p.traces.map(tileTrace => DromajoBridge(tileTrace)(system.p)) }; Nil +class WithCospikeBridge extends ComposeHarnessBinder({ + (system: CanHaveTraceIOModuleImp, th: FireSim, ports: Seq[TraceOutputTop]) => { + implicit val p = chipyard.iobinders.GetSystemParameters(system) + val chipyardSystem = system.asInstanceOf[ChipyardSystemModule[_]].outer.asInstanceOf[ChipyardSystem] + val tiles = chipyardSystem.tiles + val cfg = SpikeCosimConfig( + isa = tiles.headOption.map(_.isaDTS).getOrElse(""), + vlen = tiles.headOption.map(_.tileParams.core.vLen).getOrElse(0), + priv = tiles.headOption.map(t => if (t.usingUser) "MSU" else if (t.usingSupervisor) "MS" else "M").getOrElse(""), + mem0_base = p(ExtMem).map(_.master.base).getOrElse(BigInt(0)), + mem0_size = p(ExtMem).map(_.master.size).getOrElse(BigInt(0)), + pmpregions = tiles.headOption.map(_.tileParams.core.nPMPs).getOrElse(0), + nharts = tiles.size, + bootrom = chipyardSystem.bootROM.map(_.module.contents.toArray.mkString(" ")).getOrElse(""), + has_dtm = p(ExportDebug).protocols.contains(DMI) // assume that exposing clockeddmi means we will connect SimDTM + ) + ports.map { p => p.traces.zipWithIndex.map(t => CospikeBridge(t._1, t._2, cfg)) } + } }) - class WithTraceGenBridge extends OverrideHarnessBinder({ (system: TraceGenSystemModuleImp, th: FireSim, ports: Seq[Bool]) => ports.map { p => GroundTestBridge(th.harnessBinderClock, p)(system.p) }; Nil diff --git a/generators/firechip/src/main/scala/TargetConfigs.scala b/generators/firechip/src/main/scala/TargetConfigs.scala index dd8cd338..c08a028d 100644 --- a/generators/firechip/src/main/scala/TargetConfigs.scala +++ b/generators/firechip/src/main/scala/TargetConfigs.scala @@ -302,18 +302,6 @@ class FireSimCVA6Config extends Config( new WithFireSimConfigTweaks ++ new chipyard.CVA6Config) -//********************************************************************************** -//* Multiclock Configurations -//*********************************************************************************/ -class FireSimMulticlockAXIOverSerialConfig extends Config( - new WithAXIOverSerialTLCombinedBridges ++ // use combined bridge to connect to axi mem over serial - new WithDefaultFireSimBridges ++ - new testchipip.WithBlockDevice(false) ++ // disable blockdev - new WithDefaultMemModel ++ - new WithFireSimDesignTweaks ++ // don't inherit firesim clocking - new chipyard.MulticlockAXIOverSerialConfig -) - //********************************************************************************** // System with 16 LargeBOOMs that can be simulated with Golden Gate optimizations // - Requires MTModels and MCRams mixins as prefixes to the platform config diff --git a/generators/rocket-chip b/generators/rocket-chip index e7e46468..2166615f 160000 --- a/generators/rocket-chip +++ b/generators/rocket-chip @@ -1 +1 @@ -Subproject commit e7e464684e3052c90cd5ae410809d06f9fb5525d +Subproject commit 2166615f2183047a244bfb2116d8910131d2b732 diff --git a/generators/sifive-cache b/generators/sifive-cache index 02e002b3..51d400bd 160000 --- a/generators/sifive-cache +++ b/generators/sifive-cache @@ -1 +1 @@ -Subproject commit 02e002b324c0e6316234045fa739fdb9d716170d +Subproject commit 51d400bd32131e8914c6713bfb71bef690f2fe70 diff --git a/generators/testchipip b/generators/testchipip index 3178e5e3..d627ad22 160000 --- a/generators/testchipip +++ b/generators/testchipip @@ -1 +1 @@ -Subproject commit 3178e5e3edd5fe17bbe760a6bf7f4aa5e70299d1 +Subproject commit d627ad22a370ee8c4bf907c7dcad30b00f145a1c diff --git a/scripts/generate-ckpt.sh b/scripts/generate-ckpt.sh index 0f8b1e8b..3795b041 100755 --- a/scripts/generate-ckpt.sh +++ b/scripts/generate-ckpt.sh @@ -138,4 +138,3 @@ rm -rf mem.0x80000000.bin riscv64-unknown-elf-ld -Tdata=0x80000000 -nmagic --defsym tohost=0x$TOHOST --defsym fromhost=0x$FROMHOST -o $LOADMEM_ELF $RAWMEM_ELF rm -rf $RAWMEM_ELF - diff --git a/scripts/generate-conda-lockfiles.sh b/scripts/generate-conda-lockfiles.sh index d8f1c493..f2e81106 100755 --- a/scripts/generate-conda-lockfiles.sh +++ b/scripts/generate-conda-lockfiles.sh @@ -14,5 +14,5 @@ for TOOLCHAIN_TYPE in riscv-tools esp-tools; do # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 LOCKFILE=$REQS_DIR/conda-lock-reqs/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml - conda-lock --conda $(which conda) -f "$REQS_DIR/chipyard.yaml" -f "$REQS_DIR/$TOOLCHAIN_TYPE.yaml" -p linux-64 --lockfile $LOCKFILE + conda-lock -f "$REQS_DIR/chipyard.yaml" -f "$REQS_DIR/$TOOLCHAIN_TYPE.yaml" -p linux-64 --lockfile $LOCKFILE done diff --git a/scripts/insert-includes.py b/scripts/insert-includes.py index 1e8a43ac..ed6fed73 100755 --- a/scripts/insert-includes.py +++ b/scripts/insert-includes.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # replaces a `include with the full include file # diff --git a/scripts/tutorial-patches/build.sbt.patch b/scripts/tutorial-patches/build.sbt.patch index bfeb7b12..1e766db9 100644 --- a/scripts/tutorial-patches/build.sbt.patch +++ b/scripts/tutorial-patches/build.sbt.patch @@ -3,7 +3,7 @@ index 302d99e6..0aa0fcb4 100644 --- a/build.sbt +++ b/build.sbt @@ -148,7 +148,7 @@ lazy val testchipip = (project in file("generators/testchipip")) - + lazy val chipyard = (project in file("generators/chipyard")) .dependsOn(testchipip, rocketchip, boom, hwacha, sifive_blocks, sifive_cache, iocell, - sha3, // On separate line to allow for cleaner tutorial-setup patches @@ -14,7 +14,7 @@ index 302d99e6..0aa0fcb4 100644 @@ -220,10 +220,10 @@ lazy val sodor = (project in file("generators/riscv-sodor")) .settings(libraryDependencies ++= rocketLibDeps.value) .settings(commonSettings) - + -lazy val sha3 = (project in file("generators/sha3")) - .dependsOn(rocketchip, midasTargetUtils) - .settings(libraryDependencies ++= rocketLibDeps.value) @@ -23,6 +23,6 @@ index 302d99e6..0aa0fcb4 100644 +// .dependsOn(rocketchip, midasTargetUtils) +// .settings(libraryDependencies ++= rocketLibDeps.value) +// .settings(commonSettings) - + lazy val gemmini = (project in file("generators/gemmini")) .dependsOn(rocketchip) diff --git a/scripts/uniquify-module-names.py b/scripts/uniquify-module-names.py index 75fc8c85..d53eb2f0 100755 --- a/scripts/uniquify-module-names.py +++ b/scripts/uniquify-module-names.py @@ -201,7 +201,7 @@ def main(): # write model filelist write_verilog_filelist(uniquified_modules_under_model, verilog_module_filename, args.out_model_filelist) write_cc_filelist (cc_filelist, args.out_model_filelist) - + if __name__=="__main__": main() diff --git a/sims/firesim b/sims/firesim index 67e70ec9..08b565c8 160000 --- a/sims/firesim +++ b/sims/firesim @@ -1 +1 @@ -Subproject commit 67e70ec96d70ebfae5c335dc2ea82dbe91c179e5 +Subproject commit 08b565c8c69f125a1de292eb8efe03ee08408d2e diff --git a/sims/verilator/Makefile b/sims/verilator/Makefile index 0341ff7d..73845bc2 100644 --- a/sims/verilator/Makefile +++ b/sims/verilator/Makefile @@ -152,6 +152,7 @@ VERILATOR_NONCC_OPTS = \ $(MAX_WIDTH_OPTS) \ $(SIM_PREPROC_DEFINES) \ $(VERILATOR_PREPROC_DEFINES) \ + -I$(GEN_COLLATERAL_DIR) \ --top-module $(TB) \ --vpi \ -f $(sim_common_files) diff --git a/sims/xcelium/.gitignore b/sims/xcelium/.gitignore index 254f02f7..b381c84f 100644 --- a/sims/xcelium/.gitignore +++ b/sims/xcelium/.gitignore @@ -1,3 +1,3 @@ * !.gitignore -*Makefile \ No newline at end of file +*Makefile diff --git a/sims/xcelium/arg-reshuffle b/sims/xcelium/arg-reshuffle index 08176864..e4356c55 100755 --- a/sims/xcelium/arg-reshuffle +++ b/sims/xcelium/arg-reshuffle @@ -27,4 +27,3 @@ done target_args="$target_args +permissive-off" INPUT_ARGS="$regular_args $target_args" - diff --git a/sims/xcelium/xcelium.mk b/sims/xcelium/xcelium.mk index 62d1e9ae..72356fde 100644 --- a/sims/xcelium/xcelium.mk +++ b/sims/xcelium/xcelium.mk @@ -62,4 +62,3 @@ PREPROC_DEFINES = \ -define RANDOMIZE_REG_INIT \ -define RANDOMIZE_GARBAGE_ASSIGN \ -define RANDOMIZE_INVALID_ASSIGN - diff --git a/software/embench/build.sh b/software/embench/build.sh index 2d22166c..53b5406f 100755 --- a/software/embench/build.sh +++ b/software/embench/build.sh @@ -20,4 +20,3 @@ for bmark in "${bmarks[@]}" do cp bd/src/$bmark/$bmark $BUILDDIR/ done - diff --git a/tools/dromajo/dromajo-src b/tools/dromajo/dromajo-src deleted file mode 160000 index 09fbef45..00000000 --- a/tools/dromajo/dromajo-src +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 09fbef4565429f641a7eb93f190ad0e45e11d7f8 diff --git a/tools/dromajo/dromajo.mk b/tools/dromajo/dromajo.mk deleted file mode 100644 index 0d0d6b5f..00000000 --- a/tools/dromajo/dromajo.mk +++ /dev/null @@ -1,59 +0,0 @@ -############################################################## -# extra variables/targets ingested by the chipyard make system -############################################################## - -DROMAJO_DIR = $(base_dir)/tools/dromajo/dromajo-src/src -DROMAJO_LIB_NAME = dromajo_cosim -DROMAJO_LIB = $(CONDA_PREFIX)/lib/lib$(DROMAJO_LIB_NAME).a - -# Dromajo assumes using the default bootrom -DROMAJO_ROM = $(build_dir)/bootrom.rv64.img - -DTS_FILE = $(build_dir)/$(long_name).dts -DROMAJO_DTB = $(build_dir)/$(long_name).dtb - -$(DTS_FILE): $(FIRRTL_FILE) - -$(DROMAJO_DTB): $(DTS_FILE) - dtc -I dts -O dtb -o $(DROMAJO_DTB) $(DTS_FILE) - -DROMAJO_SRCS = $(call lookup_srcs,$(DROMAJO_DIR),cc) $(call lookup_srcs,$(DROMAJO_DIR),h) - -$(DROMAJO_LIB): $(DROMAJO_SRCS) - $(MAKE) -C $(DROMAJO_DIR) - -# depending on where the simulation is done, use the auto-variable or the hardcoded defined one -ifeq ($(BINARY),) -DROMAJO_BIN = $(<) -else -DROMAJO_BIN = $(BINARY) -endif - -DROMAJO_FLAGS = +drj_dtb=$(DROMAJO_DTB) +drj_rom=$(DROMAJO_ROM) +drj_bin=$(DROMAJO_BIN) - -DROMAJO_PARAMS_FILE = $(build_dir)/$(long_name).dromajo_params.h -DROMAJO_PARAMS_SYMLINK = $(build_dir)/dromajo_params.h - -$(DROMAJO_PARAMS_FILE): $(FIRRTL_FILE) - -$(DROMAJO_PARAMS_SYMLINK): $(DROMAJO_PARAMS_FILE) - rm -rf $(DROMAJO_PARAMS_SYMLINK) - ln -s $(DROMAJO_PARAMS_FILE) $(DROMAJO_PARAMS_SYMLINK) - -################################################################## -# THE FOLLOWING MUST BE += operators -################################################################## - -# simargs needed (i.e. like +drj_test=hello) -ifdef ENABLE_DROMAJO -EXTRA_SIM_FLAGS += $(DROMAJO_FLAGS) - -# CC flags needed for all simulations -EXTRA_SIM_CXXFLAGS += -I$(DROMAJO_DIR) - -# sourced needed for simulation -EXTRA_SIM_SOURCES += $(DROMAJO_LIB) - -# requirements needed for simulation -EXTRA_SIM_REQS += $(DROMAJO_PARAMS_SYMLINK) $(DROMAJO_LIB) $(DROMAJO_DTB) -endif diff --git a/variables.mk b/variables.mk index 8a0544a5..5d540ea4 100644 --- a/variables.mk +++ b/variables.mk @@ -139,7 +139,7 @@ ifeq ($(SUB_PROJECT),constellation) TOP ?= NoC endif # For graphics developers -ifeq ($(SUB_PROJECT),graphics) +ifeq ($(SUB_PROJECT),coalescer) SBT_PROJECT ?= chipyard MODEL ?= TestHarness VLOG_MODEL ?= $(MODEL) diff --git a/vlsi/example-designs/sky130-commercial.yml b/vlsi/example-designs/sky130-commercial.yml index c4377d22..fb1f8407 100644 --- a/vlsi/example-designs/sky130-commercial.yml +++ b/vlsi/example-designs/sky130-commercial.yml @@ -9,7 +9,7 @@ vlsi.inputs.clocks: [ # If overriding the placement constraints in example-sky130.yml, # ensure one of the toplevel margin sides corresponding with the power pin metal layers # is set to 0 so that Innovus actually creates those pins (otherwise LVS will fail). -# For example, in example-sky130.yml we set +# For example, in example-sky130.yml we set # par.generate_power_straps_options.by_tracks.pin_layers: 'met5' # horizontal layer # therefore we must also set: # vlsi.inputs.placement_constraints: diff --git a/vlsi/example-designs/sky130-openroad-rockettile.yml b/vlsi/example-designs/sky130-openroad-rockettile.yml index a3fed011..c7300f9b 100644 --- a/vlsi/example-designs/sky130-openroad-rockettile.yml +++ b/vlsi/example-designs/sky130-openroad-rockettile.yml @@ -44,7 +44,7 @@ vlsi.inputs.placement_constraints: x: 50 y: 1250 orientation: r90 - + # tag array - path: "RocketTile/frontend/icache/tag_array_0/tag_array_0_ext/mem_0_0" type: hardmacro diff --git a/vlsi/example-designs/sky130-openroad.yml b/vlsi/example-designs/sky130-openroad.yml index 669d2f92..33f01cad 100644 --- a/vlsi/example-designs/sky130-openroad.yml +++ b/vlsi/example-designs/sky130-openroad.yml @@ -28,7 +28,7 @@ par.openroad: clock_tree_resize.setup_margin: 0.0 clock_tree_resize.hold_margin: 0.20 global_route_resize.hold_margin: 0.60 - clock_tree_resize.hold_max_buffer_percent: 80 + clock_tree_resize.hold_max_buffer_percent: 80 global_placement.routing_adjustment: 0.5 global_route.routing_adjustment: 0.3 @@ -76,7 +76,7 @@ vlsi.inputs.placement_constraints: x: 50 y: 1250 orientation: r90 - + # tag array - path: "ChipTop/system/tile_prci_domain/tile_reset_domain_tile/frontend/icache/tag_array_0/tag_array_0_ext/mem_0_0" type: hardmacro diff --git a/vlsi/example-openroad.yml b/vlsi/example-openroad.yml index 28889799..1f96d603 100644 --- a/vlsi/example-openroad.yml +++ b/vlsi/example-openroad.yml @@ -1,10 +1,11 @@ # Tool options. Replace with your tool plugin of choice. vlsi.core.build_system: make -# Yosys +# Synthesis: Yosys vlsi.core.synthesis_tool: "hammer.synthesis.yosys" -# OpenROAD +# Place-and-Route: OpenROAD vlsi.core.par_tool: "hammer.par.openroad" -# Magic -vlsi.core.drc_tool: "hammer.drc.magic" -# Netgen +# DRC: KLayout or Magic (comment other one out) +vlsi.core.drc_tool: "hammer.drc.klayout" +# vlsi.core.drc_tool: "hammer.drc.magic" +# LVS: Netgen vlsi.core.lvs_tool: "hammer.lvs.netgen"