python-tornado-4.2.1-5.3.1<>,Z⸋/=„HO?7%%wY0V:UaX5 :(?:pֻUQyCskÉ y`!ȖNG]-v(8[ɏ`Y.[_yE!U1kB5#43??+6*DHJvryʇ}-Skl;#&Vϭ!۳إ`A~ۆsqF%S*PBr9Ax?gmUH<>=t?dd  l$/ He      -  . 2 7 < <0@0@l @ A (A8A&9B`&:E&FptGpHtIxXyYy\y]}^&bJcdefluv wdxdydzKPCpython-tornado4.2.15.3.1Open source version of scalable, non-blocking web server that power FriendFeedTornado is an open source version of the scalable, non-blocking web server and tools that power FriendFeed. The FriendFeed application is written using a web framework that looks a bit like web.py or Google's webapp, but with additional tools and optimizations to take advantage of the underlying non-blocking infrastructure. The framework is distinct from most mainstream web server frameworks (and certainly most Python frameworks) because it is non-blocking and reasonably fast. Because it is non-blocking and uses epoll, it can handle thousands of simultaneous standing connections, which means it is ideal for real-time web services. We built the web server specifically to handle FriendFeed's real-time features — every active user of FriendFeed maintains an open connection to the FriendFeed servers. (For more information on scaling servers to support thousands of clients, see The C10K problem.)Zlamb63,openSUSE Leap 42.3openSUSEApache-2.0http://bugs.opensuse.orgDevelopment/Languages/Pythonhttp://www.tornadoweb.orglinuxx86_64%N[0!LF:LnS#:y8S3NMvaYh"n..or_ 3\XG5oB&E N&@sNVlQ E K  Q- 4 <S\P..v#/:[I3`0|!,(y DY48U}+.)^s*0 7VZwk^n:E $)(>#$)3&0> gj+H6_(*6u=1PpS0dz?(D9Mgj17fΑ4f6CXRA s  !)R 3RAVu4['&%  M[ tAA큤A큤큤A큤A큤AAA큤AA큤A큤AAA큤A큤A큤A큤A큤A큤큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZSI ZZZZZZZZZUe'Ue'ZZZZZZZZZZZZZZZZZZZZUZZZZZZZZZZZZZZZZSI SI UZZZZZZZSI SI SI ZZZZZZZZZZZZZZZZZZZZZZZZZU$BZSI SI ZU$BSI U$BSI SI SI SI SI SI U$BSI ZZZZZZZUe'ZUe'U$BSI ZSI SI SI Ue'SI SI SI Ue'U$BSI ZZU$BSI SI U$BUe'Ue'ZTQmZU$BSI SI U$BU$BSI SI ZZZZZSI ZZZZSI T1ZSI Ue'ZZc7dc99d243c4004087229f84f6b4682825c2671493f7b053b882d69a397f5e4e68b329da9893e34099c7d8ad5cb9c940c35e149f8b623ef4259d97d738501173728a2b77a5636bd1a9d86ac4e54e2948ab3c54a1029ff9a65bb4967d49f40c1a2576553da8e47f50fce566494498b00165534ffd898c77a7c7801d7afa028cbb8074bd8d742b9b1d8336d29ecf9015921fd22ec75d947fc648390ece6289857333d29f47bff2af6ad99d8546d614bb55189d86877c47ba06f3ee9aff3cd77712ae0d14e45b1473cd1cc88d3c7e6850166687e0a36262189d25231c983152db7d24b3407cc3f6fc0560aa869708b37d688e992b302cc27dee2929d9576550265af6ba3aaf2ad720d698414177d8317790603aabc007f4893ff0f4c4cd906970a5d6df74554f3f23c5722de285eb9b86615479478aa70e2e780d4d42ef13b207763dd027e6e271996395c21b7f69d25c9736f9ce7f7526239f79d44814cdaac27b0cdb274f67b71e140908b2c6bf27f9f9974702b35ed1aa314d7b3d7809935e906a07f3262fe6b20415e4c3ca495d33f2f76e35e359944e44c42a0a3067b3c941e7f6f423ae9920261c9ceeaab51bb6e09d8d2c097c2d2dbb13a8b1faa5dabda0033e0d1d83b99c0ee6f0879d3d0bf2a548e2d54e6f206a216f556059bdd825444973ac352070b8f87e16db60e65fd32b062c2146f90ef7714eb3ce0570a7de43c3ae6da33b773efd1970d6e52836de0d62762f050de5a03914c9865a5acf3752500a1ed9e679d5e812b6490a5dcefadb10e0c5e9dd811b1aabba0825bf7a5244071eabc98c9d3b234cdc857b525f14fa41ab10a3b8b540772dc95bae73a96df17fceef87d2b9eb90f0c593d83148a3aaa9070c46f2ac3f81699d16ea9439b8f44b8b40dfce12cbf99b4cfad3a82e1777d41d8cd98f00b204e9800998ecf8427e0b33e51c84151cc62a904a006600d82ac91cfa668aae46ab5d03ed7b179c707bfb0a437da2f776aa5066c9ebf262ab760a8217668abb18bf227606f0971aa47f6c70679959dd4420a3be04ff226b94682919e2394f97fc5c3bba25ee687af39ad4a05e4673e1a369941641ec4f20d94930538d73213a02202d4fed683bd37f973769bf4383a4c68026af3b8eca3ea40e207c9ae8b008f1e515c1a1b623ab22466aaf2e3fe88fad41f3979961ff3b9a1c77b432dd7f3387d4f43797c6a57f4a77845363807bc3a05a4224f77e530f1838c364dd225813348b520e70d0cac4dd01038e811e3350722dbdbaffdadb677110809894009777e7f4366d61f934e499efc03ba8849744d07c9a4ce7d4d5c4bfdd491be0fdb52ebf72b1fa630a1494f830743521d90746d8b29e97a68ac929006bf0dc971b9d1c4e94683e3d6b2bbb14f656a99a8868d9417a387d23f29d814bb65ef047b5b16e1b9517486abe6ffae42ae87a2909b47f0b256c76fe5608a56143f3df712007467078f0ed9373514a3dd7b776e1e8e375d95746a3d8b0451f589a6ffbf094f1795248d72ab75a52b980cd9dc172b3d650ce8e47bcede5ed8f1e197189bf5b9914e2c4c232a67304fdd37fb3588900f450182bc87ace733406380853a51e15e58e9b57464f869d62b012d91c49913e181f85498362adb54f3d4c49bcd5f394511757045d9fc0bf4648199ab1413b6ca61d36d6e9a7bf68a703433efd27344a3ca35080228c3651428ff333e30d9f7ed4316c9f35ed8002d8ade1bfb7d943d4f0cfd380813aa74c89e87f0f21f7a9de9994c5e4c4e56857731071702f59faf863e9e8faa25e19032b334cf6d41d8cd98f00b204e9800998ecf8427ed6465c0b20054e8c68624c8785a09d037a788e7c21b851a695397446eb185717558a10e245653134d0556d16e9a3e2fcafaca45a3c3d0e2afdbc32577329698e315411d6943b21bdcc92a526a971ed8bdb0a5c77058304e97a5b131cb348da68521ade8adf468b118094da04d6a5b9a29bbd88325897da5ea4547fc6137534507e403b88e562e5d2000926a4421b8278167364b9bf43a2ccddd8ee1aed3908158f39f0aabf808bc81c2ae818e81a725e43b203de248020890524dc9280d564dfa985995c9b2a4d87af9dd867a62fdda5f67e0c82a279220b5ce0cf6aa1c3d92a9213498d8378076cfa32f1aea1ae60b0dff9b50da2e261c8d9e3788669ed57853f1a2932e33908a82c20cb42a1d1baa5b05c4d9388e4c1a83bf1e1c12dfbb4cb2d67c852649718df196117aa2f01fa3f287e4dd19e53eda702de007792d101314d12a59d1fd97e2d3d64a3f8cba6420403d8dc054fea654d929486c052d7ca7273bff005d38621acbbd55a62dfd0fee114a404e3ba9dc9fc041d7ecc1eaf8397f1c2cd3359837f6f48427ebf076e710b50498f027cc658a0489b2953caca866e73c11cf25926d32d473fc4d3fc3bd7f7bc9a83a0a0eb0b0fef5d1a5181b497ae2674caf7d78f19ac38fa7cdf861304e5a276bbdd871c8621f16d020c215f48e7e9760fa5dbb434d22f240c77c58d42eafc16bd41c6d9b78e87e4bc10bab249c2e47146e824d0859b5c3e7578af3c9b9c78731d72d61bf4ce3da1ce53cb3cf69afa0ace2318296442c8243b6224941b95ce785f92c9c4f6a7ce4b25d8d17752f25d4139ac6f8c4aefa24a0e87c8f6b8eacffbfd1ce532886ed9f363bc2d2f99cda833b7fdaf15a7101fa0a4c46215b24c5877349d6ccbf0925d6199a8a4535cdf51cc4dc90e1b3417be6387eb831d7b84caf74dc9e732dd629d8a9144b01f81f88816645b7ae697b91d6f5a42103c1fecd74ff148c36534f3789ec649f4e8ac46182d86528296251a36473618ef43fbefa3568ae6bb0c3e2781bcfa93b1ee3d2ce5374a02ab607a21d4b2c1f76caea3003c3494dc2d3d11d939b57285e8ddc6b711846a02f75ca87e14554e1732806569f7d8e8c2d46b2df1a9798d8fed9e010349c974427552bd226de6834489535a897552765f773b9d3cb2e26022703a035195c388401178f31d06b97df5541c5c2cb23ab284a04a43bb5a55e63dd1fa3c66f71d20196d4caf35b6a670db8c70b03d30f299c9178d45c4fea1b5d95e6134378bc6d01073416b252114466f51adbc2908f11952745c2ea7d0d318d1290229c1ea9817f511e5cf5ac2d391cce70def80c4248d341e2363f400e7f78b0039b46dce5f37ce93b521ef706cb920b91509056ff7df8636666cf3441dec9b6fb8102b7b8ed9e63e142e86b72a8301bdd5f5cf80a911fbed726266dd44b42daedf0d53c3b8e8391266d90e1011396397a9326bfa24738b6abefc095a98a21e8bd8c59c4ffbd372a1f9f4b2c2bc3b7b08a2366618603401addfd5a79485a0a8d4f9432bbb50779481e43f82f6d960cad491344e59504c5732cffd79212c951ddd01e87ae892ca7beac2ff6e230a4cba89ae6ca2e7ab0eb68dda4a3234a259b13d254a1a711f599ae6966a97a3adacd9ad63a6337f26c7a9b8b30a711dac726b93a337e3b1da137795c72df7d7fcf3d8e0835653b585527754ea22d20888aca8f6d7e6c10a4e3425c9c67d88e08a149f5a4beb72a1a10c8f4545e72d08a29e71ecf0bb15d639871fb9ec2bf95d913430e4f9ef7ad71d2753ad98ca8fa7798cb1b75c72602fa908bfeca41fc47b2162a4ad09d0a12bab55bacb91972551bbb7006ed024bd0972ac5fbfb92860801286e14df3f2ae3c08ccb8d1cb71e638edec33bfe1a361fe51ec87557fea8d6dde67623696dde46ea3cb9ecb1df0f86df65ec08ed1d8023a01db72440b3466cc010369e1bf89327bb8586f749a00814fcf385228a302639ecf666af4476383bf0d520f9e48132f2ca47ced437f3ce116e068464e82def0e959c87b44ba4f9e459dd135e18fba76d5334de04e292b586749fb5845409fd7d63662c048e5dd08a1c727ed3d3d0b985485255baedf40bd08fa4268ee3fab567352f464e6335c750c1c4f17253d5d23d08ff33e4f2aa141ba61d86f9487349b9b77bdc4fd9bb34c4ed1e3d68762bc445b5e897bff0bd846a03db45c299f793348f17cfbea2932bbfe3e63e32ef23f897760b60e84236e1899f1f555334daadccbd7ffcf42a349f0a0396a9813204e56e6d141178cca9b62b0cbc12538783a0daff71a0da2e8a5681b0ec05f2ec10b096ac91d42535f499fdf6f2bb7a53635d4ff786ba2c789bd7877dfa7cebd180bbe237c61f74d8565127df4ff8ee764f6365583aaa11a633b4138d9b1c1d55613dbb3c32d8cd316ffaa56eea29682131e6277bad55fcaea703e6921df2cd5c352685485255baedf40bd08fa4268ee3fab56a8106edbaeaf3c7bb974ccb1b5b1b93102e9b53c60b912b1903db57154ef4e1ad0918ca63239e78711199c789d0882de9b77bdc4fd9bb34c4ed1e3d68762bc445b5e897bff0bd846a03db45c299f793348f17cfbea2932bbfe3e63e32ef23f899283ed6ef62308f0cc4ddb3adfed81dc1b532b2c9a1a04ddc54aeb6e1f2d952f15ae0ad2ef24768a24e3b20b54827700ddf318b342617748a891ebff19e5efc48dadd6b652f594088cb94b9ff77c73c3972a6a479a58b2e9a0d1ce05eec518c2c464bd097ac4df0fc85b5a863d9307d03c0baee014b4fb59a37c58ad41778cc7a4ae10aec5f40f264d3caafa3ca11e1c1ed8960776f01d1222560f56fe1bd6b7d41d8cd98f00b204e9800998ecf8427e4cf51cefc4868396ae706b4b6cf9422c37efad2dcdd2730a72aeeba655d4551f9cbb6cfd09def0a19e8a4071dd858d6c86df97569ceccf1c6aaab82b1c7883c56a12068e99b739b9806b80e213f1c63455f071ee9184aa8e9a528600925848b9a8f2c660250e4ee872740f3bbf9c897cddf318b342617748a891ebff19e5efc4a1242980c306e639685bb5798bdfbeb3186bbb4517f009a3c588ae913411a960c464bd097ac4df0fc85b5a863d9307d04d6da7edd25fd1bb1de50a673fae51acrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-tornado-4.2.1-5.3.1.src.rpmpython-tornadopython-tornado(x86-64)speedups.so()(64bit)@@@@ @   libc.so.6()(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libpthread.so.0()(64bit)libpython2.7.so.1.0()(64bit)pythonpython(abi)python-backports.ssl_match_hostnamepython-simplejsonrpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsLzma)2.7.92.73.0.4-14.0-14.4.6-14.11.2W@WKV"8@V VV@UpU5@U7@T->@T+S{CSof@RR QfQVP@PG>OȮO9O~OOOiO]@O'NFNyNN@Mp@Ma@MRLK@JJ@J0@lchiquitto@suse.delchiquitto@suse.demc@suse.comfcastelli@suse.comtoddrme2178@gmail.comtampakrap@opensuse.orgaboe76@gmail.comseife+obs@b1-systems.commcihar@suse.cztoddrme2178@gmail.comtoddrme2178@gmail.comtoddrme2178@gmail.comandrea@opensuse.orgp.drouand@gmail.comspeilicke@suse.comalexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.brtoddrme2178@gmail.comtoddrme2178@gmail.comhighwaystar.ru@gmail.comalexandre@exatati.com.brsaschpe@gmx.desaschpe@gmx.dealexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.brsaschpe@gmx.dealexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.bralexandre@exatati.com.br- Submit to SLE-12 (fate#320738, bsc#974657).- use %suse_version >= 1315 to check if we're building on SLE-12.- fix macro - use package name python-backports-ssl_match_hostname on rhel7 - define py_ver where it does not exist- python-certifi is an optional depedency when python 2.7.9 is available.- python-certifi is a hard dependency, not an optional one.- Remove python-Twisted BuildRequires. It causes a python-cryptography build dependency, which is currently broken on SLE11SP4 due to old OpenSSL version- Update to 4.2.1: Security fix: * This release fixes a path traversal vulnerability in StaticFileHandler, in which files whose names started with the static_path directory but were not actually in that directory could be accessed. - Update to 4.2: Backwards-compatibility: * SSLIOStream.connect and IOStream.start_tls now validate certificates by default. * Certificate validation will now use the system CA root certificates instead of certifi when possible (i.e. Python 2.7.9+ or 3.4+). This includes IOStream and simple_httpclient, but not curl_httpclient * The default SSL configuration has become stricter, using ssl.create_default_context where available on the client side. (On the server side, applications are encouraged to migrate from the ssl_options dict-based API to pass an ssl.SSLContext instead). * The deprecated classes in the tornado.auth module, GoogleMixin, FacebookMixin, and FriendFeedMixin have been removed. * see more details: http://www.tornadoweb.org/en/stable/releases/v4.2.0.html- fix build with non-SUSE distributions- Update to 4.1: * If a `.Future` contains an exception but that exception is never examined or re-raised (e.g. by yielding the `.Future`), a stack trace will be logged when the `.Future` is garbage-collected. * New class `tornado.gen.WaitIterator` provides a way to iterate over ``Futures`` in the order they resolve. * The `tornado.websocket` module now supports compression via the "permessage-deflate" extension. Override `.WebSocketHandler.get_compression_options` to enable on the server side, and use the ``compression_options`` keyword argument to `.websocket_connect` on the client side. * When the appropriate packages are installed, it is possible to yield `asyncio.Future` or Twisted ``Defered`` objects in Tornado coroutines.- Remove python-pycares BuildRequires since it is optional and not in openSUSE:Factory- Update to version 4.0.2 + Bug fixes * Fixed a bug that could sometimes cause a timeout to fire after being cancelled. * `.AsyncTestCase` once again passes along arguments to test methods, making it compatible with extensions such as Nose's test generators. * `.StaticFileHandler` can again compress its responses when gzip is enabled. * ``simple_httpclient`` passes its ``max_buffer_size`` argument to the underlying stream. * Fixed a reference cycle that can lead to increased memory consumption. * `.add_accept_handler` will now limit the number of times it will call `~socket.socket.accept` per `.IOLoop` iteration, addressing a potential starvation issue. * Improved error handling in `.IOStream.connect` (primarily for FreeBSD systems) - Update to version 4.0.1 + Bug fixes * The build will now fall back to pure-python mode if the C extension fails to build for any reason (previously it would fall back for some errors but not others). * `.IOLoop.call_at` and `.IOLoop.call_later` now always return a timeout handle for use with `.IOLoop.remove_timeout`. * If any callback of a `.PeriodicCallback` or `.IOStream` returns a `.Future`, any error raised in that future will now be logged (similar to the behavior of `.IOLoop.add_callback`). * Fixed an exception in client-side websocket connections when the connection is closed. * ``simple_httpclient`` once again correctly handles 204 status codes with no content-length header. * Fixed a regression in ``simple_httpclient`` that would result in timeouts for certain kinds of errors. - Update to version 4.0.0 + Highlights * The `tornado.web.stream_request_body` decorator allows large files to be uploaded with limited memory usage. * Coroutines are now faster and are used extensively throughout Tornado itself. More methods now return `Futures <.Future>`, including most `.IOStream` methods and `.RequestHandler.flush`. * Many user-overridden methods are now allowed to return a `.Future` for flow control. * HTTP-related code is now shared between the `tornado.httpserver`, ``tornado.simple_httpclient`` and `tornado.wsgi` modules, making support for features such as chunked and gzip encoding more consistent. `.HTTPServer` now uses new delegate interfaces defined in `tornado.httputil` in addition to its old single-callback interface. * New module `tornado.tcpclient` creates TCP connections with non-blocking DNS, SSL handshaking, and support for IPv6. + See more release details at http://www.tornadoweb.org/en/stable/releases/v4.0.0.html - Update to version 3.2.2 + Security fixes * The XSRF token is now encoded with a random mask on each request. This makes it safe to include in compressed pages without being vulnerable to the `BREACH attack `_. This applies to most applications that use both the ``xsrf_cookies`` and ``gzip`` options (or have gzip applied by a proxy). + Backwards-compatibility notes * If Tornado 3.2.2 is run at the same time as older versions on the same domain, there is some potential for issues with the differing cookie versions. The `.Application` setting ``xsrf_cookie_version=1`` can be used for a transitional period to generate the older cookie format on newer servers. + Other changes * ``tornado.platform.asyncio`` is now compatible with ``trollius`` version 0.3.- Update dependencies- new upstream version 3.2.1 - several new modules and bugfixes check website for details http://www.tornadoweb.org/en/stable/releases.html- Update to version 3.1.1 + StaticFileHandler no longer fails if the client requests a Range that is larger than the entire file (Facebook has a crawler that does this). + RequestHandler.on_connection_close now works correctly on subsequent requests of a keep-alive connection.- Update to version 3.1: + See http://www.tornadoweb.org/en/stable/releases/v3.1.0.html - Fix rpmlint issues properly - Use upstream URL- Update to 3.0.1: - The interface of tornado.auth.FacebookGraphMixin is now consistent with its documentation and the rest of the module. The get_authenticated_user and facebook_request methods return a Future and the callback argument is optional. - The tornado.testing.gen_test decorator will no longer be recognized as a (broken) test by nose. - Work around a bug in Ubuntu 13.04 betas involving an incomplete backport of the ssl.match_hostname function. - tornado.websocket.websocket_connect now fails cleanly when it attempts to connect to a non-websocket url. - tornado.testing.LogTrapTestCase once again works with byte strings on Python 2. - The request attribute of tornado.httpclient.HTTPResponse is now always an HTTPRequest, never a _RequestProxy. - Exceptions raised by the tornado.gen module now have better messages when tuples are used as callback keys.- Update to 3.0: - Please read full changelog at http://www.tornadoweb.org/en/stable/releases/v3.0.0.html- Update to 2.4.1: - Fixed a memory leak in tornado.stack_context that was especially likely with long-running @gen.engine functions. - tornado.auth.TwitterMixin now works on Python 3. - Fixed a bug in which IOStream.read_until_close with a streaming callback would sometimes pass the last chunk of data to the final callback instead of the streaming callback.- Update to 2.4: - Please check changelog at http://www.tornadoweb.org/documentation/releases/v2.4.0.html- Update to 2.3: - Please check changelog at http://www.tornadoweb.org/documentation/releases/v2.3.0.html- Fix rpmlint warnings - Improve openSUSE 11.4 build fix - Clean up spec file- Fix building python 3 package on openSUSE 11.4 x86_64- added python3 package- Update to 2.2.1: - tornado.web.RequestHandler.set_header now properly sanitizes input values to protect against header injection, response splitting, etc. (it has always attempted to do this, but the check was incorrect). Note that redirects, the most likely source of such bugs, are protected by a separate check in RequestHandler.redirect. - Colored logging configuration in tornado.options is compatible with Python 3.2.3 (and 3.3).- Update requires on python-curl to python-pycurl- Simplified macro usage - Use upstream tarball- Update to 2.2: - Please read http://www.tornadoweb.org/documentation/releases/v2.2.0.html for all changes in this release.- Update to 2.1.1 Bug fixes: - Fixed handling of closed connections with the epoll (i.e. Linux) IOLoop. Previously, closed connections could be shut down too early, which most often manifested as “Stream is closed” exceptions in SimpleAsyncHTTPClient. - Fixed a case in which chunked responses could be closed prematurely, leading to truncated output. - IOStream.connect now reports errors more consistently via logging and the close callback (this affects e.g. connections to localhost on FreeBSD). - IOStream.read_bytes again accepts both int and long arguments. - PeriodicCallback no longer runs repeatedly when IOLoop iterations complete faster than the resolution of time.time() (mainly a problem on Windows). Backwards-compatibility note - Listening for IOLoop.ERROR alone is no longer sufficient for detecting closed connections on an otherwise unused socket. IOLoop.ERROR must always be used in combination with READ or WRITE.- Update to 2.1: - There are security fixes, backwards-incompatible changes, new modules, and bug fixes. For full changes please read http://www.tornadoweb.org/documentation/releases/v2.1.0.html- Added README and examples to documentation - Fixed license string to "Apache-2.0"- Update to 2.0: Major changes: * Template output is automatically escaped by default; see backwards compatibility note below. * The default AsyncHTTPClient implementation is now simple_httpclient. * Python 3.2 is now supported. For backwards compatibility and other changes in this release, please read http://www.tornadoweb.org/documentation/releases/v2.0.0.html - Regenerate spec file with py2pack.- Update to 1.2.1.- Update to 1.2.- Update to 1.1.1.- Update to 1.1.- New tarball release on PyPI.- Update to 0.2; - Building as noarch for openSUSE >= 11.2.- Initial package (0.1) for openSUSE.lamb63 1520892642  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~4.2.1-5.3.14.2.1-5.3.1    !!""##"$$%tornadotornado-4.2.1-py2.7.egg-infoPKG-INFOSOURCES.txtdependency_links.txtrequires.txttop_level.txt__init__.py__init__.pycauth.pyauth.pycautoreload.pyautoreload.pycconcurrent.pyconcurrent.pyccurl_httpclient.pycurl_httpclient.pycescape.pyescape.pycgen.pygen.pychttp1connection.pyhttp1connection.pychttpclient.pyhttpclient.pychttpserver.pyhttpserver.pychttputil.pyhttputil.pycioloop.pyioloop.pyciostream.pyiostream.pyclocale.pylocale.pyclocks.pylocks.pyclog.pylog.pycnetutil.pynetutil.pycoptions.pyoptions.pycplatform__init__.py__init__.pycasyncio.pyasyncio.pycauto.pyauto.pyccaresresolver.pycaresresolver.pyccommon.pycommon.pycepoll.pyepoll.pycinterface.pyinterface.pyckqueue.pykqueue.pycposix.pyposix.pycselect.pyselect.pyctwisted.pytwisted.pycwindows.pywindows.pycprocess.pyprocess.pycqueues.pyqueues.pycsimple_httpclient.pysimple_httpclient.pycspeedups.sostack_context.pystack_context.pyctcpclient.pytcpclient.pyctcpserver.pytcpserver.pyctemplate.pytemplate.pyctest__init__.py__init__.pyc__main__.py__main__.pycasyncio_test.pyasyncio_test.pycauth_test.pyauth_test.pycconcurrent_test.pyconcurrent_test.pyccsv_translationsfr_FR.csvcurl_httpclient_test.pycurl_httpclient_test.pycescape_test.pyescape_test.pycgen_test.pygen_test.pycgettext_translationsfr_FRLC_MESSAGEStornado_test.motornado_test.pohttpclient_test.pyhttpclient_test.pychttpserver_test.pyhttpserver_test.pychttputil_test.pyhttputil_test.pycimport_test.pyimport_test.pycioloop_test.pyioloop_test.pyciostream_test.pyiostream_test.pyclocale_test.pylocale_test.pyclocks_test.pylocks_test.pyclog_test.pylog_test.pycnetutil_test.pynetutil_test.pycoptions_test.cfgoptions_test.pyoptions_test.pycprocess_test.pyprocess_test.pycqueues_test.pyqueues_test.pycresolve_test_helper.pyresolve_test_helper.pycruntests.pyruntests.pycsimple_httpclient_test.pysimple_httpclient_test.pycstack_context_test.pystack_context_test.pycstaticdirindex.htmlrobots.txtstatic_foo.txttcpclient_test.pytcpclient_test.pyctcpserver_test.pytcpserver_test.pyctemplate_test.pytemplate_test.pyctemplatesutf8.htmltest.crttest.keytesting_test.pytesting_test.pyctwisted_test.pytwisted_test.pycutil.pyutil.pycutil_test.pyutil_test.pycweb_test.pyweb_test.pycwebsocket_test.pywebsocket_test.pycwsgi_test.pywsgi_test.pyctesting.pytesting.pycutil.pyutil.pycweb.pyweb.pycwebsocket.pywebsocket.pycwsgi.pywsgi.pycpython-tornadodemosappengineREADMEapp.yamlblog.pystaticblog.csstemplatesarchive.htmlbase.htmlcompose.htmlentry.htmlfeed.xmlhome.htmlmodulesentry.htmlbenchmarkbenchmark.pychunk_benchmark.pygen_benchmark.pystack_context_benchmark.pytemplate_benchmark.pyblogREADMEblog.pyschema.sqlstaticblog.csstemplatesarchive.htmlbase.htmlcompose.htmlcreate_author.htmlentry.htmlfeed.xmlhome.htmllogin.htmlmodulesentry.htmlchatchatdemo.pystaticchat.csschat.jstemplatesindex.htmlmessage.htmlfacebookREADMEfacebook.pystaticfacebook.cssfacebook.jstemplatesmodulespost.htmlstream.htmlhelloworldhelloworld.pys3servers3server.pytwitterhome.htmltwitterdemo.pywebsocketchatdemo.pystaticchat.csschat.jstemplatesindex.htmlmessage.htmlwebspiderwebspider.py/usr/lib64/python2.7/site-packages//usr/lib64/python2.7/site-packages/tornado-4.2.1-py2.7.egg-info//usr/lib64/python2.7/site-packages/tornado//usr/lib64/python2.7/site-packages/tornado/platform//usr/lib64/python2.7/site-packages/tornado/test//usr/lib64/python2.7/site-packages/tornado/test/csv_translations//usr/lib64/python2.7/site-packages/tornado/test/gettext_translations//usr/lib64/python2.7/site-packages/tornado/test/gettext_translations/fr_FR//usr/lib64/python2.7/site-packages/tornado/test/gettext_translations/fr_FR/LC_MESSAGES//usr/lib64/python2.7/site-packages/tornado/test/static//usr/lib64/python2.7/site-packages/tornado/test/static/dir//usr/lib64/python2.7/site-packages/tornado/test/templates//usr/share/doc/packages//usr/share/doc/packages/python-tornado//usr/share/doc/packages/python-tornado/demos//usr/share/doc/packages/python-tornado/demos/appengine//usr/share/doc/packages/python-tornado/demos/appengine/static//usr/share/doc/packages/python-tornado/demos/appengine/templates//usr/share/doc/packages/python-tornado/demos/appengine/templates/modules//usr/share/doc/packages/python-tornado/demos/benchmark//usr/share/doc/packages/python-tornado/demos/blog//usr/share/doc/packages/python-tornado/demos/blog/static//usr/share/doc/packages/python-tornado/demos/blog/templates//usr/share/doc/packages/python-tornado/demos/blog/templates/modules//usr/share/doc/packages/python-tornado/demos/chat//usr/share/doc/packages/python-tornado/demos/chat/static//usr/share/doc/packages/python-tornado/demos/chat/templates//usr/share/doc/packages/python-tornado/demos/facebook//usr/share/doc/packages/python-tornado/demos/facebook/static//usr/share/doc/packages/python-tornado/demos/facebook/templates//usr/share/doc/packages/python-tornado/demos/facebook/templates/modules//usr/share/doc/packages/python-tornado/demos/helloworld//usr/share/doc/packages/python-tornado/demos/s3server//usr/share/doc/packages/python-tornado/demos/twitter//usr/share/doc/packages/python-tornado/demos/websocket//usr/share/doc/packages/python-tornado/demos/websocket/static//usr/share/doc/packages/python-tornado/demos/websocket/templates//usr/share/doc/packages/python-tornado/demos/webspider/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:7886/openSUSE_Leap_42.3_Update/01989ecde8671534771b5bad5207057f-python-tornado.openSUSE_Leap_42.3_Updatedrpmlzma5x86_64-suse-linux            directoryPython script, ASCII text executableASCII textpython 2.7 byte-compiledPython script, UTF-8 Unicode text executableemptyELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=5a7b951908f7d331595bbdf9a4b8e5fd54deb13e, strippedUTF-8 Unicode textGNU gettext message catalogue, UTF-8 Unicode textPython script, ASCII text executable, with very long linesHTML document, ASCII textXML document text  !"#$%&'()*+,-./0123456789:;<=>?@ABCIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRPRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRTٲI݉z)pPpython-futurespython-pycarespython-pycurlpython-Twistedpython-service_identity?0]"k%ne) \ jɷ7iQ<{bnÁ1z= {mOwæY梒 zm+m:m|X^_ ֯ SٮP>~hk]iۚZPD,g)-C>Hr1cN!vŸc\)ཕX7}v4q@;@)"Q9X>MXĤdF*yO4: DH*YޭUO4#Zt~Z^sjӴR>,Rg*ә)<p΀'g^:hϞKZR2k+>b(``$>'[#;6=0w{Jj7mZxNAѤqqK+RoX^̓+4UϾ~XW@J !i8v HQ ^d*,傃2)]Oߒ_ ߑع)U 6'ή#l6dHZJ;x˦±i%S-#:fe$-NxIP ePmsJMe$ >yB3=k2>eg o_u1%MaLQvÙ< _Q[,#\ɉCek t^ dk@&V`FK}q87^l5*^f+!PYrzx1Xiڮ$=2gCVop(Rr/_sR0SѾWdH;]Y)M-&cU/A:jSh|l^N!P+fRo%|`r;X='{vAHȦ}gI`jf{tBf|;Y(\% )d` 8ETECc&88WZ-MNKtpM֗+)xV ǐ9*Gzsğ$+['h~hhXt*XS]GB)nŦ{ebP톄5pּ E̍ : * {6*a&~k+Dߠ+@xE,v[Zj].VvN0nͳB"&*te0OWY&lFR-<ۍ^i韌tx vSIR8@Ai|Y?1R%k`ޜsࡏ +n|S0(%DJؒ]3z Sם_}->u(A lCqUσRa/l*=s(Z{nrr&w<:i9Ao:8*{ܳ`U03)U39qӚώT[m w2ՖK7R}9J5^.P[xzgKj87MciH,Y$oCMM&dm' CByV$6^>S3`@Z! b)ZU}74uvփ6˟Axt Wq̚CHh(*S_jZ}'b1[' Ë/k Lo>0u)`Kkx>@3Q"hej]Gxqps.Jԇ?suK| XTfԝİݷC%R]!'+([]eiAj$[mbYns_L ꄹ-MzLntm3[/ZkS>_;ghIⰳ:-̴߀K"g/c5CWfEJ)m&Q; 7W7FiA e)wTv쟨Rwyn*!nYbnq [IR`y{6>