alpaca-backtrader-api
alpaca-backtrader-api copied to clipboard
Scheduled daily dependency update on Friday
Update backtrader from 1.9.76.123 to 1.9.78.123.
Changelog
1.9.78.123
- PR479 Fix errors for simulated orders
1.9.77.123
- PR472
- Added posibitity for Black theme for charts
- Added posibitity to run on matplotlib 3.6+
- Added posibitity to run on Python 3.9+
Links
- PyPI: https://pypi.org/project/backtrader
- Changelog: https://data.safetycli.com/changelogs/backtrader/
- Repo: https://github.com/mementum/backtrader/tarball/1.9.78.123
Update alpaca-trade-api from 1.4.3 to 3.2.0.
Changelog
3.2.0
What's Changed
* Add Python 3.11 support. by fumoboy007 in https://github.com/alpacahq/alpaca-trade-api-python/pull/673
* Support Python 3.12 by hiohiohio in https://github.com/alpacahq/alpaca-trade-api-python/pull/745
* v3.2.0 by hiohiohio in https://github.com/alpacahq/alpaca-trade-api-python/pull/746
**Full Changelog**: https://github.com/alpacahq/alpaca-trade-api-python/compare/v3.1.1...v3.2.0
3.1.0
What's Changed
* Add sort parameter and re-add historical crypto quotes by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/718
* fix: Use warnings.catch_warnings() instead of pytest.warns(None) by hiohiohio in https://github.com/alpacahq/alpaca-trade-api-python/pull/741
* Allow error messages without code field by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/738
* v3.1.0 by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/742
**Full Changelog**: https://github.com/alpacahq/alpaca-trade-api-python/compare/v3.0.2...v3.1.0
3.0.1
What's Changed
* Updating existing crypto APIs to v1beta2 and adding in Latest Orderbooks by andrewwoood in https://github.com/alpacahq/alpaca-trade-api-python/pull/650
* Crypto v1beta3 by haxdds in https://github.com/alpacahq/alpaca-trade-api-python/pull/687
* Fix streaming news article event dispatching by fumoboy007 in https://github.com/alpacahq/alpaca-trade-api-python/pull/691
* Only call the news handler once for a single message by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/693
* Call each different news handler once by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/694
New Contributors
* andrewwoood made their first contribution in https://github.com/alpacahq/alpaca-trade-api-python/pull/650
* fumoboy007 made their first contribution in https://github.com/alpacahq/alpaca-trade-api-python/pull/691
**Full Changelog**: https://github.com/alpacahq/alpaca-trade-api-python/compare/v2.3.0...v3.0.1
2.3.0
What's Changed
* Fix missing URL import for the Stream class example in README by hiohiohio in https://github.com/alpacahq/alpaca-trade-api-python/pull/628
* Fixed grammar and spelling by ALifeLivedFully in https://github.com/alpacahq/alpaca-trade-api-python/pull/629
* Add optional asof for historical marketdata endpoints by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/632
New Contributors
* hiohiohio made their first contribution in https://github.com/alpacahq/alpaca-trade-api-python/pull/628
* ALifeLivedFully made their first contribution in https://github.com/alpacahq/alpaca-trade-api-python/pull/629
**Full Changelog**: https://github.com/alpacahq/alpaca-trade-api-python/compare/v2.2.0...v2.3.0
2.2.0
What's Changed
* Updated Stream Instructions for `sip` parameter in README by hinchcliffz in https://github.com/alpacahq/alpaca-trade-api-python/pull/615
* Remove drew887 as owner by drew887 in https://github.com/alpacahq/alpaca-trade-api-python/pull/621
* Fix typo in streamconn_on_and_off example by MorSof in https://github.com/alpacahq/alpaca-trade-api-python/pull/623
* Add optional feed argument to the market data methods by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/625
New Contributors
* hinchcliffz made their first contribution in https://github.com/alpacahq/alpaca-trade-api-python/pull/615
* MorSof made their first contribution in https://github.com/alpacahq/alpaca-trade-api-python/pull/623
**Full Changelog**: https://github.com/alpacahq/alpaca-trade-api-python/compare/v2.1.0...v2.2.0
2.1.0
PRs in this release:
- Add auto deployment to pypi (612) from drew887
- Adds a 'side' param to Rest::list_orders (610) from drew887
- Add issue template for general SDK questions (608) from drew887
- Update issue templates (606) from drew887
- Adds stream crypto orderbook (597) from ccnlui
2.0.0
:warning: Note this release is a **Breaking Change** due to the removal of Market Data V1 capabilities
- Adds a param to the stream classes to allow overriding of websocket defaults (596)
- Scheduled weekly dependency update for week 12 (592)
- Increase ping timeout (591)
- Send subscription requests in parts (586)
- Remove marketdata v1 functions (590)
- Updating overnight-hold to use the new data api (async get bars) (562)
- Add Week and Month timeframe units (583)
- Multi symbol support for the latest crypto endpoints (580)
You can view this release on [PyPi here](https://pypi.org/project/alpaca-trade-api/2.0.0/)
1.5.1
* Move updated bars to their own subscription by gnvk [574 ](https://github.com/alpacahq/alpaca-trade-api-python/commit/43f0766eaaeadaabc8ab08e2a0554c95fc1ec265)
* empty handler check when unregister cancel errors + corrections by ccnlui [577](https://github.com/alpacahq/alpaca-trade-api-python/commit/294b105439602d46b388c2cbf88275cee15c2261)
* Adds support for Python 3.10 by ccnlui [561](https://github.com/alpacahq/alpaca-trade-api-python/pull/561)
* Fixes Incorrect Access Issue on Long-Short Example by haxdds [560](https://github.com/alpacahq/alpaca-trade-api-python/commit/4e65915e080c4c74e853c6706d839bdb924f2184)
1.5.0
What's Changed
* Add news api by ccnlui in https://github.com/alpacahq/alpaca-trade-api-python/pull/555
* Drops Support For Python 3.6 by haxdds in https://github.com/alpacahq/alpaca-trade-api-python/pull/544
* Mark v1 marketdata endpoints deprecated by gnvk in https://github.com/alpacahq/alpaca-trade-api-python/pull/558
* Adds Raw Data Support for TradingStream by haxdds in https://github.com/alpacahq/alpaca-trade-api-python/pull/556
**Full Changelog**: https://github.com/alpacahq/alpaca-trade-api-python/compare/v1.4.3...v1.5.0
Links
- PyPI: https://pypi.org/project/alpaca-trade-api
- Changelog: https://data.safetycli.com/changelogs/alpaca-trade-api/
- Repo: https://github.com/alpacahq/alpaca-trade-api-python
Update exchange-calendars from 3.4 to 4.5.5.
Changelog
4.5.5
What’s Changed
> [!NOTE]
> `exchange_calendars` now supports numpy 2.0.
New Calendars
* Add EEX (385 and 386) romanzdk
* Add exchanges Dusseldorf & Hamburg (387) ValueRaider
Calendar Updates
* Shift Frankfurt early close (387) ValueRaider
* XSAU: add 2024 holidays + small refactor (388) ValueRaider
* XBOM add missing 2024 holiday (390) Mr-MayankThakur
Dependencies
* Bump supported python upper limit to 3.12 (403) maread99
* Update deps, support numpy 2.0 and pandas 3.0 dev (402) maread99
Under-the-bonnet
* Ensure ad-hoc holidays are proper Pandas timestamps. (398) jenskeiner
* BUG: Fix timezone names (393) jenskeiner
Thank you to all contributors!
4.5.4
What’s Changed
* Bump actions/cache from 4.0.1 to 4.0.2 (378) dependabot
* Bump actions/cache from 4.0.0 to 4.0.1 (377) dependabot
Calendar Updates
* XMOS working weekends (376) iMikeBug
* feat: added new national holiday to BVMF calendar (380) rafaelbo
* ENH: XKRX: Add parliamentary election day 2024 (368) herebebeasties
* XDUB: Add May bank holiday post-2021 (382 ) mzjp2
4.5.3
What’s Changed
**Lots of calendar updates and a couple of fixes.**
Particular thanks to all new contributors, not least herebebeasties for a host of PRs!
Calendar Updates
* XASX Dec 2022 early closes fix (374) herebebeasties
* XCSE: Prayers day has been abolished in Denmark (367) herebebeasties
* CSHG Add 2024-02-09 Chinese New Year (365) herebebeasties
* XMOS: updated holidays from 2020 (352) iMikeBug
Bug Fixes
* Fix `AttributeError` raising in ecal (361) maread99
* Fix end-date-only TZ logic in holiday.py (370) herebebeasties
Documentation
* Update README.md (364) da4089
Maintenance
* Update dependencies (375) maread99
Test Changes
* Fix missing assertion in XSGO calendar tests (369) herebebeasties
4.5.2
What’s Changed
Calendar Updates
* XSHG update 2024 holidays (351) vincentwyshan
Maintenance
* Update dependencies and fix pandas 2.2 deprecation warnings (358) maread99
Bug Fixes
* Fix 355 ecal error (358) maread99
Tests
* Additional tests for XTKS 2024 (349) beppe712
4.5.1
What’s Changed
Calendar Updates
* XBOM: Add 2024 holidays to XBOM (346) shenyingge
* HKEx stop trading on 20230717 because TYPHOON SIGNAL NO.8 (345) vincentwyshan
* XTKS: Add 2024 Vernal and Autumnal equinoxes (342) Quashqwart
* XSES: Draft 2024 trading calendar (343) philiptromans
* XKRX: Add extra holiday on 2023-10-02 (336) philiptromans
Maintenance
* Rename Asia/Calcutta to Asia/Kolkata (338) EdwardBetts
* Update dependencies (348 and 340) maread99
Documentation Updates
* Update tutorials (334) maread99
4.5
What’s Changed
> [!IMPORTANT]
> **`exchange-calendars` no longer uses the third-party `pytz` library.** From 4.5 timezones are represented by instances of `ZoneInfo` (see standard library [`zoneinfo`](https://docs.python.org/3/library/zoneinfo.html)).
>
> Thank you `pytz` for all you did for as long as you did it!
> [!NOTE]
> There is no `exchange-calendars` version 4.4. The version that immediately follows 4.3 is 4.5.
Calendar Updates
* XSHG: Add 2023-10-06 as a holiday (330) philiptromans
Maintenance
* Migrate from `pytz` to `zoneinfo` (329) maread99
4.3
What’s Changed
> [!NOTE]
> **Minimum supported Python version is now 3.9**
4.2.8
What’s Changed
Calendar Updates
* **New Calendar XASU!** Adds calendar for Saudi Arabia XASU exchange (310) oldfishdk
* XKRX: Holiday in lieu for Buddha's birthday (311) philiptromans
* XSHG: Add 2023-06-23 as part of Dragon Boat Festival. (312) philiptromans
Maintenance
* Update dependecies (313) maread99
4.2.7
What’s Changed
* Update ecal.py - pandas 2.0.0 data_range closed was removed (307) paologibertini
Calendar Updates
* XWBO: Made Whitmonday a trading day in 2023. (308) philiptromans
* Correct XKLS Holidays for 2023 (306) tys203831
4.2.6
What’s Changed
Calendar Updates
* Added extra days for Labor day 2023 (298) philiptromans
* XLON: add King Charles III coronation day (296) mixilchenko
* Add missing Sukkoth interim days. (287) jenskeiner
* Add ad-hoc holidays for XIST trading suspension due to earthquake. (285) jenskeiner
Bug Fixes
* Fix for XKRX with pandas 2.0 (299) maread99
Maintenance
* Update dependencies and changes for pandas 2.0 (299) maread99
* Bump actions/cache from 3.2.5 to 3.3.1 (293) dependabot
* Bump actions/cache from 3.2.3 to 3.2.5 (284) dependabot
4.2.5
What’s Changed
Calendar Updates
* Remove First president day from AIXK (265) romanzdk
* Add 2023 adjusted holidays for XTAI (280) jessiejessiewang
* XASX: 'last trading days' xmas 2022 are full-days not half (279) ValueRaider
* Fix XTKS 2023 holidays according to JPX calendar (278) beppe712
* Updated with 2023 Calendar dates for XBOM (273) srinivasakumar-a
* XTAE: Add Sukkot interim days (268) ValueRaider
* XSES: Add dates for 2023 (264) philiptromans
Internal Updates
* Bump actions/cache from 3.2.2 to 3.2.3 (277) dependabot
* Bump actions/cache from 3.2.1 to 3.2.2 (272) dependabot
* Update dependencies (271) maread99
* Bump actions/cache from 3.0.11 to 3.2.1 (270) dependabot
* Revise `_TradingIndex` tests (263) maread99
Documentation Updates
* Update README (262) maread99
4.2.4
What’s Changed
Calendar Updates
* XNZE: QEII day of mourning (239) ValueRaider
* XNZE: QEII holiday - updating tests csv (240) ValueRaider
* XTAE: Add election day 2022-11-01 (258) ValueRaider
* update republic day (255) romanzdk
Enhancements
* XTAE: fix wrong start time, add early Sunday close (247) ValueRaider
* Complete implementation of weekdays early close (254) maread99
* trading_index() align (256) ValueRaider maread99
Documentation Updates
* Update `trading_index` tutorial (260) maread99
Maintenance
* Update release workflow (again) (237) maread99
* Update dependencies (245) maread99
* Update dependencies (261) maread99
4.2.3
What’s Changed
Continuous Integration
* Disable install check from release workflow (236) maread99
4.2.2
NB github release 4.2.2 was not released to PyPI. The below changes were incorporated into PyPI release 4.2.3.
What’s Changed
Continuous Integration
* Revert (partially) release workflow (235) maread99
4.2.1
NB github release 4.2.1 was not released to PyPI. The below changes were incorporated in PyPI release 4.2.3.
What’s Changed
Calendar Updates
* XLON: add Queen Elizabeth II funeral day 2022-09-12 (230) monkeyusage
* XSHG: Added 2022-10-06 and 2022-10-07 as market holidays (228) philiptromans
* XASX: Added National Day of Mourning for Her Majesty the Queen (232) philiptromans
Continuous Integration
* Update release workflow (234) maread99
Maintenance
* Update dependencies (227) maread99
* Bump actions/cache from 3.0.7 to 3.0.8 (226) dependabot
4.2
What’s Changed
Calendar changes
* XSHG: Added 2022-09-12 as a market holiday (mid-autumn festival). (224) philiptromans
* Made 2022-09-12 a holiday in XHKG. (222) philiptromans
Other Changes
* Fix etc/make_exchange_calendar_test_csv.py (223) philiptromans
* Bump actions/cache from 3.0.6 to 3.0.7 (221) dependabot
* Bump actions/cache from 3.0.5 to 3.0.6 (220) dependabot
* ecal should use timezone naive date (219) knoguchi
* Bump actions/cache from 3.0.4 to 3.0.5 (218) dependabot
4.1.1
What’s Changed
Bug Fixes
* Update resolving of __init__.__version__ (214) maread99
Calendar Updates
* Add New Zealand holiday Matariki Day (215) ValueRaider
Continuous Integration
* Update release workflow (216) maread99
4.1
What’s Changed
Maintenance
* Rename `bounds*` class methods (211) maread99
* Update release.yml (211) maread99
Build Changes
* Move versioning to setuptools-scm and build to pyproject.toml (209) maread99
4.0.2
What’s Changed
Build
* Add package data to setup.cfg (208) maread99
4.0.1
What’s Changed
Fixes 4.0 import error (203)
Build
* Add sub-packages to build. {204) maread99
4.0
What’s Changed
Development
* Change sessions to tz-naive, times to UTC (179) maread99
* v4 dev: revises \*window, bound\*, default\* and prev/next session/minute methods (184) maread99
* v4 dev: Rename parameters, deprecate methods and remove deprecated methods (186) maread99
* v4 dev: Change default side to "left" and post v4 linting (191) maread99
Enhancements
* Add ExchangeCalendar.is_open_at_time (199) maread99
Documentation
v4 dev: Update doc and tutorials for 4.0 (194) maread99
Calendar Changes
* Removed Whit Monday and Day of German Unity holidays in 2022 (185) philiptromans
Maintenance
* v4 dev: fix warnings and update trading index (180) maread99
* v4 dev: Advance min python version to 3.8 (187) maread99
* Bump actions/cache from 3.0.3 to 3.0.4 (190) dependabot
* Bump actions/setup-python from 3 to 4 (193) dependabot
Build
* Move build meta to setup.cfg, update requirements files and workflows (198) maread99
Master merge 201
3.6.3
What’s Changed
Calendar Changes
* Added Juneteenth as a public holiday in XCBF. (173) philiptromans
* Add lunch break for XTKS (172) wec7
* Add lunch break for XSHG (169) codeterm
* Update BVMF - remove state and municipal holidays (167) pbabics
Documentation
* Add doc + types and moves 'special offsets' implementation to XKRX (177) maread99
* Update README.md (176) maread99
3.6.2
Calendar Changes
* XFRA: Added 2022 exceptions for Whit Monday and Day of German Unity. (166) philiptromans
* Fix calendar BVMF for 2022-01-25 (162) pbabics
Other changes
* Bump actions/cache from 3.0.1 to 3.0.2 (163) dependabot
* Bump actions/cache from 2.1.7 to 3.0.1 (161) dependabot
* Update ExchangeCalendar.trading_index (159) maread99
3.6.1
Calendar Updates
* Added missing XKRX holidays (2022-03-09 and 2022-06-01) by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/150
* Add missing Qingming and Labor Day holidays in XSHG. by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/156
* Add special open for BVMF on Ash Wednesday by pbabics in https://github.com/gerrymanoim/exchange_calendars/pull/154
* Attempt to fix Korean lunar calendar bug. by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/152
Dev updates
* Bump actions/checkout from 2.4.0 to 3 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/153
* Bump actions/setup-python from 2.3.2 to 3 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/151
**Full Changelog**: https://github.com/gerrymanoim/exchange_calendars/compare/3.6...3.6.1
3.6
Holiday Updates
* Fix XTKS 2022 holidays according to JPX calendar by beppe712 in https://github.com/gerrymanoim/exchange_calendars/pull/135
* XLON: Add Platinum Jubilee Day and move Spring Bank Holiday. by jenskeiner in https://github.com/gerrymanoim/exchange_calendars/pull/141
* ENH: Add "2022-01-27" as a holiday in XTAI by wec7 in https://github.com/gerrymanoim/exchange_calendars/pull/140
* Added public holidays before 1999 in XSHG. by qiuwei in https://github.com/gerrymanoim/exchange_calendars/pull/147
Dev Changes
* Bump actions/setup-python from 2.3.1 to 2.3.2 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/144
* TST: bump pandas and fix resulting test failures by gerrymanoim in https://github.com/gerrymanoim/exchange_calendars/pull/146
* TST: add py10 to the testing ci by gerrymanoim in https://github.com/gerrymanoim/exchange_calendars/pull/149
New Contributors
* beppe712 made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/135
* wec7 made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/140
* qiuwei made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/147
**Full Changelog**: https://github.com/gerrymanoim/exchange_calendars/compare/3.5.1...3.6
3.5.1
What’s Changed
* Add US Juneteenth holiday to XNYS calendar starting in 2022 (133) prerak-proof
* Update README.md (132) maread99
* Update AIXK calendar accoriding to 2022 trading calendar (131) pbabics
* Added 2022-01-31 as a public holiday in XSHG, and update XBOM (127) philiptromans
* XKRX: add krx holidays in 2022 and 2021 temporary holidays (125) chado13
3.5
What’s Changed
Calendar Updates
* Updated XSES for 2022 (123) philiptromans
* Made Good Friday always a holiday in XCBF (121) philiptromans
* Updated XMAD calendar for New Years Eve 2021 holiday (120) philiptromans
* XSHG: Added extra day of Spring holiday on 2020-01-31 (119) philiptromans
* Added XHKG typhoon on 2021-10-13 (118) philiptromans
* XMAD Christmas Eve regular holiday from 2021 (116) philiptromans
* Correct XKLS Holidays for 2022 (109) mrkgoh
Functionality updates
* Add `ExchangeCalendar.minutes_distance` (122) maread99
* Add `factory_bounds.py` to /etc (111) maread99
* Remove `QuantopianUSFuturesCalendar.default_start` (113) maread99
* Fix deprecated `open_and_close_for_session` (108) maread99
Dev
* Bump actions/setup-python from 2.3.0 to 2.3.1 (117) dependabot
* Bump actions/setup-python from 2.2.2 to 2.3.0 (114) dependabot
* Bump actions/cache from 2.1.6 to 2.1.7 (115) dependabot
* Bump actions/checkout from 2.3.5 to 2.4.0 (110) dependabot
Links
- PyPI: https://pypi.org/project/exchange-calendars
- Changelog: https://data.safetycli.com/changelogs/exchange-calendars/
Update matplotlib from 2.2.5 to 3.9.2.
Changelog
3.9.2
This is the second bugfix release of the 3.9.x series.
This release contains several bug-fixes and adjustments:
- Be more resilient to I/O failures when writing font cache
- Fix nondeterministic behavior with subplot spacing and constrained layout
- Fix sticky edge tolerance relative to data range
- Improve formatting of image values in cases of singular norms
Windows wheels now bundle the MSVC runtime DLL statically to avoid inconsistencies with other wheels and random crashes depending on import order.
3.9.1
This is the first bugfix release of the 3.9.x series.
This release contains several bug-fixes and adjustments:
- Add GitHub artifact attestations for sdist and wheels
- Re-add `matplotlib.cm.get_cmap`; note this function will still be removed at a later date
- Allow duplicate backend entry points
- Fix `Axes` autoscaling of thin bars at large locations
- Fix `Axes` autoscaling with `axhspan` / `axvspan`
- Fix `Axes3D` autoscaling of `Line3DCollection` / `Poly3DCollection`
- Fix `Axes3D` mouse interactivity with non-default roll angle
- Fix box aspect ratios in `Axes3D` with alternate vertical axis
- Fix case handling of backends specified as `module://...`
- Fix crash with TkAgg on Windows with `tk.window_focus: True`
- Fix interactive update of SubFigures
- Fix interactivity when using the IPython console
- Fix pickling of AxesWidgets and SubFigures
- Fix scaling on GTK3Cairo / GTK4Cairo backends
- Fix text wrapping within SubFigures
- Promote `mpltype` Sphinx role to a public extension; note this is only intended for development reasons
3.9.0
Highlights of this release include:
- Plotting and Annotation improvements
- Axes.inset_axes is no longer experimental
- Legend support for Boxplot
- Percent sign in pie labels auto-escaped with usetex=True
- hatch parameter for stackplot
- Add option to plot only one half of violin plot
- axhline and axhspan on polar axes
- Subplot titles can now be automatically aligned
- axisartist can now be used together with standard Formatters
- Toggle minorticks on Axis
- StrMethodFormatter now respects axes.unicode_minus
- Figure, Axes, and Legend Layout
- Subfigures now have controllable zorders
- Getters for xmargin, ymargin and zmargin
- Mathtext improvements
- mathtext documentation improvements
- mathtext spacing corrections
- Widget Improvements
- Check and Radio Button widgets support clearing
- 3D plotting improvements
- Setting 3D axis limits now set the limits exactly
- Other improvements
- New BackendRegistry for plotting backends
- Add widths, heights and angles setter to EllipseCollection
- image.interpolation_stage rcParam
- Arrow patch position is now modifiable
- NonUniformImage now has mouseover support
3.9.0rc2
This is the second release candidate for the meso release 3.9.0.
3.8.4
This is the fourth micro release of the 3.8 series.
Highlights of the 3.8.4 release include:
- Enable building against numpy 2.0; released wheels are built against numpy 2
- macosx: Clean up single-shot timers correctly
- Add a draw during show for macos backend
- Fix color sequence data for Set2 and Set3
- gtk: Ensure pending draws are done before GTK draw
- Update "Created with" url in hand.svg
- Avoid modifying user input to Axes.bar
- fix quiver3d incorrect arrow colors
3.8.3
This is the third micro release of the 3.8 series.
Highlights of the 3.8.3 release include:
- Improvements to the MacOS backend
- Fix hanging on `plt.pause`
- Fix warnings about "Secure coding is not enabled for restorable state"
- Fix crash at exit for PGF backend
3.8.2
This is the second bugfix release of the 3.8 series.
Highlights of this release include:
- Fix a segfault in the MacOS backend when running on Python 3.12
- Fix Contour labeling manual positions selecting incorrect contours.
- Various documentation improvements
3.8.1
This is the first bugfix release of the 3.8.x series.
This release contains several bug fixes and adjustments:
- Bump setuptools required version because of setuptools_scm v8
- Update ``find_nearest_contour`` and revert contour deprecations
- ``allsegs`` and ``allkinds`` return individual segments
- Restore default behavior of hexbin mincnt with C provided
- Try/except import of Axes3D
- Ensure valid path mangling for ContourLabeler
- BLD: Remove development dependencies from sdists
- FIX 2-tuple of colors in to_rgba_array
- Fix issue with non-string labels and legend
- Fix issue with locale comma when not using math text
- Various type hinting improvements
- Various documentation improvements
- Improvements to the MacOS backend
3.7.5
This is the fifth bugfix release of the 3.7.x series.
This release contains two bug-fixes:
- Fix hanging on `plt.pause` on the MacOS backend
- Fix crash on exit when using the PGF backend on Windows
3.7.4
This is the fourth bugfix release of the 3.7.x series.
This release contains one bug-fix:
- Fix a segmentation fault when resizing on Python 3.12 and macOS 14
3.7.3
This is the third bugfix release of the 3.7.x series.
This release contains several bug-fixes and adjustments:
* Add Python 3.12 wheels
* Update the license for the bundled colorbrewer colormap data
* Fix Cairo backend when using cairocffi
* Fix axes_grid1 inset axes with `bbox_inches=tight`
* Fix bugs in `Path3DCollection` / `Poly3DCollection` constructors
* Fix setting array labelcolor on Tick
* Improve compatibility with latest NumPy
* Stop warning when calling `tight_layout` multiple times
3.7.2
This is the second bugfix release of the 3.7.x series.
This release contains several bug-fixes and adjustments:
* Avoid modifying input masks in `pcolor`/`pcolormesh`
* Fix 3D set_aspect error cases
* Fix IPython's `%pylab` mode detection
* Fix `Figure.get_constrained_layout_pads()`
* Fix `Legend.set_draggable()` with `update="bbox"`
* Fix `TransformedBbox.{,full_}contains`
* Fix clipping of `bar_label` text
* Fix colorbar size when saving with explicit `bbox_inches`
* Fix errors when an input is entirely NaN
* Fix leaks of exception tracebacks and `LayoutGrid` objects
* Fix non-interpolated imshow in PDF export
* Fix palettized image optimization in PDF export
* Fix pgf tests with TeXLive 2022
* Fix removal of `Axes` that contain widgets that are grabbing the mouse
* Fix removal of draggable artists
* Fix subslice optimization for long, fully nan lines
* Fix tight layout if Figure has an existing layout manager
* Fix window extent of AnnotationBbox before first draw
* Fix wspace and hspace in subfigures
* Improve Qt compatibility
* Improve compatibility with Python 3.12
* Prevent under the hood downcasting of values in `xcorr`
* Remove some NumPy function overrides from `pylab`
* Remove warning with symlog scales on mouseover
3.7.1
This is the first bugfix release of the 3.7.x series.
This release contains several bug-fixes and adjustments:
* Ensure Qhull license is included in binary wheels
* Fix application of rcParams on Axes labels
* Fix compatibility with Pandas datetime unit converter
* Fix compatibility with latest GTK4
* Fix import of styles with relative path
* Fix Lasso unresponsiveness when clicking and immediately releasing
* Fix pickling of draggable legends
* Fix RangeSlider.set_val when new value is outside existing value
* Fix size of Tk spacers when changing display DPI
* Fix wrapped text in constrained layout
* Improve compatibility with third-party backends
* Improve error if animation save path does not exist
3.6.3
This is the third bugfix release of the 3.6.x series.
This release contains several bug-fixes and adjustments:
* Fix Artist removal from `axes_grid1` Axes classes
* Fix `inset_locator` in subfigures
* Fix `scatter` on masked arrays with units
* Fix colorbar ticks with log norm contours
* Fix deprecation warnings in GTK4 backend
* Fix using relative paths in `HTMLWriter`
* Improve failure message from rcParams string validation for tuple inputs
* Improve performance of QtAgg backends
* No longer modify `pil_kwargs` argument to `imsave` and `savefig`
3.6.2
This is the second bugfix release of the 3.6.x series.
This release contains several bug-fixes and adjustments:
* Avoid mutating dictionaries passed to `subplots`
* Fix `bbox_inches='tight'` on a figure with constrained layout enabled
* Fix auto-scaling of `ax.hist` density with `histtype='step'`
* Fix compatibility with PySide6 6.4
* Fix evaluating colormaps on non-NumPy arrays
* Fix key reporting in pick events
* Fix thread check on PyPy 3.8
* Handle input to `ax.bar` that is all NaN
* Make rubber band more visible on Tk and Wx backends
* Restore (and warn on) seaborn styles in `style.library`
* Restore `get_renderer` function in deprecated `tight_layout`
* nb/webagg: Fix resize handle on WebKit browsers (e.g., Safari)
3.6.1
This is the first bugfix release of the 3.6.x series.
This release contains several bug-fixes and adjustments:
* A warning is no longer raised when constrained layout explicitly
disabled and tight layout is applied
* Add missing `get_cmap` method to `ColormapRegistry`
* Adding a colorbar on a `ScalarMappable` that is not attached to an
`Axes` is now deprecated instead of raising a hard error
* Fix `barplot` being empty when first element is NaN
* Fix `FigureManager.resize` on GTK4
* Fix `fill_between` compatibility with NumPy 1.24 development version
* Fix `hexbin` with empty arrays and log scaling
* Fix `resize_event` deprecation warnings when creating figure on macOS
* Fix build in mingw
* Fix compatibility with PyCharm's interagg backend
* Fix crash on empty `Text` in PostScript backend
* Fix generic font families in SVG exports
* Fix horizontal colorbars with hatches
* Fix misplaced mathtext using `eqnarray`
* `stackplot` no longer changes the Axes cycler
3.5.3
This is the third bugfix release of the 3.5.x series.
This release contains several bug-fixes and adjustments:
* Fix alignment of over/under symbols
* Fix bugs in colorbars:
* alpha of extensions
* `drawedges=True` with extensions
* handling of `panchor=False`
* Fix builds on Cygwin and IBM i
* Fix contour labels in `SubFigure`s
* Fix cursor output:
* for `imshow` with all negative values
* when using `BoundaryNorm`
* Fix interactivity in IPython/Jupyter
* Fix NaN handling in `errorbar`
* Fix NumPy conversion from AstroPy unit arrays
* Fix positional *markerfmt* passed to `stem`
* Fix unpickling:
* crash loading in a separate process
* incorrect DPI when HiDPI screens
3.5.2
This is the second bugfix release of the 3.5.x series.
This release contains several bug-fixes and adjustments:
* Add support for Windows on ARM (source-only; no wheels provided yet)
* Add year to concise date formatter when displaying less than 12 months
* Disable `QuadMesh` mouse cursor to avoid severe performance regression in `pcolormesh`
* Delay backend selection to allow choosing one in more cases
* Fix automatic layout bugs in EPS output
* Fix autoscaling of `scatter` plots
* Fix clearing of subfigures
* Fix colorbar exponents, inversion of extensions, and use on inset axes
* Fix compatibility with various NumPy-like classes (e.g., Pandas, xarray, etc.)
* Fix constrained layout bugs with mixed subgrids
* Fix `errorbar` with dashes
* Fix errors in conversion to GTK4 and Qt6
* Fix figure options accidentally re-ordering data
* Fix keyboard focus of TkAgg backend
* Fix manual selection of contour labels
* Fix path effects on text with whitespace
* Fix `quiver` in subfigures
* Fix `RangeSlider.set_val` displaying incorrectly
* Fix regressions in collection data limits
* Fix `stairs` with no edgecolor
* Fix some leaks in Tk backends
* Fix tight layout DPI confusion
* Fix tool button customizability and some tool manager bugs
* Only set Tk HiDPI scaling-on-map for Windows systems
* Partially allow TTC font collection files by selecting the first font
3.5.1
This is the first bugfix release of the 3.5.x series.
This release contains several critical bug-fixes:
* fix installation issues when setting a default backend
* fix `add_lines` on horizontal colorbars
* fix `streamplot` with start points on right or top edge
* fix colorbars with boundaries or `NoNorm`
* fix colorbars with negative contours
* fix colorbars with tight layout
* fix setting Axis label alignment to center
* fix subfigure tight bounding box
* fix subplot parameter window on macosx backend
* fix unit handling in `Collections.set_offsets`
* fix unyt integration in `errorbar`
* re-display date offset in `ConciseDataFormatter` after zoom
* reduce `do_3d_projection` deprecation warnings in external artists
3.4.3
This is the third bugfix release of the 3.4.x series.
This release contains several critical bug-fixes:
* Clarify deprecation of `Axes.figbox`
* Disable `MultiCursor` widget on `Axes` subplots which it is not tracking
* Don't simplify path in `LineCollection.get_segments`
* Fix DPI in subfigures, affecting tick spacing, and scatter marker size
* Fix broken EPS output when using Type 42 STIX fonts
* Fix change in tick behaviour when calling `Axes.clear`
* Fix class docstrings for `Norm`s created from `Scale`s
* Fix compatibility with NumPy 1.21.0
* Fix crash on broken TrueType fonts
* Fix incorrect hits from `Path.intersects_path`
* Fix leak if affine_transform is passed invalid vertices
* Fix legends of `stackplot` with `edgecolors='face'`
* Fix plot directive when building in parallel
* Fix `supxlabel` and `supylabel` behaviour in constrained layout
* Fix tests with latest Inkscape and Ghostscript
* Improve `DateFormatter` styling for month names when `usetex=True`
* Re-disable autoscaling after interactive zoom
* Work around bug in Pillow 8.3.0
3.4.2
This is the second bugfix release of the 3.4.x series.
This release contains several critical bug-fixes:
* Generate wheels usable on older PyPy7.3.{0,1}
* Fix compatibility with Python 3.10
* Add `subplot_mosaic` Axes in the order the user gave them to us
* Correctly handle 'none' *facecolors* in `do_3d_projection`
* Ensure that Matplotlib is importable even if there's no HOME
* Fix `CenteredNorm` with *halfrange*
* Fix `bar_label` for bars with NaN values
* Fix clip paths when zoomed such that they are outside the figure
* Fix creation of `RangeSlider` with *valinit*
* Fix handling of "d" glyph in backend_ps, fixing EPS output
* Fix handling of datetime coordinates in `pcolormesh` with Pandas
* Fix processing of some `errorbar` arguments
* Fix removal of shared polar Axes
* Fix resetting grid visibility
* Fix subfigure indexing error and tight bbox
* Fix textbox cursor color
* Fix TkAgg event loop error on window close
* Ignore errors for sip with no setapi (Qt4Agg import errors)
3.4.1
This is the first bugfix release of the 3.4.x series.
This release contains several critical bug-fixes:
* fix errorbar when specifying fillstyle
* fix Inkscape cleanup at exit on Windows for tests
* fix legends of colour-mapped scatter plots
* fix positioning of annotation fancy arrows
* fix size and color rendering for 3D scatter plots
* fix suptitle manual positioning when using constrained layout
* respect antialiasing settings in cairo backends as well
3.4.0
Highlights of this release include:
- Figure and Axes creation / management
- New subfigure functionality
- Single-line string notation for `subplot_mosaic`
- Changes to behavior of Axes creation methods (`gca`, `add_axes`, `add_subplot`)
- `add_subplot`/`add_axes` gained an *axes_class* parameter
- Subplot and subplot2grid can now work with constrained layout
- Plotting methods
- `axline` supports transform parameter
- New automatic labeling for bar charts
- A list of hatches can be specified to `bar` and `barh`
- Setting `BarContainer` orientation
- Contour plots now default to using `ScalarFormatter`
- `Axes.errorbar` cycles non-color properties correctly
- `errorbar` *errorevery* parameter matches *markevery*
- `hexbin` supports data reference for *C* parameter
- Support callable for formatting of Sankey labels
- `Axes.spines` access shortcuts
- New `stairs` method and `StepPatch` artist
- Added *orientation* parameter for stem plots
- Angles on Bracket arrow styles
- `TickedStroke` patheffect
- Colors and colormaps
- Collection color specification and mapping
- Transparency (alpha) can be set as an array in collections
- pcolormesh has improved transparency handling by enabling snapping
- IPython representations for Colormap objects
- `Colormap.set_extremes` and `Colormap.with_extremes`
- Get under/over/bad colors of Colormap objects
- New `cm.unregister_cmap` function
- New `CenteredNorm` for symmetrical data around a center
- New `FuncNorm` for arbitrary normalizations
- GridSpec-based colorbars can now be positioned above or to the left of the main axes
- Titles, ticks, and labels
- supxlabel and supylabel
- Shared-axes `subplots` tick label visibility is now correct for top or left labels
- An iterable object with labels can be passed to `Axes.plot`
- Fonts and Text
- Text transform can rotate text direction
- `matplotlib.mathtext` now supports *overset* and *underset* LaTeX symbols
- *math_fontfamily* parameter to change `Text` font family
- `TextArea`/`AnchoredText` support *horizontalalignment*
- PDF supports URLs on Text artists
- rcParams improvements
- New rcParams for dates: set converter and whether to use interval_multiples
- Date formatters now respect *usetex* rcParam
- Setting *image.cmap* to a Colormap
- Tick and tick label colors can be set independently using rcParams
- 3D Axes improvements
- Errorbar method in 3D Axes
- Stem plots in 3D Axes
- 3D Collection properties are now modifiable
- Panning in 3D Axes
- Interactive tool improvements
- New `RangeSlider` widget
- Sliders can now snap to arbitrary values
- Pausing and Resuming Animations
- Sphinx extensions
- `plot_directive` *caption* option
- Backend-specific improvements
- Consecutive rasterized draws now merged
- Support raw/rgba frame format in `FFMpegFileWriter`
- nbAgg/WebAgg support middle-click and double-click
- nbAgg support binary communication
- Indexed color for PNG images in PDF files when possible
- Improved font subsettings in PDF/PS
- Kerning added to strings in PDFs
- Fully-fractional HiDPI in QtAgg
- wxAgg supports fullscreen toggle
3.4.0rc3
This is the third release candidate for Matplotlib 3.4.0.
3.4.0rc2
This is the second release candidate for Matplotlib 3.4.0.
3.4.0rc1
This is the first release candidate for Matplotlib 3.4.0.
3.3.4
This is the fourth bugfix release of the 3.3.x series.
This release contains several critical bug-fixes:
* Fix WebAgg initialization.
* Fix parsing `QT_API` setting with mixed case.
* Fix build with link-time optimization disabled in environment.
* Fix test compatibility with NumPy 1.20.
* Fix test compatibility with pytest 6.2.
3.3.3
This is the third bugfix release of the 3.3.x series.
This release contains several critical bug-fixes:
* Fix calls to `Axis.grid` with argument `visible=True`.
* Fix fully masked `imshow`.
* Fix inconsistent color mapping in scatter for 3D plots.
* Fix notebook/nbAgg figures when used with ipywidgets in the same cell.
* Fix notebook/nbAgg/WebAgg on older (e.g., Firefox ESR) browsers.
* Fix pcolormesh with `datetime` coordinates.
* Fix performance regression with `datetime`s.
* Fix singular ticks with small log ranges.
* Fix timers/animations on wx and notebook backends.
* Remove certifi as a hard runtime dependency.
3.3.2
This is the second bugfix release of the 3.3.x series.
This release contains several critical bug-fixes:
* fix `Axis` scale on twinned `Axes`
* fix auto-close of `Figure`s in nbagg
* fix automatic title placement if `Axes` is off the `Figure`
* fix autoranging of log scales with barstacked histogram
* fix extra redraws when using `Button` or `TextBox` widgets
* fix imshow with `LogNorm` and large vmin/vmax ranges
* fix plotting Pandas `DataFrame` with string `MultiIndex`
* fix `scatter` with `marker=''`
* fix `scatter3d` color/linewidth re-projection
* fix state of mode buttons in TkAgg backends
* include license files in built distribution
* reduce Visual C++ runtime requirements on Windows
3.3.1
This is the first bugfix release of the 3.3.x series.
This release contains several critical bug-fixes:
* fix docstring import issues when running Python with optimization
* fix `hist` with categorical data, such as with Pandas
* fix install on BSD systems
* fix nbagg compatibility with Chrome 84+
* fix ordering of scatter marker size in 3D plots
* fix performance regression when plotting `Path`s
* fix reading from URL in `imread`
* fix several regressions with new date epoch handling
* fix some bad constrained and tight layout interactions with colorbars
* fix use of customized toolbars in TkAgg and WXAgg backends
3.3.0
Highlights of this release include:
- Provisional API for composing semantic axes layouts from text or nested lists
- New Axes.sharex, Axes.sharey methods
- Turbo colormap
- colors.BoundaryNorm supports extend keyword argument
- Text color for legend labels
- Pcolor and Pcolormesh now accept shading='nearest' and 'auto'
- Allow tick formatters to be set with str or function inputs
- New Axes.axline method
- Dates use a modern epoch
- Improved font weight detection
- Axes3D no longer distorts the 3D plot to match the 2D aspect ratio
- More consistent toolbar behavior across backends
- Toolbar icons are now styled for dark themes
- Cursor text now uses a number of significant digits matching pointing precision
- Functions to compute a Path's size
- savefig() gained a backend keyword argument
- Saving SVG now supports adding metadata
- Saving PDF metadata via PGF now consistent with PDF backend
- NbAgg and WebAgg no longer use jQuery & jQuery UI
For the full details please see the [What's New](https://matplotlib.org/3.3.0/users/whats_new.html) and [API changes](https://matplotlib.org/3.3.0/api/api_changes.html) in the documentation.
3.2.2
This is the second bugfix release of the 3.2.x series.
This release contains several critical bug-fixes:
- support fractional HiDPI scaling with Qt backends
- support new Python and fix syntax errors in legacy Python
- support new Qt 5 and fix support for Qt 4
- fix animation writer fallback
- fix figure resizing
- fix handling of large arcs
- fix issues with tight layout
- fix saving figures after closing windows or under certain size conditions
- fix scatter when specifying a single color
- fix several memory leaks
- fix unexpected autoscaling behavior
- fix various issues with usetex
- various minor bug and documentation fixes
3.2.1
This is the first bugfix release of the 3.2.x series.
This release contains several critical bug-fixes:
- fix `Quiver.set_UVC` calls with scalar inputs
- fix `bezier.get_parallels` failure from floating point rounding errors
- fix markers specified as tuples (polygons, stars, or asterisks)
- fix saving PNGs to file objects in some places
- fix saving figures using the nbAgg/notebook backend
- fix saving with tight layout using the PGF backend
- fix setting custom datapath in rcParams (note: it is still deprecated)
- fix various issues running setup.py in non-CI environments
- fix xpdf distiller
- various minor bug and documentation fixes
3.2.0rc1
This is the first release candidate from Matplotlib 3.2
3.1.1
The first bug-fix release of the 3.1 series
* Locator.nonsingular return order API change
Lots of backports of various bug fixes.
Links
- PyPI: https://pypi.org/project/matplotlib
- Changelog: https://data.safetycli.com/changelogs/matplotlib/
Update msgpack from 1.0.2 to 1.0.8.
Changelog
1.0.8
=====
Release Date: 2024-03-01
* Update Cython to 3.0.8. This fixes memory leak when iterating
``Unpacker`` object on Python 3.12.
* Do not include C/Cython files in binary wheels.
1.0.7
=====
Release Date: 2023-09-28
* Fix build error of extension module on Windows. (567)
* ``setup.py`` doesn't skip build error of extension module. (568)
1.0.6
=====
Release Date: 2023-09-21
.. note::
v1.0.6 Wheels for Windows don't contain extension module.
Please upgrade to v1.0.7 or newer.
* Add Python 3.12 wheels (517)
* Remove Python 2.7, 3.6, and 3.7 support
1.0.5
=====
Release Date: 2023-03-08
* Use ``__BYTE_ORDER__`` instead of ``__BYTE_ORDER`` for portability. (513, 514)
* Add Python 3.11 wheels (517)
* fallback: Fix packing multidimensional memoryview (527)
1.0.4
=====
Release Date: 2022-06-03
* Support Python 3.11 (beta).
* Don't define `__*_ENDIAN__` macro on Unix. by methane in https://github.com/msgpack/msgpack-python/pull/495
* Use PyFloat_Pack8() on Python 3.11a7 by vstinner in https://github.com/msgpack/msgpack-python/pull/499
* Fix Unpacker max_buffer_length handling by methane in https://github.com/msgpack/msgpack-python/pull/506
1.0.3
=====
Release Date: 2021-11-24 JST
* Fix Docstring (459)
* Fix error formatting (463)
* Improve error message about strict_map_key (485)
Links
- PyPI: https://pypi.org/project/msgpack
- Changelog: https://data.safetycli.com/changelogs/msgpack/
Update numpy from 1.21.2 to 2.1.0.
Changelog
2.1
3.13. This support was enabled by fixing a number of C thread-safety
issues in NumPy. Before NumPy 2.1, NumPy used a large number of C global
static variables to store runtime caches and other state. We have either
refactored to avoid the need for global state, converted the global
state to thread-local state, or added locking.
Support for free-threaded Python does not mean that NumPy is thread
safe. Read-only shared access to ndarray should be safe. NumPy exposes
shared mutable state and we have not added any locking to the array
object itself to serialize access to shared state. Care must be taken in
user code to avoid races if you would like to mutate the same array in
multiple threads. It is certainly possible to crash NumPy by mutating an
array simultaneously in multiple threads, for example by calling a ufunc
and the `resize` method simultaneously. For now our guidance is:
\"don\'t do that\". In the future we would like to provide stronger
guarantees.
Object arrays in particular need special care, since the GIL previously
provided locking for object array access and no longer does. See
[Issue 27199](https://github.com/numpy/numpy/issues/27199) for more information about object
arrays in the free-threaded build.
If you are interested in free-threaded Python, for example because you
have a multiprocessing-based workflow that you are interested in running
with Python threads, we encourage testing and experimentation.
If you run into problems that you suspect are because of NumPy, please
[open an issue](https://github.com/numpy/numpy/issues/new/choose),
checking first if the bug also occurs in the \"regular\" non-free-threaded CPython 3.13
build. Many threading bugs can also occur in code that releases
the GIL; disabling the GIL only makes it easier to hit threading bugs.
([gh-26157](https://github.com/numpy/numpy/issues/26157#issuecomment-2233864940))
`f2py` can generate freethreading-compatible C extensions
Pass `--freethreading-compatible` to the f2py CLI tool to produce a C
extension marked as compatible with the free threading CPython
interpreter. Doing so prevents the interpreter from re-enabling the GIL
at runtime when it imports the C extension. Note that `f2py` does not
analyze fortran code for thread safety, so you must verify that the
wrapped fortran code is thread safe before marking the extension as
compatible.
([gh-26981](https://github.com/numpy/numpy/pull/26981))
- `numpy.reshape` and `numpy.ndarray.reshape` now support `shape` and
`copy` arguments.
([gh-26292](https://github.com/numpy/numpy/pull/26292))
- NumPy now supports DLPack v1, support for older versions will be
deprecated in the future.
([gh-26501](https://github.com/numpy/numpy/pull/26501))
- `numpy.asanyarray` now supports `copy` and `device` arguments,
matching `numpy.asarray`.
([gh-26580](https://github.com/numpy/numpy/pull/26580))
- `numpy.printoptions`, `numpy.get_printoptions`, and
`numpy.set_printoptions` now support a new option, `override_repr`,
for defining custom `repr(array)` behavior.
([gh-26611](https://github.com/numpy/numpy/pull/26611))
- `numpy.cumulative_sum` and `numpy.cumulative_prod` were added as
Array API compatible alternatives for `numpy.cumsum` and
`numpy.cumprod`. The new functions can include a fixed initial
(zeros for `sum` and ones for `prod`) in the result.
([gh-26724](https://github.com/numpy/numpy/pull/26724))
- `numpy.clip` now supports `max` and `min` keyword arguments which
are meant to replace `a_min` and `a_max`. Also, for `np.clip(a)` or
`np.clip(a, None, None)` a copy of the input array will be returned
instead of raising an error.
([gh-26724](https://github.com/numpy/numpy/pull/26724))
- `numpy.astype` now supports `device` argument.
([gh-26724](https://github.com/numpy/numpy/pull/26724))
Improvements
`histogram` auto-binning now returns bin sizes \>=1 for integer input data
For integer input data, bin sizes smaller than 1 result in spurious
empty bins. This is now avoided when the number of bins is computed
using one of the algorithms provided by `histogram_bin_edges`.
([gh-12150](https://github.com/numpy/numpy/pull/12150))
`ndarray` shape-type parameter is now covariant and bound to `tuple[int, ...]`
Static typing for `ndarray` is a long-term effort that continues with
this change. It is a generic type with type parameters for the shape and
the data type. Previously, the shape type parameter could be any value.
This change restricts it to a tuple of ints, as one would expect from
using `ndarray.shape`. Further, the shape-type parameter has been
changed from invariant to covariant. This change also applies to the
subtypes of `ndarray`, e.g. `numpy.ma.MaskedArray`. See the
[typing docs](https://typing.readthedocs.io/en/latest/reference/generics.html#variance-of-generic-types)
for more information.
([gh-26081](https://github.com/numpy/numpy/pull/26081))
`np.quantile` with method `closest_observation` chooses nearest even order statistic
This changes the definition of nearest for border cases from the nearest
odd order statistic to nearest even order statistic. The numpy
implementation now matches other reference implementations.
([gh-26656](https://github.com/numpy/numpy/pull/26656))
`lapack_lite` is now thread safe
NumPy provides a minimal low-performance version of LAPACK named
`lapack_lite` that can be used if no BLAS/LAPACK system is detected at
build time.
Until now, `lapack_lite` was not thread safe. Single-threaded use cases
did not hit any issues, but running linear algebra operations in
multiple threads could lead to errors, incorrect results, or segfaults
due to data races.
We have added a global lock, serializing access to `lapack_lite` in
multiple threads.
([gh-26750](https://github.com/numpy/numpy/pull/26750))
The `numpy.printoptions` context manager is now thread and async-safe
In prior versions of NumPy, the printoptions were defined using a
combination of Python and C global variables. We have refactored so the
state is stored in a python `ContextVar`, making the context manager
thread and async-safe.
([gh-26846](https://github.com/numpy/numpy/pull/26846))
Type hinting `numpy.polynomial`
Starting from the 2.1 release, PEP 484 type annotations have been
included for the functions and convenience classes in `numpy.polynomial`
and its sub-packages.
([gh-26897](https://github.com/numpy/numpy/pull/26897))
Improved `numpy.dtypes` type hints
The type annotations for `numpy.dtypes` are now a better reflection of
the runtime: The `numpy.dtype` type-aliases have been replaced with
specialized `dtype` *subtypes*, and the previously missing annotations
for `numpy.dtypes.StringDType` have been added.
([gh-27008](https://github.com/numpy/numpy/pull/27008))
Performance improvements and changes
- `numpy.save` now uses pickle protocol version 4 for saving arrays
with object dtype, which allows for pickle objects larger than 4GB
and improves saving speed by about 5% for large arrays.
([gh-26388](https://github.com/numpy/numpy/pull/26388))
- OpenBLAS on x86_64 and i686 is built with fewer kernels. Based on
benchmarking, there are 5 clusters of performance around these
kernels: `PRESCOTT NEHALEM SANDYBRIDGE HASWELL SKYLAKEX`.
([gh-27147](https://github.com/numpy/numpy/pull/27147))
- OpenBLAS on windows is linked without quadmath, simplifying
licensing
([gh-27147](https://github.com/numpy/numpy/pull/27147))
- Due to a regression in OpenBLAS on windows, the performance
improvements when using multiple threads for OpenBLAS 0.3.26 were
reverted.
([gh-27147](https://github.com/numpy/numpy/pull/27147))
`ma.cov` and `ma.corrcoef` are now significantly faster
The private function has been refactored along with `ma.cov` and
`ma.corrcoef`. They are now significantly faster, particularly on large,
masked arrays.
([gh-26285](https://github.com/numpy/numpy/pull/26285))
Changes
- As `numpy.vecdot` is now a ufunc it has a less precise signature.
This is due to the limitations of ufunc\'s typing stub.
([gh-26313](https://github.com/numpy/numpy/pull/26313))
- `numpy.floor`, `numpy.ceil`, and `numpy.trunc` now won\'t perform
casting to a floating dtype for integer and boolean dtype input
arrays.
([gh-26766](https://github.com/numpy/numpy/pull/26766))
`ma.corrcoef` may return a slightly different result
A pairwise observation approach is currently used in `ma.corrcoef` to
calculate the standard deviations for each pair of variables. This has
been changed as it is being used to normalise the covariance, estimated
using `ma.cov`, which does not consider the observations for each
variable in a pairwise manner, rendering it unnecessary. The
normalisation has been replaced by the more appropriate standard
deviation for each variable, which significantly reduces the wall time,
but will return slightly different estimates of the correlation
coefficients in cases where the observations between a pair of variables
are not aligned. However, it will return the same estimates in all other
cases, including returning the same correlation matrix as `corrcoef`
when using a masked array with no masked values.
([gh-26285](https://github.com/numpy/numpy/pull/26285))
Cast-safety fixes in `copyto` and `full`
`copyto` now uses NEP 50 correctly and applies this to its cast safety.
Python integer to NumPy integer casts and Python float to NumPy float
casts are now considered \"safe\" even if assignment may fail or
precision may be lost. This means the following examples change
slightly:
- `np.copyto(int8_arr, 1000)` previously performed an unsafe/same-kind cast
of the Python integer. It will now always raise, to achieve an
unsafe cast you must pass an array or NumPy scalar.
- `np.copyto(uint8_arr, 1000, casting="safe")` will raise an
OverflowError rather than a TypeError due to same-kind casting.
- `np.copyto(float32_arr, 1e300, casting="safe")` will overflow to
`inf` (float32 cannot hold `1e300`) rather raising a TypeError.
Further, only the dtype is used when assigning NumPy scalars (or 0-d
arrays), meaning that the following behaves differently:
- `np.copyto(float32_arr, np.float64(3.0), casting="safe")` raises.
- `np.coptyo(int8_arr, np.int64(100), casting="safe")` raises.
Previously, NumPy checked whether the 100 fits the `int8_arr`.
This aligns `copyto`, `full`, and `full_like` with the correct NumPy 2
behavior.
([gh-27091](https://github.com/numpy/numpy/pull/27091))
Checksums
MD5
2323404663c0b2a86362319d7526eb80 numpy-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl
3d4bca8d05eb1eba859e77ff8f91d843 numpy-2.1.0-cp310-cp310-macosx_11_0_arm64.whl
9bd065f147dbf3f2d59ab57bff4f0074 numpy-2.1.0-cp310-cp310-macosx_14_0_arm64.whl
47d177533511901cd6bf77f72cbd3d6e numpy-2.1.0-cp310-cp310-macosx_14_0_x86_64.whl
530b7f38f64216f1322b39bc50f36c0c numpy-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
d2a3161a10811a675a29a63e25636d83 numpy-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
4e9fb20b080f7931791da71708740b83 numpy-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl
776eb610795d63217980a36eb23bf268 numpy-2.1.0-cp310-cp310-musllinux_1_2_aarch64.whl
8328b9e2afa4013aaf3e4963349445e2 numpy-2.1.0-cp310-cp310-win32.whl
e3184b9979192c8d7b80deb2af16d6bb numpy-2.1.0-cp310-cp310-win_amd64.whl
54571aef9d9081e35bebef10f8d64e75 numpy-2.1.0-cp311-cp311-macosx_10_9_x86_64.whl
841dac2386c1da870a384b64cd31e32b numpy-2.1.0-cp311-cp311-macosx_14_0_arm64.whl
0fe85239ebe336d2baaddcb0ed001dc7 numpy-2.1.0-cp311-cp311-macosx_14_0_x86_64.whl
772a55a6c46f7b643af4640c2ca68d70 numpy-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
64fefbc527229521cf2a516b778b8aa7 numpy-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5cdb3d262d8c513b0f08cd1b6ba48512 numpy-2.1.0-cp311-cp311-musllinux_1_1_x86_64.whl
16140f5de42e87d84b80c350fd014893 numpy-2.1.0-cp311-cp311-musllinux_1_2_aarch64.whl
5e37df534d167af1966e099e0be9d94a numpy-2.1.0-cp311-cp311-win32.whl
ee443aa000621bed8bb2d6a94afd89b5 numpy-2.1.0-cp311-cp311-win_amd64.whl
d8c911fc34a8dad4ed821036563b5758 numpy-2.1.0-cp312-cp312-macosx_10_9_x86_64.whl
ec25d637c43ae8229052e62a4f40f2d2 numpy-2.1.0-cp312-cp312-macosx_11_0_arm64.whl
67c7abca3d0339f17a8543abc0e7bf11 numpy-2.1.0-cp312-cp312-macosx_14_0_arm64.whl
0d36ec6a64cbef1d727eb608a236ad2c numpy-2.1.0-cp312-cp312-macosx_14_0_x86_64.whl
0eedab574a3b75ec237be910e9717153 numpy-2.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
73dd2a5d0c85007bf5fdb4b7f66b8451 numpy-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
94fb0cfbc647a34177c766570fad752b numpy-2.1.0-cp312-cp312-musllinux_1_1_x86_64.whl
de3efbbcd792a1f82d0e3e175ea02ca9 numpy-2.1.0-cp312-cp312-musllinux_1_2_aarch64.whl
9a63ebbfb3c4c6eba77ef0723a5dc86f numpy-2.1.0-cp312-cp312-win32.whl
c68bc27545ac68c54935a1d0278b18f6 numpy-2.1.0-cp312-cp312-win_amd64.whl
f2795bb974af42e2723e32af9b14b66d numpy-2.1.0-cp313-cp313-macosx_10_13_x86_64.whl
2f7426b06a332ea7a20159f3c06d67d1 numpy-2.1.0-cp313-cp313-macosx_11_0_arm64.whl
fcef18e031fc8588227023bac55d9636 numpy-2.1.0-cp313-cp313-macosx_14_0_arm64.whl
cbb5ca4dc798ea397344c93a2549e73e numpy-2.1.0-cp313-cp313-macosx_14_0_x86_64.whl
573213bea3a67452a310355adc7c6aa1 numpy-2.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
24f8c8a1235aeaedb8f154a984b3c78b numpy-2.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b2ef762c0ebb02b58a339c1e38f032b2 numpy-2.1.0-cp313-cp313-musllinux_1_1_x86_64.whl
50e68cbfeb330aff607969c30251632d numpy-2.1.0-cp313-cp313-musllinux_1_2_aarch64.whl
21228342cd1b4ff8c7ec1aea45c07186 numpy-2.1.0-cp313-cp313-win32.whl
8d234b05f0c4faf7b9884a1f0f19c23d numpy-2.1.0-cp313-cp313-win_amd64.whl
e0c19ca29fa8e8e051107cd36b978f05 numpy-2.1.0-cp313-cp313t-macosx_10_13_x86_64.whl
98756f2ff9adc2cf374c28db77e28312 numpy-2.1.0-cp313-cp313t-macosx_11_0_arm64.whl
69786349d1f392dc6ac3fe00271e941b numpy-2.1.0-cp313-cp313t-macosx_14_0_arm64.whl
4d1481bcb17aaebfc785e005455da223 numpy-2.1.0-cp313-cp313t-macosx_14_0_x86_64.whl
1d403eda14369ab023d5ae1c15dce25c numpy-2.1.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
cdeece2cd6508eeee5a4c3150b58ec59 numpy-2.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
85347b754d8324c508f7aeb7de243feb numpy-2.1.0-cp313-cp313t-musllinux_1_1_x86_64.whl
6ff18d36d0940de6c1cc962a61b44bd5 numpy-2.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl
2f7d60a99c236a8f909bd86b8ed1e3a4 numpy-2.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
dc610133d9f09e5b3d396859e75c5593 numpy-2.1.0-pp310-pypy310_pp73-macosx_14_0_x86_64.whl
6a2883ee5b16ab5c031037cc63c20e9b numpy-2.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c914ba2fe3fcdcd04c8fe6a8374ea5fb numpy-2.1.0-pp310-pypy310_pp73-win_amd64.whl
4cb2230ffa1cc41329ae29bd69ee08de numpy-2.1.0.tar.gz
SHA256
6326ab99b52fafdcdeccf602d6286191a79fe2fda0ae90573c5814cd2b0bc1b8 numpy-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl
0937e54c09f7a9a68da6889362ddd2ff584c02d015ec92672c099b61555f8911 numpy-2.1.0-cp310-cp310-macosx_11_0_arm64.whl
30014b234f07b5fec20f4146f69e13cfb1e33ee9a18a1879a0142fbb00d47673 numpy-2.1.0-cp310-cp310-macosx_14_0_arm64.whl
899da829b362ade41e1e7eccad2cf274035e1cb36ba73034946fccd4afd8606b numpy-2.1.0-cp310-cp310-macosx_14_0_x86_64.whl
08801848a40aea24ce16c2ecde3b756f9ad756586fb2d13210939eb69b023f5b numpy-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
398049e237d1aae53d82a416dade04defed1a47f87d18d5bd615b6e7d7e41d1f numpy-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0abb3916a35d9090088a748636b2c06dc9a6542f99cd476979fb156a18192b84 numpy-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl
10e2350aea18d04832319aac0f887d5fcec1b36abd485d14f173e3e900b83e33 numpy-2.1.0-cp310-cp310-musllinux_1_2_aarch64.whl
f6b26e6c3b98adb648243670fddc8cab6ae17473f9dc58c51574af3e64d61211 numpy-2.1.0-cp310-cp310-win32.whl
f505264735ee074250a9c78247ee8618292091d9d1fcc023290e9ac67e8f1afa numpy-2.1.0-cp310-cp310-win_amd64.whl
76368c788ccb4f4782