# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           python 1.0

name                py-dask
version             2025.9.1
revision            0
categories-append   devel
license             BSD
supported_archs     noarch
platforms           {darwin any}

python.versions     310 311 312 313 314

maintainers         {stromnov @stromnov} openmaintainer

description         Minimal task scheduling abstraction.

long_description    Dask provides multi-core execution on larger-than-memory \
                    datasets using blocked algorithms and task scheduling. \
                    It maps high-level NumPy, Pandas, and list operations on \
                    large datasets on to many operations on small in-memory \
                    datasets. It then executes these graphs in parallel on a \
                    single machine. Dask lets us use traditional NumPy, \
                    Pandas, and list programming while operating on \
                    inconveniently large data in a small amount of space.

homepage            https://github.com/dask/dask/

checksums           rmd160  252a7664bcd768be0241f999906dda2b3120a1b0 \
                    sha256  718df73e1fd3d7e2b8546e0f04ce08e1ed7f9aa3da1eecd0c1f44c8b6d52f7e0 \
                    size    10973663

if {${name} ne ${subport}} {
    depends_build-append \
                        port:py${python.version}-versioneer

    depends_lib-append  port:py${python.version}-click \
                        port:py${python.version}-cloudpickle \
                        port:py${python.version}-fsspec \
                        port:py${python.version}-packaging \
                        port:py${python.version}-partd \
                        port:py${python.version}-toolz \
                        port:py${python.version}-yaml

    if {${python.version} < 312} {
        depends_lib-append  port:py${python.version}-importlib-metadata
    }

    livecheck.type      none
}
