@@ -341,7 +341,11 @@ Other Language Changes
341
341
(Contributed by Nikita Sobolev in :gh: `100581 `.)
342
342
343
343
* :class: `slice ` objects are now hashable, allowing them to be used as dict keys and
344
- set items. (Contributed by Will Bradshaw and Furkan Onder in :gh: `101264 `.)
344
+ set items. (Contributed by Will Bradshaw, Furkan Onder, and Raymond Hettinger in :gh: `101264 `.)
345
+
346
+ * :func: `sum ` now uses Neumaier summation to improve accuracy when summing
347
+ floats or mixed ints and floats.
348
+ (Contributed by Raymond Hettinger in :gh: `100425 `.)
345
349
346
350
* Exceptions raised in a typeobject's ``__set_name__ `` method are no longer
347
351
wrapped by a :exc: `RuntimeError `. Context information is added to the
@@ -493,12 +497,24 @@ itertools
493
497
tuples where the last batch may be shorter than the rest.
494
498
(Contributed by Raymond Hettinger in :gh: `98363 `.)
495
499
500
+ json
501
+ ----
502
+
503
+ * Added :class: `json.AttrDict ` for use with ``object_hook `` in :func: `json.load `
504
+ or :func: `json.loads `. This is a subclass of :class: `dict ` that also supports
505
+ attribute style dotted access.
506
+ (Contributed by Raymond Hettinger in :gh: `96145 `.)
507
+
496
508
math
497
509
----
498
510
499
511
* Added :func: `math.sumprod ` for computing a sum of products.
500
512
(Contributed by Raymond Hettinger in :gh: `100485 `.)
501
513
514
+ * Extended :func: `math.nextafter ` to include a *steps * argument
515
+ for moving up or down multiple steps at a time.
516
+ (By Matthias Goergens, Mark Dickinson, and Raymond Hettinger in :gh: `94906 `.)
517
+
502
518
os
503
519
--
504
520
541
557
value.
542
558
(Contributed by Tian Gao in :gh: `103693 `.)
543
559
560
+ random
561
+ ------
562
+
563
+ * Added :func: `random.binomialvariate `.
564
+ (Contributed by Raymond Hettinger in :gh: `81620 `.)
565
+
566
+ * Added a default of ``lamb=1.0 `` to :func: `random.expovariate `.
567
+ (Contributed by Raymond Hettinger in :gh: `100234 `.)
568
+
544
569
shutil
545
570
------
546
571
@@ -594,6 +619,13 @@ sqlite3
594
619
to make configuration changes to a database connection.
595
620
(Contributed by Erlend E. Aasland in :gh: `103489 `.)
596
621
622
+ statistics
623
+ ----------
624
+
625
+ * Extended :func: `statistics.correlation ` to include as a ``ranked `` method
626
+ for computing the Spearman correlation of ranked data.
627
+ (Contributed by Raymond Hettinger in :gh: `95861 `.)
628
+
597
629
threading
598
630
---------
599
631
@@ -915,6 +947,7 @@ APIs:
915
947
* :func: `!unittest.makeSuite ` (:gh: `50096 `)
916
948
* :func: `!unittest.getTestCaseNames ` (:gh: `50096 `)
917
949
* :class: `!webbrowser.MacOSX ` (:gh: `86421 `)
950
+ * :class: `classmethod ` descriptor chaining (:gh: `89519 `)
918
951
919
952
Pending Removal in Python 3.14
920
953
------------------------------
0 commit comments