Skip to content

Commit

Permalink
Merge pull request #431 from spacetelescope/release-0.20.0
Browse files Browse the repository at this point in the history
Release 0.20.0 [master]
  • Loading branch information
Lauren Chambers authored Jun 5, 2019
2 parents 0edc027 + 275f302 commit 2ae74c5
Show file tree
Hide file tree
Showing 54 changed files with 1,405 additions and 815 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,4 @@ docs/source/api/
*.pytest_cache
htmlcov/
*.sqlite3
jwql/website/static/*.csv
2 changes: 1 addition & 1 deletion .pep8speaks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ message: # Customize the comment made by the bot
opened: # Messages when a new PR is submitted
header: "Hello @{name}, Thank you for submitting the Pull Request !"
# The keyword {name} is converted into the author's username
footer: "If you have not done so, please consult the [`jwql` Style Guide](https://github.com/spacetelescope/jwql/blob/master/style_guide/style_guide.md)"
footer: "If you have not done so, please consult the [`jwql` Style Guide](https://github.com/spacetelescope/jwql/blob/master/style_guide/README.md)"
# The messages can be written as they would over GitHub
updated: # Messages when new commits are added to the PR
header: "Hello @{name}, Thank you for updating !"
Expand Down
41 changes: 40 additions & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,42 @@
0.20.0 (2019-06-05)
===================

New Features
------------

Project & API Documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Updated the notebook exemplifying how to perform an engineering database (EDB) telemetry query.
- Updated the README for the ``style_guide`` directory.

Web Application
~~~~~~~~~~~~~~~

- Added form on preview image pages to allow users to submit image anomalies.
- Added buttons for users to download the results of EDB telemetry queries as CSV files.
- Enabled users to search for or navigate to program numbers without requiring leading zeros (i.e. "756" is now treated equivalently to "00756").
- Enabled authentication for EDB queries via the web login (rather than requiring authentication information to be present in the configuration file).
- Added custom 404 pages.
- Added adaptive redirect feature so that users are not sent back to the homepage after login.
- Added more descriptive errors if a user tries to run the web application without filling out the proper fields in the configuration file.

``jwql`` Repository
~~~~~~~~~~~~~~~~~~~

- Replaced all EDB interface code within ``jwql`` with the new ``jwedb`` `package<https://github.com/spacetelescope/jwst-dms-edb>`_.
- Fully incorporated Python 3.5 testing into the Jenkins test suite.

Bug Fixes
---------

Web Application
~~~~~~~~~~~~~~~

- Fixed bug in which dashboard page would throw an error.
- Fixed incorrect dashboard axis labels.


0.19.0 (2019-04-19)
===================

Expand All @@ -8,7 +47,7 @@ Project & API Documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Added guidelines to the style guide for logging the execution of instrument monitors
- Added example useage of logging in the ``example.py`` module
- Added example usage of logging in the ``example.py`` module

Web Application
~~~~~~~~~~~~~~~
Expand Down
47 changes: 30 additions & 17 deletions Jenkinsfile
Original file line number Diff line number Diff line change
@@ -1,26 +1,39 @@
// Obtain files from source control system.
if (utils.scm_checkout()) return

matrix_os = ["linux-stable"]
matrix_python = ["3.5", "3.6"]
matrix = []

withCredentials([string(
credentialsId: 'jwql-codecov',
variable: 'codecov_token')]) {

// Define each build configuration, copying and overriding values as necessary.
bc0 = new BuildConfig()
bc0.nodetype = "linux-stable"
bc0.name = "debug"
bc0.build_cmds = [
"conda env update --file=environment.yml",
"pip install codecov pytest-cov",
"with_env -n jwql python setup.py install"]
bc0.test_cmds = [
"with_env -n jwql pytest -s --junitxml=results.xml --cov=./jwql/ --cov-report xml",
"codecov --token=${codecov_token}"]

// bc1 = utils.copy(bc0)
// bc1.build_cmds[0] = "conda install -q -y python=3.5"
for (os in matrix_os) {
for (python_ver in matrix_python) {
// Define each build configuration, copying and overriding values as necessary.
env_py = "_python_${python_ver}".replace(".", "_")
bc = new BuildConfig()
bc.nodetype = os
bc.name = "debug-${os}-${env_py}"
bc.conda_packages = ["python=${python_ver}"]
bc.build_cmds = [
"conda env update --file=environment${env_py}.yml",
"pip install codecov pytest-cov",
"python setup.py install"]
bc.test_cmds = [
"pytest -s --junitxml=results.xml --cov=./jwql/ --cov-report=xml:coverage.xml",
"sed -i 's/file=\"[^\"]*\"//g;s/line=\"[^\"]*\"//g;s/skips=\"[^\"]*\"//g' results.xml",
"codecov --token=${codecov_token}",
"mkdir -v reports",
"mv -v coverage.xml reports/coverage.xml"]
matrix += bc
}
}
// bc1 = utils.copy(bc0)
// bc1.build_cmds[0] = "conda install -q -y python=3.5"

// Iterate over configurations that define the (distibuted) build matrix.
// Spawn a host of the given nodetype for each combination and run in parallel.
utils.run([bc0])
// Iterate over configurations that define the (distibuted) build matrix.
// Spawn a host of the given nodetype for each combination and run in parallel.
utils.run(matrix)
}
5 changes: 3 additions & 2 deletions JenkinsfileRT
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ if (utils.scm_checkout()) return

// Define each build configuration, copying and overriding values as necessary.
bc0 = new BuildConfig()
bc0.nodetype = "linux-stable"
bc0.nodetype = "linux"
bc0.name = "debug"
bc0.build_cmds = ["conda env update --file=environment.yml",
"with_env -n jwql python setup.py install"]
Expand All @@ -19,4 +19,5 @@ bc0.failedFailureThresh = 1

// Iterate over configurations that define the (distibuted) build matrix.
// Spawn a host of the given nodetype for each combination and run in parallel.
utils.run([bc0])
utils.run([bc0])

3 changes: 2 additions & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
include README.md
include LICENSE
include environment.yml
include environment_python_3_5.yml
include environment_python_3_6.yml
include setup.py

recursive-include notebooks *
Expand Down
11 changes: 6 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
[![Build Status](https://ssbjenkins.stsci.edu/job/STScI/job/jwql/job/master/badge/icon)](https://ssbjenkins.stsci.edu/job/STScI/job/jwql/job/master/)
[![Documentation Status](https://readthedocs.org/projects/jwql/badge/?version=latest)](https://jwql.readthedocs.io/en/latest/?badge=latest)
[![STScI](https://img.shields.io/badge/powered%20by-STScI-blue.svg?colorA=707170&colorB=3e8ddd&style=flat)](http://www.stsci.edu)
[![codecov](https://codecov.io/gh/spacetelescope/jwql/branch/develop/graph/badge.svg)](https://codecov.io/gh/spacetelescope/jwql)


The JWST Quicklook Application (`JWQL`) is a database-driven web application and automation framework for use by the JWST instrument teams to monitor and trend the health, stability, and performance of the JWST instruments. The system is comprised of the following:
Expand Down Expand Up @@ -57,22 +58,22 @@ instead, and then proceed as stated.

### Environment Installation

Following the download of the `jwql` repository, contributors can then install the `jwql` `conda` environment via the `environment.yml` file, which contains all of the dependencies for the project. First, one should ensure that their version of `conda` is up to date:
Following the download of the `jwql` repository, contributors can then install the `jwql` `conda` environment via the environment yaml file, which contains all of the dependencies for the project. First, ensure that your version of `conda` is up to date:

```
conda update conda
```

Next, one should activate the `base` environment:
Next, activate the `base` environment:

```
source activate base
```

Lastly, one can create the `jwql` environment via the `environment.yml` file:
Lastly, create the `jwql` environment with either Python 3.5 or 3.6, via the `environment_python_3_5.yml` or `environment_python_3_6.yml` file, respectively. We recommend installing with the 3.6 version:

```
conda env create -f environment.yml
conda env create -f environment_python_3_6.yml
```

### Package Installation
Expand All @@ -91,7 +92,7 @@ Much of the `jwql` software depends on the existence of a `config.json` file wit

## Software Contributions

There are two current pages to review before you begin contributing to the `jwql` development. The first is our [style guide](https://github.com/spacetelescope/jwql/blob/master/style_guide/style_guide.md) and the second is our [suggested git workflow page](https://github.com/spacetelescope/jwql/wiki/git-&-GitHub-workflow-for-contributing), which contains an in-depth explanation of the workflow.
There are two current pages to review before you begin contributing to the `jwql` development. The first is our [style guide](https://github.com/spacetelescope/jwql/blob/master/style_guide/README.md) and the second is our [suggested git workflow page](https://github.com/spacetelescope/jwql/wiki/git-&-GitHub-workflow-for-contributing), which contains an in-depth explanation of the workflow.

Contributors are also encouraged to check out the [Checklist for Contributors Guide](https://github.com/spacetelescope/jwql/wiki/Checklist-for-Contributors-and-Reviewers-of-Pull-Requests) to ensure the pull request contains all of the necessary changes.

Expand Down
18 changes: 11 additions & 7 deletions codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ codecov:
coverage:
precision: 2
round: down
range: "70...100"
range: "0...75"

status:
project: yes
patch: yes
changes: no
project: off
patch: off
changes: off

parsers:
gcov:
Expand All @@ -21,11 +21,15 @@ parsers:
macro: no

comment:
layout: "header, diff"
layout: "header, diff, files"
behavior: default
require_changes: no

ignore:
- "jwql/website/"
- "jwql/database/"
- "*__init__.py*"
- "jwql/instrument_monitors/miri_monitors/data_trending/plots/"
- "jwql/instrument_monitors/nirspec_monitors/data_trending/plots/"
- "*__init__.py*"
- "**/*.html"
- "**/*.js"
- "**/*.css"
6 changes: 0 additions & 6 deletions docs/source/edb.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,6 @@
edb
***

edb_interface.py
----------------
.. automodule:: jwql.edb.edb_interface
:members:
:undoc-members:

engineering_database.py
-----------------------
.. automodule:: jwql.edb.engineering_database
Expand Down
8 changes: 7 additions & 1 deletion docs/source/tests.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ test_dark_monitor.py

test_edb_interface.py
---------------------
.. automodule:: jwql.tests.test_edb_interface
.. automodule:: jwql.tests.test_edb
:members:
:undoc-members:

Expand All @@ -38,6 +38,12 @@ test_loading_times.py
:members:
:undoc-members:

test_logging_functions.py
-------------------------
.. automodule:: jwql.tests.test_logging_functions
:members:
:undoc-members:

test_monitor_mast.py
--------------------
.. automodule:: jwql.tests.test_monitor_mast
Expand Down
35 changes: 35 additions & 0 deletions environment_python_3_5.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
channels:
- http://ssb.stsci.edu/astroconda-dev
- defaults
dependencies:
- asdf=2.3.0
- astropy>=3.1.2
- astroquery=0.3.9
- bokeh=0.13.0
- crds>=7.2.7
- django=2.1.1
- inflection=0.3.1
- ipython=6.5.0
- jinja2=2.10
- jwst=0.13.0
- matplotlib=3.0.0
- numpy=1.15.2
- numpydoc=0.8.0
- pandas=0.23.4
- postgresql=9.6.6
- psycopg2=2.7.5
- python=3.5.6
- python-dateutil=2.7.3
- pytest=3.8.1
- pytest-cov=2.6.0
- pytest-html=1.19.0
- sphinx=2.0.1
- sphinx_rtd_theme=0.1.9
- sqlalchemy=1.2.11
- stsci_rtd_theme=0.0.2
- pip:
- authlib==0.10
- codecov==2.0.15
- jwedb>=0.0.3
- pysiaf==0.2.5
- sphinx-automodapi==0.10
15 changes: 8 additions & 7 deletions environment.yml → environment_python_3_6.yml
Original file line number Diff line number Diff line change
@@ -1,34 +1,35 @@
name: jwql
channels:
- http://ssb.stsci.edu/astroconda-dev
- defaults
dependencies:
- asdf=2.3.1
- astropy>=3.1.2
- astroquery=0.3.9
- bokeh=1.1.0
- bokeh=1.2.0
- crds>=7.2.7
- django=2.1.7
- ipython=7.3.0
- inflection=0.3.1
- ipython=7.5.0
- jinja2=2.10
- jwst=0.13.1
- matplotlib=3.0.2
- numpy=1.16.2
- numpydoc=0.8.0
- numpy=1.16.4
- numpydoc=0.9.0
- pandas=0.24.2
- postgresql=9.6.6
- psycopg2=2.7.5
- python=3.6.4
- python-dateutil=2.7.5
- pytest=4.4.0
- pytest=4.5.0
- pytest-cov=2.6.1
- pytest-html=1.19.0
- sphinx=1.8.5
- sphinx=2.0.1
- sphinx_rtd_theme=0.1.9
- sqlalchemy=1.3.3
- stsci_rtd_theme=0.0.2
- pip:
- authlib==0.10
- codecov==2.0.15
- jwedb>=0.0.3
- pysiaf==0.2.5
- sphinx-automodapi==0.10
Loading

0 comments on commit 2ae74c5

Please sign in to comment.