{"library":"setuptools-download","title":"setuptools-download: Setuptools Plugin for External File Downloads","description":"setuptools-download is a plugin for setuptools that enables the declarative downloading of external files as part of a Python package's build process. It allows specifying URLs, SHA256 checksums, and extraction methods (zip, tar) directly within the `pyproject.toml` or `setup.cfg` file. Currently at version 1.1.0, it is actively maintained with infrequent but targeted releases.","language":"python","status":"active","last_verified":"Sat Apr 11","install":{"commands":["pip install setuptools-download"],"cli":null},"imports":[],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"# pyproject.toml\n[build-system]\nrequires = [\"setuptools>=61.0\", \"setuptools-download==1.1.0\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-package-with-downloads\"\nversion = \"0.0.1\"\ndescription = \"A package that downloads an external file during build\"\nreadme = \"README.md\"\nrequires-python = \">=3.8\"\n\n[tool.setuptools-download]\n# Define a download target: key is an arbitrary name, value is a table of settings\ndownload_example_asset = {\n    url = \"https://example.com/sample.txt\",\n    sha256 = \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\", # SHA256 of an empty file, replace with actual asset's SHA256\n    dest = \"src/my_package/data/sample.txt\"\n}\n\n# To build the package (which triggers the download):\npip install build\npython -m build\n","lang":"toml","description":"setuptools-download is configured declaratively, typically in `pyproject.toml` under the `[tool.setuptools-download]` section. Each download is defined by a unique key (e.g., `download_example_asset`) with required `url` and `sha256` fields, and an optional `dest` field. After configuration, running `python -m build` will execute the download as part of the source distribution (sdist) or wheel (bdist_wheel) build process. Replace `url` and `sha256` with your actual file and its checksum.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}