Skip to main content

STScI tools and algorithms used in calibration pipelines

Project description

STCAL

Documentation Status

CI

codecov

STScI Calibration algorithms and tools.

STScI Logo

STCAL requires Python 3.9 or above and a C compiler for dependencies.

Linux and MacOS platforms are tested and supported. Windows is not currently supported.

If installing on MacOS Mojave 10.14, you must install into an environment with python 3.9. Installation will fail on python 3.10 due to lack of a stable build for dependency opencv-python.

STCAL is intended to be used as a support package for calibration pipeline software, such as the JWST and Roman calibration pipelines. STCAL is a separate package because it is also intended to be software that can be reused by multiple calibration pipelines. Even though it is intended to be a support package for calibration pipelines, it can be installed and used as a stand alone package. This could make usage unwieldy as it is easier to use STCAL through calibration software. The main use case for stand alone installation is for development purposes, such as bug fixes and feature additions. When installing calibration pipelines that depend on STCAL this package automatically gets installed as a dependency.

Installation

The easiest way to install the latest stcal release into a fresh virtualenv or conda environment is

pip install stcal

Detailed Installation

The stcal package can be installed into a virtualenv or conda environment via pip. We recommend that for each installation you start by creating a fresh environment that only has Python installed and then install the stcal package and its dependencies into that bare environment. If using conda environments, first make sure you have a recent version of Anaconda or Miniconda installed. If desired, you can create multiple environments to allow for switching between different versions of the stcal package (e.g. a released version versus the current development version).

In all cases, the installation is generally a 3-step process:

  • Create a conda environment
  • Activate that environment
  • Install the desired version of the stcal package into that environment

Details are given below on how to do this for different types of installations, including tagged releases and development versions. Remember that all conda operations must be done from within a bash/zsh shell.

Installing latest releases

You can install the latest released version via pip. From a bash/zsh shell:

conda create -n <env_name> python
conda activate <env_name>
pip install stcal

You can also install a specific version, for example stcal 1.3.2:

conda create -n <env_name> python
conda activate <env_name>
pip install stcal==1.3.2

Installing the development version from Github

You can install the latest development version (not as well tested) from the Github master branch:

conda create -n <env_name> python
conda activate <env_name>
pip install git+https://github.com/spacetelescope/stcal

Installing for Developers

If you want to be able to work on and test the source code with the stcal package, the high-level procedure to do this is to first create a conda environment using the same procedures outlined above, but then install your personal copy of the code overtop of the original code in that environment. Again, this should be done in a separate conda environment from any existing environments that you may have already installed with released versions of the stcal package.

As usual, the first two steps are to create and activate an environment:

conda create -n <env_name> python
conda activate <env_name>

To install your own copy of the code into that environment, you first need to fork and clone the stcal repo:

cd <where you want to put the repo>
git clone https://github.com/spacetelescope/stcal
cd stcal

Note: python setup.py install and python setup.py develop commands do not work.

Install from your local checked-out copy as an "editable" install:

pip install -e .

If you want to run the unit or regression tests and/or build the docs, you can make sure those dependencies are installed too:

pip install -e ".[test]"
pip install -e ".[docs]"
pip install -e ".[test,docs]"

Need other useful packages in your development environment?

pip install ipython jupyter matplotlib pylint ipdb

Contributions and Feedback

We welcome contributions and feedback on the project. Please follow the contributing guidelines to submit an issue or a pull request.

We strive to provide a welcoming community to all of our users by abiding with the Code of Conduct.

If you have questions or concerns regarding the software, please open an issue at https://github.com/spacetelescope/stcal/issues.

Unit Tests

Unit tests can be run via pytest. Within the top level of your local stcal repo checkout:

pip install -e ".[test]"
pytest

Need to parallelize your test runs over all available cores?

pip install pytest-xdist
pytest -n auto

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stcal-1.4.3.tar.gz (669.7 kB view details)

Uploaded Source

Built Distributions

stcal-1.4.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (706.1 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

stcal-1.4.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (681.9 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ i686 manylinux: glibc 2.5+ i686

stcal-1.4.3-cp310-cp310-macosx_10_9_x86_64.whl (349.9 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

stcal-1.4.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (710.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

stcal-1.4.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (684.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ i686 manylinux: glibc 2.5+ i686

stcal-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl (350.6 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

File details

Details for the file stcal-1.4.3.tar.gz.

File metadata

  • Download URL: stcal-1.4.3.tar.gz
  • Upload date:
  • Size: 669.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for stcal-1.4.3.tar.gz
Algorithm Hash digest
SHA256 27f091f8658cdc7825d1a41c4124286cfa2bec57704633524759c5d98d610ad3
MD5 55ff902d15c9a382414c258432a597ee
BLAKE2b-256 d74b3768d2f05a7a16d7e4a5d5d9cec7d1f7b98667842a27b0cd4a9e6fc479b3

See more details on using hashes here.

File details

Details for the file stcal-1.4.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for stcal-1.4.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 398e53fc1d8725a2ed2285fb6497da0b8629b77e175349c754702cf29d89d609
MD5 bf4bb93e7bfc2c9b51187f16c8ed505d
BLAKE2b-256 97aeb158d69feec80852da76adce03103a4161f268ab85ee752382193687d380

See more details on using hashes here.

File details

Details for the file stcal-1.4.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for stcal-1.4.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 6339ccd70799aebeba1fa2b0b96a9cbfa6e6f85967a0cbf7f93f91581789445b
MD5 ec49b0c2ae1f500088b55b1f996df618
BLAKE2b-256 e22e5cb2e93c1f8f4a6a21976c4a9929016634bc8183ae88cc5da96cedf06ec9

See more details on using hashes here.

File details

Details for the file stcal-1.4.3-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for stcal-1.4.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 af250294e38c8b0046793db2e31b785341fe7a610017001d75d215ab4f09d9b2
MD5 5f236202797f185dad87db85bdd4e3e8
BLAKE2b-256 9a53c7fd512eec01461ec1505b3785fe7e6a45a223db82e590b022f37ee5cfa6

See more details on using hashes here.

File details

Details for the file stcal-1.4.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for stcal-1.4.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 808af18a54a8dd6690c9855dff761f5efa1edfbce92676a07b08aaba5a5f90ad
MD5 30d923dbb22960f1adf603a591e3b517
BLAKE2b-256 92be43b8831818da6ad5a8664bc687479fb205ee100e1ac707bdde5f82d6d828

See more details on using hashes here.

File details

Details for the file stcal-1.4.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for stcal-1.4.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 49f3aece882e8a5f08156be48d41e170c3609bba475a3c24f4a762c013037180
MD5 3c7d03f0f3490f80b44cb9cfc339838b
BLAKE2b-256 973da7b4fa3d9b610bb9a59a13d627b7b0f1cd8e1f4a4d27f284bb76790b2ff2

See more details on using hashes here.

File details

Details for the file stcal-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for stcal-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 654da4c5d09799a47ed3962280157011822c2bb4498cdcda97744a9f64bdbe34
MD5 73af1e1d9cb6a6a850684c3aba85f287
BLAKE2b-256 856dc00e814a2e2471dadb43fde8daede337e0a3edc2a2fc343d571cb1d07f94

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page