diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | .travis.yml | 62 | ||||
-rw-r--r-- | setup.py | 22 | ||||
-rw-r--r-- | source/package_manifest.py | 91 | ||||
-rw-r--r-- | source/package_manifest.rst | 1177 | ||||
-rw-r--r-- | source/release_notes.py | 203 | ||||
-rw-r--r-- | source/release_notes.rst | 719 | ||||
-rw-r--r-- | source/rtd-pip-requirements.txt | 1 |
8 files changed, 209 insertions, 2069 deletions
@@ -2,3 +2,6 @@ build source/*.html TOKEN + +source/package_manifest.rst +source/release_notes.rst diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..767db38 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,62 @@ +language: python + +# Setting sudo to false opts in to Travis-CI container-based builds. +sudo: false + +# The apt packages below are needed for sphinx builds, which can no longer +# be installed with sudo apt-get. +addons: + apt: + packages: + - graphviz + - texlive-latex-extra + - dvipng + +os: + - linux + + +python: + - 3.5 + +env: + global: + # SET DEFAULTS TO AVOID REPEATING IN MOST CASES + - SETUPTOOLS_VERSION=stable + - PIP_INSTALL='pip install' + - INSTALL_OPTIONAL=true + - SETUP_CMD='test' + +before_install: + + # USE UTF8 ENCODING. SHOULD BE DEFAULT, BUT THIS IS INSURANCE AGAINST + # FUTURE CHANGES + - export PYTHONIOENCODING=UTF8 + + # http://conda.pydata.org/docs/travis.html#the-travis-yml-file + - wget https://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh; + - bash miniconda.sh -b -p $HOME/miniconda + - export PATH="$HOME/miniconda/bin:$PATH" + - hash -r + - conda config --set always_yes yes --set changeps1 no + - conda update -q conda + - conda info -a + + #CHECK INTERACTIVE MATPLOTLIB BACKENDS + - export DISPLAY=:99.0 + - sh -e /etc/init.d/xvfb start + + +install: + - conda create -n test python=$TRAVIS_PYTHON_VERSION + - source activate test + + # ADD STSCI ASTROCONDA CHANNEL + - conda config --add channels http://ssb.stsci.edu/astroconda + + # RTD deps + - $PIP_INSTALL -r source/rtd-pip-requirements.txt + + +script: + - python setup.py install diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..a19c009 --- /dev/null +++ b/setup.py @@ -0,0 +1,22 @@ +import os +from setuptools import setup, find_packages +from setuptools.command.install import install + +import sys +sys.path.insert(0, 'source/') +import release_notes +import package_manifest + +class MyInstall(install): + def run(self): + install.run(self) + release_notes.generate_release_notes() + package_manifest.generate_manifest() + +setup( + name = 'astroconda', + version = '0.0.1', + author = 'Joseph Hunkeler', + cmdclass = {'install': MyInstall}, + install_requires = ['pypandoc', 'github3.py'] + ) diff --git a/source/package_manifest.py b/source/package_manifest.py index a179888..5e9d80a 100644 --- a/source/package_manifest.py +++ b/source/package_manifest.py @@ -1,6 +1,13 @@ +from __future__ import print_function + import json +import os from collections import OrderedDict -from urllib.request import urlopen +try: + from urllib.request import urlopen +except ImportError: + from urllib2 import urlopen + from pprint import pprint ARCHITECTURE = [ 'linux-64', 'osx-64'] @@ -38,45 +45,47 @@ def get_repodata(architecture): return data +def generate_manifest(): + python_versions = dict( + py27='2.7', + py34='3.4', + py35='3.5' + ) -if __name__ == '__main__': + with open(os.path.join('source', 'package_manifest.rst'), 'w+') as pfile: + print('Packages', file=pfile) + print('========\n\n', file=pfile) + print('{0}\n\n'.format(MESSAGE), file=pfile) + + repo_data = OrderedDict() + for arch in ARCHITECTURE: + repo_data[arch] = get_repodata(arch) + + metapackages = [] + for mpkg, mpkg_version in METAPACKAGES: + for key, value in repo_data[arch].items(): + if mpkg == repo_data[arch][key]['name']: + if mpkg_version == repo_data[arch][key]['version']: + metapackages.append(('-'.join([value['name'], value['version']]), value['build'], value['depends'])) + + print('{arch} metapackages'.format(arch=arch), file=pfile) + print('------------------------\n\n', file=pfile) - python_versions = dict( - py27='2.7', - py34='3.4', - py35='3.5' - ) - - with open('package_manifest.rst', 'w+') as pfile: - print('Packages', file=pfile) - print('========\n\n', file=pfile) - print('{0}\n\n'.format(MESSAGE), file=pfile) - - repo_data = OrderedDict() - for arch in ARCHITECTURE: - repo_data[arch] = get_repodata(arch) - - metapackages = [] - for mpkg, mpkg_version in METAPACKAGES: - for key, value in repo_data[arch].items(): - if mpkg == repo_data[arch][key]['name']: - if mpkg_version == repo_data[arch][key]['version']: - metapackages.append(('-'.join([value['name'], value['version']]), value['build'], value['depends'])) - - print('{arch} metapackages'.format(arch=arch), file=pfile) - print('------------------------\n\n', file=pfile) - - metapackages = sorted(metapackages, key=lambda k: k[0]) - for name, build, dependencies in metapackages: - print('- **{name} ({python})**\n'.format(name=name, python=build), file=pfile) - for pkg in dependencies: - print(' - {:<20s}\n'.format(pkg), file=pfile) - - print('{arch} packages'.format(arch=arch), file=pfile) - print('------------------------\n\n', file=pfile) - - _packages = sorted(repo_data[arch].values(), key=lambda k: k['name']) - packages = set(['-'.join([d['name'], d['version']]) for d in _packages]) - - for record in sorted(packages): - print('- {name}\n'.format(name=record, header='-' * len(record)), file=pfile) + metapackages = sorted(metapackages, key=lambda k: k[0]) + for name, build, dependencies in metapackages: + print('- **{name} ({python})**\n'.format(name=name, python=build), file=pfile) + for pkg in dependencies: + print(' - {:<20s}\n'.format(pkg), file=pfile) + + print('{arch} packages'.format(arch=arch), file=pfile) + print('------------------------\n\n', file=pfile) + + _packages = sorted(repo_data[arch].values(), key=lambda k: k['name']) + packages = set(['-'.join([d['name'], d['version']]) for d in _packages]) + + for record in sorted(packages): + print('- {name}\n'.format(name=record, header='-' * len(record)), file=pfile) + + +if __name__ == '__main__': + generate_manifest() diff --git a/source/package_manifest.rst b/source/package_manifest.rst deleted file mode 100644 index 509201e..0000000 --- a/source/package_manifest.rst +++ /dev/null @@ -1,1177 +0,0 @@ -Packages -======== - - - -Packaging reference key: - -:: - - [package]-[version]-[glob]_[build_number] - ^Name ^Version ^ ^Conda package revision - | - npXXpyYY - ^ ^ - | | - | Compiled for Python version - | - Compiled for NumPY version - - - - - -linux-64 metapackages ------------------------- - - -- **stsci-1.0.1 (np111py27_0)** - - - astropy >=1.1 - - - cfitsio >=3.370 - - - d2to1 >=0.2.12 - - - ds9 >=7.1 - - - fftw >=3.3.4 - - - htc_utils >=0.1 - - - imexam >=0.5.2 - - - numpy 1.11* - - - photutils >=0.2.1 - - - poppy >=0.4.0 - - - purge_path >=1.0.0 - - - pyds9 >=1.8.1 - - - pyfftw >=0.9.2 - - - python 2.7* - - - stsci-data-analysis - - - stsci-hst - - - webbpsf >=0.4.0 - - - webbpsf-data >=0.4.0 - -- **stsci-1.0.1 (np111py35_0)** - - - astropy >=1.1 - - - cfitsio >=3.370 - - - d2to1 >=0.2.12 - - - ds9 >=7.1 - - - fftw >=3.3.4 - - - htc_utils >=0.1 - - - imexam >=0.5.2 - - - numpy 1.11* - - - photutils >=0.2.1 - - - poppy >=0.4.0 - - - purge_path >=1.0.0 - - - pyds9 >=1.8.1 - - - pyfftw >=0.9.2 - - - python 3.5* - - - stsci-data-analysis - - - stsci-hst - - - webbpsf >=0.4.0 - - - webbpsf-data >=0.4.0 - -- **stsci-data-analysis-1.0.0 (np111py35_1)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.11* - - - python 3.5* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-data-analysis-1.0.0 (np110py34_0)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.10* - - - python 3.4* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-data-analysis-1.0.0 (np111py35_2)** - - - asdf >=1.0.2 - - - astroimtools >=0.1 - - - astropy >=1.1 - - - asv >=0.1.1 - - - cube-tools >=0.0.0 - - - numpy 1.11* - - - python 3.5* - - - specview >=0.1 - - - stginga >=0.1 - -- **stsci-data-analysis-1.0.0 (np111py27_2)** - - - asdf >=1.0.2 - - - astroimtools >=0.1 - - - astropy >=1.1 - - - asv >=0.1.1 - - - cube-tools >=0.0.0 - - - numpy 1.11* - - - python 2.7* - - - specview >=0.1 - - - stginga >=0.1 - -- **stsci-data-analysis-1.0.0 (np110py27_0)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.10* - - - python 2.7* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-data-analysis-1.0.0 (np110py35_0)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.10* - - - python 3.5* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-hst-1.0.4 (np111py27_0)** - - - acstools >=2.0.0 - - - astropy >=1.1 - - - calcos >=3.1.8 - - - costools >=1.2.1 - - - crds >=7.0.1 - - - d2to1 >=0.2.12 - - - drizzlepac >=2.1.3 - - - fitsblender >=0.2.6 - - - hstcal >=1.0.0 - - - nictools >=1.1.3 - - - numpy 1.11* - - - purge_path >=1.0.0 - - - pyregion >=1.1.2 - - - pysynphot >=0.9.8.2 - - - python 2.7* - - - reftools >=1.7.1 - - - stistools >=1.1 - - - stsci.convolve >=2.1.3 - - - stsci.distutils >=0.3.8 - - - stsci.image >=2.2.0 - - - stsci.imagemanip >=1.1.2 - - - stsci.imagestats >=1.4.1 - - - stsci.ndimage >=0.10.1 - - - stsci.numdisplay >=1.6.1 - - - stsci.skypac >=0.9 - - - stsci.sphere >=0.2 - - - stsci.sphinxext >=1.2.2 - - - stsci.stimage >=0.2.1 - - - stsci.tools >=3.4.1 - - - stwcs >=1.2.3 - - - wfc3tools >=1.3.1 - - - wfpc2tools >=1.0.3 - -- **stsci-hst-1.0.4 (np111py35_0)** - - - acstools >=2.0.0 - - - astropy >=1.1 - - - calcos >=3.1.8 - - - costools >=1.2.1 - - - crds >=7.0.1 - - - d2to1 >=0.2.12 - - - drizzlepac >=2.1.3 - - - fitsblender >=0.2.6 - - - hstcal >=1.0.0 - - - nictools >=1.1.3 - - - numpy 1.11* - - - purge_path >=1.0.0 - - - pyregion >=1.1.2 - - - pysynphot >=0.9.8.2 - - - python 3.5* - - - reftools >=1.7.1 - - - stistools >=1.1 - - - stsci.convolve >=2.1.3 - - - stsci.distutils >=0.3.8 - - - stsci.image >=2.2.0 - - - stsci.imagemanip >=1.1.2 - - - stsci.imagestats >=1.4.1 - - - stsci.ndimage >=0.10.1 - - - stsci.numdisplay >=1.6.1 - - - stsci.skypac >=0.9 - - - stsci.sphere >=0.2 - - - stsci.sphinxext >=1.2.2 - - - stsci.stimage >=0.2.1 - - - stsci.tools >=3.4.1 - - - stwcs >=1.2.3 - - - wfc3tools >=1.3.1 - - - wfpc2tools >=1.0.3 - -linux-64 packages ------------------------- - - -- acstools-2.0.0 - -- acstools-2.0.2 - -- acstools-2.0.4 - -- appdirs-1.4.0 - -- aprio-1.0.1 - -- asdf-1.0.2 - -- asdf-1.0.3 - -- asdf-standard-1.0.0 - -- astroimtools-0.1 - -- astrolib.coords-0.39.6 - -- asv-0.1.1 - -- calcos-3.1.3 - -- calcos-3.1.7 - -- calcos-3.1.8 - -- cfitsio-3.370 - -- costools-1.2.1 - -- crds-0.0.0 - -- crds-6.0.0 - -- crds-7.0.1 - -- cube-tools-0.0.0 - -- cube-tools-0.0.1 - -- d2to1-0.2.12 - -- decorator-4.0.9 - -- drizzle-1.1 - -- drizzlepac-2.1.3 - -- drizzlepac-2.1.4 - -- drizzlepac-2.1.5 - -- drizzlepac-2.1.6 - -- ds9-7.1 - -- ds9-7.4 - -- fftw-3.3.4 - -- fitsblender-0.2.6 - -- ginga-2.5.20151215011852 - -- ginga-2.5.20160627100500 - -- ginga-2.5.20160706100500 - -- ginga-2.5.20160801083400 - -- glue-vispy-viewers-0.4 - -- glueviz-0.8.2 - -- gwcs-0.5 - -- gwcs-0.5.1 - -- gwcs-0.6rc1 - -- hstcal-1.0.0 - -- hstcal-1.0.1 - -- htc_utils-0.1 - -- imexam-0.5.2 - -- iraf-2.16.1 - -- jwst_lib-0.0.0 - -- jwst_pipeline-0.0.0 - -- jwst_tools-0.0.0 - -- nictools-1.1.3 - -- opuscoords-1.0.2 - -- pandokia-1.3.11 - -- photutils-0.2.1 - -- photutils-0.2.2 - -- poppy-0.4.0 - -- poppy-0.5.0 - -- purge_path-1.0.0 - -- pydrizzle-6.4.4 - -- pyds9-1.8.1 - -- pyfftw-0.9.2 - -- pyqtgraph-0.9.10 - -- pyqtgraph-0.9.11 - -- pyraf-2.1.10 - -- pyraf-2.1.11 - -- pyregion-1.1.2 - -- pysynphot-0.9.8.2 - -- pysynphot-0.9.8.3 - -- pysynphot-0.9.8.4 - -- python-daemon-2.0.5 - -- pytools-2016.1 - -- pywcs-1.12.1 - -- recon-1.0.2 - -- reftools-1.7.1 - -- reftools-1.7.3 - -- relic-1.0.4 - -- relic-1.0.5 - -- selenium-2.49.2 - -- shunit2-2.0.3 - -- specutils-0.2.1 - -- specview-0.1 - -- specviz-0.1.2rc3 - -- specviz-0.2.0rc3 - -- specviz-0.2.1rc4 - -- specviz-0.2.1rc5 - -- sphere-1.0.6 - -- sphere-1.0.7 - -- sphinx_rtd_theme-0.1.9 - -- sphinxcontrib-programoutput-0.8 - -- stginga-0.0.0 - -- stginga-0.1 - -- stginga-0.1.1 - -- stginga-0.1.2 - -- stistools-1.1 - -- stsci-1.0.0 - -- stsci-1.0.1 - -- stsci-data-analysis-1.0.0 - -- stsci-hst-1.0.0 - -- stsci-hst-1.0.1 - -- stsci-hst-1.0.2 - -- stsci-hst-1.0.3 - -- stsci-hst-1.0.4 - -- stsci.convolve-2.1.3 - -- stsci.distutils-0.3.8 - -- stsci.image-2.2.0 - -- stsci.imagemanip-1.1.2 - -- stsci.imagestats-1.4.1 - -- stsci.ndimage-0.10.1 - -- stsci.numdisplay-1.6.1 - -- stsci.skypac-0.9 - -- stsci.sphere-0.2 - -- stsci.sphinxext-1.2.2 - -- stsci.stimage-0.2.1 - -- stsci.tools-3.4.1 - -- stwcs-1.2.3 - -- wcstools-3.9.2 - -- webbpsf-0.4.0 - -- webbpsf-0.5.0 - -- webbpsf-data-0.4.0 - -- webbpsf-data-0.5.0 - -- wfc3tools-1.3.1 - -- wfpc2tools-1.0.3 - -- xpa-2.1.17 - -osx-64 metapackages ------------------------- - - -- **stsci-1.0.1 (np111py27_0)** - - - astropy >=1.1 - - - cfitsio >=3.370 - - - d2to1 >=0.2.12 - - - ds9 >=7.1 - - - fftw >=3.3.4 - - - htc_utils >=0.1 - - - imexam >=0.5.2 - - - numpy 1.11* - - - photutils >=0.2.1 - - - poppy >=0.4.0 - - - purge_path >=1.0.0 - - - pyds9 >=1.8.1 - - - pyfftw >=0.9.2 - - - python 2.7* - - - stsci-data-analysis - - - stsci-hst - - - webbpsf >=0.4.0 - - - webbpsf-data >=0.4.0 - -- **stsci-1.0.1 (np111py35_0)** - - - astropy >=1.1 - - - cfitsio >=3.370 - - - d2to1 >=0.2.12 - - - ds9 >=7.1 - - - fftw >=3.3.4 - - - htc_utils >=0.1 - - - imexam >=0.5.2 - - - numpy 1.11* - - - photutils >=0.2.1 - - - poppy >=0.4.0 - - - purge_path >=1.0.0 - - - pyds9 >=1.8.1 - - - pyfftw >=0.9.2 - - - python 3.5* - - - stsci-data-analysis - - - stsci-hst - - - webbpsf >=0.4.0 - - - webbpsf-data >=0.4.0 - -- **stsci-data-analysis-1.0.0 (np111py27_2)** - - - asdf >=1.0.2 - - - astroimtools >=0.1 - - - astropy >=1.1 - - - asv >=0.1.1 - - - cube-tools >=0.0.0 - - - numpy 1.11* - - - python 2.7* - - - specview >=0.1 - - - stginga >=0.1 - -- **stsci-data-analysis-1.0.0 (np110py35_0)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.10* - - - python 3.5* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-data-analysis-1.0.0 (np110py34_0)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.10* - - - python 3.4* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-data-analysis-1.0.0 (np111py35_2)** - - - asdf >=1.0.2 - - - astroimtools >=0.1 - - - astropy >=1.1 - - - asv >=0.1.1 - - - cube-tools >=0.0.0 - - - numpy 1.11* - - - python 3.5* - - - specview >=0.1 - - - stginga >=0.1 - -- **stsci-data-analysis-1.0.0 (np110py27_0)** - - - asdf ==1.0.2 - - - astroimtools ==0.1 - - - astropy >=1.1 - - - asv ==0.1.1 - - - cube-tools ==0.0.0 - - - numpy 1.10* - - - python 2.7* - - - specview ==0.1 - - - stginga ==0.0.0 - -- **stsci-hst-1.0.4 (np111py35_0)** - - - acstools >=2.0.0 - - - astropy >=1.1 - - - calcos >=3.1.8 - - - costools >=1.2.1 - - - crds >=7.0.1 - - - d2to1 >=0.2.12 - - - drizzlepac >=2.1.3 - - - fitsblender >=0.2.6 - - - hstcal >=1.0.0 - - - nictools >=1.1.3 - - - numpy 1.11* - - - purge_path >=1.0.0 - - - pyregion >=1.1.2 - - - pysynphot >=0.9.8.2 - - - python 3.5* - - - reftools >=1.7.1 - - - stistools >=1.1 - - - stsci.convolve >=2.1.3 - - - stsci.distutils >=0.3.8 - - - stsci.image >=2.2.0 - - - stsci.imagemanip >=1.1.2 - - - stsci.imagestats >=1.4.1 - - - stsci.ndimage >=0.10.1 - - - stsci.numdisplay >=1.6.1 - - - stsci.skypac >=0.9 - - - stsci.sphere >=0.2 - - - stsci.sphinxext >=1.2.2 - - - stsci.stimage >=0.2.1 - - - stsci.tools >=3.4.1 - - - stwcs >=1.2.3 - - - wfc3tools >=1.3.1 - - - wfpc2tools >=1.0.3 - -- **stsci-hst-1.0.4 (np111py27_0)** - - - acstools >=2.0.0 - - - astropy >=1.1 - - - calcos >=3.1.8 - - - costools >=1.2.1 - - - crds >=7.0.1 - - - d2to1 >=0.2.12 - - - drizzlepac >=2.1.3 - - - fitsblender >=0.2.6 - - - hstcal >=1.0.0 - - - nictools >=1.1.3 - - - numpy 1.11* - - - purge_path >=1.0.0 - - - pyregion >=1.1.2 - - - pysynphot >=0.9.8.2 - - - python 2.7* - - - reftools >=1.7.1 - - - stistools >=1.1 - - - stsci.convolve >=2.1.3 - - - stsci.distutils >=0.3.8 - - - stsci.image >=2.2.0 - - - stsci.imagemanip >=1.1.2 - - - stsci.imagestats >=1.4.1 - - - stsci.ndimage >=0.10.1 - - - stsci.numdisplay >=1.6.1 - - - stsci.skypac >=0.9 - - - stsci.sphere >=0.2 - - - stsci.sphinxext >=1.2.2 - - - stsci.stimage >=0.2.1 - - - stsci.tools >=3.4.1 - - - stwcs >=1.2.3 - - - wfc3tools >=1.3.1 - - - wfpc2tools >=1.0.3 - -osx-64 packages ------------------------- - - -- acstools-2.0.0 - -- acstools-2.0.2 - -- acstools-2.0.4 - -- appdirs-1.4.0 - -- aprio-1.0.1 - -- asdf-1.0.2 - -- asdf-1.0.3 - -- asdf-standard-1.0.0 - -- astroimtools-0.1 - -- astrolib.coords-0.39.6 - -- asv-0.1.1 - -- calcos-3.1.3 - -- calcos-3.1.7 - -- calcos-3.1.8 - -- cfitsio-3.370 - -- costools-1.2.1 - -- crds-0.0.0 - -- crds-6.0.0 - -- crds-7.0.1 - -- cube-tools-0.0.0 - -- cube-tools-0.0.1 - -- d2to1-0.2.12 - -- decorator-4.0.9 - -- drizzle-1.1 - -- drizzlepac-2.1.3 - -- drizzlepac-2.1.4 - -- drizzlepac-2.1.5 - -- drizzlepac-2.1.6 - -- ds9-7.1 - -- ds9-7.4 - -- fftw-3.3.4 - -- fitsblender-0.2.6 - -- ginga-2.5.20151215011852 - -- ginga-2.5.20160627100500 - -- ginga-2.5.20160706100500 - -- ginga-2.5.20160801083400 - -- glue-vispy-viewers-0.4 - -- glueviz-0.8.2 - -- gwcs-0.5 - -- gwcs-0.5.1 - -- gwcs-0.6rc1 - -- hstcal-1.0.0 - -- hstcal-1.0.1 - -- htc_utils-0.1 - -- imexam-0.5.2 - -- iraf-2.16.1 - -- jwst_lib-0.0.0 - -- jwst_pipeline-0.0.0 - -- jwst_tools-0.0.0 - -- nictools-1.1.3 - -- opuscoords-1.0.2 - -- pandokia-1.3.11 - -- photutils-0.2.1 - -- photutils-0.2.2 - -- poppy-0.4.0 - -- poppy-0.5.0 - -- purge_path-1.0.0 - -- pydrizzle-6.4.4 - -- pyds9-1.8.1 - -- pyfftw-0.9.2 - -- pyobjc-core-3.0.4 - -- pyobjc-core-3.1.1 - -- pyobjc-framework-cocoa-3.0.4 - -- pyobjc-framework-cocoa-3.1.1 - -- pyobjc-framework-quartz-3.0.4 - -- pyobjc-framework-quartz-3.1.1 - -- pyqtgraph-0.9.10 - -- pyqtgraph-0.9.11 - -- pyraf-2.1.10 - -- pyraf-2.1.11 - -- pyregion-1.1.2 - -- pysynphot-0.9.8.2 - -- pysynphot-0.9.8.3 - -- pysynphot-0.9.8.4 - -- python-daemon-2.0.5 - -- pytools-2016.1 - -- pywcs-1.12.1 - -- recon-1.0.2 - -- reftools-1.7.1 - -- reftools-1.7.3 - -- relic-1.0.4 - -- relic-1.0.5 - -- selenium-2.49.2 - -- sextractor-2.19.5 - -- shunit2-2.0.3 - -- specutils-0.2.1 - -- specview-0.1 - -- specviz-0.1.2rc3 - -- specviz-0.2.0rc3 - -- specviz-0.2.1rc5 - -- sphere-1.0.6 - -- sphere-1.0.7 - -- sphinx_rtd_theme-0.1.9 - -- sphinxcontrib-programoutput-0.8 - -- stginga-0.0.0 - -- stginga-0.1 - -- stginga-0.1.1 - -- stginga-0.1.2 - -- stistools-1.1 - -- stsci-1.0.0 - -- stsci-1.0.1 - -- stsci-data-analysis-0.0.0.dev0 - -- stsci-data-analysis-1.0.0 - -- stsci-hst-1.0.0 - -- stsci-hst-1.0.1 - -- stsci-hst-1.0.2 - -- stsci-hst-1.0.3 - -- stsci-hst-1.0.4 - -- stsci.convolve-2.1.3 - -- stsci.distutils-0.3.8 - -- stsci.image-2.2.0 - -- stsci.imagemanip-1.1.2 - -- stsci.imagestats-1.4.1 - -- stsci.ndimage-0.10.1 - -- stsci.numdisplay-1.6.1 - -- stsci.skypac-0.9 - -- stsci.sphere-0.2 - -- stsci.sphinxext-1.2.2 - -- stsci.stimage-0.2.1 - -- stsci.tools-3.4.1 - -- stwcs-1.2.3 - -- wcstools-3.9.2 - -- webbpsf-0.4.0 - -- webbpsf-0.5.0 - -- webbpsf-data-0.4.0 - -- webbpsf-data-0.5.0 - -- wfc3tools-1.3.1 - -- wfpc2tools-1.0.3 - -- xpa-2.1.17 - diff --git a/source/release_notes.py b/source/release_notes.py index 3c1b397..fc3bbb3 100644 --- a/source/release_notes.py +++ b/source/release_notes.py @@ -6,176 +6,115 @@ import math from collections import OrderedDict try: - from github3 import login + from urllib.request import urlopen +except ImportError: + from urllib2 import urlopen + +try: + import github3 + from github3 import organization from github3 import GitHubError except ImportError: print('github3.py required.') print('pip install https+git://github.com/sigmavirus24/github3.py') exit(1) -try: - import pypandoc -except ImportError: - print('pypandoc required.') - print('conda install -c https://conda.anaconda.org/janschulz pypandoc') - exit(1) +from package_manifest import ARCHITECTURE, get_repodata header = """ -# Release Notes +Release Notes +============= + +For individual package release notes, please follow the links below. +Note that not all packages have release notes, and may simply provide +numbered releases. + """ -title = """ -## {name} + +item = """ +- `{} <{}>`__ """ -message = """ -### {title} -*{date}* +#------------------------------------------------------------------------------- -{body} +def any_releases(url): + """Check if there are any releases in a given github release page -""" + Parameters + ---------- + url: str + URL of a valid github reposoitory release pages + Returns + ------- + any_releases: bool + True if there are found releases, False otherwise -def explode_newlines(s): - """Normalize newlines and double them up for MD->RST conversion. - """ - tmp = '' - for line in s.splitlines(): - line = line.replace('\r\n', '\n') - line = line + '\n\n' - tmp += line - - return tmp - -def transform_headings(s): - """Trust no one. - Header levels less than or equal to 3 are up-converted. - - 1 = 4 - 2 = 4 - 3 = 5 - 4 = 6 - 5 = 6 - 6 = 6 - - Oh well, sucks right? - """ - delim = '#' - headings = OrderedDict( - h6=delim * 6, - h5=delim * 5, - h4=delim * 4, - h3=delim * 3, - h2=delim * 2, - h1=delim * 1 - ) - output = '' - - for line in s.splitlines(): - length = len(line) - stop = len(headings.keys()) + 1 - - if length < stop: - stop = length - - block = line[:stop] - depth = 0 - for i, ch in enumerate(block, 1): - if ch != '#': break - depth = i - - if depth == 0 or depth > 3: - output += explode_newlines(line) - continue - - #print('length={:<10d} stop={:<10d} depth={:<10d} block={:>20s}'.format(length, stop, depth, block)) - - current = headings['h'+str(depth)] - try: - required = headings['h'+str(math.ceil(depth + depth / depth + 1))] - except KeyError: - required = headings['h'+str(len(headings) - 1)] - - if depth > 0 and depth <= 3: - print("Heading levels 1, 2, and 3 are allocated by this script...") - print("Offending line: '{0}'".format(line)) - print("Automatically converted to: '{0}'".format(required)) - print("(FIX YOUR RELEASE NOTES)\n\n") - - #print('Transformed "{0}" -> "{1}"'.format(current, required)) - line = line.replace(current, required) - output += explode_newlines(line) - - return output - -def read_token(filename): - """For the sake of security, paste your github auth token in a file and reference it using this function - - Expected file format (one-liner): - GITHUB_USER_AUTH_TOKEN_HERE """ - with open(filename, 'r') as f: - # Obtain the first line in the token file - token = f.readline().rstrip() - if not token: - return None + no_release_msg = b"<h3>There aren\xe2\x80\x99t any releases here</h3>" - for i, ch in enumerate(token): - if not ch.isalnum(): - raise ValueError('Invalid token: Non-alphanumeric character detected (Value: "{0}", ASCII: {1}, Index: {2}) '.format(ch, ord(ch), i)) + if no_release_msg in urlopen(url).read(): + return False - return token + return True +#------------------------------------------------------------------------------- -def pull_release_notes(tmpfile, outfile): - with open(tmpfile, 'w+') as mdout: +def pull_release_notes(org, outfile): + """ Get urls for release notes for all astroconda packages + + Only repositories that are included in ANY astroconda distribution (linux or OSX) + with tagged github releases will be included in the output release notes + rst file. + + Parameters + ---------- + org: github3 organization instance + All repositories from this org will be parsed for releases + outfile: str + Filename to write urls to. + + """ + + astroconda_packages = {item['name'] for arch in ARCHITECTURE for item in get_repodata(arch).values()} + + with open(outfile, 'w+') as mdout: # Write header (main title) print(header, file=mdout) # Sort repositories inline alphabetically, because otherwise its seemingly random order - for repository in sorted(list(org.repositories()), key=lambda k: k.as_dict()['name']): - repo = repository.as_dict() - repo_name = repo['name'].upper() + for repository in sorted(list(org.iter_repos()), key=lambda k: k.name): - # Ignore repositories without release notes - releases = list(repository.releases()) - if not releases: + if not repository.name in astroconda_packages: continue - # Write repository title - print(title.format(name=repo_name), file=mdout) + release_url = repository.html_url + '/releases' - for note in repository.releases(): - # RST is EXTREMELY particular about newlines. - body = explode_newlines(note.body) - body = transform_headings(note.body) - # Write release notes structure - print(message.format(title=note.name, - date=note.published_at, - body=body), file=mdout) + if not any_releases(release_url): + continue + print(item.format(repository.name.upper(), release_url), file=mdout) + +#------------------------------------------------------------------------------- + +def generate_release_notes(): + """Main function to create the release_notes.rst pages + """ -if __name__ == '__main__': owner = 'spacetelescope' - tmpfile = 'release_notes.md' - outfile = 'release_notes.rst' + org = github3.organization(owner) - gh = login(token=read_token('TOKEN')) - org = gh.organization(owner) + outfile = os.path.join('source', 'release_notes.rst') try: - pull_release_notes(tmpfile, outfile) + pull_release_notes(org, outfile) except GitHubError as e: print(e) exit(1) - if os.path.exists(outfile): - os.unlink(outfile) +#------------------------------------------------------------------------------- - if os.path.exists(tmpfile): - pypandoc.convert(source=tmpfile, - to='rst', - outputfile=outfile) - os.unlink(tmpfile) +if __name__ == '__main__': + generate_release_notes() diff --git a/source/release_notes.rst b/source/release_notes.rst deleted file mode 100644 index 640aea7..0000000 --- a/source/release_notes.rst +++ /dev/null @@ -1,719 +0,0 @@ -Release Notes -============= - -ACSTOOLS --------- - -ACSTOOLS v2.0.4 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-07-28 18:50:50+00:00* - -``stsci.xxx``, ``scipy``, and ``scikit-image`` are now *optional* -packages. That is, ``acstools`` would install without them but affected -task(s) will complain if they are missing. - -ACSTOOLS v2.0.3 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-07-28 17:27:15+00:00* - -Re-organize package for a cleaner look. Executable scripts are now entry -points (for Windows compatibility). Version tagging is now controlled by -``relic`` submodule. Miscellaneous clean ups that should not affect -functionality. - -ACSTOOLS v2.0.2 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-06-03 20:42:49+00:00* - -Bug fix release with a fix for outdated skimage import in satellite -detection tool. - -References: #6 - -ACSTOOLS v2.0.1 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-04-25 15:51:47+00:00* - -Bug fix release with a fix for satellite detection algorithm. - -References: #3, #4, FootPrints Ticket 8763. - -ACSTOOLS v2.0.0 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-03-17 16:37:53+00:00* - -The following changes were made since the last release in April 2014: - -- Removed standalone ``PixCteCorr`` task. Use ACSCTE step from HSTCAL - instead to have parallelization and consistent results with the - CALACS pipeline. - -- Removed ``runastrodriz`` task (moved to ``drizzlepac``). - -- Added masking, post-flash processing, iterative cleaning, and - alternative statistics to ``acs_destripe`` task. Masking is - particularly useful for polarized data. - -- Fixed bugs in ``acs_destripe`` task, including proper error handling - and pixel weighting. - -- Added new ``acs_destripe_plus`` task, which is particularly useful - for destriping subarrays with ``acs_destripe`` in the middle of - CALACS processing (between ACSCCD and ACSCTE steps). - -- Added new ``satdet`` module, which can detect and flag satellite - trails. - -- Added Python 3 support (untested). - -CALCOS ------- - -v3.1.3 -~~~~~~ - -*None* - -Most of the additions to the code were to make calcos run under Python -3. - -v3.1 -~~~~ - -*None* - -Calcos 3.1 includes the following bug fixes and features: - -Allow flux extraction from 0 to 100% -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The latest version of calcos (3.0) throws an IndexError when the range -of the 2zxtab is 0 to 100%. Handle this case separately, always -integrating over the whole height of the extraction box to duplicate the -behavior of the boxcar - -option. - -Ignore DQ flag DQ\_GAIN\_SAG\_HOLE in background regions in profile alignment step -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -CALCOS uses DQ flags in the profile alignment step, omitting columns -that have a pixel DQ value that contains any value in SDQFLAGS (read -from science data header). The flagging of large areas with gain sag -holes after the move to LP3 has made it very difficult to find -background regions that won't cause whole columns be omitted from the -alignment step, possibly resulting in not enough good columns to do the -alignment correction. - -To alleviate this, pixels in the background region should be able to -test against a different DQ value (e.g. one without the -DQ\_GAIN\_SAG\_HOLE value) from pixels in the target region. - -Shift DQ data array the same as data array in TRCECORR and ALGNCORR steps of calcos -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The data arrays are shifted in the Y direction in the TRCECORR and -ALGNCORR steps of calcos, but the DQ arrays are not currently shifted. -The DQ arrays should be shifted in the same way that the data arrays are -in the ALGNCORR and TRCECORR steps. - -Fix up x1d output for boxcar option -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -There are a number of shortcomings in the x1d output of calcos if the -XTRCTALG keyword is set to 'BOXCAR'. - -1. The BACKGROUND\_PER\_ROW column is calculated incorrectly (total - background is divided by the wrong number of rows) and should be - renamed to "BACKGROUND PER PIXEL" - -2. The NUM\_EXTRACT\_ROWS column is calculated incorrectly (off by 1). - -3. The Y\_LOWER\_OUTER, Y\_LOWER\_INNER, Y\_UPPER\_INNER and - Y\_UPPER\_OUTER columns are calculated incorrectly - they are - constants whereas they should follow the linear relation using the - SLOPE and INTERCEPT from the reference file. - -Restore display format for x1d columns -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -In the 3.0 update to CALCOS, the display formats for the columns in the -.x1d output table were removed. They should be restored. - -CalCOS should print warnings for certain conditions of HOTSPOT calibration -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The new code to support hot spot flagging with the associated reference -file will need to output warnings to the user in a couple select cases. - -1. If a DQ bit in SDQOUTER is not also in SDQFLAGS, a warning should be - printed. - -2. If the PHAMIN/PHAMAX header keywords of the applied SPOTTAB are more - inclusive that what is applied to the data itself, a warning should - be printed. - -Change DQ array handling in x1d with hotspot treatment -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -With the CalCOS change to handle the hot spots and the SPOTTAB reference -file, the DQ array in the output x1d files will change slightly. - -1. The data quality value for each pixel should be given by: (DQ\_INNER) - \| (DQ\_OUTER & SDQOUTER) - -An additional check should be done to verify that the DQ\_WGT in the -x1dsum is still calculated correctly after this modification. - -Events in COS data should now be flagged using the SPOTTAB -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -To handle the hot spots in COS data, a new reference file is being -delivered (SPOTTAB) that will specify physical regions on the detector -that should be flagged if they occur during any given dataset. CalCOS -needs to flag each region given in a SPOTTAB if the time of the event -(given by START, STOP in each row) overlaps with any good-time-interval -(GTI) in the observation. - -Modules changed: - -Setup.cfg: -'''''''''' - -Version changed. - -lib/calcos/timetag.py -''''''''''''''''''''' - -Added code to shift the DQ arrays by the amount of the trace correction -and alignment correction before doppler blurring. Added code to pass the -good time intervals to modules that need it to check for active -hotspots. Added - -code to make sure that events that get shifted into the active area -after their doppler correction is applied don't cause the minimum and -maximum X shifts to be drastically wrong. - -lib/calcos/cosutil.py -''''''''''''''''''''' - -Added code to check SPOTTAB keywords, and to add active hotspots to the -DQ flags for events and the DQ arrays. Added code to shift the DQ values -of events by the amount in the trace and alignment corrections. - -lib/calcos/calcos.py -'''''''''''''''''''' - -Added code to enable use of SPOTTAB reference file - -lib/calcos/concurrent.py -'''''''''''''''''''''''' - -Updated interface to cosutil.updateDQArray - -lib/calcos/extract.py -''''''''''''''''''''' - -Renamed BACKGROUND\_PER\_ROW table column to BACKGROUND\_PER\_PIXEL. -Restored display formet to table columns. Treat DQ flags in the outer -regions if affected by a hotspot by setting DQ\_WGT to 0. DQ\_ALL column -is now the OR of the DQ flags of all pixels in the extraction region. -Fixed an indexing bug in how the extraction regions were specified. - -lib/calcos/getinfo.py -''''''''''''''''''''' - -Added SPOTTAB capability. - -lib/calcos/trace.py -''''''''''''''''''' - -Added code to make sure that gain sag holes don't affect the background -DQ values. - -lib/calcos/x1d.py -''''''''''''''''' - -Added code to pass brftab reference file to timetag.getWavecalOffsets so -that the Active Area can be determined at the time the offsets are -calculated. - -CRDS ----- - -Server-side code for opus-2016.1-4 -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*None* - -This release includes context pickling optimizations to address Isilon -file system performance issues. - -CUBE-TOOLS ----------- - -*2016-08-03 15:22:50+00:00* - -DRIZZLEPAC ----------- - -Public Release of v2.1.3 -~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-04-05 19:23:04+00:00* - -This version represents the same code, with a few additional -enhancements, as the code that was installed for operational calibration -of HST data as of 23 Feb 2016. This represents a major update to the -DrizzlePac software, and also the last version with significant new -features. Future releases will focus primarily on bug fixes that affect -operational use of this code. Full support for this package can be found -at http://drizzlepac.stsci.edu. - -A brief overview of the new features and major bug fixes found in this -version (relative to what was released as part of v1.1.16) includes: - -- Full Python 2.7 and 3.5 support - -- Built-in support for automatic mosaic creation - -- Tweakreg now aligns all images in a mosaic into a single undistorted - output frame even if some images do not overlap others in the mosaic - -- Improved sky matching - -- Produce seamless mosaics using new sky matching techniques. More - details can be found in an example where these techniques are - compared. - -- Support for the improved time-dependent ACS distortion model - -- Supports the new ACS distortion calibration: Only DrizzlePac 2.0 is - able to interpret and apply the latest ACS/WFC distortion reference - files - -- Support for alignment of data from different HST cameras - -- Specify separate source finding parameters for input and reference - images to optimize source detection from images taken with different - HST cameras. - -- Support for use of inclusion/exclusion regions in image alignment - -- Improved support for WFPC2 data - -- resolved problems processing WFPC2 data which had DGEOFILEs - specified. - -- now requires user to run 'updatewcs' task on WFPC2 data to enable - astrodrizzle and tweakreg to work with them seamlessly - -- **[API change]** Use of 'updatewcs' removed from TEAL interfaces - -- User and pipeline will need to run this task independently prior to - running astrodrizzle or tweakreg - -- Python scripts calling astrodrizzle and tweakreg can still set the - 'updatewcs' parameter and have it run as part of those tasks - (presumably, the user understands when this task will wipe out - previous updates in their own script) - -- **[API change]** The user interfaces to all 3 coordinate - transformation tasks now use 'coordfile' as the input file of - coordinates to transform. The use of 'coords' has been deprecated, - but still can be used if needed. However, use of 'coordfile' will - always override any input provided simultaneously with 'coords' - parameter. Help files have been updated to document this as clearly - as possible for users. - -- Now relies on astropy for WCS, coordinate specification and I/O - libraries - -- A full 6-parameter general linear fit can now be performed using - tweakreg, in addition to shift and rscale - -- WCS keywords updated by tweakreg will result in an undistorted output - frame with NO residual skew (as represented in the CD matrix - keywords) - -The full set of Release Notes can be found at -http://ssb.stsci.edu/doc/stsci\_python\_x/drizzlepac.doc/html/release\_v2\_0\_0\_notes.html. - -FITSBLENDER ------------ - -Public Release of v0.2.6 -~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-04-05 19:35:00+00:00* - -This version of fitsblender supports the release of drizzlepac v2.1.3 as -used in the operational HST calibration pipeline and archive as of 23 -Feb 2016. It primarily includes bug fixes; namely, - -- Fixed problem with random results from fitsblender by replacing use - of dict with OrderedDict. This problem resolves issues with which - image was interpreted as first and last when looking for values to - use to populate the combined header. - -- Default pipeline processing rules files for all instruments amended - to reset FLASHCUR header value to 'multi' instead of first. - -- Simple update to insure that any keyword deletion works cleanly with - astropy by trapping any KeyError? exceptions explicitly. - -- Replace use of pyfits with astropy.io.fits. - -- Now works as-is under Python 2.7 and Python 3.5 - -HSTCAL ------- - -HSTCAL v1.0.1 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-07-07 19:36:46+00:00* - -This release is to accommodate CALACS processing for new ACS subarrays -added by FSW change done in May 2016. Particularly, BLEVCORR is modified -to trim virtual overscans off the new subarrays (old subarrays do not -have virtual overscans). No changes are made for CALWF3 and CALSTIS. - -HSTCAL v1.0.0 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-03-17 17:46:33+00:00* - -The following changes were made since the last release in April 2014, -broken down by sub-components: - -General -^^^^^^^ - -- Fixed compilation warnings. - -WFC3 (v3.3) -^^^^^^^^^^^ - -- A new processing step, FLUXCORR, was added to the UVIS pipeline, and - is performed at the end of processing. It will scale the chip2 image - using the new PHTFLAM1 and PHTFLAM2 values in the IMPHTAB. New flat - fields for all filters, as well as a new IMPHTTAB have been delivered - by the team for this step to be completely implemented. - -- The CTE correction has been implemented for all full-frame UVIS data. - This is done in conjunction with a full run through of the pipeline - code without the CTE correction applied, such that both CTE corrected - and non-CTE corrected output files are saved. This correction is for - the same reasons as in ACS, but the CTE correction algorithm is - different; it is applied to the raw file instead of later in the - processing. Some sections of the CTE code support parallel processing - with OpenMP. The default for calwf3 is to use all available - processors. To restrict processing to 1 cpu use the flag -1 in the - call to calwf3.e The CTE processing is controlled with the PCTECORR - keyword. New CTE corrected output products will be produced at all - stages which involved changes to most of the controlling routines and - output trailers. See the team documentation for more complete - information on the updates. - -- In conjunction with the CTE correction, a standalone interface - ``wf3cte`` was created to perform just the CTE correction, similar to - ``wf32d`` etc. - -- Sink pixel detection is now performed in the UVIS pipeline for - full-frame images, using the SNKCFILE reference image, and the - science data DQ mask is updated with the detections. The reference - image has 2 extensions, each in the pre-overscan trimmed format. This - step is performed if DQICORR is PERFORM, and is done before BLEVCORR - while the science image is still untrimmed. - -- Some of the new reference files required new code to read them, - including the new format for the UVIS IMPHTTAB associated with the - FLUXCORR step - -- The default CRCORR behavior for IR SCAN data will now be set to OMIT - by default so that the resulting calibrated image is last read - - first read instead of the fit to the ramp. - -- All IR scan related keywords formerly in the SPT file will also be - present in the FLT file - -- For UVIS and IR, a copy of the CSMID keyword, formerly in the SPT - will also be in the FLT file, CSMID lists the channel select - mechanism ID. - -- bug fix: nrej initialized in ``wf3rej`` so that REJ\_RATE reported - consistently correct for the IR pipeline - -- bug fix: a wfc3 uvis association which specifies multiple products - wont finish processing and segfaults - -- An assortment of memory leaks were fixed - -- Explicit error added to report a non-WFC3 image used as input to the - pipeline - -- updated text in ``wf3rej`` to report that Astrodrizzle should be used - to align images instead of PyDrizzle since that’s how it’s advertised - to users - -- fixed SEGFAULT error in reference file checking when iref environment - variable not set by user, so can’t find file - -ACS -^^^ - -- Added support for 2K subarrays in PCTECORR. - -- ``acs2d.e`` reads calibration flags from image header instead of - command line. - -- Improved temporary file handling. - -- Improved error message if input image does not belong to ACS. - -- Added support for very long input list for ACSREJ. - -- Fixed memory leaks (non-critical). - -JWST\_VISIBILITY ----------------- - -*2016-08-01 19:12:06+00:00* - -The first tagged release of the tool for internal and external testing. -Target visibility plots from this tool should **always** be checked -against APT for consistency, as this tool does not account for all of -the same constraints (and is not intended to). - -PYRAF ------ - -Version 2.1.10.1 -~~~~~~~~~~~~~~~~ - -*2016-06-23 15:32:40+00:00* - -This is not a real release of PyRAF per-se, but it's first git/github -tag. - -PYSYNPHOT ---------- - -PySynphot v0.9.8.4 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-08-15 15:50:59+00:00* - -Fixed a bug of inconsistent ``waveset`` definitions across different -objects. Cleaned up setup files. Now uses ``relic`` submodule for -version tagging. - -PySynphot v0.9.8.3 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-07-07 21:09:08+00:00* - -Moved ``data``, ``test``, and ``src`` directories one-level down for -AstroConda. Minor documentation related updates. Typical users should -not see significant changes between this release and the previous -release of 0.9.8.2. - -PySynphot v0.9.8.2 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-03-17 17:20:03+00:00* - -The following changes were made since the last PyPi release (v0.9.7) in -October 19, 2015: - -- Updated spectra data including ACS ``wavecat`` and Vega reference - spectrum. - -- Replaced PyFITS dependency with ``astropy.io.fits``. - -- Added a lot of documentation and tutorials. - -- Bug fixes. - -- Python 3 support (untested). - -REFTOOLS --------- - -REFTOOLS v1.7.3 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-08-08 18:17:10+00:00* - -Fix AstroConda build by making TEAL import in ``tdspysyn`` completely -optional. - -REFTOOLS v1.7.2 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-08-02 15:30:44+00:00* - -Reorganized and cleaned up package. Updated documentation. Marked some -tests as expected failures. Overall, none of these changes should affect -end-user. - -REFTOOLS v1.7.1 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-03-17 16:55:15+00:00* - -The following changes were made since the last release in April 2014: - -- Added ``interpretdq`` module to interpret individual DQ flags from DQ - array. - -- Updated ``mkimphttab`` to handle WFC3 photometry keywords. - -- Replaced old ``stsci.*`` dependencies with SciPy. - -- Added Python 3 support (untested). - -SPECVIEW --------- - -Pre-release for May2015 JWST DA User Training -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2015-04-28 15:44:58+00:00* - -SPECVIZ -------- - -v0.2.1rc5 -~~~~~~~~~ - -*2016-07-19 13:20:03+00:00* - -Same as RC4, except we fixed ``ConfigParser`` compability with Python 3. - -v0.2.1rc4 -~~~~~~~~~ - -*2016-07-12 18:05:38+00:00* - -This release incorporates the specutils package, replacing the -previously used base spectrum object with the specutils object. - -v0.2.0rc3 -~~~~~~~~~ - -*2016-06-20 23:44:13+00:00* - -This release contains fixes and usability improvements from our first -round of internal testing. Its main priorities include: - -1. Remove dependency on Qt Creator - -2. Reincorporate all our tools as plugins - -It introduces a new plugin architecture for user-created extensions. - -v0.1.2rc3 -~~~~~~~~~ - -*2016-05-18 16:19:40+00:00* - -Minor improvements to: - -- unit behaviors - -- modelling behaviors - -- updated installation documentation - -v0.1.1rc3 -~~~~~~~~~ - -*2016-04-20 15:50:23+00:00* - -Minor bug fixes. - -v0.1.0rc3 -~~~~~~~~~ - -*2016-03-17 19:14:04+00:00* - -Feature complete (for this release) version of SpecViz. However, -usability bugs and minor tweaks are still to be expected. - -v0.1.0rc2 -~~~~~~~~~ - -*2016-02-15 17:55:20+00:00* - -- Installation improvements - -- Model fitting - -- ASCII table ingestion implemented - -- Bug fixes - -STGINGA -------- - -stginga 0.1.2 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-07-12 20:30:51+00:00* - -Added background mean calculation to ``SNRCalc`` local plugin. Removed -``unicode_literals`` from imports. - -stginga 0.1.1 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-07-07 18:40:22+00:00* - -This is a bug fix release that fixed ConfigParser error in Python 3. -Also updated astropy\_helpers to v1.2. - -First stginga release -~~~~~~~~~~~~~~~~~~~~~ - -*2016-06-21 21:23:26+00:00* - -Mostly working. Why not? - -STSCI.TOOLS ------------ - -stsci.tools v3.4.1 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-03-17 17:08:24+00:00* - -The following changes were made since the last release in October 19, -2015: - -- New ``convertlog`` task, which converts ASCII trailer files into FITS - files to replace use of IRAF ``stwfits`` in HST pipeline operations. - -- Bug fixes. - -- Python 3 support. - -WFPC2TOOLS ----------- - -WFPC2TOOLS v1.0.3 Release Notes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -*2016-03-17 16:44:13+00:00* - -The following changes were made since the last release in April 2014: - -- Replaced old ``stsci.*`` dependencies with SciPy. - -- Added Python 3 support (untested). diff --git a/source/rtd-pip-requirements.txt b/source/rtd-pip-requirements.txt new file mode 100644 index 0000000..f4f11b4 --- /dev/null +++ b/source/rtd-pip-requirements.txt @@ -0,0 +1 @@ +github3.py |