Releases: ClearCalcs/pyCUFSM
v0.1.7
This is a quick maintenance release primarily to fix one bug specifically with Numpy v2 that caused pyCUFSM to error out in CFSM analyses. This release also bumps matplotlib
by one patch version in the locked dev dependencies, as matplotlib
v3.9.1 was yanked by upstream developers.
What's Changed
- Fix bug in CFSM calcs with Numpy v2 by @smith120bh in #219
- Bump the minor_and_patch group with 4 updates by @dependabot in #218
Full Changelog: v0.1.6...v0.1.7
v0.1.6
This is purely a maintenance update, fixing a critical bug that broke installation of pyCUFSM in some Python v3.12+ environments. No calculations are affected; this only affected installation.
What's Changed
- Don't require typing_extensions for Python 3.12+ by @smith120bh in #215
Note that, for cleanliness and ease of maintenance of this package, we are now grouping dependabot updates for all minor and patch upgrades. Since the titles of those pull requests are relatively useless to read, they will no longer be included in these changelogs. Prior to any release, all minor and patch versions of all dependencies will be upgraded. All major version upgrades will continue to be listed in changelogs.
Full Changelog: v0.1.5...v0.1.6
v0.1.5
This is purely a maintenance release, only fixing one critical bug in the m_recommend() function that caused an error message.
What's Changed
- Bug: Fix GBT_con arrays in m_recommend() by @smith120bh in #208
Dependabots
- Bump pypa/cibuildwheel from 2.19.1 to 2.19.2 by @dependabot in #184
- Bump pylint from 3.2.5 to 3.2.6 by @dependabot in #183
- Bump pytest from 8.2.2 to 8.3.1 by @dependabot in #180
- Bump mypy from 1.10.1 to 1.11.0 by @dependabot in #181
- Bump mypy from 1.11.0 to 1.11.1 by @dependabot in #189
- Bump pypa/cibuildwheel from 2.19.2 to 2.20.0 by @dependabot in #190
- Bump sphinx from 7.4.6 to 8.0.2 by @dependabot in #188
- Bump sphinx-autoapi from 3.1.2 to 3.2.1 by @dependabot in #186
- Bump numpy from 2.0.0 to 2.0.1 by @dependabot in #185
- Bump pytest from 8.3.1 to 8.3.2 by @dependabot in #187
- Bump numpy from 2.0.1 to 2.1.1 by @dependabot in #196
- Bump black from 24.4.2 to 24.8.0 by @dependabot in #193
- Bump scipy from 1.14.0 to 1.14.1 by @dependabot in #194
- Bump pypa/cibuildwheel from 2.20.0 to 2.21.0 by @dependabot in #200
- Bump pylint from 3.2.6 to 3.2.7 by @dependabot in #197
- Bump pypa/cibuildwheel from 2.21.0 to 2.21.3 by @dependabot in #205
- Bump mypy from 1.11.1 to 1.12.1 by @dependabot in #207
- Bump sphinx-autoapi from 3.2.1 to 3.3.2 by @dependabot in #203
Full Changelog: v0.1.4...v0.1.5
v0.1.4
This release makes two key updates:
- Upgrade to Numpy v2.0.0 compatibility
- Importantly, this required deprecating Python 3.9. Theoretically, if you are still using the Numpy 1.x series, nothing should have broken Python 3.9, but automatic testing of Python 3.9 is now dropped, so use at your own risk!
- Build and distribute platform-specific binary wheels - which should now make this package both more efficient and faster to install
And while it won't make any difference to pyCUFSM users, for any developers or forks, pyCUFSM has now swapped to using poetry for packaging and dependency management.
What's Changed
- Convert to Black Autoformatter, Update VS Code Configuration by @smith120bh in #97
- Include github actions in dependabot by @smith120bh in #100
- Allow uppercase maths symbols in linting checks by @smith120bh in #153
- Swap to Poetry for dependency & package mgmt by @smith120bh in #176
- Add cibuildwheel by @smith120bh in #177
Dependabots (many)
- Bump sphinx-autoapi from 2.1.1 to 3.0.0 by @dependabot in #95
- Bump pylint from 2.17.5 to 2.17.6 by @dependabot in #93
- Bump scipy from 1.11.2 to 1.11.3 by @dependabot in #96
- Bump matplotlib from 3.7.2 to 3.8.0 by @dependabot in #89
- Bump pylint from 2.17.6 to 2.17.7 by @dependabot in #98
- Bump pylint from 2.17.7 to 3.0.0 by @dependabot in #99
- Bump actions/checkout from 3 to 4 by @dependabot in #101
- Bump pylint from 3.0.0 to 3.0.1 by @dependabot in #103
- Bump mypy from 1.5.1 to 1.6.1 by @dependabot in #108
- Bump cython from 3.0.2 to 3.0.4 by @dependabot in #107
- Bump numpy from 1.26.0 to 1.26.1 by @dependabot in #105
- Bump pylint from 3.0.1 to 3.0.2 by @dependabot in #109
- Bump black from 23.9.1 to 23.10.1 by @dependabot in #110
- Bump pytest from 7.4.2 to 7.4.3 by @dependabot in #111
- Bump cython from 3.0.4 to 3.0.5 by @dependabot in #112
- Bump actions/setup-python from 4 to 5 by @dependabot in #120
- Bump matplotlib from 3.8.0 to 3.8.3 by @dependabot in #132
- Bump numpy from 1.26.1 to 1.26.4 by @dependabot in #127
- Bump black from 23.10.1 to 24.3.0 by @dependabot in #129
- Bump mypy from 1.6.1 to 1.9.0 by @dependabot in #131
- Bump scipy from 1.11.3 to 1.12.0 by @dependabot in #125
- Bump pylint from 3.0.2 to 3.1.0 by @dependabot in #137
- Bump pytest-describe from 2.1.0 to 2.2.0 by @dependabot in #136
- Bump cython from 3.0.5 to 3.0.10 by @dependabot in #134
- Bump ipywidgets from 8.1.1 to 8.1.2 by @dependabot in #135
- Bump pytest from 7.4.3 to 8.1.1 by @dependabot in #133
- Bump typing-extensions from 4.8.0 to 4.11.0 by @dependabot in #141
- Bump scipy from 1.12.0 to 1.13.0 by @dependabot in #139
- Bump matplotlib from 3.8.3 to 3.8.4 by @dependabot in #140
- Bump black from 24.3.0 to 24.4.2 by @dependabot in #148
- Bump sphinx from 7.2.6 to 7.3.7 by @dependabot in #145
- Bump mypy from 1.9.0 to 1.10.0 by @dependabot in #146
- Bump pytest from 8.1.1 to 8.2.0 by @dependabot in #149
- Bump matplotlib from 3.8.4 to 3.9.0 by @dependabot in #152
- Bump pylint from 3.1.0 to 3.2.0 by @dependabot in #151
- Bump pylint from 3.2.0 to 3.2.2 by @dependabot in #157
- Bump pytest from 8.2.0 to 8.2.1 by @dependabot in #155
- Bump sphinx-autoapi from 3.0.0 to 3.1.0 by @dependabot in #156
- Bump typing-extensions from 4.11.0 to 4.12.2 by @dependabot in #164
- Bump pytest from 8.2.1 to 8.2.2 by @dependabot in #163
- Bump scipy from 1.13.0 to 1.13.1 by @dependabot in #159
- Bump ipywidgets from 8.1.2 to 8.1.3 by @dependabot in #161
- Bump sphinx-autoapi from 3.1.0 to 3.1.1 by @dependabot in #158
- Bump pylint from 3.2.2 to 3.2.3 by @dependabot in #165
- Bump sphinx-autoapi from 3.1.1 to 3.1.2 by @dependabot in #167
- Bump numpy from 1.26.4 to 2.0.0 by @dependabot in #166
- Bump mypy from 1.10.0 to 1.10.1 by @dependabot in #168
- Bump scipy from 1.13.1 to 1.14.0 by @dependabot in #169
- Bump pylint from 3.2.3 to 3.2.5 by @dependabot in #171
- Bump matplotlib from 3.9.0 to 3.9.1 by @dependabot in #172
Full Changelog: v0.1.3...v0.1.4
v0.1.3
This update primarily adds only typing and documentation. However, some changes that have gone along with typing have involved breaking changes.
Breaking Changes
The files in which some functions are located have been rearranged. For example, signature_ss()
and m_recommend()
have moved from helpers.py to fsm.py - which both fixes some typing issues and makes more rational sense given that these functions are actually running FSM analyses! All functions still exist - nothing's been removed - but you may need to import them from different locations now.
What's Changed
- Typing and setting docstrings throughout all functions by @smith120bh in #43
- Stricter typing throughout by @smith120bh in #44
- Add angle & rack section tests by @smith120bh in #53
- New, simpler input format by @smith120bh in #54
- Add template structure for documentation by @smith120bh in #56
- Initial documentation content by @smith120bh in #57
- Fix syntax for submodule in readthedocs config by @smith120bh in #58
- Add missing typing_extensions requirement by @smith120bh in #59
- Remove unused myst_parser from sphinx config by @smith120bh in #60
- Fix release module depends by @smith120bh in #94
Dependabots
- Bump pytest from 7.3.1 to 7.3.2 by @dependabot in #45
- Bump yapf from 0.33.0 to 0.40.0 by @dependabot in #46
- Bump mypy from 1.3.0 to 1.4.1 by @dependabot in #51
- Bump yapf from 0.40.0 to 0.40.1 by @dependabot in #48
- Bump pytest from 7.3.2 to 7.4.0 by @dependabot in #50
- Bump numpy from 1.24.3 to 1.25.0 by @dependabot in #47
- Bump scipy from 1.10.1 to 1.11.0 by @dependabot in #52
- Bump scipy from 1.11.0 to 1.11.1 by @dependabot in #55
- Bump sphinx from 6.2.1 to 7.0.1 by @dependabot in #62
- Bump typing-extensions from 4.6.2 to 4.7.1 by @dependabot in #61
- Bump ipywidgets from 8.0.6 to 8.0.7 by @dependabot in #63
- Bump matplotlib from 3.7.1 to 3.7.2 by @dependabot in #64
- Bump numpy from 1.25.0 to 1.25.1 by @dependabot in #65
- Bump cython from 3.0.0b3 to 3.0.0rc1 by @dependabot in #66
- Bump cython from 3.0.0rc1 to 3.0.0rc2 by @dependabot in #67
- Bump cython from 3.0.0rc2 to 3.0.0 by @dependabot in #68
- Bump sphinx from 7.0.1 to 7.1.0 by @dependabot in #69
- Bump pylint from 2.17.4 to 2.17.5 by @dependabot in #70
- Bump numpy from 1.25.1 to 1.25.2 by @dependabot in #72
- Bump sphinx from 7.1.0 to 7.1.2 by @dependabot in #73
- Bump mypy from 1.4.1 to 1.5.0 by @dependabot in #75
- Bump ipywidgets from 8.0.7 to 8.1.0 by @dependabot in #74
- Bump sphinx from 7.1.2 to 7.2.2 by @dependabot in #78
- Bump scipy from 1.11.1 to 1.11.2 by @dependabot in #77
- Bump mypy from 1.5.0 to 1.5.1 by @dependabot in #76
- Bump sphinx from 7.2.2 to 7.2.3 by @dependabot in #79
- Bump cython from 3.0.0 to 3.0.2 by @dependabot in #80
- Bump sphinx from 7.2.3 to 7.2.4 by @dependabot in #81
- Bump pytest from 7.4.0 to 7.4.1 by @dependabot in #83
- Bump sphinx from 7.2.4 to 7.2.5 by @dependabot in #82
- Bump ipywidgets from 8.1.0 to 8.1.1 by @dependabot in #88
- Bump sphinx from 7.2.5 to 7.2.6 by @dependabot in #87
- Bump pytest from 7.4.1 to 7.4.2 by @dependabot in #85
- Bump numpy from 1.25.2 to 1.26.0 by @dependabot in #90
- Bump yapf from 0.40.1 to 0.40.2 by @dependabot in #92
- Bump typing-extensions from 4.7.1 to 4.8.0 by @dependabot in #91
Full Changelog: v0.1.2...v0.1.3
v0.1.2
This update is another set of efficiency improvements, this time Cythonising and optimising the computation-heavy cFSM functions.
What's Changed
- Bump cython from 3.0.0b2 to 3.0.0b3 by @dependabot in #41
- More analysis optimisation by @smith120bh in #42
Full Changelog: v0.1.1+cufsm504...v0.1.2
v0.1.1
This release is primarily a set of efficiency improvement - both some inherent code improvements to remove some redundant matrix operations, and by implementing Cython in the most computation-heavy analysis functions!
What's Changed
- Bump pylint from 2.17.3 to 2.17.4 by @dependabot in #37
- Bump mypy from 1.2.0 to 1.3.0 by @dependabot in #38
- Miscellaneous efficiency improvements in analysis.py by @smith120bh in #39
- Cythonize analysis.py -> analysis_c.pyx by @smith120bh in #40
Full Changelog: v0.1.0+cufsm501...v0.1.1+cufsm504
v0.1.0+cufsm501
Initial public release to PyPI package repository. This package now has basic automated validation testing, and all core initial features present and validated for a functional package.
Please file any issues or add any feature requests in our GitHub repository! If you would like to help contribute, any assistance is very welcome, and thank you to everyone who contributed and made this initial release possible!
This package was based upon the Matlab CUFSM v5.01, which is now slightly out-of-date (v5.04 is the most recent). A future update to pyCUFSM will re-sync to the latest upstream Matlab CUFSM updates.
What's Changed
- Update LICENSE to AFL-3.0 by @smith120bh in #1
- Add initial pyCUFSM code by @smith120bh in #2
- Create dependabot.yml by @smith120bh in #3
- Fix Centroid Offset Bug, Set vsCode Defaults by @smith120bh in #4
- Add ability to define a section by a path definition by @smith120bh in #5
- Fix bug in angle of drawn curve path by @smith120bh in #6
- Fix FSM mode normalisation & straight path drawing by @smith120bh in #7
- Minor final fix to path drawing by @smith120bh in #8
- Last fix to path by @smith120bh in #9
- Add n_lengths input to m_recommend() by @smith120bh in #10
- pyCUSFM/plotters.py by @joelbenjohn in #12
- Validation file and bug fix in Notebook by @joelbenjohn in #13
- updated to add notes on installation from git by @someparsa in #16
- package import name matching by @someparsa in #18
- Update example_1.py by @maderero in #14
- Update python versions, and lint by @smith120bh in #20
- Consistent b_1, b_2 vs b_l, b_r by @smith120bh in #19
- Support specifying n_r on each table row by @smith120bh in #21
- Fix m_recommend if there are no minima by @smith120bh in #22
- Consider thickness in lengths_recommend() by @smith120bh in #23
- Upgrade Python Project Structure by @smith120bh in #26
- Bump matplotlib from 3.7.0 to 3.7.1 by @dependabot in #27
- Bump pytest from 7.2.1 to 7.3.1 by @dependabot in #28
- Bump pylint from 2.4 to 2.17.2 by @dependabot in #31
- Bump pytest-describe from 2.0.1 to 2.1.0 by @dependabot in #32
- Bump yapf from 0.32.0 to 0.33.0 by @dependabot in #30
- Bump mypy from 1.0.1 to 1.2.0 by @dependabot in #29
- Cleanup Jupyter Notebooks files by @smith120bh in #33
- Bump numpy from 1.24.2 to 1.24.3 by @dependabot in #34
- Bump pylint from 2.17.2 to 2.17.3 by @dependabot in #35
- Add validation tests for C and Z sections by @smith120bh in #36
New Contributors
- @smith120bh made their first contribution in #1
- @joelbenjohn made their first contribution in #12
- @someparsa made their first contribution in #16
- @maderero made their first contribution in #14
- @dependabot made their first contribution in #27
Full Changelog: https://github.com/ClearCalcs/pyCUFSM/commits/v0.1.0+cufsm501