X Tutup
The Wayback Machine - https://web.archive.org/web/20220905031424/https://github.com/python/cpython/commits/main
Skip to content
Permalink
main
Switch branches/tags

Commits on Sep 5, 2022

  1. gh-93973: Add all_errors to asyncio.create_connection (#93974)

    Co-authored-by: Oleg Iarygin <dralife@yandex.ru>
    pamelafox and arhadthedev committed Sep 5, 2022

Commits on Sep 4, 2022

  1. gh-95778: Correctly pre-check for int-to-str conversion (#96537)

    Converting a large enough `int` to a decimal string raises `ValueError` as expected. However, the raise comes _after_ the quadratic-time base-conversion algorithm has run to completion. For effective DOS prevention, we need some kind of check before entering the quadratic-time loop. Oops! =)
    
    The quick fix: essentially we catch _most_ values that exceed the threshold up front. Those that slip through will still be on the small side (read: sufficiently fast), and will get caught by the existing check so that the limit remains exact.
    
    The justification for the current check. The C code check is:
    ```c
    max_str_digits / (3 * PyLong_SHIFT) <= (size_a - 11) / 10
    ```
    
    In GitHub markdown math-speak, writing $M$ for `max_str_digits`, $L$ for `PyLong_SHIFT` and $s$ for `size_a`, that check is:
    $$\left\lfloor\frac{M}{3L}\right\rfloor \le \left\lfloor\frac{s - 11}{10}\right\rfloor$$
    
    From this it follows that
    $$\frac{M}{3L} < \frac{s-1}{10}$$
    hence that
    $$\frac{L(s-1)}{M} > \frac{10}{3} > \log_2(10).$$
    So
    $$2^{L(s-1)} > 10^M.$$
    But our input integer $a$ satisfies $|a| \ge 2^{L(s-1)}$, so $|a|$ is larger than $10^M$. This shows that we don't accidentally capture anything _below_ the intended limit in the check.
    
    <!-- gh-issue-number: gh-95778 -->
    * Issue: gh-95778
    <!-- /gh-issue-number -->
    
    Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org>
    mdickinson and gpshead committed Sep 4, 2022
  2. no-issue: Fix typo in 3.11.0a7.rst (gh-96547)

    accross -> across
    eltociear committed Sep 4, 2022
  3. gh-68163: Correct conversion of Rational instances to float (GH-25619)

    * gh-68163: Correct conversion of Rational instances to float
    
    Also document that numerator/denominator properties are instances of Integral.
    
    Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
    skirpichev and mdickinson committed Sep 4, 2022
  4. gh-93884: Improve test coverage of PyNumber_ToBase (GH-93932)

    Link to #93884 
    * Test with some large negative and positive values(out of range of a longlong,i.e.[-2\*\*63, 2\*\*63-1])
    * Test with objects of non-int type
    
    Automerge-Triggered-By: GH:mdickinson
    CharlieZhao95 committed Sep 4, 2022
  5. gh-95778: remove unneeded doc note on float.as_integer_ratio (#96553)

    Per mdickinson@'s comment on the main branch PR.
    gpshead committed Sep 4, 2022

Commits on Sep 2, 2022

  1. bpo-30419: DOC: Update missing information in bdb docs (#1687)

    Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
    Co-authored-by: Martin Panter <vadmium@users.noreply.github.com>
    Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
    4 people committed Sep 2, 2022
  2. gh-95180: Add TaskGroup and Runner to AsyncIO API Index (#95189)

    Also rearrange some items in the list.
    
    Co-authored-by: Thomas Grainger <tagrain@gmail.com>
    siphc and graingert committed Sep 2, 2022
  3. gh-95778: CVE-2020-10735: Prevent DoS by very large int() (#96499)

    Integer to and from text conversions via CPython's bignum `int` type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of digits can consume several CPU seconds.
    
    This PR comes fresh from a pile of work done in our private PSRT security response team repo.
    
    Signed-off-by: Christian Heimes [Red Hat] <christian@python.org>
    Tons-of-polishing-up-by: Gregory P. Smith [Google] <greg@krypto.org>
    Reviews via the private PSRT repo via many others (see the NEWS entry in the PR).
    
    <!-- gh-issue-number: gh-95778 -->
    * Issue: gh-95778
    <!-- /gh-issue-number -->
    
    I wrote up [a one pager for the release managers](https://docs.google.com/document/d/1KjuF_aXlzPUxTK4BMgezGJ2Pn7uevfX7g0_mvgHlL7Y/edit#). Much of that text wound up in the Issue. Backports PRs already exist. See the issue for links.
    gpshead committed Sep 2, 2022

Commits on Sep 1, 2022

  1. gh-96168: Improve sqlite3 dict_factory example (#96457)

    Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
    Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
    3 people committed Sep 1, 2022
  2. gh-96143: subprocess API %s/universal_newlines=/text=/g. (GH-96468)

    minor missed test cleanup to use the modern API from the big review.
    
    Automerge-Triggered-By: GH:gpshead
    gpshead committed Sep 1, 2022

Commits on Aug 30, 2022

  1. gh-96143: Add some comments and minor fixes missed in the original PR (

    …#96433)
    
    * gh-96132: Add some comments and minor fixes missed in the original PR
    
    * Update Doc/using/cmdline.rst
    
    Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
    
    Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
    pablogsal and kumaraditya303 committed Aug 30, 2022
  2. Automatically update more GitHub projects. (#94921)

    * Automatically update the `asyncio` GitHub project.
    
    * Use a matrix to add issues to projects.
    
    * Remove trailing whitespace.
    
    Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
    
    Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
    ezio-melotti and hugovk committed Aug 30, 2022
  3. gh-95149: Enhance http.HTTPStatus with properties that indicate the…

    … HTTP status category (GH-95453)
    alexei committed Aug 30, 2022
Older
X Tutup