dysh
dysh is a Python spectral line data reduction and analysis program for singledish data with specific emphasis on data from the Green Bank Telescope (GBT). It is currently under development in collaboration between the Green Bank Observatory and the Laboratory for Millimeter-Wave Astronomy (LMA) at University of Maryland (UMD). It is intended to be a replacement to the GBT current data reduction package GBTIDL.
Installation
Note: if you are on the GBO network, dysh will already be installed; you do not need to do anything further! Other uses cases are outlined below.
Global Installation
Example use case: you want to quickly install and use dysh on a non-GBO computer
Via uv
This will install a persistent global version of dysh via uv:
# Install dysh
$ uv tool install dysh[all]
# Launch dysh notebook
$ dysh-lab
Via pipx
You can also use pipx. After installing pipx, dysh can be installed via:
# Install dysh
$ pipx install dysh[nb]
# Launch dysh notebook
$ dysh-lab
Local Installation via pip
Example use case: you want to use dysh with a specific set of dependencies, or in conjunction with an existing project
Stable Version
dysh is most easily installed with pip, which will take care of any dependencies. The packaged code is hosted at the Python Packaging Index.
$ pip install dysh[all]
Beta Version
Beta versions will also be published to PyPI, and can be installed via:
$ pip install dysh[all] --pre
Development Version
Development versions can be installed from GitHub branches via:
$ pip install "dysh[all] @ git+https://github.com/GreenBankObservatory/dysh"
For more options, see the pip VCS Support documentation.
Reporting Issues
If you find a bug or something you think is in error, please report it on the GitHub issue tracker. (You must have a GitHub account to submit an issue)
Development
See the For Developers documentation for more detailed instructions on setting up a development environment. This is where you will need the full source code of dysh.
Clone the Repo
$ git clone git@github.com:GreenBankObservatory/dysh.git
Set Up Dysh Environment
Via uv
The recommended development workflow is to use uv. After installing uv all you need to do is:
$ uv sync
You also have access to "dysh shell" and "dysh lab":
$ uv run dysh
$ uv run dysh-lab
Or you can source the uv virtual environment just like any other:
$ source .venv/bin/activate
after which the command prefix uv run is not needed anymore.
Classic workflow
It is possible to develop using a "classic" workflow. From the root of the dysh repo:
$ # Create your virtual environment
$ python -m venv /path/to/venv
$ # Activate your virtual environment
$ source /path/to/venv/bin/activate
$ # Install dysh and its development dependencies
$ pip install --group dev -e .[all]
Make sure you have a recent version of pip (>25.1).
Testing
We use pytest for unit and integration testing. From the top-level dysh directory, run:
$ pytest
Metadata
Release files for dysh 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dysh-1.1.0.tar.gz | 18.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dysh-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.2 MB
Release files / dysh-1.1.0.tar.gz
| Download URL | dysh-1.1.0.tar.gz |
|---|---|
| Size | 18.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
67bd4826997519bfb2a18d3d76b7874f8d56e2bf0eeaa0bdd2605c1e5cc84e65
|
|
BLAKE2b-256 checksum How to use checksums |
d0816bd38680b7c501a84de424ddedcea2214820f2f0fc0d76e014d531f629f5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 7, 2026.
Transparency logRelease files / dysh-1.1.0-py3-none-any.whl
| Download URL | dysh-1.1.0-py3-none-any.whl |
|---|---|
| Size | 18.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8cdce8a5535f27dea803be804b447fb69165bad4c85fa64e827ecc75e2e343f1
|
|
BLAKE2b-256 checksum How to use checksums |
7ee2e2056e77e68b7c48319c90ed1f2ac937cbe42e80b2babe37d12d4f5c5013
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 7, 2026.
Transparency log