Skip to main content

CI Documentation Status Python 3.13+

What's new?

Version 0.10 re-measures the background scatter on each frame it corrects (science spectra change for every instrument with a scatter step), adds the extraction_weights setting for pixel-weighted slit decomposition, fixes slit decomposition at exact sub-pixel boundaries, and ships Python 3.15 wheels. See CHANGELOG.md for all changes.

PyReduce

A data reduction pipeline for echelle spectrographs (HARPS, UVES, XSHOOTER, CRIRES+, JWST/NIRISS, ANDES, MOSAIC, NEID, and more).

Based on the REDUCE package. See the papers:

Installation

# Using uv (recommended)
uv add pyreduce-astro

# Or pip
pip install pyreduce-astro

For development:

git clone https://github.com/ivh/PyReduce
cd PyReduce
uv sync
uv run reduce-build

No wheel for your platform, or the C extension won't build?

Extraction also runs in pure Python. Set PYREDUCE_EXTRACTION=numpy (or pass --extraction numpy) and nothing needs compiling — numpy and scipy are already core dependencies:

PYREDUCE_EXTRACTION=numpy uv run reduce run UVES -t HD132205

It is ~2x slower than the C extension and produces bit-identical output files. PYREDUCE_EXTRACTION=numba is ~1.5-1.8x with uv sync --extra numba installed. See Extraction Backends.

Quick Start

# Download sample data
uv run reduce download UVES

# Run reduction
uv run reduce run UVES -t HD132205 --steps bias,flat,trace,science

# Or run individual steps
uv run reduce bias UVES -t HD132205
uv run reduce flat UVES -t HD132205

Or use the Python API:

from pyreduce.pipeline import Pipeline

Pipeline.from_instrument(
    instrument="UVES",
    target="HD132205",
    night="2010-04-01",
    channel="middle",
    steps=("bias", "flat", "trace", "science"),
).run()

Plotting

Control plotting with environment variables:

# Save plots to files (headless/CI)
PYREDUCE_PLOT=1 PYREDUCE_PLOT_DIR=/tmp/plots PYREDUCE_PLOT_SHOW=off uv run reduce run ...

# Show all plots at end (browser via webagg)
MPLBACKEND=webagg PYREDUCE_PLOT=1 PYREDUCE_PLOT_SHOW=defer uv run reduce run ...

See How To for details.

Documentation

Full documentation at ReadTheDocs.

Output

PyReduce creates .fits files (standard FITS with binary table extension). Headers include original keywords plus PyReduce-specific ones prefixed with e_.

Metadata

Release files for pyreduce-astro 0.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyreduce-astro 0.10
File Size Uploaded Provenance
pyreduce_astro-0.10.tar.gz 4.1 MB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for pyreduce-astro 0.10
File
pyreduce_astro-0.10-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.15 CPython 3.15 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
pyreduce_astro-0.10-cp315-cp315-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 macOS 11.0+ ARM64 Details
pyreduce_astro-0.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
pyreduce_astro-0.10-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
pyreduce_astro-0.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
pyreduce_astro-0.10-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
pyreduce_astro-0.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
pyreduce_astro-0.10-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details

Total release size: 35.6 MB

Release files / pyreduce_astro-0.10.tar.gz

Download URL pyreduce_astro-0.10.tar.gz
Size 4.1 MB
Tags Source
SHA-256 checksum
How to use checksums
b9ea9ec0f17b84216931b99f1de90d0405a341eb18a5c695d974ca53d5d0b6c6
BLAKE2b-256 checksum
How to use checksums
effd1f18fc2bda024287e6a595b57f720126b602f212971766a03b36e0001c9a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyreduce_astro-0.10-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.1 MB
Tags CPython 3.15 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7d4bbb1eebaf8c0bbd2a2413b267e5b2e5c577a2436b46124223057224797600
BLAKE2b-256 checksum
How to use checksums
1137e137a8c62726247df434593803b897b53e90f2154512a41d83e55a0ad7fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp315-cp315-macosx_11_0_arm64.whl

Download URL pyreduce_astro-0.10-cp315-cp315-macosx_11_0_arm64.whl
Size 3.9 MB
Tags CPython 3.15 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b852cb5f92a8807ea449fa578939a47f1022cead5815060c0a587f964c3659e0
BLAKE2b-256 checksum
How to use checksums
561e658b930e4eb7bdee44920d1cc544814390b07f9d9eecf01cf06c7d29bcef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyreduce_astro-0.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.0 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
06449a4f0a7333bb60eb629ed0133637a78b93cd32c655daa3c7be738d473eab
BLAKE2b-256 checksum
How to use checksums
5fe2788e9b1ab95eda11214fc89a2818013bf3653e023a15a20421c09cdec094
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp314-cp314-macosx_11_0_arm64.whl

Download URL pyreduce_astro-0.10-cp314-cp314-macosx_11_0_arm64.whl
Size 3.9 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2610bc9ac8b01af251dc605bf41a0e0c8a198569fa140f7dda87c390befdc29d
BLAKE2b-256 checksum
How to use checksums
8d206c506868085942d4e759af5d15236d07ece19f1343e2448f5a942f010255
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyreduce_astro-0.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.9 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7e1dc5fad95b439102f5386b65cd578b800efb1a495d762d237ea11ba6c588bc
BLAKE2b-256 checksum
How to use checksums
432c9186e9a7d29d7b96df94b923c207a04eab581ec738462c941293b0d6a194
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp313-cp313-macosx_11_0_arm64.whl

Download URL pyreduce_astro-0.10-cp313-cp313-macosx_11_0_arm64.whl
Size 3.9 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fa750a26984c769b7d59d33acdbc8404b889374536c0fff71e48f45c05f4dc76
BLAKE2b-256 checksum
How to use checksums
4517b0c2677bbb922e55472c22180ba3f9e3c9e6b5ee5d26602699898d7cd519
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyreduce_astro-0.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.9 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f1ca0acbf427d26148bdfd5af7d0871ba06754a1143ff473cb86ebf490ead36a
BLAKE2b-256 checksum
How to use checksums
8105a54e2b00cb3d48829e4cf4410a7766a2e05575602b0fad3ef613f5d8b18c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / pyreduce_astro-0.10-cp312-cp312-macosx_11_0_arm64.whl

Download URL pyreduce_astro-0.10-cp312-cp312-macosx_11_0_arm64.whl
Size 3.9 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
034fbefadbfea631faa71307e0503c42504805f88a3ae03acaa83cdb36a2203f
BLAKE2b-256 checksum
How to use checksums
01c50cad6112d72690ee5ba6524b73d9187744934b78bce52c8d20169e7e72a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Security for pyreduce-astro 0.10

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.

Full provenance

All 9 files in this release have been uploaded with provenance metadata.

Select from 9 files

Attestation for pyreduce_astro-0.10.tar.gz

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 Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.10 This release

9 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page