pax_global_header 0000666 0000000 0000000 00000000064 15071513375 0014521 g ustar 00root root 0000000 0000000 52 comment=d83c77ed1ea8bbb9222778e4e1aa851d8b3d3c5f
astropy-specutils-d83c77e/ 0000775 0000000 0000000 00000000000 15071513375 0015661 5 ustar 00root root 0000000 0000000 astropy-specutils-d83c77e/.github/ 0000775 0000000 0000000 00000000000 15071513375 0017221 5 ustar 00root root 0000000 0000000 astropy-specutils-d83c77e/.github/CODEOWNERS 0000664 0000000 0000000 00000000501 15071513375 0020610 0 ustar 00root root 0000000 0000000 # https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence,
# they will be requested for
# review when someone opens a pull request.
* @eteq @rosteen @nmearl @keflavich
astropy-specutils-d83c77e/.github/dependabot.yml 0000664 0000000 0000000 00000001117 15071513375 0022051 0 ustar 00root root 0000000 0000000 # To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: "github-actions" # See documentation for possible values
directory: ".github/workflows" # Location of package manifests
schedule:
interval: "monthly"
groups:
actions:
patterns:
- "*"
astropy-specutils-d83c77e/.github/workflows/ 0000775 0000000 0000000 00000000000 15071513375 0021256 5 ustar 00root root 0000000 0000000 astropy-specutils-d83c77e/.github/workflows/changelog.yml 0000664 0000000 0000000 00000001002 15071513375 0023721 0 ustar 00root root 0000000 0000000 name: Changelog check
on:
pull_request:
types: [labeled, unlabeled, opened, synchronize, reopened]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
changelog:
name: Check changelog entry
runs-on: ubuntu-latest
steps:
- name: Check change log entry
uses: scientific-python/action-check-changelogfile@0.3
env:
CHANGELOG_FILENAME: CHANGES.rst
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CHECK_MILESTONE: false astropy-specutils-d83c77e/.github/workflows/ci_cron_weekly.yml 0000664 0000000 0000000 00000003115 15071513375 0024775 0 ustar 00root root 0000000 0000000 name: Weekly cron
on:
pull_request:
# We also want this workflow triggered if the 'Extra CI' label is added
# or present when PR is updated
types:
- synchronize
- labeled
schedule:
# run every Monday at 6am UTC
- cron: '0 6 * * 1'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tests:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
if: (github.repository == 'astropy/specutils' && (github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'Extra CI')))
strategy:
fail-fast: false
matrix:
include:
# We do not use remote data here, since
# that gives too many false positives due to URL timeouts.
- name: Python 3.12 with pre-release version of key dependencies
os: ubuntu-latest
python: '3.12'
toxenv: py312-test-predeps
- name: Documentation link check
os: ubuntu-latest
python: '3.12'
toxenv: linkcheck
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python }}
- name: Install Python dependencies
run: python -m pip install --upgrade tox
- name: Run tests
run: tox ${{ matrix.toxargs}} -e ${{ matrix.toxenv}} -- ${{ matrix.toxposargs}}
astropy-specutils-d83c77e/.github/workflows/ci_workflows.yml 0000664 0000000 0000000 00000010005 15071513375 0024505 0 ustar 00root root 0000000 0000000 name: CI
on:
push:
branches:
- main
tags:
- '*'
pull_request:
schedule:
# run every Wednesday at 5pm UTC
- cron: '17 0 * * 3'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tests:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- name: Code style checks
os: ubuntu-latest
python: 3.x
toxenv: codestyle
- name: Python 3.11 with remote data and coverage
os: ubuntu-latest
python: '3.11'
toxenv: py311-test-cov
toxargs: -v
toxposargs: --remote-data=any
- name: Python 3.12 (Windows)
os: windows-latest
python: '3.12'
toxenv: py312-test
- name: Python 3.11 (MacOS)
os: macos-latest
python: '3.11'
toxenv: py311-test
- name: Python 3.13 (MacOS)
os: macos-latest
python: '3.13'
toxenv: py313-test
- name: Python 3.11 with oldest supported version of key dependencies
os: ubuntu-latest
python: '3.11'
toxenv: py311-test-oldestdeps
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python }}
- name: Install Python dependencies
run: python -m pip install --upgrade tox
- name: Run tests
run: tox ${{ matrix.toxargs }} -e ${{ matrix.toxenv }} -- ${{ matrix.toxposargs }}
# TODO: Do we need --gcov-glob "*cextern*" ?
- name: Upload coverage to artifacts
if: ${{ contains(matrix.toxenv,'-cov') }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: coverage_${{ matrix.toxenv }}.xml
path: coverage.xml
if-no-files-found: error
upload-codecov:
needs: [ tests ]
permissions:
contents: none
runs-on: ubuntu-latest
name: Upload Coverage
steps:
# work around CodeCov upload issue
# see: https://github.com/codecov/codecov-action/issues/1801
- uses: actions/checkout@v4
- name: Download coverage artifacts
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
path: coverage
pattern: coverage_*
merge-multiple: true
- name: Upload report to Codecov
if: ${{ hashFiles('coverage/') != '' }}
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
with:
token: ${{ secrets.CODECOV_TOKEN }}
directory: coverage
fail_ci_if_error: true
verbose: true
allowed_failures:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- name: (Allowed Failure) Python 3.12 with remote data and dev version of key dependencies
os: ubuntu-latest
python: '3.12'
toxenv: py312-test-devdeps
toxposargs: --remote-data=any
# doctest failure due to different no. of significant digits on arm64 (#1146)
- name: Python 3.12 (macOS)
os: macos-latest
python: '3.12'
toxenv: py312-test
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python }}
- name: Install Python dependencies
run: python -m pip install --upgrade tox
- name: Run tests
run: tox ${{ matrix.toxargs }} -e ${{ matrix.toxenv }} -- ${{ matrix.toxposargs }}
astropy-specutils-d83c77e/.github/workflows/publish.yml 0000664 0000000 0000000 00000003043 15071513375 0023447 0 ustar 00root root 0000000 0000000 name: Release
on:
# NOTE: PR trigger is to ensure changes do not break packaging.
pull_request:
release:
types: [released]
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-n-publish:
name: Build and publish Python 🐍 distributions 📦 to PyPI
runs-on: ubuntu-latest
if: github.repository == 'astropy/specutils'
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: '3.12'
- name: Install python-build and twine
run: python -m pip install build "twine>=3.3" "importlib_metadata!=8.0.0"
- name: Build package
run: python -m build --sdist --wheel .
- name: List result
run: ls -l dist
- name: Check dist
run: python -m twine check --strict dist/*
- name: Test package
run: |
cd ..
python -m venv testenv
testenv/bin/pip install pytest pytest-astropy pytest-tornasync pytest-asdf-plugin specutils/dist/*.whl
testenv/bin/pytest --astropy-header --remote-data --pyargs specutils
# NOTE: Do not run this part for PR testing.
- name: Publish distribution 📦 to PyPI
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
if: github.event_name != 'pull_request'
with:
user: __token__
password: ${{ secrets.PYPI_TOKEN }} astropy-specutils-d83c77e/.gitignore 0000664 0000000 0000000 00000001510 15071513375 0017646 0 ustar 00root root 0000000 0000000 # Compiled files
*.py[cod]
*.a
*.o
*.so
__pycache__
# Ignore .c files by default to avoid including generated code. If you want to
# add a non-generated .c extension, use `git add -f filename.c`.
*.c
# Other generated files
*/version.py
*/cython_version.py
htmlcov
.coverage
coverage.xml
MANIFEST
.ipynb_checkpoints
# Sphinx
docs/api
docs/_build
# Eclipse editor project files
.project
.pydevproject
.settings
# Pycharm editor project files
.idea
# Floobits project files
.floo
.flooignore
# Visual Studio Code project files
.vscode
.history
# Packages/installer info
*.egg
*.egg-info
dist
build
eggs
.eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
distribute-*.tar.gz
# Other
.cache
.tox
.*.sw[op]
*~
.project
.pydevproject
.settings
pip-wheel-metadata/
# Mac OSX
.DS_Store
.vscode
# Other
.pytest_cache
.jukit
venv
.venv
astropy-specutils-d83c77e/.readthedocs.yml 0000664 0000000 0000000 00000000670 15071513375 0020752 0 ustar 00root root 0000000 0000000 version: 2
build:
os: "ubuntu-22.04"
tools:
python: "mambaforge-4.10"
jobs:
post_checkout:
- git fetch --shallow-since=2023-01-01 || true
conda:
environment: docs/rtd_environment.yaml
sphinx:
builder: html
configuration: docs/conf.py
fail_on_warning: true
python:
install:
- method: pip
path: .
extra_requirements:
- docs
- all
# Don't build any extra formats
formats: []
astropy-specutils-d83c77e/CHANGES.rst 0000664 0000000 0000000 00000063112 15071513375 0017466 0 ustar 00root root 0000000 0000000 2.2.0 (2025-10-08)
------------------
New Features
^^^^^^^^^^^^
- Add velocity region support and ability to preserve WCS for single regions in spectral extraction. [#1263, #1276]
Bug Fixes
^^^^^^^^^
- Add appropriate axes_names to resulting GWCS when a ``Spectrum`` is created with a spectral axis
specified and no WCS, based on the spectral axis units. [#1264]
- Fix spectra resulting from new JWST WFSS format having `MaskedQuantity` spectral_axis. [#1266]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Dropped support for python 3.10 and bumped the minimum required version of Astropy
to 7.0. [#1267]
2.1.0 (2025-07-30)
------------------
New Features
^^^^^^^^^^^^
- Add new ``flux_col`` keyword argument to JWST x1d reader to override flux column
auto-detected from source type column (point vs surface brightness). [#1244]
- The readers can now read IRAF MULTISPEC files with linear and log-linear wavelength
solutions; at the same time the IRAF equispec format gains the ability to read log-linear
wavelength solutions. [#1254]
Bug Fixes
^^^^^^^^^
- Fixed/updated SDSS-V mwm data loader to account for a subset of targets with bad datasums. [#1253]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Updated the JWST data readers to accomodate new WFSS file formats
with ``SpectrumList.read()``. [#1252]
2.0.0 (2025-06-12)
------------------
New Features
^^^^^^^^^^^^
- Spectral axis can now be any axis, rather than being forced to be last. See docs
for more details. [#1033, #1226]
- Spectrum now properly handles GWCS input for wcs attribute. [#1074]
- JWST reader no longer transposes the input data cube for 3D data and retains
full GWCS information (including spatial). [#1074]
- Spectrum1D renamed to Spectrum. [#1126]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Initializing a ``Spectrum`` with only a spectral axis (not full WCS) will now
result in a GWCS matching the dimensionality of the flux array, rather than a
1D spectral GWCS in all cases. [#1211, #1222]
- Spectrum arithmetic now checks whether the spectral axes of the two operand ``Spectrum``
objects are equal, and fails if they are not. [#1211]
- Added documentation about transitioning from 1.x to 2.x. [#1226]
1.20.2 (2025-05-27)
-------------------
Bug Fixes
^^^^^^^^^
- Made `tabular-fits` identifier more strict for which kinds of JWST data to exclude [#1234]
- Fixed loaders for HST/STIS. Added an "HST/STIS multi" reader for use with
``SpectrumCollection`` to read multi-extension and/or multi-order echelle datasets. [#1233]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warn about use of ``spectral_axis_index`` (new Spectrum1D kwarg for 2.0) in 1.x. [#1238]
1.20.1 (2025-05-07)
-------------------
Bug Fixes
^^^^^^^^^
- Switch to using an alias rather than a subclass for the temporary 1.x access
to the new 2.x class name (``Spectrum``). [#1236]
1.20.0 (2025-05-01)
-------------------
Bug Fixes
^^^^^^^^^
- Fixed loaders for IRAF-encoded non-linear Chebychev + Legendre wavelength
solutions that were imposing integer-valued domain limits. [#1199]
- Fixed loaders for SDSS APOGEE not correctly identifying the format [#1217]
- Fixed template comparison returning empty list of chi2 values in some cases. [#1228]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Added ``Spectrum`` class wrapper around ``Spectrum1D`` to ease transition to new
class name in 2.0. [#1229, #1230]
- Removed redshift and radial velocity setters in ``Spectrum1D`` that have been deprecated
since 1.8. [#1229]
- Added documentation about upcoming changes in specutils 2.0. [#1231]
1.19.0 (2024-11-05)
-------------------
Bug Fixes
^^^^^^^^^
- Fixed ``mwmVisit`` SDSS-V ``Spectrum1D`` and ``SpectrumList`` default loader
being unable to load files containing only BOSS instrument spectra. [#1185]
- Fixed automatic format detection for SDSS-V ``SpectrumList`` default loaders. [#1185]
- Fixed ``SplineInterpolatedResampler`` when input and output spectral axes are different
physical types, e.g. wavelength and velocity. [#1190]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- "Multi" loaders have been removed from SDSS-V ``SpectrumList`` default loaders. [#1185]
1.18.0 (2024-10-16)
-------------------
New Features
^^^^^^^^^^^^
- New ``Spectrum1D.with_spectral_axis_and_flux_units`` method to convert both
spectral axis and flux units at the same time. [#1184]
Bug Fixes
^^^^^^^^^
- Fixed ``Spectrum1D.with_flux_unit()`` not converting uncertainty along
with flux unit. [#1181]
- Fixed extracting a spectral region when one of spectrum/region is in wavelength
and the other is in frequency units. [#1187]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Replaced ``LevMarLSQFitter`` with ``TRFLSQFitter`` as the former is no longer
recommended by ``astropy``. [#1180]
1.17.0 (2024-10-04)
-------------------
Bug Fixes
^^^^^^^^^
- Fixed specifying a single value for ``window`` in ``analysis.fit_lines``. [#1164]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Dropped support for python 3.9. [#1176]
- ``utils.wcs_utils.refraction_index`` (and thus ``air_to_vac`` and ``vac_to_air``)
now defaults to ``Morton2000`` as the method instead of ``Griesen2006``. [#1169]
1.16.0 (2024-08-08)
-------------------
Bug Fixes
^^^^^^^^^
- Arithmetic operations on ``Spectrum1D`` objects now preserve spectral axis values that
were updated by setting redshift or radial velocity. [#1158]
- Ensure supported dtype is passed to ``medfilt`` during smoothing. [#1156]
- Adjusted copy semantics for numpy 2 compatibility. [#1145]
- Fixed moment 0 calculation to sum flux*dx (rather than flux) to match ``line_flux``. [#1141]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Changed the ``tabular-fits`` reader/writer to round-trip the header,
by default in the primary HDU. The reader now reads the primary
header into ``meta['header']``; the old behaviour of reading the
header from the data extension can be restored by setting the option
``store_data_header=True``. The writer is taking a corresponding option
for saving ``meta['header']`` to either primary or data extension headers. [#1113]
- Improved documentation for readers/writers. [#1152, #1157]
1.15.0 (2024-05-01)
-------------------
New Features
^^^^^^^^^^^^
- Implemented ``SpectralRegion.write()`` and ``SpectralRegion.read()`` to round-trip spectral
regions to/from ECSV files via ``astropy.table.QTable``. [#1133]
1.14.0 (2024-04-16)
-------------------
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ``new_flux_unit`` changed to ``with_flux_unit`` to match spectral version,
updated docstring to reflect actual behavior. [#1124]
- Compatibility with numpy 2.0 and astropy 6.1. [#1130]
1.13.0 (2024-02-19)
-------------------
New Features
^^^^^^^^^^^^
- Added SDSS-V file format readers. [#1107]
- Switched from using ``numpy.correlate`` to ``scipy.signal.correlate`` in ``template_correlate``
and enabled passing through the ``method`` argument. [#1114]
- Added DESI file format readers. [#1116]
- Added ``truncate`` option for resampler and template correlation extrapolation treatment. [#1121]
Bug Fixes
^^^^^^^^^
- SDSS reader now properly exposes the ``spPlate_identify`` and ``spPlate_loader`` functions. [#1097]
- Masks now round-trip through tabular-fits reader/write. [#1104]
- ``template_correlate`` no longer errors when used on a ``Spectrum1D`` that lacks an
``uncertainty`` array. [#1118]
- ``with_spectral_unit`` has been changed to ``with_spectral_axis_unit`` and actually works
now. [#1119]
- Template correlation functions now truncate to overlapping region to avoid NaNs in normalization
when spectrum and template have non-overlapping regions. [#1121]
- Fixed numpy error when printing a ``Spectrum1D`` object. [#1123]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Made a couple small updates to developer docs. [#1110, #1112]
- Updated the format of ``Spectrum1D.__str__`` and ``Spectrum1D.__repr__``. [#1123]
1.12.0 (2023-10-17)
-------------------
New Features
^^^^^^^^^^^^
- Registering a ``SpectrumList`` reader for a data loader is now optional. [#1068]
Bug Fixes
^^^^^^^^^
- Fixed SDSS-I/II spSpec units. [#1066]
- Addressed compatibility with ASDF 3.0 for JWST data. [#1079]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Corrected ``velocity_convention`` options in Spectrum1D docstring. [#1088]
1.11.0 (2023-06-16)
-------------------
New Features
^^^^^^^^^^^^
- ``wcs1d-fits`` loader now reads and writes boolean masks. [#1051]
Bug Fixes
^^^^^^^^^
- Reimplementation of FluxConservingResampler. It is now faster and yields more accurate results. [#1060]
- Fixed uncertainty calculations in centroid and gaussian width functions, also added an option
to use an ``astropy.uncertainty`` distribution instead of the analytic solution. [#1057]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Drastically improved performance of region extraction. [#1048]
- When creating a Spectrum1D object, it is enforced that the spectral axis is sorted and either
strictly increasing or decreasing. [#1061]
1.10.0 (2023-04-05)
-------------------
New Features
^^^^^^^^^^^^
- ``wcs1d-fits`` loader now reads and writes celestial components of
of multi-dimensional WCS, and handles ``mask`` and ``uncertainty``
attributes. [#1009]
- Added support for reading from files with flux in counts. [#1018]
Bug Fixes
^^^^^^^^^
- Fixed ``SpectralAxis.with_observer_stationary_relative_to`` to actually
return the updated spectral axis. [#992]
- Fixed region extraction for axes/regions in units of ``u.pix``. [#1001]
- ``tabular-fits`` writer now properly converts uncertainties to ``StdDevUncertainty``
if needed. [#1027]
- Fix bug in ``fit_lines`` which gave unexpected outputs from the ``get_fit_info``
and ``ignore_units`` keyword arguments. [#1030]
- Fix SNR calculations with both masks and regions. [#1044]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Added some basic documentation for ``Spectrum1D.write``. [#1017]
- JWST s2d and s3d readers now requires the optional dependency, ``stdatamodels``,
which user has to install separately. [#1038]
- ASDF tag for Spectrum1D is now compatible with ASDF v3.
As a result, minversion of ``asdf`` has been bumped to 2.14.
Redundant ASDF schema for ``SpectralCoord`` is removed.
It also now supports ``mask`` serialization. [#1042, #1053]
- JWST X1D reader will no longer raise a ``UnitWarning`` for surface brightness
error. [#1050]
1.9.1 (2022-11-22)
------------------
Bug Fixes
^^^^^^^^^
- Add and subtract operations on Spectrum1D now allow for other operand's class
to handle the arithmetic if that class has special handling. [#988]
1.9.0 (2022-10-18)
------------------
Bug Fixes
^^^^^^^^^
- Fix bug in fitting with weights if weights argument is set to 'unc'. [#979]
- Fix bug in JWST reader which caused multi-extension files to load only the
primary HDU [#982]
- Implemented conversion to expected uncertainty type in a few functions that
were still just assuming the uncertainty was the correct type. [#984]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Bumped astropy minimum version to 5.1. [#984]
1.8.1 (2022-09-09)
------------------
Bug Fixes
^^^^^^^^^
- Arithmetic with constants and Spectrum1D now works in either order. [#964]
- Fixed uncertainty propagation in FluxConservingResampler. [#976]
1.8.0 (2022-08-22)
------------------
New Features
^^^^^^^^^^^^
- Implemented uncertainty propagation for analysis functions. [#938, #939, #961, #968]
- Model fitting with ``fit_lines`` now returns uncertainties from the underlying scipy
fitter by default. [#962]
Bug Fixes
^^^^^^^^^
- Fixed a bug with moment map orders greater than 1 not being able to handle
cubes with non-square spatial dimensions. [#970]
- Added a workaround for reading JWST IFUs with incorrect GWCS. [#973]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- The Spectrum1D redshift and radial_velocity attribute setters were deprecated
in favor of the more explicit set_redshift_to, shift_spectrum_to, and
set_radial_velocity_to methods. [#946, #943]
- ``estimate_line_parameters`` now calculates estimates based on the selected
region, rather than the entire spectrum. [#962]
1.7.0 (2022-02-21)
------------------
Bug Fixes
^^^^^^^^^
- Fixed ``spectral_slab`` crashing when ``spectral_axis`` has unit of pixels and
the bounds are also defined in the unit of pixels. [#926]
- Fixed resulting ``spectral_axis`` containing NaN when a cube is passed into
``Spectrum1D`` without WCS nor spectral axis and the spatial-spatial dimension
is smaller than spectral dimension. [#926]
- Fixed WCS not accurately reflecting the updated spectral axis after slicing a
``Spectrum1D``. [#918]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Logger usage is removed. Warnings now issued using Python ``warnings`` module.
This enables more granular warning control for downstream packages. [#922]
1.6.0 (2022-01-27)
------------------
New Features
^^^^^^^^^^^^
- Add collapse methods to Spectrum1D. [#904, #906]
- SpectralRegion and Spectrum1D now allow descending (in wavelength space) as
well as ascending spectral values. [#911]
1.5.0 (2021-11-23)
------------------
New Features
^^^^^^^^^^^^
- Convolution-based smoothing will now apply a 1D kernel to multi-dimensional fluxes
by convolving along the spectral axis only, rather than raising an error. [#885]
- ``template_comparison`` now handles ``astropy.nddata.Variance`` and
``astropy.nddata.InverseVariance`` uncertainties instead of assuming
the uncertainty is standard deviation. [#899]
Bug Fixes
^^^^^^^^^
- Speed up JWST s3d loader and reduce memory usage. [#874]
- ``SpectralRegion`` can now handle pixels. [#886]
- Fix bug where ``template_comparison`` would return the wrong chi2 value. [#872]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ``fit_lines`` now makes use of unit support in ``astropy.modeling``. [#891]
- ``Spectrum1D.with_spectral_units`` now attempts to fall back on the ``spectral_axis``
units if units could not be retrieved from the WCS. [#892]
- ``ndcube`` package pin updated to released version (2.0). [#897]
- Minor changes for astropy 5.0 compatibility. [#895]
1.4.1 (2021-09-17)
------------------
Bug Fixes
^^^^^^^^^
- Fix JWST s3d loader. [#866]
1.4 (2021-09-13)
----------------
New Features
^^^^^^^^^^^^
- Allow overriding existing astropy registry elements. [#861]
- ``Spectrum1D`` will now swap the spectral axis with the last axis on initialization
if it can be identified from the WCS and is not last, rather than erroring. [#654, #822]
Bug Fixes
^^^^^^^^^
- Change loader priorities so survey loaders always override generic ones. [#860]
- Handle "FLUX_ERROR" header keyword in addition to "ERROR" in JWST loader. [#856]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ``Spectrum1D`` now subclasses ``NDCube`` instead of ``NDDataRef``. [#754, #822, #850]
1.3.1 (2021-08-27)
------------------
New Features
^^^^^^^^^^^^
- Add ``SpectrumList`` loader for set of JWST _x1d files. [#838]
Bug Fixes
^^^^^^^^^
- Handle new ``astropy.units.PhysicalType`` class added in astropy 4.3. [#833]
- Handle case of WCS with None values in ``world_axis_physical_types`` when
initializing Spectrum1D. [#839]
- Fix bug in apStar loader. [#839]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Improve continuum flux calculation in ``equivalent_width``. [#843]
1.3 (2021-06-18)
----------------
New Features
^^^^^^^^^^^^
- Added ability to slice ``Spectrum1D`` with spectral axis values. [#790]
- Added ability to replace a section of a spectrum with a spline or model fit. [#782]
Bug Fixes
^^^^^^^^^
- Fix infinite recursion when unpickling a ``QuantityModel``. [#823]
- Changed positional to keyword arguments in ``fit_continuum``. [#806]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Fix inaccuracy about custom loading in docs. [#819]
- Use non-root logger to prevent duplicate messages. [#810]
- Removed unused astropy config code. [#805]
1.2 (2021-03-14)
----------------
New Features
^^^^^^^^^^^^
- Add support for reading IRAF MULTISPEC format with non-linear 2D WCS into
``SpectrumCollection`` to default_loaders. [#708]
- ``SpectralRegion`` objects can now be created from the ``QTable``
object returned from the line finding rountines. [#759]
- Include new 6dFGS loaders. [#734]
- Include new OzDES loaders. [#764]
- Include new GAMA survey loaders. [#765]
- Include new GALAH loaders. [#766]
- Include new WiggleZ loaders. [#767]
- Include new 2dF/AAOmega loaders. [#768]
- Add loader to handle IRAF MULTISPEC non-linear 2D WCS. [#708]
- Add ability to extract minimum bounding regions of ``SpectralRegion`` objects. [#755]
- Implement new moment analysis function for specutils objects. [#758]
- Add new spectral slab extraction functionality. [#753]
- Include new loaders for AAT and other Australian surveys. [#719]
- Improve docstrings and intialization of ``SpectralRegion`` objects. [#770]
Bug Fixes
^^^^^^^^^
- Fix ``extract_region`` behavior and slicing for ``Spectrum1D`` objects
that have multi-dimensional flux arrays. Extracting a region that extends
beyond the limits of the data no longer drops the last data point in the
returned spectrum. [#724]
- Fixes to the jwst loaders. [#759]
- Fix handling of ``SpectralCollection`` objects in moment calculations. [#781]
- Fix issue with non-loadable x1d files. [#775]
- Fix WCS handling in SDSS loaders. [#738]
- Fix the property setters for radial velocity and redshift. [#722]
- Fix line test errors and include python 3.9 in tests. [#751]
- Fix smoothing functionality dropping spectrum meta information. [#732]
- Fix region extraction for ``Spectrum1D`` objects with multi-dimensional fluxes. [#724]
Documentation
^^^^^^^^^^^^^
- Update SDSS spectrum documentation examples. [#778]
- Include new documentation on working with ``SpectralCube`` objects. [#726, #784]
- Add documentation on spectral cube related functionality. [#783]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Improved error messages when creating ``SpectralRegion`` objects. [#759]
- Update documentation favicons and ensure color consistency. [#780]
- Remove fallback ``SpectralCoord`` code and rely on upstream. [#786]
- Move remaining loaders to use utility functions for parsing files. [#718]
- Remove unnecessary data reshaping in tabular fits writer. [#730]
- Remove astropy helpers and CI helpers dependencies. [#562]
1.1 (2020-09-17)
----------------
New Features
^^^^^^^^^^^^
- Added writer to ``wcs1d-fits`` and support for multi-D flux arrays with
1D WCS (identical ``spectral_axis`` scale). [#632]
- Implement ``SpectralCoord`` for ``SpectrumCollection`` objects. [#619]
- Default loaders work with fits file-like objects. [#637]
- Implement bin edge support on ``SpectralCoord`` objects using
``SpectralAxis`` subclass. [#645]
- Implement new 6dFGS loader. [#608]
- Implement uncertainty handling for ``line_flux``. [#669]
- Implement new 2SLAQ-LRG loader. [#633]
- Implement new 2dFGRS loader. [#695]
- Default loaders now include WCS 1D (with multi-dimensional flux handling) writer. [#632]
- Allow continuum fitting over multiple windows. [#698]
- Have NaN-masked inputs automatically update the ``mask`` appropriately. [#699]
Bug Fixes
^^^^^^^^^
- Fixed ``tabular-fits`` handling of 1D+2D spectra without WCS;
identification and parsing of metadata and units for ``apogee``
and ``muscles`` improved; enabled loading from file-like objects. [#573]
- Fix ASDF handling of ``SpectralCoord``. [#642]
- Preserve flux unit in ``resample1d`` for older versions of numpy. [#649]
- Fix setting the doppler values on ``SpectralCoord`` instances. [#657]
- Properly handle malformed distances in ``SkyCoord`` instances. [#663]
- Restrict spectral equivalencies to contexts where it is required. [#573]
- Fix ``from_center`` descending spectral axis handling. [#656]
- Fix factor of two error in ``from_center`` method of ``SpectralRegion`` object. [#710]
- Fix handling of multi-dimensional mask slicing. [#704]
- Fix identifier for JWST 1D loader. [#715]
Documentation
^^^^^^^^^^^^^
- Display supported loaders in specutils documentation. [#675]
- Clarify inter-relation of specutils objects in relevant docstrings. [#654]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Remove pytest runtime dependency. [#603]
- Change implementation of ``.quantity`` to ``.view`` in ``SpectralCoord``. [#614]
- Ensure underlying references point to ``SpectralCoord`` object. [#640]
- Deprecate ``spectral_axis_unit`` property. [#618]
- Backport ``SpectralCoord`` from astropy core for versions <4.1. [#674]
- Improve SDSS loaders and improve handling of extensions. [#667]
- Remove spectral cube testing utilities. [#683]
- Change local specutils directory creation behavior. [#691]
- Ensure existing manipulation and analysis functions use ``mask`` attribute. [#670]
- Improve mask handling in analysis functions. [#701]
1.0 (2020-03-19)
----------------
New Features
^^^^^^^^^^^^
- Implement ``SpectralCoord`` object. [#524]
- Implement cross-correlation for finding redshift/radial velocity. [#544]
- Improve FITS file identification in default_loaders. [#545]
- Support ``len()`` for ``SpectrumCollection`` objects. [#575]
- Improved 1D JWST loader and allow parsing into an ``SpectrumCollection`` object. [#579]
- Implemented 2D and 3D data loaders for JWST products. [#595]
- Include documentation on how to use dust_extinction in specutils. [#594]
- Include example of spectrum shifting in docs. [#600]
- Add new default excise_regions exciser function and improve subregion handling. [#609]
- Implement use of ``SpectralCoord`` in ``Spectrum1D`` objects. [#610]
Bug Fixes
^^^^^^^^^
- Fix stacking and unit treatment in ``SpectrumCollection.from_spectra``. [#578]
- Fix spectral axis unit retrieval. [#581]
- Fix bug in subspectrum fitting. [#586]
- Fix uncertainty to weight conversion to match astropy assumptions. [#594]
- Fix warnings and log messages from ASDF serialization tests. [#597]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Remove spectral_resolution stub from Spectrum1D. [#606]
0.7 (unreleased)
----------------
New Features
^^^^^^^^^^^^
- Make specutils compatible with Astropy 4.0 (breaking change). [#462]
- Remove all wcs adapter code and rely on APE14 implementation. [#462]
Bug Fixes
^^^^^^^^^
- Address ``MexicanHat1D`` name change in documentation. [#564]
0.6.1 (unreleased)
------------------
API Changes
^^^^^^^^^^^
- Resamplers now include ``extrapolation_treatment`` argument. [#537]
- Template fitting now returns an array of chi squared values for each template. [#551]
New Features
^^^^^^^^^^^^
- Masks now supported in fitting operations. [#519]
- Resamplers now support resamping beyond the edge of a spectrum using. [#537]
- New template fitting for redshift finding. [#527]
- New continuum checker to discern whether continuum is normalized or subtracted. [#538]
- Include documentation on how to achieve splicing using specutils. [#536]
- Include function to calculate masks based on S/N thresholding. [#509]
Bug Fixes
^^^^^^^^^
- Include new regions regression tests. [#345]
- Fix fitting documentation code block test. [#478]
- Fix Apogee loader to incorporate spectral axis keyword argument. [#560]
- Fix tabular fits writer and include new regression test. [#539]
- Fix dispersion attribute bug in ``Spectrum1D`` objects. [#530]
- Correctly label regression tests that require remote data. [#525]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Switch to using ``gaussian_sigma_width`` for ``Gaussian1D`` fitting estimator. [#434]
- Update documentation side bar to include page listing. [#556]
- New documentation on ``spectrum_mixin``. [#532]
- Model names are now preserved in the ``fit_lines`` operation. [#526]
- Clearer error messages for incompatible units in line fitting. [#520]
- Include travis stages in test matrix. [#515]
0.6 (2019-09-19)
----------------
New Features
^^^^^^^^^^^^
- New redshift and radial velocity storage on `Spectrum1D` object.
- Spectral template matching including resampling.
- Error propagation in convolution smoothing.
- Sub-pixel precision for fwhm calculations.
- New spectral resampling functions.
- New IRAF data loaders.
- New FWZI calculation.
Bug Fixes
^^^^^^^^^
- Stricter intiailizer for ``Spectrum1D``.
- Correct handling of weights in line fitting.
- Array size checking in `Spectrum1D` objects.
- Fix for continuum fitting on pixel-axis dispersions.
0.5.3 (unreleased)
------------------
Bug Fixes
^^^^^^^^^
- Fix comparison of FITSWCS objects in arithmetic operations.
- Fix example documentation when run in python interpreter.
0.5.2 (2019-02-06)
------------------
Bug Fixes
^^^^^^^^^
- Bugfixes for astropy helpers, pep8 syntax checking, and plotting in docs [#416,#417,#419]
- All automatically generated ``SpectrumList`` loaders now have identifiers. [#440]
- ``SpectralRange.from_center`` parameters corrected after change to SpectralRange interface. [#433]
Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Improve explanation on creating spectrum continua. [#420]
- Wrap IO identifier functions to ensure they always return True or False and log any errors. [#404]
0.5.1 (2018-11-29)
------------------
Bug Fixes
^^^^^^^^^
- Fixed a bug in using spectral regions that have been inverted. [#403]
- Use the pytest-remotedata plugin to control tests that require access to remote data. [#401,#408]
0.5 (2018-11-21)
----------------
- This was the first release of specutils executing the
[APE14](https://github.com/astropy/astropy-APEs/blob/main/APE14.rst)
plan (i.e. the "new" specutils) and therefore intended for broad use.
astropy-specutils-d83c77e/CITATION 0000777 0000000 0000000 00000000000 15071513375 0022161 2specutils/CITATION ustar 00root root 0000000 0000000 astropy-specutils-d83c77e/MANIFEST.in 0000664 0000000 0000000 00000000427 15071513375 0017422 0 ustar 00root root 0000000 0000000 include README.rst
include CHANGES.rst
include setup.cfg
include pyproject.toml
recursive-include specutils *.pyx *.c *.pxd
recursive-include docs *
recursive-include licenses *
recursive-include scripts *
prune build
prune docs/_build
prune docs/api
global-exclude *.pyc *.o
astropy-specutils-d83c77e/README.rst 0000664 0000000 0000000 00000012127 15071513375 0017353 0 ustar 00root root 0000000 0000000 Specutils
=========
|CI| |Coverage| |Docs| |Astropy|
.. |CI| image:: https://github.com/astropy/specutils/workflows/CI/badge.svg
:target: https://github.com/astropy/specutils/actions
:alt: GitHub Actions CI Status
.. |Coverage| image:: https://codecov.io/github/astropy/specutils/branch/main/graph/badge.svg
:target: https://codecov.io/github/astropy/specutils
:alt: Coverage Status
.. |Docs| image:: https://readthedocs.org/projects/specutils/badge/?version=latest
:target: https://specutils.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
.. |Astropy| image:: https://img.shields.io/badge/powered%20by-AstroPy-orange.svg?style=flat
:target: https://www.astropy.org/
:alt: Powered by Astropy
Specutils is an `Astropy affiliated package `_
with the goal of providing a shared set of Python representations of
astronomical spectra and basic tools to operate on these spectra. The effort is
also meant to be a "hub", helping to unite the Python astronomical spectroscopy
community around shared effort, much as Astropy is meant to for the wider
astronomy Python ecosystem. This broader effort is outlined in the
`APE13 document `_.
Note that Specutils is not intended to meet all possible spectroscopic analysis or
reduction needs. While it provides some standard analysis functionality
(following the Python philosophy of "batteries included"), it is best thought
of as a "tool box" that provides pieces of functionality that can be used to
build a particular scientific workflow or higher-level analysis tool. To that
end, it is also meant to facilitate connecting together disparate reduction
pipelines and analysis tools through shared Python representations of
spectroscopic data.
Getting Started with Specutils
------------------------------
For details on installing and using Specutils, see the
`specutils documentation `_.
Note that Specutils now only supports Python 3. While some functionality may
continue to work on Python 2, it is not tested and support cannot be guaranteed
(due to the sunsetting of Python 2 support by the Python and Astropy development
teams).
Migrating from Specutils 1.x to 2.x
-----------------------------------
For details about breaking changes made in 2.0, please see the
`specutils documentation `_.
License
-------
This project is Copyright (c) Specutils Developers and licensed under
the terms of the BSD 3-Clause license. This package is based upon
the `Astropy package template `_
which is licensed under the BSD 3-clause license. See the ``licenses`` folder for
more information.
Contributing
------------
We love contributions! specutils is open source,
built on open source, and we'd love to have you hang out in our community.
**Imposter syndrome disclaimer**: We want your help. No, really.
There may be a little voice inside your head that is telling you that you're not
ready to be an open source contributor; that your skills aren't nearly good
enough to contribute. What could you possibly offer a project like this one?
We assure you - the little voice in your head is wrong. If you can write code at
all, you can contribute code to open source. Contributing to open source
projects is a fantastic way to advance one's coding skills. Writing perfect code
isn't the measure of a good developer (that would disqualify all of us!); it's
trying to create something, making mistakes, and learning from those
mistakes. That's how we all improve, and we are happy to help others learn.
Being an open source contributor doesn't just mean writing code, either. You can
help out by writing documentation, tests, or even giving feedback about the
project (and yes - that includes giving feedback about the contribution
process). Some of these contributions may be the most valuable to the project as
a whole, because you're coming to the project with fresh eyes, so you can see
the errors and assumptions that seasoned contributors have glossed over.
Note: This disclaimer was originally written by
`Adrienne Lowe `_ for a
`PyCon talk `_, and was adapted by
specutils based on its use in the README file for the
`MetPy project `_.
If you locally cloned this repo before 22 Mar 2021
--------------------------------------------------
The primary branch for this repo has been transitioned from ``master`` to ``main``. If you have a local clone of this repository and want to keep your local branch in sync with this repo, you'll need to do the following in your local clone from your terminal::
git fetch --all --prune
# you can stop here if you don't use your local "master"/"main" branch
git branch -m master main
git branch -u origin/main main
If you are using a GUI to manage your repos you'll have to find the equivalent commands as it's different for different programs. Alternatively, you can just delete your local clone and re-clone!
astropy-specutils-d83c77e/conftest.py 0000664 0000000 0000000 00000002054 15071513375 0020061 0 ustar 00root root 0000000 0000000 try:
from pytest_astropy_header.display import PYTEST_HEADER_MODULES, TESTED_VERSIONS
ASTROPY_HEADER = True
except ImportError:
ASTROPY_HEADER = False
# Repeat this from specutils/conftest.py so tox picks it up.
def pytest_configure(config):
if ASTROPY_HEADER:
config.option.astropy_header = True
# Customize the following lines to add/remove entries from the list of
# packages for which version numbers are displayed when running the tests.
PYTEST_HEADER_MODULES.pop('Pandas', None)
PYTEST_HEADER_MODULES.pop('h5py', None)
PYTEST_HEADER_MODULES['astropy'] = 'astropy'
PYTEST_HEADER_MODULES['gwcs'] = 'gwcs'
PYTEST_HEADER_MODULES['asdf'] = 'asdf'
PYTEST_HEADER_MODULES['asdf-astropy'] = 'asdf_astropy'
PYTEST_HEADER_MODULES['stdatamodels'] = 'stdatamodels'
PYTEST_HEADER_MODULES['ndcube'] = 'ndcube'
PYTEST_HEADER_MODULES['spectral-cube'] = 'spectral_cube'
from specutils import __version__
TESTED_VERSIONS['specutils'] = __version__
astropy-specutils-d83c77e/docs/ 0000775 0000000 0000000 00000000000 15071513375 0016611 5 ustar 00root root 0000000 0000000 astropy-specutils-d83c77e/docs/Makefile 0000664 0000000 0000000 00000010745 15071513375 0020260 0 ustar 00root root 0000000 0000000 # Makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = _build
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest
#This is needed with git because git doesn't create a dir if it's empty
$(shell [ -d "_static" ] || mkdir -p _static)
help:
@echo "Please use \`make ' where is one of"
@echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project"
@echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " text to make text files"
@echo " man to make manual pages"
@echo " changes to make an overview of all changed/added/deprecated items"
@echo " linkcheck to check all external links for integrity"
clean:
-rm -rf $(BUILDDIR)
-rm -rf api
-rm -rf generated
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Astropy.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Astropy.qhc"
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/Astropy"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Astropy"
@echo "# devhelp"
epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
make -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
doctest:
@echo "Run 'python setup.py test' in the root directory to run doctests " \
@echo "in the documentation."
astropy-specutils-d83c77e/docs/_static/ 0000775 0000000 0000000 00000000000 15071513375 0020237 5 ustar 00root root 0000000 0000000 astropy-specutils-d83c77e/docs/_static/logo.png 0000664 0000000 0000000 00000340677 15071513375 0021726 0 ustar 00root root 0000000 0000000 PNG
IHDR cP sRGB pHYs .# .#x?v YiTXtXML:com.adobe.xmp
1
L'Y @ IDATx%Uu_uAը@O5"FofD̠F =GC_y̍~Po11ʌ
3ӧkծUk^8}yj{OwS' t@ mӭkǝ|`{W|Ѣpޠc;/O56- [cFAo}?7/z?gaz #=gx 8}ɳKǏfgsudᑴ4ewEyooדT(1Ǐ ^{6}oyN@ @ @ @ @ @ @ @ @{@` XwcƢv4|jFj{eAM|)i`S9%