diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 0cf6cb52..a6f3667f 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -27,12 +27,3 @@ jobs: - name: Build run: | pixi build - - # Upload - - name: Upload - if: ${{ github.ref_name == 'dev' && github.repository_owner == 'Auto-Mech'}} - run: | - pixi run --frozen -e build upload - env: - ANACONDA_API_KEY: ${{ secrets.ANACONDA_API_KEY }} - continue-on-error: true \ No newline at end of file diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 00000000..7c6a7be6 --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,103 @@ +name: release + +on: + pull_request_target: + types: [closed] + +permissions: + contents: write + +jobs: + release: + if: > + github.event.pull_request.merged == true && ( + contains(github.event.pull_request.labels.*.name, 'release:patch') || + contains(github.event.pull_request.labels.*.name, 'release:major') + ) + runs-on: ubuntu-latest + strategy: + fail-fast: true + defaults: + run: + working-directory: mechdriver + + steps: + # 1. Checkout the repositories + - name: Checkout merged mechdriver + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.base.ref }} + fetch-depth: 0 + path: mechdriver + + - name: Checkout autochem + uses: actions/checkout@v4 + with: + repository: Auto-Mech/autochem + path: autochem + + - name: Checkout autoio + uses: actions/checkout@v4 + with: + repository: Auto-Mech/autoio + path: autoio + + - name: Checkout autofile + uses: actions/checkout@v4 + with: + repository: Auto-Mech/autofile + path: autofile + + - name: Checkout mechanalyzer + uses: actions/checkout@v4 + with: + repository: Auto-Mech/mechanalyzer + path: mechanalyzer + + # 2. Setup environment + - name: Set up Pixi + uses: prefix-dev/setup-pixi@v0.9.3 + with: + environments: build + locked: false + manifest-path: mechdriver + + - name: Fetch bot identity + id: bot + uses: raven-actions/bot-details@v1 + + - name: Configure git for committing + run: | + git config user.name "${{ steps.bot.outputs.name }}" + git config user.email "${{ steps.bot.outputs.email }}" + + # 3. Bump version + - name: Bump version (patch) + if: contains(github.event.pull_request.labels.*.name, 'release:patch') + run: pixi run -e build bumpver update --patch + + - name: Bump version (major) + if: contains(github.event.pull_request.labels.*.name, 'release:major') + run: pixi run -e build bumpver update --major + + - name: Get version + id: version + run: | + echo "tag=$(pixi run current-version)" >> "$GITHUB_OUTPUT" + + # 4. Build and upload conda package + - name: Build + run: | + pixi build + + - name: Upload + run: | + pixi run -e build upload + env: + ANACONDA_API_KEY: ${{ secrets.ANACONDA_API_KEY }} + + # 5. Create release + - name: Create GitHub Release + uses: softprops/action-gh-release@v2 + with: + tag_name: ${{ steps.version.outputs.tag }} \ No newline at end of file diff --git a/examples/stereo_quick/.gitignore b/examples/stereo_quick/.gitignore new file mode 100644 index 00000000..3a040afa --- /dev/null +++ b/examples/stereo_quick/.gitignore @@ -0,0 +1,3 @@ +* +!.gitignore +!inp/ diff --git a/examples/stereo_quick/inp/.gitignore b/examples/stereo_quick/inp/.gitignore new file mode 100644 index 00000000..1ab933d2 --- /dev/null +++ b/examples/stereo_quick/inp/.gitignore @@ -0,0 +1,8 @@ +* +!.gitignore +!inp/ +!mechanism.dat +!models.dat +!run.dat +!species.csv +!theory.dat diff --git a/examples/stereo_quick/inp/mechanism.dat b/examples/stereo_quick/inp/mechanism.dat new file mode 100644 index 00000000..8858393d --- /dev/null +++ b/examples/stereo_quick/inp/mechanism.dat @@ -0,0 +1,6 @@ +REACTIONS CAL/MOL MOL + +C3o2 + OH = C3o2y1r0 + H2O 1.000 0.000 0.000 # pes.subpes.channel 1.1.1 +C3o2 + OH = C3o2y1r1 + H2O 1.000 0.000 0.000 # pes.subpes.channel 1.1.2 + +END diff --git a/examples/stereo_quick/inp/models.dat b/examples/stereo_quick/inp/models.dat new file mode 100644 index 00000000..e7fa0ab0 --- /dev/null +++ b/examples/stereo_quick/inp/models.dat @@ -0,0 +1,59 @@ + +kin global + pressures = ( + 0.1 1.0 10.0 100.0 + ) + rate_temps = ( + 500. 600. 700. 800. 900. 1000. + 1100. 1200. 1300. 1400. 1500 + 1600. 1700. 1800. 1900. 2000. + ) + therm_temps = ( + 200. 300. 400. 500. 600. 700. 800. 900. 1000. 1100. 1200. + 1300. 1400. 1500. 1600. 1700. 1800. 1900. 2000. 2100. 2200. + 2300. 2400. 2500. 2600. 2700. 2800. 2900. 3000. + ) + rate_fit = ( + fit_method = plog + pdep_temps = [500.0, 1000.0] + pdep_tol = 20.0 + pdep_pval = 1.0 + pdep_plow = None + pdep_phigh = None + arrfit_dbltol = 15.0 + ) + therm_fit = ( + ref_scheme = basic + ref_enes = Best + ) +end kin + +spc global + ene = ( + lvl1 = dft + ) + rot = ( + mod = rigid + ) + vib = ( + mod = harm + geolvl = pm3 + scale = on + ) + tors = ( + mod = rigid + enelvl = pm3 + geolvl = pm3 + scale = on + ) + symm = ( + mod = HCO_model + geolvl = pm3 + ) + ts = ( + tunnel = eckart + sadpt = fixed + wells = fake + nobar = pst + ) +end spc diff --git a/examples/stereo_quick/inp/run.dat b/examples/stereo_quick/inp/run.dat new file mode 100644 index 00000000..198c11e5 --- /dev/null +++ b/examples/stereo_quick/inp/run.dat @@ -0,0 +1,38 @@ + +input + run_prefix = ./run + save_prefix = ./save + canonical = True +end input + +spc + # Runs canonical enantiomers *only* + 1-6 +end spc + +pes + # Runs non-canonical enantiomers *only* + # (To verify that `canonical = True` is working) + 1: 2 +end pes + +els + # No conformer sampling + spc init_geom runlvl=pm3 inplvl=pm3 + ts find_ts runlvl=pm3 inplvl=pm3 + all conf_hess runlvl=pm3 inplvl=pm3 + all conf_energy runlvl=dft inplvl=pm3 +end els + +thermo + write_mess kin_model=global spc_model=global cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) + run_mess kin_model=global spc_model=global cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) nprocs=10 + run_fits kin_model=global spc_model=global cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) +end thermo + +ktp + write_mess kin_model=global spc_model=global + run_mess kin_model=global spc_model=global nprocs=10 + run_fits kin_model=global spc_model=global +end ktp + diff --git a/examples/stereo_quick/inp/species.csv b/examples/stereo_quick/inp/species.csv new file mode 100644 index 00000000..8e7e5c93 --- /dev/null +++ b/examples/stereo_quick/inp/species.csv @@ -0,0 +1,8 @@ +'name','smiles','inchi','inchikey','mult','charge','canon_enant_ich' +'H2','[H][H]','InChI=1S/H2/h1H','UFHFLCQGNIYNRP-UHFFFAOYSA-N',1,0,'InChI=1S/H2/h1H' +'CH4','C','InChI=1S/CH4/h1H4','VNWKTOKETHGBQD-UHFFFAOYSA-N',1,0,'InChI=1S/CH4/h1H4' +'H2O','O','InChI=1S/H2O/h1H2','XLYOFNOQVPJJNP-UHFFFAOYSA-N',1,0,'InChI=1S/H2O/h1H2' +'OH','[OH]','InChI=1S/HO/h1H','TUJKJAMUKRIRHC-UHFFFAOYSA-N','2','0','InChI=1S/HO/h1H' +'C3o2','CC(C)O','InChI=1S/C3H8O/c1-3(2)4/h3-4H,1-2H3','KFZMGEQAYNKOFK-UHFFFAOYSA-N','1','0','InChI=1S/C3H8O/c1-3(2)4/h3-4H,1-2H3' +'C3o2y1r0','[CH2][C@@H](C)O','InChI=1S/C3H7O/c1-3(2)4/h3-4H,1H2,2H3/t3-/m0/s1','INKFUXNIEHXFJX-VKHMYHEASA-N','2','0','InChI=1S/C3H7O/c1-3(2)4/h3-4H,1H2,2H3/t3-/m0/s1' +'C3o2y1r1','[CH2][C@H](C)O','InChI=1S/C3H7O/c1-3(2)4/h3-4H,1H2,2H3/t3-/m1/s1','INKFUXNIEHXFJX-GSVOUGTGSA-N','2','0','InChI=1S/C3H7O/c1-3(2)4/h3-4H,1H2,2H3/t3-/m0/s1' diff --git a/examples/stereo_quick/inp/theory.dat b/examples/stereo_quick/inp/theory.dat new file mode 100644 index 00000000..086061c9 --- /dev/null +++ b/examples/stereo_quick/inp/theory.dat @@ -0,0 +1,24 @@ +level pm3 + method = pm3 + orb_res = RU + program = gaussian16 + mem = 1.0 + nprocs = 1 +end level + +level pm6 + method = pm6 + orb_res = RU + program = gaussian16 + mem = 1.0 + nprocs = 1 +end level + +level dft + method = bp86 + basis = def2-sv(p) + orb_res = RU + program = gaussian16 + mem = 2.0 + nprocs = 1 +end level diff --git a/examples/ts_conf/.gitignore b/examples/ts_conf/.gitignore new file mode 100644 index 00000000..3a040afa --- /dev/null +++ b/examples/ts_conf/.gitignore @@ -0,0 +1,3 @@ +* +!.gitignore +!inp/ diff --git a/examples/ts_conf/inp/.gitignore b/examples/ts_conf/inp/.gitignore new file mode 100644 index 00000000..1ab933d2 --- /dev/null +++ b/examples/ts_conf/inp/.gitignore @@ -0,0 +1,8 @@ +* +!.gitignore +!inp/ +!mechanism.dat +!models.dat +!run.dat +!species.csv +!theory.dat diff --git a/examples/ts_conf/inp/mechanism.dat b/examples/ts_conf/inp/mechanism.dat new file mode 100644 index 00000000..44c5bc1b --- /dev/null +++ b/examples/ts_conf/inp/mechanism.dat @@ -0,0 +1,5 @@ +REACTIONS CAL/MOL MOL + +CH4 + OH = CH3 + H2O 1.000 0.000 0.000 # pes.subpes.channel 1.1.1 + +END diff --git a/examples/ts_conf/inp/models.dat b/examples/ts_conf/inp/models.dat new file mode 100644 index 00000000..581ea8d1 --- /dev/null +++ b/examples/ts_conf/inp/models.dat @@ -0,0 +1,59 @@ + +kin global + pressures = ( + 0.1 1.0 10.0 100.0 + ) + rate_temps = ( + 500. 600. 700. 800. 900. 1000. + 1100. 1200. 1300. 1400. 1500 + 1600. 1700. 1800. 1900. 2000. + ) + therm_temps = ( + 200. 300. 400. 500. 600. 700. 800. 900. 1000. 1100. 1200. + 1300. 1400. 1500. 1600. 1700. 1800. 1900. 2000. 2100. 2200. + 2300. 2400. 2500. 2600. 2700. 2800. 2900. 3000. + ) + rate_fit = ( + fit_method = plog + pdep_temps = [500.0, 1000.0] + pdep_tol = 20.0 + pdep_pval = 1.0 + pdep_plow = None + pdep_phigh = None + arrfit_dbltol = 15.0 + ) + therm_fit = ( + ref_scheme = basic + ref_enes = Best + ) +end kin + +spc global + ene = ( + lvl1 = dft + ) + rot = ( + mod = rigid + ) + vib = ( + mod = harm + geolvl = pm3 + scale = on + ) + tors = ( + mod = 1dhrfa + enelvl = pm3 + geolvl = pm3 + scale = on + ) + symm = ( + mod = HCO_model + geolvl = pm3 + ) + ts = ( + tunnel = eckart + sadpt = fixed + wells = fake + nobar = pst + ) +end spc diff --git a/examples/ts_conf/inp/run.dat b/examples/ts_conf/inp/run.dat new file mode 100644 index 00000000..6ab4785a --- /dev/null +++ b/examples/ts_conf/inp/run.dat @@ -0,0 +1,35 @@ + +input + run_prefix = ./run + save_prefix = ./save +end input + +spc + 1-5 +end spc + +pes + 1: 1 +end pes + +els + spc init_geom runlvl=pm3 inplvl=pm3 + ts find_ts runlvl=pm3 inplvl=pm3 + all conf_samp runlvl=pm3 inplvl=pm3 + all conf_hess runlvl=pm3 inplvl=pm3 cnf_range=n100 + all conf_energy runlvl=dft inplvl=pm3 cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) + all hr_scan runlvl=pm3 inplvl=pm3 cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) tors_model=1dhrfa +end els + +thermo + write_mess kin_model=global spc_model=global cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) + run_mess kin_model=global spc_model=global cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) nprocs=10 + run_fits kin_model=global spc_model=global cnf_range=min sort=freqs(pm3),sp(pm3),gibbs(700) +end thermo + +ktp + write_mess kin_model=global spc_model=global + run_mess kin_model=global spc_model=global nprocs=10 + run_fits kin_model=global spc_model=global +end ktp + diff --git a/examples/ts_conf/inp/species.csv b/examples/ts_conf/inp/species.csv new file mode 100644 index 00000000..b6d704e7 --- /dev/null +++ b/examples/ts_conf/inp/species.csv @@ -0,0 +1,6 @@ +'name','smiles','inchi','inchikey','mult','charge','canon_enant_ich' +'H2','[H][H]','InChI=1S/H2/h1H','UFHFLCQGNIYNRP-UHFFFAOYSA-N',1,0,'InChI=1S/H2/h1H' +'OH','[OH]','InChI=1S/HO/h1H','TUJKJAMUKRIRHC-UHFFFAOYSA-N','2','0','InChI=1S/HO/h1H' +'H2O','O','InChI=1S/H2O/h1H2','XLYOFNOQVPJJNP-UHFFFAOYSA-N','1','0','InChI=1S/H2O/h1H2' +'CH3','[CH3]','InChI=1S/CH3/h1H3','WCYWZMWISLQXQU-UHFFFAOYSA-N','2','0','InChI=1S/CH3/h1H3' +'CH4','C','InChI=1S/CH4/h1H4','VNWKTOKETHGBQD-UHFFFAOYSA-N','1','0','InChI=1S/CH4/h1H4' diff --git a/examples/ts_conf/inp/theory.dat b/examples/ts_conf/inp/theory.dat new file mode 100644 index 00000000..e69f7a03 --- /dev/null +++ b/examples/ts_conf/inp/theory.dat @@ -0,0 +1,16 @@ +level pm3 + method = pm3 + orb_res = RU + program = gaussian16 + mem = 1.0 + nprocs = 1 +end level + +level dft + method = bp86 + basis = def2-sv(p) + orb_res = RU + program = gaussian16 + mem = 2.0 + nprocs = 1 +end level diff --git a/pixi.lock b/pixi.lock index 2ab2d78d..4fa3f23d 100644 --- a/pixi.lock +++ b/pixi.lock @@ -14,6 +14,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/altair-5.5.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/arpack-3.9.1-nompi_hf03ea27_102.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/astor-0.8.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-3.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/Auto-Mech/noarch/autochem-0.2025.0-pyh4616a5c_0.conda @@ -21,12 +22,14 @@ environments: - conda: https://conda.anaconda.org/Auto-Mech/noarch/autoio-0.2025.0-pyh4616a5c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.2.0-h41a2e66_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.2.0-hf2c8021_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bumpver-2025.1131-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.11.12-hbd8a1cb_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-h3394656_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py313h7037e92_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py312hd9148b4_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hd9c7081_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h3c4dab8_0.conda @@ -42,13 +45,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.15.0-h7e30c49_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py312h8a5da7c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.14.1-ha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/freetype-py-2.3.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/glpk-5.0-h445213a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-hac33072_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.14-hecca717_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py313h7033f15_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py312h1289d80_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-12.2.0-h15599e2_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/igraph-1.0.0-hfe3e89f_0.conda @@ -60,14 +63,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.25.1-pyhe01879c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2025.9.1-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py313hc8edb43_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py312h0a2e395_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.17-h717163a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45-h1aa0949_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lexid-2021.1006-py312h7900ff3_7.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/lib3to6-202107.1047-pyhd8ed1ab_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-1_h4a7cf45_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-1.86.0-hed09d94_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-1.86.0-py313hfaae9d9_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-1.86.0-py312hf890105_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-h09219d5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hd53d788_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-h02bd7ab_0.conda @@ -97,7 +102,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-1_h47877c9_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm21-21.1.5-hf7376ad_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.30-pthreads_h94d23a6_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopengl-1.7.0-ha4b6fd6_2.conda @@ -120,10 +125,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-devel-2.15.1-h26afc86_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/looseversion-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mako-1.3.10-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py313h3dea7bd_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py313h78bf25f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py313h683a580_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py312h8a5da7c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py312he3d6523_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/Auto-Mech/noarch/mechanalyzer-0.2025.0-pyh4616a5c_0.conda - conda: https://conda.anaconda.org/Auto-Mech/noarch/mess-static-2025.9.0-h4616a5c_0.conda @@ -132,18 +138,19 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/narwhals-2.12.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.5-pyhe01879c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py313hf6604e3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py312h33ff503_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.4-h55fea9a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-he970967_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.0-h26f9b46_0.conda - conda: https://conda.anaconda.org/Auto-Mech/linux-64/pac99-1.6.0-hb0f4dca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py313h08cd8bf_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py312hf79963d_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.5-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/patchelf-0.17.2-h58526e2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pathlib2-2.3.7.post1-py312h7900ff3_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.46-h1321c63_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py313h50355cd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py312h0889fd4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pint-0.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda @@ -153,44 +160,49 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/py3dmol-2.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pycairo-1.29.0-py313h3f29d12_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pycairo-1.29.0-py312h2596900_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.12.4-pyh3cfb1c2_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.41.5-py313h843e2db_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.41.5-py312h868fb18_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.2.5-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py313h85046ba_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.9-hc97d973_101_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py312h9da60e5_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.12-hd63d673_1_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-igraph-1.0.0-py313h7033f15_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-igraph-1.0.0-py312h1289d80_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2025.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2025.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py312h8a5da7c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qcelemental-0.29.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h434a139_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.9.3-h5c1c036_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rattler-build-0.50.0-he64ecbb_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rdkit-2025.09.2-py313h66a1ddb_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdkit-2025.09.2-py312h3ecb6ed_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.37.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/reportlab-4.4.4-py313h07c4f96_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/reportlab-4.4.5-py312h4c3975b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rlpycairo-0.4.0-pyh6c17108_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.29.0-py313h843e2db_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py313h11c21cd_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.29.0-py312h868fb18_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py312h7a1785b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.44-py313h07c4f96_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.44-py312h4c3975b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.3-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/texttable-1.7.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/Auto-Mech/linux-64/thermp-0.7.0-hb0f4dca_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py312h4c3975b_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-3.10.0.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-inspection-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-17.0.0-py312h4c3975b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wayland-1.24.0-hd6090a7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.14-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2025.11.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.1-h4f16b4b_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda @@ -1245,6 +1257,17 @@ packages: purls: [] size: 130412 timestamp: 1736083992796 +- conda: https://conda.anaconda.org/conda-forge/noarch/astor-0.8.1-pyhd8ed1ab_1.conda + sha256: 2e4e6d0d3aaee26415f910658ed55a53cc3210e8c30ae9a0dd35826cf7a3423f + md5: 860c9e08463a3af84d7da76bc0baf84b + depends: + - python >=3.9 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/astor?source=hash-mapping + size: 29393 + timestamp: 1733838731992 - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-3.0.1-pyhd8ed1ab_0.conda sha256: ee4da0f3fe9d59439798ee399ef3e482791e48784873d546e706d0935f9ff010 md5: 9673a61a297b00016442e022d689faa6 @@ -1363,6 +1386,25 @@ packages: purls: [] size: 20993 timestamp: 1761592224816 +- conda: https://conda.anaconda.org/conda-forge/noarch/bumpver-2025.1131-pyhd8ed1ab_0.conda + sha256: dbee94e1be0825044c15544eb84a06fdacd5eaa55a8740bf36646442b708d0ab + md5: 4e2173b4c4bb2e8f89eaaff58b345090 + depends: + - click + - colorama >=0.4 + - lexid + - lib3to6 + - looseversion + - pathlib2 + - python >=3.9 + - setuptools >=45.0.0 + - toml + license: MIT + license_family: MIT + purls: + - pkg:pypi/bumpver?source=hash-mapping + size: 55789 + timestamp: 1751497749693 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda sha256: c30daba32ddebbb7ded490f0e371eae90f51e72db620554089103b4a6934b0d5 md5: 51a19bba1b8ebfb60df25cde030b7ebc @@ -1465,6 +1507,22 @@ packages: - pkg:pypi/comm?source=hash-mapping size: 14690 timestamp: 1753453984907 +- conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py312hd9148b4_3.conda + sha256: e173ea96fb135b233c7f57c35c0d07f7adc50ebacf814550f3daf1c7ba2ed51e + md5: 86cf7a7d861b79d38e3f0e5097e4965b + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - numpy >=1.25 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/contourpy?source=compressed-mapping + size: 295243 + timestamp: 1762525427240 - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.3-py313h7037e92_3.conda sha256: c545751fd48f119f2c28635514e6aa6ae784d9a1d4eb0e10be16c776e961f333 md5: 6186382cb34a9953bf2a18fc763dc346 @@ -1691,6 +1749,23 @@ packages: purls: [] size: 4059 timestamp: 1762351264405 +- conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py312h8a5da7c_0.conda + sha256: 1be46e58f063c1f563f114df9e78bcb70c4b59760104c5456bbe3b0cb17af9cf + md5: b12bb9cc477156ce84038e0be6d0f763 + depends: + - __glibc >=2.17,<3.0.a0 + - brotli + - libgcc >=14 + - munkres + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - unicodedata2 >=15.1.0 + license: MIT + license_family: MIT + purls: + - pkg:pypi/fonttools?source=hash-mapping + size: 2888637 + timestamp: 1759187635166 - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.60.1-py313h3dea7bd_0.conda sha256: 063df49ae505478a6904f137a49ca4caf1afeccdc582133be231b0bc15601427 md5: 904860fc0d57532d28e9c6c4501f19a9 @@ -1762,6 +1837,21 @@ packages: purls: [] size: 99596 timestamp: 1755102025473 +- conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py312h1289d80_1.conda + sha256: 70cfb228b535389686c4ab66dfe59b9c216eca303a732911e1c6f46eab8a1fff + md5: e5e4c495ffa157da0c9a0457736f18cd + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: MIT + license_family: MIT + purls: + - pkg:pypi/greenlet?source=hash-mapping + size: 238219 + timestamp: 1756752228639 - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.2.4-py313h7033f15_1.conda sha256: 1e8721a277c137fd4df8083b4fdd3b2f163156efebf03d0fee3d8b6c978e56c0 md5: 54e4dec31235bbc794d091af9afcd845 @@ -2048,6 +2138,21 @@ packages: purls: [] size: 134088 timestamp: 1754905959823 +- conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py312h0a2e395_2.conda + sha256: 170d76b7ac7197012bb048e1021482a7b2455f3592a5e8d97c96f285ebad064b + md5: 3a3004fddd39e3bb1a631b08d7045156 + depends: + - python + - __glibc >=2.17,<3.0.a0 + - libstdcxx >=14 + - libgcc >=14 + - python_abi 3.12.* *_cp312 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/kiwisolver?source=hash-mapping + size: 77682 + timestamp: 1762488738724 - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.9-py313hc8edb43_2.conda sha256: 60d7d525db89401f88f5c91bdbb79d3afbf005e7d7c1326318659fa097607e51 md5: 3e0e65595330e26515e31b7fc6d933c7 @@ -2116,6 +2221,33 @@ packages: purls: [] size: 264243 timestamp: 1745264221534 +- conda: https://conda.anaconda.org/conda-forge/linux-64/lexid-2021.1006-py312h7900ff3_7.conda + sha256: 3c66f7d1fb7acc6ddceabad984b613d7a8142c90d5eab8049df01d21d11b938c + md5: f0ff59ae2aba10218808a098a8f7e9cb + depends: + - python >=3.12.0rc3,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - typing + license: MIT + license_family: MIT + purls: + - pkg:pypi/lexid?source=hash-mapping + size: 15868 + timestamp: 1695847638495 +- conda: https://conda.anaconda.org/conda-forge/noarch/lib3to6-202107.1047-pyhd8ed1ab_4.conda + sha256: 9cefbf3b4878d456b6ba7d68ef13bece9da9c9d651f3393b0c398e7faee4ba10 + md5: 2dbab236e0bc543f5e04a4ff33e52642 + depends: + - astor + - pathlib2 + - python >=3.10 + - wheel + license: MIT + license_family: MIT + purls: + - pkg:pypi/lib3to6?source=hash-mapping + size: 44211 + timestamp: 1762166018358 - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-1_h4a7cf45_openblas.conda build_number: 1 sha256: a36d1230c435d9b06c3bbd1c5c32c695bc341a413719d6e8c4bb6574818f46ea @@ -2151,6 +2283,23 @@ packages: purls: [] size: 2959099 timestamp: 1756549412040 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-1.86.0-py312hf890105_4.conda + sha256: 4d579d579ea0644612e55fbbabc0bc5f61e38d3f435251e63064140964c2da15 + md5: ad2ca5f64b13b92c0dc928767a6b8288 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - numpy >=1.23,<3 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - py-boost <0.0a0 + - boost <0.0a0 + license: BSL-1.0 + purls: [] + size: 124701 + timestamp: 1756549734965 - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-python-1.86.0-py313hfaae9d9_4.conda sha256: 4a0fa2efab52a6e44b880a64463b3a61b3e2d81433477c6798bc2a8d38580aa3 md5: e35fd4508ccf85dc853b4273677fafc9 @@ -2531,6 +2680,17 @@ packages: purls: [] size: 91183 timestamp: 1748393666725 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda + sha256: 927fe72b054277cde6cb82597d0fcf6baf127dcbce2e0a9d8925a68f1265eef5 + md5: d864d34357c3b65a4b731f78c0801dc4 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + license: LGPL-2.1-only + license_family: GPL + purls: [] + size: 33731 + timestamp: 1750274110928 - conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda sha256: 3b3f19ced060013c2dd99d9d46403be6d319d4601814c772a3472fe2955612b0 md5: 7c7927b404672409d9917d49bff5f2d6 @@ -2836,6 +2996,17 @@ packages: purls: [] size: 60963 timestamp: 1727963148474 +- conda: https://conda.anaconda.org/conda-forge/noarch/looseversion-1.3.0-pyhd8ed1ab_0.conda + sha256: a997e117de33f397be5e7409938375ea3e91a50522397edc5b6829fbc9d87789 + md5: eb665a1045b9f42f62a45dae4cba8d85 + depends: + - python >=2 + license: PSF-2.0 + license_family: PSF + purls: + - pkg:pypi/looseversion?source=hash-mapping + size: 14298 + timestamp: 1688586611887 - conda: https://conda.anaconda.org/conda-forge/noarch/mako-1.3.10-pyhd8ed1ab_0.conda sha256: 49f1e6a24e4c857db8f5eb3932b862493a7bb54f08204e65a54d1847d5afb5a4 md5: c5bb3eea5f1a00fcf3d7ea186209ce33 @@ -2861,6 +3032,22 @@ packages: - pkg:pypi/markdown-it-py?source=hash-mapping size: 64736 timestamp: 1754951288511 +- conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py312h8a5da7c_0.conda + sha256: f77f9f1a4da45cbc8792d16b41b6f169f649651a68afdc10b2da9da12b9aa42b + md5: f775a43412f7f3d7ed218113ad233869 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - jinja2 >=3.0.0 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/markupsafe?source=hash-mapping + size: 25321 + timestamp: 1759055268795 - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-3.0.3-py313h3dea7bd_0.conda sha256: a530a411bdaaf0b1e4de8869dfaca46cb07407bc7dc0702a9e231b0e5ce7ca85 md5: c14389156310b8ed3520d84f854be1ee @@ -2877,6 +3064,20 @@ packages: - pkg:pypi/markupsafe?source=hash-mapping size: 25909 timestamp: 1759055357045 +- conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py312h7900ff3_0.conda + sha256: 6d66175e1a4ffb91ed954e2c11066d2e03a05bce951a808275069836ddfc993e + md5: 2a7663896e5aab10b60833a768c4c272 + depends: + - matplotlib-base >=3.10.8,<3.10.9.0a0 + - pyside6 >=6.7.2 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - tornado >=5 + license: PSF-2.0 + license_family: PSF + purls: [] + size: 17415 + timestamp: 1763055550515 - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.10.8-py313h78bf25f_0.conda sha256: ad3eb40a91d456620936c88ea4eb2700ca24e474acd9498fdad831a87771399e md5: 85bce686dd57910d533807562204e16b @@ -2891,6 +3092,36 @@ packages: purls: [] size: 17429 timestamp: 1763055377972 +- conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py312he3d6523_0.conda + sha256: 70cf0e7bfd50ef50eb712a6ca1eef0ef0d63b7884292acc81353327b434b548c + md5: b8dc157bbbb69c1407478feede8b7b42 + depends: + - __glibc >=2.17,<3.0.a0 + - contourpy >=1.0.1 + - cycler >=0.10 + - fonttools >=4.22.0 + - freetype + - kiwisolver >=1.3.1 + - libfreetype >=2.14.1 + - libfreetype6 >=2.14.1 + - libgcc >=14 + - libstdcxx >=14 + - numpy >=1.23 + - numpy >=1.23,<3 + - packaging >=20.0 + - pillow >=8 + - pyparsing >=2.3.1 + - python >=3.12,<3.13.0a0 + - python-dateutil >=2.7 + - python_abi 3.12.* *_cp312 + - qhull >=2020.2,<2020.3.0a0 + - tk >=8.6.13,<8.7.0a0 + license: PSF-2.0 + license_family: PSF + purls: + - pkg:pypi/matplotlib?source=hash-mapping + size: 8442149 + timestamp: 1763055517581 - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.10.8-py313h683a580_0.conda sha256: b1117aa2c1d11ca70d1704054cdc8801cbcf2dfb846c565531edd417ddd82559 md5: ffe67570e1a9192d2f4c189b27f75f89 @@ -2985,7 +3216,7 @@ packages: - pypi: ./ name: mechdriver version: 0.2024.0 - sha256: 7139a5f6e68895660170aa593ab743a0f971b7c87230f763b2d26aade6d34602 + sha256: d68b67cd6764f5362b18c4c9b95ad5bcd36e561f4545607106aa81c98575e0a7 requires_dist: - hyperqueue requires_python: '>=3.11,<3.14' @@ -3082,6 +3313,27 @@ packages: - pkg:pypi/networkx?source=hash-mapping size: 1564462 timestamp: 1749078300258 +- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py312h33ff503_0.conda + sha256: 68b5dd7e4d12295c44130e3a777462dbc8886ca0a7d141f1ff5ab0375df5da30 + md5: 1570db96376f9f01cf495afe203672e5 + depends: + - python + - libgcc >=14 + - libstdcxx >=14 + - libgcc >=14 + - __glibc >=2.17,<3.0.a0 + - libcblas >=3.9.0,<4.0a0 + - libblas >=3.9.0,<4.0a0 + - python_abi 3.12.* *_cp312 + - liblapack >=3.9.0,<4.0a0 + constrains: + - numpy-base <0a0 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/numpy?source=compressed-mapping + size: 8820654 + timestamp: 1763351074641 - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.3.5-py313hf6604e3_0.conda sha256: d54453cb875ed66139c973313465f757a5d6c7ab5760b96484ae56cb8a16ca23 md5: 15f43bcd12c90186e78801fafc53d89b @@ -3166,6 +3418,58 @@ packages: - pkg:pypi/packaging?source=hash-mapping size: 62477 timestamp: 1745345660407 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py312hf79963d_1.conda + sha256: f633d5f9b28e4a8f66a6ec9c89ef1b6743b880b0511330184b4ab9b7e2dda247 + md5: e597b3e812d9613f659b7d87ad252d18 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + - numpy >=1.22.4 + - numpy >=1.23,<3 + - python >=3.12,<3.13.0a0 + - python-dateutil >=2.8.2 + - python-tzdata >=2022.7 + - python_abi 3.12.* *_cp312 + - pytz >=2020.1 + constrains: + - xarray >=2022.12.0 + - qtpy >=2.3.0 + - html5lib >=1.1 + - pandas-gbq >=0.19.0 + - tzdata >=2022.7 + - fsspec >=2022.11.0 + - fastparquet >=2022.12.0 + - odfpy >=1.4.1 + - pyxlsb >=1.0.10 + - scipy >=1.10.0 + - sqlalchemy >=2.0.0 + - pytables >=3.8.0 + - bottleneck >=1.3.6 + - pyarrow >=10.0.1 + - numexpr >=2.8.4 + - pyqt5 >=5.15.9 + - xlsxwriter >=3.0.5 + - openpyxl >=3.1.0 + - blosc >=1.21.3 + - matplotlib >=3.6.3 + - lxml >=4.9.2 + - numba >=0.56.4 + - s3fs >=2022.11.0 + - tabulate >=0.9.0 + - xlrd >=2.0.1 + - gcsfs >=2022.11.0 + - pyreadstat >=1.2.0 + - python-calamine >=0.1.7 + - zstandard >=0.19.0 + - psycopg2 >=2.9.6 + - beautifulsoup4 >=4.11.2 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/pandas?source=compressed-mapping + size: 15099922 + timestamp: 1759266031115 - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.3.3-py313h08cd8bf_1.conda sha256: c4ce5f75d175cb264dc98af6db14378222b63955c63bf1b5e30e042e81624fae md5: 9e87d4bda0c2711161d765332fa38781 @@ -3241,6 +3545,19 @@ packages: purls: [] size: 94048 timestamp: 1673473024463 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pathlib2-2.3.7.post1-py312h7900ff3_5.conda + sha256: c059696a81519199a9d78bd018765a1082171c10607f4fa4d94f2770e55f027a + md5: eafc90f5bfad99a4923eb97472e1dcf3 + depends: + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - six >=1.13.0 + license: MIT + license_family: MIT + purls: + - pkg:pypi/pathlib2?source=hash-mapping + size: 50206 + timestamp: 1758630586100 - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.46-h1321c63_0.conda sha256: 5c7380c8fd3ad5fc0f8039069a45586aa452cf165264bc5a437ad80397b32934 md5: 7fa07cb0fb1b625a089ccc01218ee5b1 @@ -3265,6 +3582,29 @@ packages: - pkg:pypi/pexpect?source=hash-mapping size: 53561 timestamp: 1733302019362 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py312h0889fd4_0.conda + sha256: 29c55b1e08b90ef92976e0715937686bf70e215a80de8f979ed19d4de7b76d45 + md5: 45824eb723a6b4a128d120ad1d07df5e + depends: + - python + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libjpeg-turbo >=3.1.0,<4.0a0 + - libfreetype >=2.14.1 + - libfreetype6 >=2.14.1 + - lcms2 >=2.17,<3.0a0 + - openjpeg >=2.5.4,<3.0a0 + - libtiff >=4.7.1,<4.8.0a0 + - python_abi 3.12.* *_cp312 + - libxcb >=1.17.0,<2.0a0 + - zlib-ng >=2.2.5,<2.3.0a0 + - libwebp-base >=1.6.0,<2.0a0 + - tk >=8.6.13,<8.7.0a0 + license: HPND + purls: + - pkg:pypi/pillow?source=hash-mapping + size: 1028298 + timestamp: 1761655794833 - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-12.0.0-py313h50355cd_0.conda sha256: f4f7554212aa3ca89ff2336f6312dc61c81b9f7364073fe74374d96fc81391b7 md5: 8a96eab78687362de3e102a15c4747a8 @@ -3421,6 +3761,22 @@ packages: - pkg:pypi/py3dmol?source=hash-mapping size: 13415 timestamp: 1759129481559 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pycairo-1.29.0-py312h2596900_0.conda + sha256: f0c2cdc875f75af9a9e15b4dc84bb5b3c321c46c40343b5995869a10697119d7 + md5: 3ae03fed8f1d543f46066b07721029a4 + depends: + - __glibc >=2.17,<3.0.a0 + - cairo >=1.18.4,<2.0a0 + - libexpat >=2.7.1,<3.0a0 + - libgcc >=14 + - libzlib >=1.3.1,<2.0a0 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: LGPL-2.1-only OR MPL-1.1 + purls: + - pkg:pypi/pycairo?source=hash-mapping + size: 120332 + timestamp: 1763046400508 - conda: https://conda.anaconda.org/conda-forge/linux-64/pycairo-1.29.0-py313h3f29d12_0.conda sha256: 21dd2b509ba9738a707d7d4bb07898b9af446284b9c8ccfb418275e8464a3fea md5: 83755ca92a745120f60b3d1a53874174 @@ -3453,6 +3809,23 @@ packages: - pkg:pypi/pydantic?source=hash-mapping size: 320446 timestamp: 1762379584494 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.41.5-py312h868fb18_1.conda + sha256: 07f899d035e06598682d3904d55f1529fac71b15e12b61d44d6a5fbf8521b0fe + md5: 56a776330a7d21db63a7c9d6c3711a04 + depends: + - python + - typing-extensions >=4.6.0,!=4.7.0 + - libgcc >=14 + - __glibc >=2.17,<3.0.a0 + - python_abi 3.12.* *_cp312 + constrains: + - __glibc >=2.17 + license: MIT + license_family: MIT + purls: + - pkg:pypi/pydantic-core?source=compressed-mapping + size: 1935221 + timestamp: 1762989004359 - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.41.5-py313h843e2db_1.conda sha256: b15568ddc03bd33ea41610e5df951be4e245cd61957cbf8c2cfd12557f3d53b5 md5: f27c39a1906771bbe56cd26a76bf0b8b @@ -3493,6 +3866,32 @@ packages: - pkg:pypi/pyparsing?source=hash-mapping size: 104044 timestamp: 1758436411254 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py312h9da60e5_1.conda + sha256: 31f0d79f4f9c989a9acf566948cbd7d2d1c08e4840a04461f58bc3a734b8332b + md5: 30e8545156cab1f5ff0fe9f0297c77c6 + depends: + - __glibc >=2.17,<3.0.a0 + - libclang13 >=21.1.2 + - libegl >=1.7.0,<2.0a0 + - libgcc >=14 + - libgl >=1.7.0,<2.0a0 + - libopengl >=1.7.0,<2.0a0 + - libstdcxx >=14 + - libvulkan-loader >=1.4.313.0,<2.0a0 + - libxml2 + - libxml2-16 >=2.14.6 + - libxslt >=1.1.43,<2.0a0 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - qt6-main 6.9.3.* + - qt6-main >=6.9.3,<6.10.0a0 + license: LGPL-3.0-only + license_family: LGPL + purls: + - pkg:pypi/pyside6?source=hash-mapping + - pkg:pypi/shiboken6?source=hash-mapping + size: 10161603 + timestamp: 1759403426235 - conda: https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.9.3-py313h85046ba_1.conda sha256: 8d143b89d075b39fa25e69ad9be2396f4b591a205f95b2bf5a81a14cd397c56f md5: bb7ac52bfa917611096023598a7df152 @@ -3540,6 +3939,34 @@ packages: - pkg:pypi/pytest?source=compressed-mapping size: 299017 timestamp: 1763049198670 +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.12-hd63d673_1_cpython.conda + build_number: 1 + sha256: 39898d24769a848c057ab861052e50bdc266310a7509efa3514b840e85a2ae98 + md5: 5c00c8cea14ee8d02941cab9121dce41 + depends: + - __glibc >=2.17,<3.0.a0 + - bzip2 >=1.0.8,<2.0a0 + - ld_impl_linux-64 >=2.36.1 + - libexpat >=2.7.1,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - libgcc >=14 + - liblzma >=5.8.1,<6.0a0 + - libnsl >=2.0.1,<2.1.0a0 + - libsqlite >=3.50.4,<4.0a0 + - libuuid >=2.41.2,<3.0a0 + - libxcrypt >=4.4.36 + - libzlib >=1.3.1,<2.0a0 + - ncurses >=6.5,<7.0a0 + - openssl >=3.5.4,<4.0a0 + - readline >=8.2,<9.0a0 + - tk >=8.6.13,<8.7.0a0 + - tzdata + constrains: + - python_abi 3.12.* *_cp312 + license: Python-2.0 + purls: [] + size: 31537229 + timestamp: 1761176876216 - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.9-hc97d973_101_cp313.conda build_number: 101 sha256: e89da062abd0d3e76c8d3b35d3cafc5f0d05914339dcb238f9e3675f2a58d883 @@ -3602,6 +4029,23 @@ packages: purls: [] size: 48385 timestamp: 1761175154112 +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-igraph-1.0.0-py312h1289d80_0.conda + sha256: 5c639d4587c59b72a54ce3a87544cb2bc5b60688acb0b9f32e83007f67972b5e + md5: 29b32941e0811caa3a318685deb29246 + depends: + - __glibc >=2.17,<3.0.a0 + - igraph >=1.0.0,<1.1.0a0 + - libgcc >=14 + - libstdcxx >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - texttable >=1.6.2 + license: GPL-2.0-or-later + license_family: GPL + purls: + - pkg:pypi/igraph?source=hash-mapping + size: 657387 + timestamp: 1761816728227 - conda: https://conda.anaconda.org/conda-forge/linux-64/python-igraph-1.0.0-py313h7033f15_0.conda sha256: 0b5b67ad6a768e65d15e4c977c5f12280d8cac1c4e4a9258d7d66e941abac173 md5: 2e61e980f7352899d5c3e8a2498e89cd @@ -3630,6 +4074,17 @@ packages: - pkg:pypi/tzdata?source=hash-mapping size: 144160 timestamp: 1742745254292 +- conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda + build_number: 8 + sha256: 80677180dd3c22deb7426ca89d6203f1c7f1f256f2d5a94dc210f6e758229809 + md5: c3efd25ac4d74b1584d2f7a57195ddf1 + constrains: + - python 3.12.* *_cpython + license: BSD-3-Clause + license_family: BSD + purls: [] + size: 6958 + timestamp: 1752805918820 - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda build_number: 8 sha256: 210bffe7b121e651419cb196a2a63687b087497595c9be9d20ebe97dd06060a7 @@ -3652,6 +4107,21 @@ packages: - pkg:pypi/pytz?source=hash-mapping size: 189015 timestamp: 1742920947249 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py312h8a5da7c_0.conda + sha256: 1b3dc4c25c83093fff08b86a3574bc6b94ba355c8eba1f35d805c5e256455fc7 + md5: fba10c2007c8b06f77c5a23ce3a635ad + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - yaml >=0.2.5,<0.3.0a0 + license: MIT + license_family: MIT + purls: + - pkg:pypi/pyyaml?source=hash-mapping + size: 204539 + timestamp: 1758892248166 - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda sha256: 40dcd6718dce5fbee8aabdd0519f23d456d8feb2e15ac352eaa88bbfd3a881af md5: 4794ea0adaebd9f844414e594b142cb2 @@ -3788,6 +4258,35 @@ packages: purls: [] size: 16825043 timestamp: 1763444186145 +- conda: https://conda.anaconda.org/conda-forge/linux-64/rdkit-2025.09.2-py312h3ecb6ed_1.conda + sha256: b32e4c46864a93493490c89b00f52ee7e6f05f6fc1c611abf86500144c272a06 + md5: c94a7071b3b86865d0ea7e169a1736c2 + depends: + - __glibc >=2.17,<3.0.a0 + - cairo >=1.18.4,<2.0a0 + - libboost >=1.86.0,<1.87.0a0 + - libboost-python >=1.86.0,<1.87.0a0 + - libfreetype >=2.14.1 + - libfreetype6 >=2.14.1 + - libgcc >=14 + - libpq >=18.0,<19.0a0 + - librdkit 2025.09.2 h3c5c181_1 + - libstdcxx >=14 + - matplotlib-base + - numpy >=1.23,<3 + - pandas + - pillow + - pycairo + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - reportlab + - sqlalchemy + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/rdkit?source=hash-mapping + size: 20128255 + timestamp: 1763128546111 - conda: https://conda.anaconda.org/conda-forge/linux-64/rdkit-2025.09.2-py313h66a1ddb_1.conda sha256: 861244cc498025a619ff0c7522eace0de4fa72dd621be1b2d05fc5f9baf7470b md5: 6941b7f8ce4d117890c7ece3a6005bec @@ -3861,6 +4360,24 @@ packages: - pkg:pypi/reportlab?source=hash-mapping size: 2770412 timestamp: 1758296257860 +- conda: https://conda.anaconda.org/conda-forge/linux-64/reportlab-4.4.5-py312h4c3975b_0.conda + sha256: 2f784cf3a69d4fb6876231ca5f433ba767c79b75ac1d8caabb42573dbd2c1147 + md5: ca5bf45da40c91378ad6552d95215dc4 + depends: + - __glibc >=2.17,<3.0.a0 + - charset-normalizer + - freetype-py >=2.3,<2.4 + - libgcc >=14 + - pillow >=9 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - rlpycairo >=0.2.0 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/reportlab?source=hash-mapping + size: 2753587 + timestamp: 1763485231886 - conda: https://conda.anaconda.org/conda-forge/noarch/rlpycairo-0.4.0-pyh6c17108_0.conda sha256: 8d993b1a7d869855a1f6358dcc3de08dbeda9263d8c852d44bfc3900701c1e6c md5: cc70086eaf08be7f62fd44842c013916 @@ -3874,6 +4391,22 @@ packages: - pkg:pypi/rlpycairo?source=hash-mapping size: 15558 timestamp: 1756864268077 +- conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.29.0-py312h868fb18_0.conda + sha256: 3cb1efc0b30ead1816a221038a9ca515dd48a2a4124899f077775c42e06221fe + md5: 607432ac645871632454c768c91d4798 + depends: + - python + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - python_abi 3.12.* *_cp312 + constrains: + - __glibc >=2.17 + license: MIT + license_family: MIT + purls: + - pkg:pypi/rpds-py?source=hash-mapping + size: 385164 + timestamp: 1763327046694 - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.29.0-py313h843e2db_0.conda sha256: 62497cad6c88b43285a03876f3638ba4fbe9b4e34ff40b7dee6bed227bc1476b md5: 53275b00b1838e2b0c40d5a7c14dcd41 @@ -3890,6 +4423,29 @@ packages: - pkg:pypi/rpds-py?source=hash-mapping size: 384617 timestamp: 1763326800853 +- conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py312h7a1785b_1.conda + sha256: dcb7080ccb113d760c94a2f5dd32239452793fe9c9cff743ffec27fa128e4801 + md5: c6e0e1f1d9ac014a980574cfe8caa25f + depends: + - __glibc >=2.17,<3.0.a0 + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - libgcc >=14 + - libgfortran + - libgfortran5 >=14.3.0 + - liblapack >=3.9.0,<4.0a0 + - libstdcxx >=14 + - numpy <2.6 + - numpy >=1.23,<3 + - numpy >=1.25.2 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/scipy?source=compressed-mapping + size: 16782787 + timestamp: 1763220711836 - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py313h11c21cd_1.conda sha256: 901d040d684202b73ea55b10a6994ba7fdc9b332764d50e3c29c3e1f542c9330 md5: 26b089b9e5fcdcdca714b01f8008d808 @@ -3913,6 +4469,17 @@ packages: - pkg:pypi/scipy?source=hash-mapping size: 16925821 timestamp: 1763220671565 +- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + sha256: 972560fcf9657058e3e1f97186cc94389144b46dbdf58c807ce62e83f977e863 + md5: 4de79c071274a53dcaf2a8c749d1499e + depends: + - python >=3.9 + license: MIT + license_family: MIT + purls: + - pkg:pypi/setuptools?source=hash-mapping + size: 748788 + timestamp: 1748804951958 - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda sha256: 458227f759d5e3fcec5d9b7acce54e10c9e1f4f4b7ec978f3bfd54ce4ee9853d md5: 3339e3b65d58accf4ca4fb8748ab16b3 @@ -3925,6 +4492,22 @@ packages: - pkg:pypi/six?source=hash-mapping size: 18455 timestamp: 1753199211006 +- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.44-py312h4c3975b_0.conda + sha256: 027be1ca08842bb1775eb6f8c14621c0c18931f03473a8be730ea1ce79f547e4 + md5: 21edaf3d8f04da6258c30be095012ea7 + depends: + - __glibc >=2.17,<3.0.a0 + - greenlet !=0.4.17 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + - typing-extensions >=4.6.0 + license: MIT + license_family: MIT + purls: + - pkg:pypi/sqlalchemy?source=hash-mapping + size: 3586589 + timestamp: 1760114623445 - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.44-py313h07c4f96_0.conda sha256: 0c67d1f65388aa8ba2ed9a577ada786a0443cf696209b856ed085cf4fee80081 md5: 57247c3902e6466acad8dad9963bb146 @@ -3989,6 +4572,17 @@ packages: purls: [] size: 3284905 timestamp: 1763054914403 +- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_2.conda + sha256: 5fe40fb250890a1f81be8c5ad0ba94b41ad614ce51e19098110f635dd9400f82 + md5: 00d80af3a7bf27729484e786a68aafff + depends: + - python >=3.10 + license: MIT + license_family: MIT + purls: + - pkg:pypi/toml?source=compressed-mapping + size: 22702 + timestamp: 1763034696970 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda sha256: cb77c660b646c00a48ef942a9e1721ee46e90230c7c570cdeb5a893b5cce9bff md5: d2732eb636c264dc9aa4cbee404b1a53 @@ -4001,6 +4595,20 @@ packages: - pkg:pypi/tomli?source=compressed-mapping size: 20973 timestamp: 1760014679845 +- conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py312h4c3975b_2.conda + sha256: aecc1ec07a13693922b0b7db52486298ab1cbfdbf1e20043941d660f868d7881 + md5: 2f03dbd34c9706d67b7c9ee815cc89ef + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: Apache-2.0 + license_family: Apache + purls: + - pkg:pypi/tornado?source=hash-mapping + size: 851236 + timestamp: 1762506907752 - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.5.2-py313h07c4f96_2.conda sha256: 8ef12814ebf787553b351c919d40a599e2331aefec639aef5ce6117cbcfc6a28 md5: 7824f18e343d1f846dcde7b23c9bf31a @@ -4042,6 +4650,16 @@ packages: - pkg:pypi/traitlets?source=hash-mapping size: 110051 timestamp: 1733367480074 +- conda: https://conda.anaconda.org/conda-forge/noarch/typing-3.10.0.0-pyhd8ed1ab_2.conda + sha256: 92b084dfd77571be23ef84ad695bbea169e844821484b6d47d99f04ea4de32e8 + md5: 28abeb80aea7eb4914f3a7543a47e248 + depends: + - python >=3.9 + license: PSF-2.0 + license_family: PSF + purls: [] + size: 9502 + timestamp: 1733927569850 - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda sha256: 7c2df5721c742c2a47b2c8f960e718c930031663ac1174da67c1ed5999f7938c md5: edd329d7d3a4ab45dcf905899a7a6115 @@ -4083,6 +4701,20 @@ packages: purls: [] size: 122968 timestamp: 1742727099393 +- conda: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-17.0.0-py312h4c3975b_1.conda + sha256: 3c812c634e78cec74e224cc6adf33aed533d9fe1ee1eff7f692e1f338efb8c5b + md5: a0b8efbe73c90f810a171a6c746be087 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + license: Apache-2.0 + license_family: Apache + purls: + - pkg:pypi/unicodedata2?source=compressed-mapping + size: 408399 + timestamp: 1763054875733 - conda: https://conda.anaconda.org/conda-forge/linux-64/wayland-1.24.0-hd6090a7_1.conda sha256: 3aa04ae8e9521d9b56b562376d944c3e52b69f9d2a0667f77b8953464822e125 md5: 035da2e4f5770f036ff704fa17aace24 @@ -4108,6 +4740,17 @@ packages: - pkg:pypi/wcwidth?source=hash-mapping size: 33670 timestamp: 1758622418893 +- conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.45.1-pyhd8ed1ab_1.conda + sha256: 1b34021e815ff89a4d902d879c3bd2040bc1bd6169b32e9427497fa05c55f1ce + md5: 75cb7132eb58d97896e173ef12ac9986 + depends: + - python >=3.9 + license: MIT + license_family: MIT + purls: + - pkg:pypi/wheel?source=hash-mapping + size: 62931 + timestamp: 1733130309598 - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2025.11.0-pyhcf101f3_0.conda sha256: 9e003931f4a3b6a1ee5740273a736127f2a7146036bf3d4ce6b8c7d332c12fde md5: e5770e751eb8b23cd86571400e8722be diff --git a/pyproject.toml b/pyproject.toml index a6b4a2f0..5630bf0a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -90,6 +90,7 @@ mechanalyzer = "==0.2025.0" [tool.pixi.feature.build.dependencies] rattler-build = ">=0.47.1" +bumpver = ">=2025.1131,<2026" [tool.pixi.feature.test.dependencies] pytest = "*" @@ -143,3 +144,24 @@ dev-test = { cmd = "./scripts/test.py" } [tool.pixi.feature.build.tasks] upload = "rattler-build upload anaconda -o Auto-Mech *.conda" +current-version = "bumpver show -n | awk -F': ' '/Current Version: / {print $2}'" + +[tool.bumpver] +current_version = "0.2024.0" +version_pattern = "MAJOR.YYYY.PATCH" +commit_message = "Release {new_version}" +tag_message = "{new_version}" +tag_scope = "default" +pre_commit_hook = "scripts/update_lockfile.sh" +post_commit_hook = "" +commit = true +tag = true +push = true + +[tool.bumpver.file_patterns] +"pyproject.toml" = [ + 'version = "{version}"', +] +"src/mechdriver/__init__.py" = [ + '__version__ = "{version}"', +] \ No newline at end of file diff --git a/scripts/dev-setup-repos.sh b/scripts/dev-setup-repos.sh index 30707425..c17c70f8 100644 --- a/scripts/dev-setup-repos.sh +++ b/scripts/dev-setup-repos.sh @@ -19,7 +19,7 @@ MODE=${3} BRANCH=${4:-dev} DEFAULT_USERNAME=$(git config --global user.name) -if [ -z "$DEFAULT_USERNAME" ]; then +if [[ -z "$DEFAULT_USERNAME" && -z "$USERNAME" ]]; then read -p "Please enter your GitHub username: " USERNAME fi @@ -42,7 +42,11 @@ echo " Username - ${USERNAME}" echo " Update - ${UPSTREAM}" echo " Mode - ${MODE}" echo " Branch - ${BRANCH}" -read -p "Is this correct? If so, press enter to continue" +if [[ -n "$1" && -n "$2" && -n "$3" ]]; then + echo "All arguments were provided via command line. Skipping confirmation." +else + read -p "Is this correct? If so, press enter to continue" +fi CLONE_PREFIX="https://github.com/${USERNAME}" if [ "${MODE}" == "ssh" ]; then diff --git a/scripts/node.sh b/scripts/node.sh index 1fc24e81..668c79ac 100644 --- a/scripts/node.sh +++ b/scripts/node.sh @@ -7,7 +7,7 @@ WD=${INIT_CWD:-$(pwd)} # (Must be the first argument) NODE=${1} LOG=${2:-"out.log"} -COMMAND=${3:-"automech run"} +COMMAND=${3:-"mechdriver run"} echo "Arguments:" echo " NODE=${NODE}" diff --git a/scripts/update_lockfile.sh b/scripts/update_lockfile.sh new file mode 100755 index 00000000..289a4a1d --- /dev/null +++ b/scripts/update_lockfile.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +set -e + +pixi lock 2>&1 +git add pixi.lock + +exit 0 \ No newline at end of file diff --git a/src/mechdriver/__init__.py b/src/mechdriver/__init__.py index 2777f1d0..e3a85117 100644 --- a/src/mechdriver/__init__.py +++ b/src/mechdriver/__init__.py @@ -3,4 +3,7 @@ from . import query, subtasks from .base import check_log, run + +__version__ = "0.2024.0" + __all__ = ["query", "subtasks", "check_log", "run"] diff --git a/tests/archive.tgz b/tests/archive.tgz index 5d22ebea..44810924 100644 Binary files a/tests/archive.tgz and b/tests/archive.tgz differ diff --git a/tests/tests.yaml b/tests/tests.yaml index 2b4b0e00..a0a5dbb2 100644 --- a/tests/tests.yaml +++ b/tests/tests.yaml @@ -4,4 +4,5 @@ - hco_prompt - ch3o_prompt - vtst -- stereo +- ts_conf +- stereo_quick