[Checkins] SVN: zc.buildout/branches/gary-launchpad/ merge from buildout trunk
Gary Poster
gary.poster at canonical.com
Fri Mar 19 17:53:16 EDT 2010
Log message for revision 110070:
merge from buildout trunk
Changed:
_U zc.buildout/branches/gary-launchpad/
U zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.py
U zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.txt
-=-
Property changes on: zc.buildout/branches/gary-launchpad
___________________________________________________________________
Modified: svn:mergeinfo
- /zc.buildout/branches/gary-6:109416,109421,109426
/zc.buildout/branches/gary-7:109424,109427
/zc.buildout/branches/gary-5:109383,109387,109425
/zc.buildout/trunk:108946
/zc.buildout/branches/gary-8:109905,110061
+ /zc.buildout/branches/gary-6:109416,109421,109426
/zc.buildout/branches/gary-7:109424,109427
/zc.buildout/branches/gary-5:109383,109387,109425
/zc.buildout/trunk:108946,109993,109996
/zc.buildout/branches/gary-8:109905,110061
Modified: svk:merge
- 62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/branches/gary-8:109905
62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/branches/gary-8:110061
62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/trunk:108946
+ 62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/branches/gary-8:109905
62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/branches/gary-8:110061
62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/trunk:108946
62d5b8a3-27da-0310-9561-8e5933582275:/zc.buildout/trunk:109996
Modified: zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.py
===================================================================
--- zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.py 2010-03-19 21:53:12 UTC (rev 110069)
+++ zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.py 2010-03-19 21:53:16 UTC (rev 110070)
@@ -32,6 +32,7 @@
import re
import shutil
import sys
+import socket
import tempfile
import UserDict
import zc.buildout
@@ -133,7 +134,18 @@
'use-dependency-links': 'true',
}, 'DEFAULT_VALUE')
+DEFAULT_SOCKET_TIMEOUT = socket.getdefaulttimeout()
+def _setup_socket_timeout(timeout_string):
+ try:
+ timeout = int(timeout_string)
+ except ValueError:
+ _error("Timeout value must be numeric [%s]." % timeout_string)
+ current_timeout = socket.getdefaulttimeout()
+ if current_timeout <> timeout:
+ socket.setdefaulttimeout(timeout)
+
+
class Buildout(UserDict.DictMixin):
def __init__(self, config_file, cloptions,
@@ -261,7 +273,7 @@
options['installed'])
self._setup_logging()
- self._setup_socket_timeout()
+ self._display_socket_timeout()
offline = options['offline']
if offline not in ('true', 'false'):
@@ -787,18 +799,11 @@
def _error(self, message, *args):
raise zc.buildout.UserError(message % args)
- def _setup_socket_timeout(self):
- timeout = self['buildout']['socket-timeout']
- if timeout <> '':
- try:
- timeout = int(timeout)
- import socket
- self._logger.info('Setting socket time out to %d seconds.', timeout)
- socket.setdefaulttimeout(timeout)
- except ValueError:
- self._logger.warning("Default socket timeout is used !\n"
- "Value in configuration is not numeric: [%s].\n",
- timeout)
+ def _display_socket_timeout(self):
+ current_timeout = socket.getdefaulttimeout()
+ if current_timeout <> DEFAULT_SOCKET_TIMEOUT:
+ info_msg = 'Socket timeout is set to %d seconds.' % current_timeout
+ self._logger.info(info_msg)
def _setup_logging(self):
root_logger = logging.getLogger()
@@ -1377,13 +1382,18 @@
os.remove(path)
extends = extended_by = None
+ socket_timeout = None
for section in parser.sections():
options = dict(parser.items(section))
if section == 'buildout':
extends = options.pop('extends', extends)
extended_by = options.pop('extended-by', extended_by)
+ socket_timeout = options.pop('socket-timeout', socket_timeout)
result[section] = options
+ if socket_timeout is not None:
+ _setup_socket_timeout(socket_timeout)
+
result = _annotate(result, filename)
if root_config_file and 'buildout' in result:
@@ -1677,12 +1687,10 @@
elif op_ == 't':
try:
timeout_string = args.pop(0)
- timeout = int(timeout_string)
+ _setup_socket_timeout(timeout_string)
options.append(('buildout', 'socket-timeout', timeout_string))
except IndexError:
- _error("No timeout value specified for option", orig_op)
- except ValueError:
- _error("Timeout value must be numeric", orig_op)
+ _error("No timeout value specified for option t", orig_op)
elif op:
if orig_op == '--help':
_help()
Modified: zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.txt
===================================================================
--- zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.txt 2010-03-19 21:53:12 UTC (rev 110069)
+++ zc.buildout/branches/gary-launchpad/src/zc/buildout/buildout.txt 2010-03-19 21:53:16 UTC (rev 110070)
@@ -1535,15 +1535,14 @@
... """)
>>> print system(buildout),
- Setting socket time out to 5 seconds.
+ Socket timeout is set to 5 seconds.
Develop: '/sample-buildout/recipes'
Uninstalling debug.
Installing debug.
op timeout
recipe recipes:debug
-If the socket-timeout is not numeric, a warning is issued and the default
-timeout of the Python socket module is used.
+If socket-timeout is not numeric, an error message is issued.
>>> write(sample_buildout, 'buildout.cfg',
... """
@@ -1558,13 +1557,7 @@
... """)
>>> print system(buildout),
- Default socket timeout is used !
- Value in configuration is not numeric: [5s].
- <BLANKLINE>
- Develop: '/sample-buildout/recipes'
- Updating debug.
- op timeout
- recipe recipes:debug
+ Error: Timeout value must be numeric [5s].
Uninstall recipes
-----------------
More information about the checkins
mailing list