This release brings compatibility with numpy 2 and various performance optimizations.
Thanks to the 22 contributors to this release:
Alfonso Ladino, David Hoese, Deepak Cherian, Eni Awowale, Ilan Gold, Jessica Scheick, Joe Hamman, Justus Magin, Kai Mühlbauer, Mark Harfouche, Mathias Hauser, Matt Savoie, Maximilian Roos, Mike Thramann, Nicolas Karasiak, Owen Littlejohns, Paul Ockenfuß, Philippe THOMY, Scott Henderson, Spencer Clark, Stephan Hoyer and Tom Nicholas
SciPy 1.14.0 is the culmination of 3 months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd and check for DeprecationWarning s).
Our development attention will now shift to bug-fix releases on the
1.14.x branch, and on adding new features on the main branch.
This release requires Python 3.10+ and NumPy 1.23.5 or greater.
For running on PyPy, PyPy3 6.0+ is required.
Highlights of this release
SciPy now supports the new Accelerate library introduced in macOS 13.3, and
has wheels built against Accelerate for macOS >=14 resulting in significant
performance improvements for many linear algebra operations.
A new method, cobyqa, has been added to scipy.optimize.minimize - this
is an interface for COBYQA (Constrained Optimization BY Quadratic
Approximations), a derivative-free optimization solver, designed to
supersede COBYLA, developed by the Department of Applied Mathematics, The
Hong Kong Polytechnic University.
scipy.sparse.linalg.spsolve_triangular is now more than an order of
magnitude faster in many cases.
New features
scipy.fft improvements
A new function, scipy.fft.prev_fast_len, has been added. This function
finds the largest composite of FFT radices that is less than the target
length. It is useful for discarding a minimal number of samples before FFT.
scipy.io improvements
wavfile now supports reading and writing of wav files in the RF64
format, allowing files greater than 4 GB in size to be handled.
scipy.constants improvements
Experimental support for the array API standard has been added.
* Add Zstd codec to old V3 code path.
By :user:`Ryan Abernathey <rabernat>`
.. _release_2.18.1:
2.18.1
Maintenance
* Fix a regression when getting or setting a single value from arrays with size-1 chunks.
By :user:`Deepak Cherian <dcherian>` :issue:`1874`
.. _release_2.18.0:
2.18.0
------
Enhancements
</code></pre>
<ul>
<li>Performance improvement for reading and writing chunks if any of the dimensions is size 1.
By :user:<code>Deepak Cherian <dcherian></code> :issue:<code>1730</code>.</li>
</ul>
<p>Maintenance</p>
<pre><code>* Enable ruff/bugbear rules (B) and fix issues.
By :user:`Dimitri Papadopoulos Orfanos <DimitriPapadopoulos>` :issue:`1702`.
* Minor updates to use `np.inf` instead of `np.PINF` / `np.NINF` in preparation for NumPy 2.0.0 release.
By :user:`Joe Hamman <jhamman>` :issue:`1842`.
Deprecations
</code></pre>
<ul>
<li>
<p>Deprecate experimental v3 support by issuing a <code>FutureWarning</code>.
Also updated docs to warn about using the experimental v3 version.
By :user:<code>Joe Hamman <jhamman></code> :issue:<code>1802</code> and :issue:<code>1807</code>.</p>
</li>
<li>
<p>Deprecate the following stores: :class:<code>zarr.storage.DBMStore</code>, :class:<code>zarr.storage.LMDBStore</code>,
:class:<code>zarr.storage.SQLiteStore</code>, :class:<code>zarr.storage.MongoDBStore</code>, :class:<code>zarr.storage.RedisStore</code>,
and :class:<code>zarr.storage.ABSStore</code>. These stores are slated to be removed from Zarr-Python in version 3.0.
By :user:<code>Joe Hamman <jhamman></code> :issue:<code>1801</code>.</p>
</li>
</ul>
<p>.. _release_2.17.2:</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/0855bd6e99baef7bd99baaf1b6fdaefd4efd83a6"><code>0855bd6</code></a> doc: update release notes for 2.18.2 (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1915">#1915</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/3e98c3b1d6ed24b7b04fdbaa56ed2c42f5b1ef05"><code>3e98c3b</code></a> Add zstd to old V3 supported codecs (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1914">#1914</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/bf895332cdb8f028284f958c58cda773085d5e68"><code>bf89533</code></a> reset release notes (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1886">#1886</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/4bd9764c1857cb563d155ad797011dfd4a44616e"><code>4bd9764</code></a> release notes for 2.18.1 (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1885">#1885</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/908e920bfd52371a4148b19d305262a804bc0201"><code>908e920</code></a> Fix a regression with scalar indexing due to <a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1800">#1800</a> (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1875">#1875</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/8264acebc5e1671c36bc434f14cac914f5a099e1"><code>8264ace</code></a> chore: update pre-commit hooks (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1876">#1876</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/8979205fbebd991974172ac23b436372911f4666"><code>8979205</code></a> Group dependabot updates (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1854">#1854</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/cb4230dd9a2a0c68b78384b24a2a5567df0b704a"><code>cb4230d</code></a> Update release.rst (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1850">#1850</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/056657ca5ed70aa3d77a9e2db42253fca39800b0"><code>056657c</code></a> Release notes for 2.18.0 (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1843">#1843</a>)</li>
<li><a href="https://github.com/zarr-developers/zarr-python/commit/270aff18dc780a0a9e7409455277aae017190765"><code>270aff1</code></a> Enable ruff/bugbear rules (B) and fix issues (<a href="https://redirect.github.com/zarr-developers/zarr-python/issues/1702">#1702</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/zarr-developers/zarr-python/compare/v2.17.2...v2.18.2">compare view</a></li>
</ul>
</details>
<br />
Add support for integer, floating point, boolean NumPy scalar types__
(:ticket:[#332](https://github.com/psycopg/psycopg/issues/332)).
Add !timeout and !stop_after parameters to Connection.notifies()
(:ticket:340).
Allow dumpers to return !None, to be converted to NULL (:ticket:[#377](https://github.com/psycopg/psycopg/issues/377)).
Add :ref:raw-query-cursors to execute queries using placeholders in
PostgreSQL format ($1, $2...) (:tickets:[#560](https://github.com/psycopg/psycopg/issues/560), [#839](https://github.com/psycopg/psycopg/issues/839)).
Add capabilities object to :ref:inspect the libpq capabilities <capabilities> (:ticket:[#772](https://github.com/psycopg/psycopg/issues/772)).
Add ~rows.scalar_row to return scalar values from a query (:ticket:[#723](https://github.com/psycopg/psycopg/issues/723)).
Add ~Connection.cancel_safe() for encrypted and non-blocking cancellation
when using libpq v17. Use such method internally to implement
!KeyboardInterrupt and ~cursor.copy termination (:ticket:[#754](https://github.com/psycopg/psycopg/issues/754)).
The !context parameter of sql objects ~sql.Composable.as_string() and
~sql.Composable.as_bytes() methods is now optional (:ticket:[#716](https://github.com/psycopg/psycopg/issues/716)).
Add ~Connection.set_autocommit() on sync connections, and similar
transaction control methods available on the async connections.
Add a size parameter to ~Cursor.stream() to enable results retrieval in
chunks instead of row-by-row (:ticket:[#794](https://github.com/psycopg/psycopg/issues/794)).
.. rubric:: New libpq wrapper features
Add support for libpq functions to close prepared statements and portals
introduced in libpq v17 (:ticket:[#603](https://github.com/psycopg/psycopg/issues/603)).
Add support for libpq encrypted and non-blocking query cancellation
functions introduced in libpq v17 (:ticket:[#754](https://github.com/psycopg/psycopg/issues/754)).
... (truncated)
Commits
bb47d39 chore: bump psycopg package version to 3.2.1
[bug] [commands] Fixed bug in alembic command stdout where long messages were not properly
wrapping at the terminal width. Pull request courtesy Saif Hakim.
[bug] [execution] Fixed internal issue where Alembic would call connection.execute()
sending an empty tuple to indicate "no params". In SQLAlchemy 2.1 this
case will be deprecated as "empty sequence" is ambiguous as to its intent.
#12355: Fix possible catastrophic performance slowdown on a certain parametrization pattern involving many higher-scoped parameters.
#12367: Fix a regression in pytest 8.2.0 where unittest class instances (a fresh one is created for each test) were not released promptly on test teardown but only on session teardown.
#12381: Fix possible "Directory not empty" crashes arising from concurent cache dir (.pytest_cache) creation. Regressed in pytest 8.2.0.
Improved Documentation
#12290: Updated Sphinx theme to use Furo instead of Flask, enabling Dark mode theme.
#12356: Added a subsection to the documentation for debugging flaky tests to mention
lack of thread safety in pytest as a possible source of flakyness.
#12363: The documentation webpages now links to a canonical version to reduce outdated documentation in search engine results.
8.2.1
pytest 8.2.1 (2024-05-19)
Improvements
#12334: Support for Python 3.13 (beta1 at the time of writing).
Bug Fixes
#12120: Fix [PermissionError]{.title-ref} crashes arising from directories which are not selected on the command-line.
#12191: Keyboard interrupts and system exits are now properly handled during the test collection.
#12300: Fixed handling of 'Function not implemented' error under squashfuse_ll, which is a different way to say that the mountpoint is read-only.
#12308: Fix a regression in pytest 8.2.0 where the permissions of automatically-created .pytest_cache directories became rwx------ instead of the expected rwxr-xr-x.
Trivial/Internal Changes
#12333: pytest releases are now attested using the recent Artifact Attestation support from GitHub, allowing users to verify the provenance of pytest's sdist and wheel artifacts.
8.2.0
pytest 8.2.0 (2024-04-27)
Deprecations
#12069: A deprecation warning is now raised when implementations of one of the following hooks request a deprecated py.path.local parameter instead of the pathlib.Path parameter which replaced it:
Fix error reporting on cached run after uninstallation of third party library (Shantanu, PR 17420)
Acknowledgements
Thanks to all mypy contributors who contributed to this release:
Alex Waygood
Ali Hamdan
Edward Paget
Evgeniy Slobodkin
Hashem
hesam
Hugo van Kemenade
Ihor
James Braza
Jelle Zijlstra
jhance
Jukka Lehtosalo
Loïc Simon
Marc Mueller
Matthieu Devlin
Michael R. Crusoe
Nikita Sobolev
Oskari Lehto
Riccardo Di Maio
Richard Si
roberfi
Roman Solomatin
Sam Xifaras
Shantanu
Spencer Brown
Srinivas Lade
Tamir Duberstein
youkaichao
I’d also like to thank my employer, Dropbox, for supporting mypy development.
Mypy 1.9
We’ve just uploaded mypy 1.9 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:
python3 -m pip install -U mypy
You can read the full documentation for this release on Read the Docs.
Breaking Changes
Because the version of typeshed we use in mypy 1.9 doesn't support 3.7, neither does mypy 1.9. (Jared Hance, PR 16883)
... (truncated)
Commits
c28b525 [1.10 backport] Fix error reporting on cached run after uninstallation of thi...
If you attempt to combine statement coverage data with branch coverage data,
coverage.py used to fail with the message "Can't combine arc data with line
data" or its reverse, "Can't combine line data with arc data." These
messages used internal terminology, making it hard for people to understand
the problem. They are now changed to mention "branch coverage data" and
"statement coverage data."
Fixed a minor branch coverage problem with wildcard match/case cases using
names or guard clauses.
Started testing on 3.13 free-threading (nogil) builds of Python. I'm not
claiming full support yet. Closes issue 1799_.
Performance improvements for combining data files, especially when measuring
line coverage. A few different quadratic behaviors were eliminated. In one
extreme case of combining 700+ data files, the time dropped from more than
three hours to seven minutes. Thanks for Kraken Tech for funding the fix.
Performance improvements for generating HTML reports, with a side benefit of
reducing memory use, closing issue 1791_. Thanks to Daniel Diniz for
helping to diagnose the problem.
Fix: nested matches of exclude patterns could exclude too much code, as
reported in issue 1779_. This is now fixed.
Changed: previously, coverage.py would consider a module docstring to be an
executable statement if it appeared after line 1 in the file, but not
executable if it was the first line. Now module docstrings are never counted
as executable statements. This can change coverage.py's count of the number
of statements in a file, which can slightly change the coverage percentage
reported.
Bumps the pip-dependencies group with 14 updates in the / directory:
1.6.5
1.7.1.post1
2024.3.0
2024.6.0
1.13.0
1.14.0
2.12.3
2.13.1
2.17.2
2.18.2
3.1.18
3.2.1
1.13.1
1.13.2
14.0.2
16.1.0
7.4.4
8.2.2
1.10.0
1.10.1
7.0.0
7.1.0
7.5.0
7.5.4
2.2.1.240316
2.2.2.240603
5.0.5
5.0.10
Updates
netcdf4
from 1.6.5 to 1.7.1.post1Changelog
Sourced from netcdf4's changelog.
Commits
Updates
xarray
from 2024.3.0 to 2024.6.0Release notes
Sourced from xarray's releases.
... (truncated)
Commits
bef0406
release v2024.06.0 (#9113)b31a495
release notes for 2024.06.0 (#9092)6554855
[skip-ci] Try fixing hypothesis CI trigger (#9112)ce196d5
Undo custom padding-top. (#9107)cea4dd1
add remaining core-dev citations [skip-ci][skip-rtd] (#9110)2e0dd6f
Add user survey announcement to docs (#9101)b221808
skip thepandas
datetime roundtrip test withpandas=3.0
(#9104)7ec0952
Adds Matt Savoie to CITATION.cff (#9103)aacfeba
[skip-ci] Fix skip-ci for hypothesis (#9102)3967351
open_datatree performance improvement on NetCDF, H5, and Zarr files (#9014)Updates
scipy
from 1.13.0 to 1.14.0Release notes
Sourced from scipy's releases.
... (truncated)
Commits
87c4664
REL: SciPy 1.14.0 rel commit [wheel build]ac63c81
Merge pull request #21019 from tylerjereddy/treddy_1.14.0_final_backports541003f
DOC: update 1.14 relnotes [wheel build]a08d1ff
MAINT: stats.gstd: warn when an observation is <= 0a4f7119
DEP: special.perm: deprecate non-integerN
andk
withexact=True
(#20909)73339fb
TST: stats: fix use of np.testing to compare xp-arrays0542df6
DOC: Update 1.14.0 release notesf8e530c
STY: _lib._util: silence mypye2cbda2
TST:sparse.linalg: Skip test due to sensitivity to numerical noise4fb2e6a
TST: robustify test_nnls_inner_loop_case1Updates
aiobotocore
from 2.12.3 to 2.13.1Release notes
Sourced from aiobotocore's releases.
Changelog
Sourced from aiobotocore's changelog.
Commits
eae9743
Update Botocore to 1.34.131 (#1122)0f77892
Update README.rst6d9ae79
update build badgea960f12
Update README.rst - Add monthly downloads badge (#1118)ec33cb7
Merge pull request #1113 from aio-libs/dependabot/github_actions/codecov/code...441587f
Bump codecov/codecov-action from 4.1.0 to 4.4.0752f8b5
Address breaking change introduced inaiohttp==3.9.2
(#1081)2d6520b
Support up-to-datebotocore
(#1115)Updates
zarr
from 2.17.2 to 2.18.2Release notes
Sourced from zarr's releases.
Changelog
Sourced from zarr's changelog.