AmpForm 0.8.1
Release 0.8.1
See all documentation for this version here.
📝 Documentation
Generalized the procedure to create plot widgets for SymPy expressions (#31)
- Slider parameters are extracted from the remaining free symbols of an (amplitude) expression automatically. That makes it easier to plot any other amplitude model -- it's only needed to provide a domain for the sliders.
- Labels for the sliders are now the names of the (latex) symbols they represent
- The real and imaginary plot have been removed, leaving only the intensity plot and the Argand plot
- The interactive notebook can now be run independently
Extracted interactive plotting to symplot mini-package (#38)
The procedure illustrated in Inspect model interactively has been extracted to a 'mini-module' symplot
. For now, it's only available to the Jupyter notebooks and to Sphinx, but if successful, it could be hosted as a separate package, so that it can also be used for the PWA pages.
Added interactive notebook for inspect K-matrix behavior (#39)
Illustrate difference between K-matrix and sum of Breit-Wigners with symplot
from #38. See this notebook/page.
Added references to dependency pinning in installation instructions (580a7f2)
Added cSpell badge (4f12285)
Updated links to related projects on RTD (b7871b7)
RTD namespace "pwa" has been disabled to shorten URLs.
Documentation now renders better on mobile (a4ef501)
See https://github.com/executablebooks/sphinx-book-theme/blob/master/CHANGELOG.md#v0042v010
🔨 Internal maintenance
Adapt tests to official qrules release (#29)
Automated changes by create-pull-request GitHub action
Remove remnants from expertsystem/qrules (#34)
Remove things that are only useful to qrules
, such as jsonschema
, pydot
, constraints
, and sphobjinv
(for constraints
).
Clean up pylint configuration (#35)
- Remove built-ins check (flake8-builtins handles this)
- Sort pylintrc sections
- Use
good-names-rgxs
- Use error names instead of error codes
- Move some of the ignores inline
Optional dependencies collection "extras" has been renamed to "all" (0f676c8)
Makes a bit more sense, i.e.:
pip install ampform[all]
instead of
pip install ampform[extras]
🖱️ Developer Experience
Moved requirements back to setup.cfg (#27)
With the release of pip-tools
v6.1.0, pip-compile
now correctly handles extras_require
. This allows for a big clean-up of the set-up introduced by ComPWA/expertsystem#412.
Advantages:
- Easier for the user and developer! Just run:
pip install -e .[dev]
to get started developing,pip install -e .[dev] -U
to try out upgrades, andpip install -c .constraints/py3.8.txt -e .[dev] -U
in case you exactly want to reproduce the dependencies for some commit. - The upgrade jobs become significantly faster: bit over 1min versus almost 3min
- All requirements, their version domains, and the dependencies between each of the requirement sections can be nicely overseen and maintained within
setup.cfg
- Git diffs for pull requests that affect dependencies become easier to oversee
- Less complexity and fewer changes per commit
Bug fix: define testpaths in pytest.ini (#28)
Since 35aa838, it is become impossible to run tests through VSCode. Defining testpaths fixes this. In addition, it removes the last 'non-tox' section from the tox.ini file (see 81402eb).
See also ComPWA/qrules#42
Added GitHub PR template (#32)
GitPod now automatically installs VSCode extensions (#32)
Added radon complexity check (#33)
Cleaned up pylint configuration (#35)
- Remove built-ins check (flake8-builtins handles this)
- Sort pylintrc sections
- Use
good-names-rgxs
- Use error names instead of error codes
- Move some of the ignores inline
Added more flake8 plugins and fixed identified issues (#36)
Removed nbstripout from format requirements and added as pre-commit hook (#37)
Pre-commit hooks should only be local if the corresponding tool can also be used through other applications (e.g. IDEs or Jupyter Lab), so that their versions are in sync. And nbstripout
can only be used through the terminal, so is best enforced through pre-commit only.
Extracted .mypy.ini file from setup.cfg (47f0004)
This cleans up the setup.cfg file so that it only contains info a the set-up of the package
Extracted config files for dev tools from tox.ini (81402eb)
Better to only keep tox job definitions in the tox.ini file. Note that config files are only extracted if their respective tools supports a config file name that starts with a dot
Run black formatting in documentation (324d684)
Doctests are now verified with pytest instead of Sphinx (35aa838)
This is much faster, allows for testing coverage, and is also easier to run locally.
Renamed CI workflows to pytest and pre-commit (0da2a84)
This works better with the CI badges