|
1 | 1 | Release Notes |
2 | 2 | ============= |
3 | 3 |
|
| 4 | +0.3.0 (February 17, 2025) |
| 5 | +------------------------- |
| 6 | + |
| 7 | +What's New |
| 8 | +^^^^^^^^^^ |
| 9 | + |
| 10 | +CLI |
| 11 | +~~~ |
| 12 | +* Added ``--workers`` option to the CLI for running multiple morphs in parallel. |
| 13 | +* Renamed ``--ramp-in`` and ``--ramp-out`` as ``--ease-in`` and ``--ease-out``. |
| 14 | +* Added ``--ease`` option to the CLI, which is shorthand for ``--ease-in --ease-out``. |
| 15 | + |
| 16 | +Documentation |
| 17 | +~~~~~~~~~~~~~ |
| 18 | +* Added :doc:`tutorials/index` page to the documentation. |
| 19 | +* Added :doc:`tutorials/shape-creation` tutorial. |
| 20 | +* Added section to the documentation with ideas of how to use :ref:`classroom ideas`. |
| 21 | +* Updated contribution instructions in :doc:`tutorials/custom-datasets` tutorial. |
| 22 | +* Included reference to `article on the creation of Data Morph |
| 23 | + <https://stefaniemolin.com/articles/data-science/introducing-data-morph/>`_ |
| 24 | + in the documentation header. |
| 25 | +* Included reference to `Data Morph: A Cautionary Tale of Summary Statistics |
| 26 | + <https://stefaniemolin.com/data-morph-talk/>`_ |
| 27 | + (conference talk) in the documentation header. |
| 28 | +* Added `contributing guidelines <https://github.com/stefmolin/data-morph/blob/main/CONTRIBUTING.md>`_ |
| 29 | + and `code of conduct <https://github.com/stefmolin/data-morph/blob/main/CODE_OF_CONDUCT.md>`_. |
| 30 | +* Configured canonical URL. |
| 31 | + |
| 32 | +Morphing |
| 33 | +~~~~~~~~ |
| 34 | +* Reworked GIF creation logic to write only one PNG for distinct frames in the |
| 35 | + animation and use frequency counts to determine frame duration for speed |
| 36 | + improvements and less I/O. |
| 37 | +* Added three new datasets: soccer, pi, and gorilla. See the :class:`.DataLoader` for visuals. |
| 38 | +* Added four new shapes: :class:`.Club`, :class:`.FigureEight`, :class:`.Spade`, |
| 39 | + and :class:`.Spiral`. |
| 40 | +* Refactored some shape logic to use more ``numpy`` for speed improvements. |
| 41 | +* Added ``center`` property to :class:`.Interval` and :class:`.BoundingBox` to simplify shape calculations. |
| 42 | +* Made it possible to unpack the bounds from the :class:`.BoundingBox`. |
| 43 | +* Switched from ``tqdm`` to progress bars powered by ``rich``. |
| 44 | +* Renamed the ``ramp_in`` and ``ramp_out`` arguments to :meth:`.DataMorpher.morph` |
| 45 | + as ``ease_in`` and ``ease_out``. |
| 46 | +* Added :meth:`.Shape.get_name` method and :attr:`.Shape.name` attribute to replace |
| 47 | + ``__str__()`` shape naming logic, which removed some redundancies in |
| 48 | + :class:`.ShapeFactory`. |
| 49 | +* Refactored the shape code into separate modules per shape. |
| 50 | +* Renamed ``get_values()`` as :func:`.get_summary_statistics`. |
| 51 | +* Improved variable names in several spots for more readable code. |
| 52 | + |
| 53 | +Plotting |
| 54 | +~~~~~~~~ |
| 55 | +* Added ``show_bounds`` parameter to :meth:`.Dataset.plot` to visualize the automatically-calculated bounds. |
| 56 | +* Added ``title`` parameter to :meth:`.Dataset.plot` with default showing the name and number of points. |
| 57 | +* Switched from using Matplotlib's ``tight_layout()`` to constrained layout. |
| 58 | +* Added :func:`.style_context` context manager for plotting in a Data Morph style. |
| 59 | +* Added test suite for :mod:`.plotting.style` module. |
| 60 | +* Changed plot layouts for :meth:`.DataLoader.plot` and :meth:`.ShapeFactory.plot_available_shapes`. |
| 61 | +* Adjusted grid of datasets in the documentation to use tighter plot bounds. |
| 62 | + |
| 63 | +Tooling |
| 64 | +~~~~~~~ |
| 65 | +* Added new GitHub Actions workflow to run Data Morph on new/altered datasets, shapes, |
| 66 | + or core logic. |
| 67 | +* Switched to trusted publishing on PyPI via GitHub Actions. |
| 68 | +* Added PR and issue templates. |
| 69 | +* Added ``pytest-xdist`` to dev dependencies and reworked the test suite to make it faster. |
| 70 | +* Switched from ``black`` to ``ruff`` formatting in pre-commit setup and included additional rulesets. |
| 71 | +* Added ``pyproject-fmt`` pre-commit hook. |
| 72 | +* Refactored shape tests. |
| 73 | + |
| 74 | +Bug Fixes |
| 75 | +^^^^^^^^^ |
| 76 | +* Addressed compatibility issues with ``numpy>=2.0.0``. |
| 77 | +* Assorted performance and code quality improvements after running additional |
| 78 | + ``ruff`` rules. |
| 79 | +* Fixed some incorrect return types. |
| 80 | + |
| 81 | +Dependency Updates |
| 82 | +^^^^^^^^^^^^^^^^^^ |
| 83 | +* Replaced ``tqdm`` dependency with ``rich``. |
| 84 | +* Replaced ``pytweening`` dependency with functions in :mod:`.plotting.animation`. |
| 85 | +* Replaced ``sphinxarg.ext`` Sphinx extension with ``sphinx_argparse_cli``. |
| 86 | +* Changed the minimum Sphinx version to 7.2.6. |
| 87 | +* Changed the minimum ``pydata-sphinx-theme`` version to 0.15.3. |
| 88 | +* Updated pre-commit hooks to the latest versions. |
| 89 | +* Factored out ``scipy`` dependency. |
| 90 | +* Updated GitHub Actions workflows for Node 16 deprecation. |
| 91 | +* Enabled Dependabot on GitHub Actions and switched to use commit hashes for versioning. |
| 92 | +* Updated Python testing matrix to include Python 3.9 through 3.13. |
| 93 | + |
4 | 94 | 0.2.0 (September 24, 2023) |
5 | 95 | -------------------------- |
6 | 96 |
|
|
0 commit comments