Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-announce@python.org Delivered-To: python-announce-list@mail.python.org X-Spam-Status: OK 0.012 X-Spam-Evidence: '*H*': 0.98; '*S*': 0.00; 'argument': 0.05; 'url:bitbucket': 0.05; 'incompatible': 0.07; 'skip:` 10': 0.07; 'correspond': 0.09; 'imported': 0.09; 'matched': 0.09; 'url:github': 0.09; 'python': 0.11; '*only*': 0.16; 'argument,': 0.16; 'backward': 0.16; 'grep': 0.16; 'positional': 0.16; 'stdlib.': 0.16; 'subject: \n ': 0.16; 'subject:API': 0.16; 'sure.': 0.16; 'discussion': 0.18; 'trying': 0.19; 'spread': 0.22; 'header:User-Agent:1': 0.23; 'case.': 0.24; 'package.': 0.24; 'skip:` 20': 0.24; 'skip:e 30': 0.24; 'guys': 0.24; 'people,': 0.24; 'versions': 0.24; 'pass': 0.26; 'leave': 0.29; 'on,': 0.29; "i'm": 0.30; 'code': 0.31; 'lines': 0.31; "skip:' 10": 0.31; 'minor': 0.31; 'compatible': 0.32; "we're": 0.32; 'run': 0.32; 'checking': 0.33; 'projects.': 0.33; 'comment': 0.34; 'received:209.85': 0.35; 'possible.': 0.35; 'received:209.85.220': 0.35; 'skip:s 30': 0.35; 'objects': 0.35; 'but': 0.35; 'received:google.com': 0.35; '2.6': 0.36; 'curious': 0.36; 'keyword': 0.36; 'module.': 0.36; 'much.': 0.36; 'object,': 0.36; 'method': 0.36; 'url:org': 0.36; 'project': 0.37; 'received:209': 0.37; 'step': 0.37; 'thank': 0.38; 'actions': 0.38; 'e.g.': 0.38; 'does': 0.39; 'either': 0.39; 'users': 0.40; 'ensure': 0.60; 'future': 0.60; 'affect': 0.61; 'introduced': 0.61; 'full': 0.61; 'first': 0.61; 'reach': 0.63; 'forward': 0.65; 'results': 0.69; 'to:addr:comp-lang-python-announce': 0.70; 'to:addr:moderators.isc.org': 0.77; 'introduce': 0.78; 'subject:have': 0.80; 'friends': 0.81; 'story:': 0.84; 'url:34': 0.84; 'url:89': 0.84 Delivered-To: comp-lang-python-announce@moderators.isc.org X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=path:newsgroups:date:complaints-to:injection-info:nntp-posting-host :user-agent:mime-version:message-id:subject:from:injection-date:to :content-type:content-transfer-encoding; bh=ZGWtF5GCs5Gunn44EXit3iT+8Lc5GMdXrPtkDEpbPxk=; b=ft6MsQOfpne43TSvwRkcxCWrw9iRBlOrankYLKh/zG9XqatpEFNPDc5ZS35ULIWZH9 SdQ7gdV/wHYSOumyNdWTYPUgTktDTFR4WRtmrddJNL3mOv5jO26Jpi6CEv0h5jxVmG6J cSWNpPp7Lfqd+xHnV34d7aJQ0BvhvgbPS71ZghPXIctKTotUAfjjFu7rlLwGsfC7QSpT ayCpyCh+4Mmk2tZP7Q9fIPocY9OCdRF8aOyCDaHL1GvnoLlyAVco/NPHwzTDBoAgu1cz 9qsejhIKM/GZyJ88jfZj4MouKoy3K22N+I/TirlzSQO2C8rUNd5VjOZBB3MqLkbjED4v 1ZIQ== X-Received: by 10.224.36.66 with SMTP id s2mr16874530qad.6.1370366776873; Tue, 04 Jun 2013 10:26:16 -0700 (PDT) X-Received: by 10.49.106.169 with SMTP id gv9mr2114624qeb.7.1370366776835; Tue, 04 Jun 2013 10:26:16 -0700 (PDT) Newsgroups: comp.lang.python.announce Date: Tue, 4 Jun 2013 10:26:16 -0700 (PDT) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.17.50.18; posting-account=AO1dqAoAAAAWzTh6C4DhauE2cnEuuP-v User-Agent: G2/1.0 MIME-Version: 1.0 Subject: Eventlet 0.13 is going to have minor incompatible change in subprocess API From: Sergey Shepelev Injection-Date: Tue, 04 Jun 2013 17:26:16 +0000 To: comp-lang-python-announce@moderators.isc.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Mailman-Approved-At: Wed, 05 Jun 2013 13:38:32 +0200 X-BeenThere: python-announce-list@python.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: python-list@python.org List-Id: Announcement-only list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Approved: python-announce-list@python.org Message-ID: Lines: 42 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1370432315 news.xs4all.nl 15928 [2001:888:2000:d::a6]:58404 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python.announce:970 Hello. I'm trying to reach out for as many Eventlet users as possible. This messag= e contains specific actions to be taken by project owners to ensure compati= bility with future versions of eventlet. 1. We're going to have a minor backward incompatible change. It will *only*= affect you if you use Eventlet specific `check_interval` positional argume= nt, e.g. subprocess.Popen(...).wait(0.1). Which is very unlikely, but I hav= e to make sure. Checking will take less than minute best case. 2. Please run the following search against your code base: grep -lr -E 'import.+subprocess' . |xargs grep -nE '\.wait\([^)]' |fgrep -v= 'check_interval=3D' 3. If you have any results on step 3, please check that either you imported= subprocess from eventlet.green or used monkey_patch and matched lines corr= espond to eventlet.green.subprocess.Popen objects 4. If you have any results on step 4, that is, you pass check_interval as f= irst positional argument to .wait() method of Popen object, please change i= t to keyword argument `check_interval=3D...` 5. Please, spread this message to your coworkers, friends or other people w= ho uses Eventlet in their projects. Thank you very much. If you are curious what's going on, here's the full story: Python 3.3 introduced `timeout` kwarg to lots of methods of subprocess modu= le. The RHEL guys backported it to their Python 2.6 package. At some point,= the code they used started to use subprocess from Eventlet which does not = have the `timeout` kwarg. https://bitbucket.org/eventlet/eventlet/issue/89 https://bitbucket.org/eventlet/eventlet/pull-request/30 Now in Eventlet, I am going to introduce the `timeout` argument and to make= it forward compatible with Python3, it's going to get first place, like in= stdlib. To interested people, you may leave a comment in this discussion or in this= Github thread: https://github.com/eventlet/eventlet/pull/34