python-gevent-doc-1.2.2-150000.5.3.1 >  A evp9|Vi)q Y ł@]ZT!4ܴu96[M$.}ٷYNz9e5Z:8, j斾?7ʉG sz$9Hl良׍#;ճ*7W~9:!'{3cC5+(c09a6fb6a8e2ba59ff4067e234241d7a973afd17d354910d004aa25a422dfff64c327cda42733477b5223565e3e5a24a1df31daehevp9|+YFXJPڌvs P`B;I=U#&<'x*4`#4(t2@m9n5ҕ6*r=MNGʯۯ~*:`5upW>%lrWQcʝkIƛʇLoLh.-Q{`_. Fixed in :pr:`809` by Fredrix Fornwall. + Security * :mod:`gevent.pywsgi` now checks that the values passed to ``start_response`` do not contain a carriage return or newline in order to prevent HTTP response splitting (header injection), raising a :exc:`ValueError` if they do. See :issue:`775`. * Incoming headers containing an underscore are no longer placed in the WSGI environ. See :issue:`819`. * Errors logged by :class:`~gevent.pywsgi.WSGIHandler` no longer print the entire WSGI environment by default. This avoids possible information disclosure vulnerabilities. Applications can also opt-in to a higher security level for the WSGI environment if they choose and their frameworks support it. Originally reported in :pr:`779` by sean-peters-au and changed in :pr:`781`. + Platforms * As mentioned above, Python 2.6 is no longer supported. * Python 3.6 is now tested on POSIX platforms. This includes a few notable changes: * SSLContext.wrap_socket accepts the ``session`` parameter, though this parameter isn't useful prior to 3.6. * SSLSocket.recv(0) or read(0) returns an empty byte string. This is a fix for `Python bug #23804 `_ which has also been merged into Python 2.7 and Python 3.5. * PyPy3 5.5.0 *alpha* (supporting Python 3.3.5) is now tested and passes the test suite. Thanks to btegs for :issue:`866`, and Fabio Utzig for :pr:`826`. Note that PyPy3 is not optimized for performance either by the PyPy developers or under gevent, so it may be significantly slower than PyPy2. + Stdlib Compatibility * The modules :mod:`gevent.os`, :mod:`gevent.signal` and :mod:`gevent.select` export all the attributes from their corresponding standard library counterpart. * Python 2: ``reload(site)`` no longer fails with a ``TypeError`` if gevent has been imported. Reported in :issue:`805` by Jake Hilton. * Python 2: ``sendall`` on a non-blocking socket could spuriously fail with a timeout. + select/poll * If :func:`gevent.select.select` is given a negative *timeout* argument, raise an exception like the standard library does. * If :func:`gevent.select.select` is given closed or invalid file descriptors in any of its lists, raise the appropriate ``EBADF`` exception like the standard library does. Previously, libev would tend to return the descriptor as ready. In the worst case, this adds an extra system call, but may also reduce latency if descriptors are ready at the time of entry. * :class:`selectors.SelectSelector` is properly monkey-patched regardless of the order of imports. Reported in :issue:`835` by Przemysław Węgrzyn. * :meth:`gevent.select.poll.unregister` raises an exception if *fd* is not registered, like the standard library. * :meth:`gevent.select.poll.poll` returns an event with ``POLLNVAL`` for registered fds that are invalid. Previously it would tend to report both read and write events. + File objects * ``FileObjectPosix`` exposes the ``read1`` method when in read mode, and generally only exposes methods appropriate to the mode it is in. * ``FileObjectPosix`` supports a *bufsize* of 0 in binary write modes. Reported in :issue:`840` by Mike Lang. * Python 3: :meth:`gevent.socket.connect_ex` was letting ``BlockingIOError`` (and possibly others) get raised instead of returning the errno due to the refactoring of the exception hierarchy in Python 3.3. Now the errno is returned. Reported in :issue:`841` by Dana Powers. + Other Changes * :class:`~.Group` and :class:`~.Pool` now return whether :meth:`~.Group.join` returned with an empty group. Suggested by Filippo Sironi in :pr:`503`. * Unhandled exception reports that kill a greenlet now include a timestamp. See :issue:`137`. * :class:`~.PriorityQueue` now ensures that an initial items list is a valid heap. Fixed in :pr:`793` by X.C.Dong. * :class:`gevent.hub.signal` (aka :func:`gevent.signal`) now verifies that its `handler` argument is callable, raising a :exc:`TypeError` if it isn't. Reported in :issue:`818` by Peter Renström. * If ``sys.stderr`` has been monkey-patched (not recommended), exceptions that the hub reports aren't lost and can still be caught. Reported in :issue:`825` by Jelle Smet. * The :func:`gevent.os.waitpid` function is cooperative in more circumstances. Reported in :issue:`878` by Heungsub Lee. * The various ``FileObject`` implementations are more consistent with each other. **Note:** Writing to the *io* property of a FileObject should be considered deprecated. * Timeout exceptions (and other asynchronous exceptions) could cause the BackdoorServer to fail to properly manage the stdout/stderr/stdin values. Reported with a patch in :pr:`874` by stefanmh. * The BackDoorServer now tracks spawned greenlets (connections) and kills them in its ``stop`` method. + Servers * Default to AF_INET6 when binding to all addresses (e.g., ""). This supports both IPv4 and IPv6 connections (except on Windows). Original change in :pr:`495` by Felix Kaiser. * pywsgi/performance: Chunks of data the application returns are no longer copied before being sent to the socket when the transfer-encoding is chunked, potentially reducing overhead for large responses. + Threads * Add :class:`gevent.threadpool.ThreadPoolExecutor` (a :class:`concurrent.futures.ThreadPoolExecutor` variant that always uses native threads even when the system has been monkey-patched) on platforms that have ``concurrent.futures`` available (Python 3 and Python 2 with the ``futures`` backport installed). This is helpful for, e.g., grpc. Reported in :issue:`786` by Markus Padourek. * Native threads created before monkey-patching threading can now be joined. Previously on Python < 3.4, doing so would raise a ``LoopExit`` error. Reported in :issue:`747` by Sergey Vasilyev. + SSL * On Python 2.7.9 and above (more generally, when the SSL backport is present in Python 2), :func:`gevent.ssl.get_server_certificate` would raise a :exc:`ValueError` if the system wasn't monkey-patched. Reported in :issue:`801` by Gleb Dubovik. * On Python 2.7.9 and Python 3, closing an SSL socket in one greenlet while it's being read from or written to in a different greenlet is less likely to raise a :exc:`TypeError` instead of a :exc:`ValueError`. Reported in :issue:`800` by Kevin Chen. + subprocess module * Setting SIGCHLD to SIG_IGN or SIG_DFL after :mod:`gevent.subprocess` had been used previously could not be reversed, causing ``Popen.wait`` and other calls to hang. Now, if SIGCHLD has been ignored, the next time :mod:`gevent.subprocess` is used this will be detected and corrected automatically. (This potentially leads to issues with :func:`os.popen` on Python 2, but the signal can always be reset again. Mixing the low-level process handling calls, low-level signal management and high-level use of :mod:`gevent.subprocess` is tricky.) Reported in :issue:`857` by Chris Utz. * ``Popen.kill`` and ``send_signal`` no longer attempt to send signals to processes that are known to be exited. + Several backwards compatible updates to the subprocess module have been backported from Python 3 to Python 2, making :mod:`gevent.subprocess` smaller, easier to maintain and in some cases safer. * Popen objects can be used as context managers even on Python 2. The high-level API functions (``call``, etc) use this for added safety. * The :mod:`gevent.subprocess` module now provides the :func:`gevent.subprocess.run` function in a cooperative way even when the system is not monkey patched, on all supported versions of Python. (It was added officially in Python 3.5.) * Popen objects save their *args* attribute even on Python 2. * :exc:`gevent.subprocess.TimeoutExpired` is defined even on Python 2, where it is a subclass of the :exc:`gevent.timeout.Timeout` exception; all instances where a ``Timeout`` exception would previously be thrown under Python 2 will now throw a ``TimeoutExpired`` exception. * :func:`gevent.subprocess.call` (and ``check_call``) accepts the * timeout* keyword argument on Python 2. This is standard on Python 3, but a gevent extension on Python 2. * :func:`gevent.subprocess.check_output` accepts the *timeout* and * input* arguments on Python 2. This is standard on Python 3, but a gevent extension on Python 2. - Implement single-spec version - Add rpmlintrc to deal with source files used by cffi.- update to 1.1.2: * Python 2: ``sendall`` on a non-blocking socket could spuriously fail with a timeout. * If ``sys.stderr`` has been monkey-patched (not recommended), exceptions that the hub reports aren't lost and can still be caught. Reported in :issue:`825` by Jelle Smet. * :class:`selectors.SelectSelector` is properly monkey-patched regardless of the order of imports. Reported in :issue:`835` by Przemysław Węgrzyn. * Python 2: ``reload(site)`` no longer fails with a ``TypeError`` if gevent has been imported. Reported in :issue:`805` by Jake Hilton. * Nested callbacks that set and clear an Event no longer cause ``wait`` to return prematurely. Reported in :issue:`771` by Sergey Vasilyev. * Fix build on Solaris 10. Reported in :issue:`777` by wiggin15. * The ``ref`` parameter to :func:`gevent.os.fork_and_watch` was being ignored. * Python 3: :class:`gevent.queue.Channel` is now correctly iterable, instead of raising a :exc:`TypeError`. * Python 3: Add support for :meth:`socket.socket.sendmsg`, :meth:`socket.socket.recvmsg` and :meth:`socket.socket.recvmsg_into` on platforms where they are defined. Initial :pr:`773` by Jakub Klama.- Update to 1.1.0 (final): * See changelog.rst for detailed informations- Update to 1.1rc3: * See changelog.rst for detailed informations- Bump once more to 1.1a1: * See changelog.rst for detailed informations * The py2.7 compat in 1.0.2 behaves weirdly on openSUSE, this release seems way nicer on that front- Version bump to 1.0.2: - Fix LifoQueue.peek() to return correct element. PR #456. Patch by Christine Spang. - Upgrade to libev 4.19 - Remove SSL3 entirely as default TLS protocol - Import socket on Windows (closes #459) - Fix C90 syntax error (PR #449) - Add compatibility with Python 2.7.9's SSL changes. Issue #477.- Update to 1.0.1 - Upgrade libev to 4.15. This fixes #361: installation on armv5. - Better support for win64. Patch by Alexey Borzenkov. - Fix #423: Pool's imap/imap_unordered could hang forever. Based on patch and test by Jianfei Wang. - Enable libev's check watchers. - Add dummy Event._reset_internal_locks() method. Only relevant if patch_all(Event=True) is enabled (non-default). - Backport new testrunner.py from master branch. - Removed upstream included libev.patchh04-ch1a 1695970960  !"#$%&'(1.2.2-150000.5.3.11.2.2-150000.5.3.11.2.21.2.2python-gevent-docexamplesconcurrent_download.pydns_mass_resolve.pyechoserver.pygeventsendfile.pyportforwarder.pyprocesses.pypsycopg2_pool.pyserver.crtserver.keythreadpool.pyudp_client.pyudp_server.pyunixsocket_client.pyunixsocket_server.pywebchatREADME__init__.pyapplication.pychat__init__.pyviews.pymanage.pyrun_standalone.pyrun_uwsgisettings.pystaticchat.csschat.jstemplates404.html500.htmlindex.htmlmessage.htmlurls.pywebproxy.pywebpy.pywsgiserver.pywsgiserver_ssl.py/usr/share/doc/packages//usr/share/doc/packages/python-gevent-doc//usr/share/doc/packages/python-gevent-doc/examples//usr/share/doc/packages/python-gevent-doc/examples/webchat//usr/share/doc/packages/python-gevent-doc/examples/webchat/chat//usr/share/doc/packages/python-gevent-doc/examples/webchat/static//usr/share/doc/packages/python-gevent-doc/examples/webchat/templates/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:30877/SUSE_SLE-15_Update/4fe1acdc279ef0b042ac12f1da795f22-python-gevent.SUSE_SLE-15_Updatecpioxz5x86_64-suse-linuxdirectoryPython script, ASCII text executableASCII textemptyPOSIX shell script, ASCII text executableHTML document, ASCII textUNLe0hutf-80694fcbd3efac627be4734ee3537a2ee6b89977a7cfa8bc06794761eddf9091d?P7zXZ !t/s0] crt:bLL VSN^xb* %Y -ej%HZ"7oxҫcYWNf($<B1.m+G'*լ뼐gc[+a˭k] Fu1|k8o쎿Sn4''αaw#9>]-4L eWAv~ipM74K ׎c9l_غFRAtk\﴾~>B)eӏ*#{&) r|4`+0gQaPt vSvWT&u._,p.2DlH2(*c8q[ȀrUs5Tӓ4L]@aV.t][N9bV$DB+o9rER)T$IӦd=mP0Q2 c:ޓIf41gٺ%¯{Pi Y \o0&ABKք]k>QU@x:uw䨓Ӕ8u^l7ritR`2Q.2P-CoIhp`#F=A+:r Ű`hxV4 N$ҾCQz]37 7zM(ʾj7S-I[S<KC&K?' q~ q<}gD*+po*(:jcqg)`(HM/Oq4a2obw٣^YF.Uۉ7b{fvzezGHq?YE2e/i9S ʕ]|6h?S>ՏD[w)8О͇J@0涕l9AckO-ii_Zh2!_.|APXC`Ȥ5ݪ d=oDēfO"k!* yv< }.5dceO?{1ju脔y0SB` o=*4u%B{)UsYήx,-,+TB>.#,+;:JVR"C[3Al-ģޝ^Ƥ1yۏ=gX?ݑ+/~y4up--k1,EuȾ{5G@* LHE9zۤ]Dmòx.NxKrJuVH^:-ز5qRe܍Bׯʓ7BQMf(`:8̸&gIf`UM#{yqտڕsRLէlf;"-!g d*Ő2a"˪|#'t;{MZ):zFV@*|H%)\KA{P5mWuG _i6z J :WtL'p_M^n?’󐈒͵sV!|zJ*H{:Lm}; l^y* );kx,l";Zɐ^f)D1B^BfSRAFNؗׯ8UV>0U]x+7ɰF!m:o"CQG)6h4F*:'CumSCUgt` W%hwcB)M+h#fo9l )>Gzo%F˙eۗ;bV ׁ .h}kh|YB y<8rV:"4j+|iˋ|:s7e,8bwoW5/\wMp O98<)H\r\)gBDȺJ;@PgĦ쪗42BpXI7.xg5D*vWCdV1% +4<[Tހ|ߝz&-7 %@~"ޥ"D2Ҍ |`V"hGlTL  =c6(B(2^u{C_Mٵa-VV8_ǔ Rt`3@AHK(z,=rmzU@Pq5=ŗb;$_lS6PȾۊl5-ѽ`kh)㜱waQ3u <;` VX-X1 CRQ>2%mKq=II#TZc2뎷|M0EIGgWZK_>ACgnAKhӌAnO\5Dgo+j쿈=I6SB"Ml2 .4wl~:M9ғQJ$(@M7}*6}ZO䕐§bn|q"/hLi7ne1/EW%dXvX^rג#[C "sΜX05VYvQ 'kgoF|q>H҆GTXuC# sX16/i+%!9]1@ͣ6 s^i N7;?ҧt#lҋo+#‡\AY\=֗OB5-GԻnA,_UΈ3GۮT;_) |:3juW$g8S557MwCeyѥ!z[*إ &c^l`|n}P+`߹bGuJa_!v%mt+/*8D&+k-X -ۙ%pP+LY~S"K]L˵V[F%dHDW琺(Bk '+} };zd^]p npȺyb-D%tZFߐ|q6xPk붚%LB> =vwlU -T澀W["7~rJ]/v\ȏ(r~W L8|BL3,v~!/W(c(į}!Uˎ ymm?3/ᐔ[ס uv]:1hP7<28LW\=(GӇ@.TLg D2=_JGa &2w"&;j k 9Tb} "^&A1c("6ѽ=R>3.4vҟJ4,J>1 ~6q3y/$F`! pww|H/]pR!ŷ>út wX횤Tn86 …$42ͼ;Q4@N$@# rv`Dν-wP:xiM߼K <w|kk>j=k2qAAR0{Zi8. ڈP)QE`ۗm)@^~XOD>ԒOOp޾ ]"߶8&X:Y۸wR=(lӁqYMd62b,ȖrZ5v7[ph+;rcS-*6y+1Jܯ$Dlxy5;Y0ػcιoӃyEX`ub%W7P,_,d|mp||,}`ZIx{#LKm#mtDцYsfXf+&7!8rDjڡao_ZEjDZ^aú0?ͺ74)ѥ+ڏ񇃌O_ )X&unI?8x3d=5Qp{<;.7ۖ"eZTT:vI3 ,"9vX, KKгsX{w9/I`A,!o AMBI/@0 K;U߳/‰{vADNjinGy0E /ƆVZ Do*>e4s"~IaF-YC#픅ԅ5~`\E)/GIaIATGrC@m;or/I&0@~@$;g*z,L6켎D݅5S׳[l]YO)QlyЮNMX["gu=/Rpsz%*٭ץx^X;Wz(2 /QZcş@8n~J8)~9<.rpKTDH(oRLpƒ蔏LT"j=EMARiQqˤ@ƶPJs;gKElEC=4 ]!'b5:ɨ*D}PFU*1<DXZ@೵^ᾪ&Qd z59o))j :$^J)CDߊO8ǩ~+aX&RLk6v4:%[0h}b)D%]|'nl,q| M=}e @/얽MΔ9G.uT5Fݭw5fdV:Svm`­bgD= ddVI]B'HdH#&[x:ÀX5M)_ d*Ϊ.\ *x[ QĞ} U(#CG31U:vϿcy)l2/<,.Oڪ>Z7DyƍpCeq{3K3`4`A L1~NP-0Xe#fq>V2< `9r };7a JYfcۤ|X4]Ih@aF&˘[ؠ&Q>$(x18@@ %<%<7?/ D&EFL-D>qMV6􎽚z1QN#7^d̂! GAnu E@㝣4tn_ᖁ_-a'`b,U}US~g~Hz!÷u'C|?W_A>Xz,X gcMC}V@65D+x+x$NvmG%F'ViHmo*dIPtCszB6;ΔIקYD~FgYi?p"o )2塈r &F$vKu_y :B'>e@F䜳dn匚~+wCaҢ~pGo\57r77f.m1& "?*4Y ۽kn`_ '=N$_Q$,E-~rw3"U5i0u)7^=+.?e?ͺDfR /MNXr}f=F/}8(PiKF%8.Zg!AiYQK9mLO~>%? hPukXʎqUfM!FHF@FX&U.'YS* 4(<_îM]kDD,IB \֪W2@X>((&.|zO{4%vS4 Cg^qG~ƾ1Dnct&RC׀6ϰe}ܔx6>Xk` Cl"6^:-%Dn?|sf~ŸԶl]~ U51\-~Rײթ10cS ]d҇E:l`4nfF `J=#&bzW9#S x*Wߕq#'߸cf͐I튝2_99B PgIVױV&)jH`"H`ؖ֎\7RDd7 ? xg O᪣1]2,Ox,~l<tESx*53YRĽRE"x!x?ޑ ẙ5 Y9TN!Pm2kоJn2..8>5T,9ZAOgc /G6V7ɂޙ2F8Y)ڴb[\\%k424ꝡxT;㦗G s.\CW%$re[Qlň[3pP>.H6?- x@Z6S'*6]iNHxv6\Z{ȅOɛ HLvaQ= B||4K'ƃN? OVGz[ԠX ύi; 5tbT_Y3t?|8tRBVڠbPq",U&"#AvlO+HP9\FAؐBRe,t)(aVr:i냇:l7`F0uvt2+8 ;|O֕@N=ka4}x{)r>h(4A fa4/Y>ޱT==ϛ$nf *CDAvylVB}n4T|PtmYvf} zkcKZNRB8݌;'uDrFcc46rIfws "YX- o.8` ,\qY>bPip.-"޸5cD AgF;@h%{p\wk}x,Y%<&Ed篈rВV^V4[e+"X.|Jc?I9戼tt>>Uu>&n$swKf!/mkN1#=sTyDkV.ì5k {.01obqIQO2?FbG=!@n%_(y Ȥ]mej|ZJSN)0On6ϗ~e6WR4Y NM : <ͳ0Q6?OQ/$-GWzY[m,JAeWS!m˵} gv M*2ėFYYA/~\QeR] >!lE+kOk t? :~ZN$ZGaj5P^d4F~ Y(-ԄkMtJYtF]xԛ^~/s[VvDQcn@~|bZS3R4M:+Pik^"v=W+R=kA~d*(R(C9yg;چ}d?1'b(NZ~ ̆ e<,p .Ț =tl)<|].0NhYA%ٷ_ KY3uH9E6Rd$.Ts72Hfϙ1l֐_(2P(]C uhǎVK+?9}i AY5ٽ4ذz""w6m 9u0Ͻ4z-t"X- zŤ BLYSr}BR::X *e&>bxcȅ/řk;)׸ bW¶ YZ