Skip to content

Commit

Permalink
Merge pull request #2227 from Ericgig/qutip-5.0.0a2
Browse files Browse the repository at this point in the history
Prepare v5.0.0a2
  • Loading branch information
Ericgig committed Sep 7, 2023
2 parents b51c6d0 + dfc2875 commit 41eccc9
Show file tree
Hide file tree
Showing 243 changed files with 14,114 additions and 21,050 deletions.
4 changes: 4 additions & 0 deletions .coveragerc
Expand Up @@ -3,8 +3,12 @@ source = qutip
omit =
# QuTiP test files
*/qutip/tests/*
# Tool for tests
*/qutip/solver/sode/_noise.py

[report]
exclude_lines =
# Skip Python wrappers which help load in C extension modules.
__bootstrap__()
# Skip empty method that are never meant to be used.
raise NotImplementedError
4 changes: 2 additions & 2 deletions .github/pull_request_template.md
Expand Up @@ -5,8 +5,8 @@ Thank you for contributing to QuTiP! Please make sure you have finished the foll
- [ ] Contributions to qutip should follow the [pep8 style](https://www.python.org/dev/peps/pep-0008/).
You can use [pycodestyle](http://pycodestyle.pycqa.org/en/latest/index.html) to check your code automatically
- [ ] Please add tests to cover your changes if applicable.
- [ ] If the behavior of the code has changed or new feature has been added, please also update the documentation in the `doc` folder, and the [notebook](https://github.com/qutip/qutip-notebooks). Feel free to ask if you are not sure.
- [ ] Include the changelog in a file named: `doc/changes/<PR number>.<type>` 'type' can be one of the following: feature, bugfix, doc, removal, misc, or deprecation (see [here](http://qutip.org/docs/latest/development/contributing.html#Changelog%20Generation) for more information).
- [ ] If the behavior of the code has changed or new feature has been added, please also update the documentation in the `doc` folder, and the [notebook](https://github.com/qutip/qutip-tutorials). Feel free to ask if you are not sure.
- [ ] Include the changelog in a file named: `doc/changes/<PR number>.<type>` 'type' can be one of the following: feature, bugfix, doc, removal, misc, or deprecation (see [here](http://qutip.org/docs/latest/development/contributing.html#changelog-generation) for more information).

Delete this checklist after you have completed all the tasks. If you have not finished them all, you can also open a [Draft Pull Request](https://github.blog/2019-02-14-introducing-draft-pull-requests/) to let the others know this on-going work and keep this checklist in the PR description.

Expand Down
33 changes: 11 additions & 22 deletions .github/workflows/tests.yml
Expand Up @@ -51,6 +51,7 @@ jobs:
numpy-requirement: ">=1.20,<1.21"
scipy-requirement: ">=1.5,<1.6"
condaforge: 1
oldcython: 1

# No MKL runs. MKL is now the default for conda installations, but
# not necessarily for pip.
Expand All @@ -69,38 +70,24 @@ jobs:

# Python 3.10 and numpy 1.22
# Use conda-forge to provide numpy 1.22
# Ignore ImportWarning because pyximport registered an importer
# PyxImporter that does not have a find_spec method and this raises
# a warning on Python 3.10
# Ignore DeprecationWarnings raised by cvxpy importing scipy.sparse.X
# under SciPy 1.8.0+.
# Ignore DeprecationWarnings raised by versions of
# setuptools >= 65.0.0 during pyximport imports This can be removed
# once https://github.com/cython/cython/issues/4985
# is fixed and released.
- case-name: Python 3.10
os: ubuntu-latest
python-version: "3.10"
condaforge: 1
pytest-extra-options: "-W ignore::ImportWarning -W ignore::DeprecationWarning:cvxpy.interface.scipy_wrapper -W ignore:Absolute:DeprecationWarning"
oldcython: 1

# Python 3.11 and latest numpy
# Use conda-forge to provide Python 3.11 and latest numpy
# Ignore ImportWarning because pyximport registered an importer
# PyxImporter that does not have a find_spec method and this raises
# a warning on Python 3.10
# Ignore DeprecationWarnings raised by cvxpy importing scipy.sparse.X
# under SciPy 1.8.0+.
# Ignore DeprecationWarnings raised by versions of
# setuptools >= 65.0.0 during pyximport imports This can be removed
# once https://github.com/cython/cython/issues/4985
# is fixed and released.
# Ignore deprecation of the cgi module in Python 3.11 that is
# still imported by Cython.Tempita. This was addressed in
# https://github.com/cython/cython/pull/5128 but not backported
# to any currently released version.
- case-name: Python 3.11
os: ubuntu-latest
python-version: "3.11"
condaforge: 1
conda-extra-pkgs: "suitesparse" # for compiling cvxopt
pytest-extra-options: "-W ignore::ImportWarning -W ignore::DeprecationWarning:cvxpy.interface.scipy_wrapper -W ignore:Absolute:DeprecationWarning -W ignore::DeprecationWarning:Cython.Tempita"
pytest-extra-options: "-W ignore::DeprecationWarning:Cython.Tempita"

# Windows. Once all tests pass without special options needed, this
# can be moved to the main os list in the test matrix. All the tests
Expand All @@ -111,7 +98,6 @@ jobs:
- case-name: Windows Latest
os: windows-latest
python-version: "3.10"
pytest-extra-options: "-W ignore::ImportWarning -k 'not (test_correlation or test_interpolate or test_mcsolve)'"

steps:
- uses: actions/checkout@v3
Expand All @@ -131,6 +117,9 @@ jobs:
if [[ -z "${{ matrix.nocython }}" ]]; then
QUTIP_TARGET="$QUTIP_TARGET,runtime_compilation"
fi
if [[ "${{ matrix.oldcython }}" ]]; then
pip install cython==0.29.36
fi
export CI_QUTIP_WITH_OPENMP=${{ matrix.openmp }}
if [[ -z "${{ matrix.nomkl }}" ]]; then
conda install blas=*=mkl "numpy${{ matrix.numpy-requirement }}" "scipy${{ matrix.scipy-requirement }}"
Expand Down Expand Up @@ -220,7 +209,7 @@ jobs:
python -m pip install towncrier
- name: Verify Towncrier entry added
if: False # github.event_name == 'pull_request'
if: github.event_name == 'pull_request'
env:
BASE_BRANCH: ${{ github.base_ref }}
run: |
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -29,6 +29,7 @@ rhs*.pyx

qutip/cy/*.c
*.cpp
!qutip/core/data/src/*.cpp
*.dat
qutip/core/*.h

Expand Down
20 changes: 20 additions & 0 deletions .readthedocs.yaml
@@ -0,0 +1,20 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

version: 2

formats:
- pdf

build:
os: ubuntu-22.04
tools:
python: "mambaforge-4.10"

conda:
environment: doc/rtd-environment.yml

sphinx:
configuration: doc/conf.py
fail_on_warning: true
22 changes: 19 additions & 3 deletions README.md
Expand Up @@ -18,7 +18,7 @@ and [J. R. Johansson](https://github.com/jrjohansson)
[![Build Status](https://github.com/qutip/qutip/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/qutip/qutip/actions/workflows/tests.yml)
[![Coverage Status](https://img.shields.io/coveralls/qutip/qutip.svg?logo=Coveralls)](https://coveralls.io/r/qutip/qutip)
[![Maintainability](https://api.codeclimate.com/v1/badges/df502674f1dfa1f1b67a/maintainability)](https://codeclimate.com/github/qutip/qutip/maintainability)
[![license](https://img.shields.io/badge/license-New%20BSD-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![license](https://img.shields.io/badge/license-New%20BSD-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![PyPi Downloads](https://img.shields.io/pypi/dm/qutip?label=downloads%20%7C%20pip&logo=PyPI)](https://pypi.org/project/qutip)
[![Conda-Forge Downloads](https://img.shields.io/conda/dn/conda-forge/qutip?label=downloads%20%7C%20conda&logo=Conda-Forge)](https://anaconda.org/conda-forge/qutip)

Expand Down Expand Up @@ -72,15 +72,31 @@ All back releases are also available for download in the [releases section of th
For the most complete set of release notes and changelogs for historic versions, see the [changelog](https://qutip.org/docs/latest/changelog.html) section in the documentation.


The pre-release of QuTiP 5.0 is available on PyPI and can be installed using pip:

```bash
pip install --pre qutip
```

This version breaks compatibility with QuTiP 4.7 in many small ways.
Please see the [changelog](https://github.com/qutip/qutip/blob/master/doc/changelog.rst) for a list of changes, new features and deprecations.
This version should be fully working. If you find any bugs, confusing documentation or missing features, please create a GitHub issue.


Documentation
-------------

[![Documentation Status - Latest](https://readthedocs.org/projects/qutip/badge/?version=latest)](https://qutip.readthedocs.io/en/latest/?badge=latest)

The documentation for the latest [stable release](https://qutip.readthedocs.io/en/latest/) and the [master](https://qutip.readthedocs.io/en/master/) branch is available for reading on Read The Docs.

The documentation for official releases, in HTML and PDF formats, can be found in the [documentation section of the QuTiP website](https://qutip.org/documentation.html).

The latest development documentation is available in this repository in the `doc` folder.

A [selection of demonstration notebooks is available](https://qutip.org/tutorials.html), which demonstrate some of the many features of QuTiP.
These are stored in the [qutip/qutip-notebooks repository](https://github.com/qutip/qutip-notebooks) here on GitHub.
You can run the notebooks online using myBinder: [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/qutip/qutip-notebooks/master?filepath=index.ipynb)
These are stored in the [qutip/qutip-tutorials repository](https://github.com/qutip/qutip-tutorials) here on GitHub.


Contribute
----------
Expand Down
2 changes: 1 addition & 1 deletion VERSION
@@ -1 +1 @@
5.0.0a1
5.0.0a2
1 change: 0 additions & 1 deletion doc/QuTiP_tree_plot/qutip-structure.py
Expand Up @@ -47,7 +47,6 @@
# States
("#007143", {
"states", "continuous_variables", "qstate", "random_objects",
"three_level_atom",
}),
# QIP
("#36d695", {"measurement"}),
Expand Down

0 comments on commit 41eccc9

Please sign in to comment.