shankarpandala / lazypredict

Lazy Predict help build a lot of basic models without much code and helps understand which models works better without any parameter tuning
MIT License
2.86k stars 329 forks source link

Update gevent to 20.12.1 #296

Closed pyup-bot closed 3 years ago

pyup-bot commented 3 years ago

This PR updates gevent from 20.6.2 to 20.12.1.

Changelog ### 20.12.1 ``` ==================== Features -------- - Make :class:`gevent.Greenlet` objects function as context managers. When the ``with`` suite finishes, execution doesn't continue until the greenlet is finished. This can be a simpler alternative to a :class:`gevent.pool.Group` when the lifetime of greenlets can be lexically scoped. Suggested by André Caron. See :issue:`1324`. Bugfixes -------- - Make gevent's ``Semaphore`` objects properly handle native thread identifiers larger than can be stored in a C ``long`` on Python 3, instead of raising an ``OverflowError``. Reported by TheYOSH. See :issue:`1733`. ---- ``` ### 20.12.0 ``` ==================== Features -------- - Make worker threads created by :class:`gevent.threadpool.ThreadPool` install the :func:`threading.setprofile` and :func:`threading.settrace` hooks while tasks are running. This provides visibility to profiling and tracing tools like yappi. Reported by Suhail Muhammed. See :issue:`1678`. Bugfixes -------- - Incorrectly passing an exception *instance* instead of an exception *type* to `gevent.Greenlet.kill` or `gevent.killall` no longer prints an exception to stderr. See :issue:`1663`. - Make destroying a hub try harder to more forcibly stop loop processing when there are outstanding callbacks or IO operations scheduled. Thanks to Josh Snyder (:issue:`1686`) and Jan-Philip Gehrcke (:issue:`1669`). See :issue:`1686`. - Improve the ability to use monkey-patched locks, and `gevent.lock.BoundedSemaphore`, across threads, especially when the various threads might not have a gevent hub or any other active greenlets. In particular, this handles some cases that previously raised ``LoopExit`` or would hang. Note that this may not be reliable on PyPy on Windows; such an environment is not currently recommended. The semaphore tries to avoid creating a hub if it seems unnecessary, automatically creating one in the single-threaded case when it would block, but not in the multi-threaded case. While the differences should be correctly detected, it's possible there are corner cases where they might not be. If your application appears to hang acquiring semaphores, but adding a call to ``gevent.get_hub()`` in the thread attempting to acquire the semaphore before doing so fixes it, please file an issue. See :issue:`1698`. - Make error reporting when a greenlet suffers a `RecursionError` more reliable. Reported by Dan Milon. See :issue:`1704`. - gevent.pywsgi: Avoid printing an extra traceback ("TypeError: not enough arguments for format string") to standard error on certain invalid client requests. Reported by Steven Grimm. See :issue:`1708`. - Add support for PyPy2 7.3.3. See :issue:`1709`. - Python 2: Make ``gevent.subprocess.Popen.stdin`` objects have a ``write`` method that guarantees to write the entire argument in binary, unbuffered mode. This may require multiple trips around the event loop, but more closely matches the behaviour of the Python 2 standard library (and gevent prior to 1.5). The number of bytes written is still returned (instead of ``None``). See :issue:`1711`. - Make `gevent.pywsgi` stop trying to enforce the rules for reading chunked input or ``Content-Length`` terminated input when the connection is being upgraded, for example to a websocket connection. Likewise, if the protocol was switched by returning a ``101`` status, stop trying to automatically chunk the responses. Reported by Kavindu Santhusa. See :issue:`1712`. - Remove the ``__dict__`` attribute from `gevent.socket.socket` objects. The standard library socket do not have a ``__dict__``. Noticed by Carson Ip. As part of this refactoring, share more common socket code between Python 2 and Python 3. See :issue:`1724`. ---- ``` ### 20.9.0 ``` =================== Features -------- - The embedded libev is now asked to detect the availability of ``clock_gettime`` and use the realtime and/or monotonic clocks, if they are available. On Linux, this can reduce the number of system calls libev makes. Originally provided by Josh Snyder. See :issue:`1648`. Bugfixes -------- - On CPython, depend on greenlet >= 0.4.17. This version is binary incompatible with earlier releases on CPython 3.7 and later. On Python 3.7 and above, the module ``gevent.contextvars`` is no longer monkey-patched into the standard library. contextvars are now both greenlet and asyncio task local. See :issue:`1656`. See :issue:`1674`. - The ``DummyThread`` objects created automatically by certain operations when the standard library threading module is monkey-patched now match the naming convention the standard library uses ("Dummy-12345"). Previously (since gevent 1.2a2) they used "DummyThread-12345". See :issue:`1659`. - Fix compatibility with dnspython 2. .. caution:: This currently means that it can be imported. But it cannot yet be used. gevent has a pinned dependency on dnspython < 2 for now. See :issue:`1661`. ---- ```
Links - PyPI: https://pypi.org/project/gevent - Changelog: https://pyup.io/changelogs/gevent/ - Homepage: http://www.gevent.org/