conda-forge / openff-toolkit-feedstock

A conda-smithy repository for openff-toolkit.
BSD 3-Clause "New" or "Revised" License
0 stars 7 forks source link

Remove `zstandard` pin #86

Open mattwthompson opened 1 month ago

mattwthompson commented 1 month ago

Solution to issue cannot be found in the documentation.

Issue

In https://github.com/conda-forge/openff-toolkit-feedstock/pull/81 I introduced a hard constraint zstandard ==0.18 in run_constrained, which is causing problems downstream. This is no longer needed now that we know about PYTHON_ZSTANDARD_IMPORT_POLICY='cffi_fallback'

https://python-zstandard.readthedocs.io/en/latest/api_usage.html

Installed packages

foo

Environment info

bar
mattwthompson commented 1 month ago

from packaging.version import Version

def load_summary(path: str) -> dict[str, Version]:
    """
    Load lines that look like
    + xz                                      5.2.6  h57fd34a_0                         conda-forge     Cached
    """
    versions = dict()

    with open(path) as f:
        for line in f.readlines():
            _, name, version, build, channel, size = line.split()
            versions[name] = Version(version)

    return versions

"""
$ micromamba create -n temp openff-qcsubmit "openff-toolkit-base==0.16.2" -c conda-forge
"""
a = load_summary("0-16-2.txt")

"""
$ micromamba create -n temp openff-qcsubmit -c conda-forge
"""
b = load_summary("0-16-0.txt")

assert len(set(a.keys()).difference(set(b.keys())))
assert len(set(b.keys()).difference(set(a.keys())))

for key in a:
    if a[key] != b[key]:
        print(key, a[key], b[key])
"""
python_abi 3.11 3.12
python 3.11.9 3.12.4
zstandard 0.18.0 0.23.0
openff-toolkit-base 0.16.2 0.16.0
"""
mattwthompson commented 1 month ago

Bummer


$ grep zst openeye-toolkits-2024.1.1-py312_0/info/about.json                                                          9:41:27
    "zstd 1.5.5 hd90d995_0",
    "zstandard 0.18.0 py39h1a28f6b_0",
mattwthompson commented 1 month ago

I should add above approximately metadata; info/about.json corresponds to the about: section of the build YAML; root_pkgs isn't in spec but is generally understood to refer to information about the machine the package is built on

https://docs.conda.io/projects/conda-build/en/latest/resources/package-spec.html#info-about-json https://github.com/mamba-org/boa/blob/00a11ffce59f47c0fc576f93d39baf1f8fc92f32/boa/schemas/info/info-about.schema.json#L74