Index: third_party/gsutil/third_party/six/six.py |
diff --git a/third_party/six/six.py b/third_party/gsutil/third_party/six/six.py |
similarity index 91% |
copy from third_party/six/six.py |
copy to third_party/gsutil/third_party/six/six.py |
index ffa3fe166ad0357732556eee9640c87ba47cf909..21b0e8032f6e77289a54275bc9ea7d5660b153e9 100644 |
--- a/third_party/six/six.py |
+++ b/third_party/gsutil/third_party/six/six.py |
@@ -1,6 +1,6 @@ |
"""Utilities for writing code that runs on Python 2 and 3""" |
-# Copyright (c) 2010-2015 Benjamin Peterson |
+# Copyright (c) 2010-2014 Benjamin Peterson |
# |
# Permission is hereby granted, free of charge, to any person obtaining a copy |
# of this software and associated documentation files (the "Software"), to deal |
@@ -23,13 +23,12 @@ |
from __future__ import absolute_import |
import functools |
-import itertools |
import operator |
import sys |
import types |
__author__ = "Benjamin Peterson <benjamin@python.org>" |
-__version__ = "1.9.0" |
+__version__ = "1.8.0" |
# Useful for very coarse version differentiation. |
@@ -89,12 +88,8 @@ class _LazyDescr(object): |
def __get__(self, obj, tp): |
result = self._resolve() |
setattr(obj, self.name, result) # Invokes __set__. |
- try: |
- # This is a bit ugly, but it avoids running this again by |
- # removing this descriptor. |
- delattr(obj.__class__, self.name) |
- except AttributeError: |
- pass |
+ # This is a bit ugly, but it avoids running this again. |
+ delattr(obj.__class__, self.name) |
return result |
@@ -559,12 +554,6 @@ if PY3: |
def iterlists(d, **kw): |
return iter(d.lists(**kw)) |
- |
- viewkeys = operator.methodcaller("keys") |
- |
- viewvalues = operator.methodcaller("values") |
- |
- viewitems = operator.methodcaller("items") |
else: |
def iterkeys(d, **kw): |
return iter(d.iterkeys(**kw)) |
@@ -578,12 +567,6 @@ else: |
def iterlists(d, **kw): |
return iter(d.iterlists(**kw)) |
- viewkeys = operator.methodcaller("viewkeys") |
- |
- viewvalues = operator.methodcaller("viewvalues") |
- |
- viewitems = operator.methodcaller("viewitems") |
- |
_add_doc(iterkeys, "Return an iterator over the keys of a dictionary.") |
_add_doc(itervalues, "Return an iterator over the values of a dictionary.") |
_add_doc(iteritems, |
@@ -610,9 +593,6 @@ if PY3: |
import io |
StringIO = io.StringIO |
BytesIO = io.BytesIO |
- _assertCountEqual = "assertCountEqual" |
- _assertRaisesRegex = "assertRaisesRegex" |
- _assertRegex = "assertRegex" |
else: |
def b(s): |
return s |
@@ -625,28 +605,14 @@ else: |
return ord(bs[0]) |
def indexbytes(buf, i): |
return ord(buf[i]) |
- iterbytes = functools.partial(itertools.imap, ord) |
+ def iterbytes(buf): |
+ return (ord(byte) for byte in buf) |
import StringIO |
StringIO = BytesIO = StringIO.StringIO |
- _assertCountEqual = "assertItemsEqual" |
- _assertRaisesRegex = "assertRaisesRegexp" |
- _assertRegex = "assertRegexpMatches" |
_add_doc(b, """Byte literal""") |
_add_doc(u, """Text literal""") |
-def assertCountEqual(self, *args, **kwargs): |
- return getattr(self, _assertCountEqual)(*args, **kwargs) |
- |
- |
-def assertRaisesRegex(self, *args, **kwargs): |
- return getattr(self, _assertRaisesRegex)(*args, **kwargs) |
- |
- |
-def assertRegex(self, *args, **kwargs): |
- return getattr(self, _assertRegex)(*args, **kwargs) |
- |
- |
if PY3: |
exec_ = getattr(moves.builtins, "exec") |
@@ -677,21 +643,6 @@ else: |
""") |
-if sys.version_info[:2] == (3, 2): |
- exec_("""def raise_from(value, from_value): |
- if from_value is None: |
- raise value |
- raise value from from_value |
-""") |
-elif sys.version_info[:2] > (3, 2): |
- exec_("""def raise_from(value, from_value): |
- raise value from from_value |
-""") |
-else: |
- def raise_from(value, from_value): |
- raise value |
- |
- |
print_ = getattr(moves.builtins, "print", None) |
if print_ is None: |
def print_(*args, **kwargs): |
@@ -746,14 +697,6 @@ if print_ is None: |
write(sep) |
write(arg) |
write(end) |
-if sys.version_info[:2] < (3, 3): |
- _print = print_ |
- def print_(*args, **kwargs): |
- fp = kwargs.get("file", sys.stdout) |
- flush = kwargs.pop("flush", False) |
- _print(*args, **kwargs) |
- if flush and fp is not None: |
- fp.flush() |
_add_doc(reraise, """Reraise an exception.""") |
@@ -761,7 +704,7 @@ if sys.version_info[0:2] < (3, 4): |
def wraps(wrapped, assigned=functools.WRAPPER_ASSIGNMENTS, |
updated=functools.WRAPPER_UPDATES): |
def wrapper(f): |
- f = functools.wraps(wrapped, assigned, updated)(f) |
+ f = functools.wraps(wrapped)(f) |
f.__wrapped__ = wrapped |
return f |
return wrapper |
@@ -794,25 +737,6 @@ def add_metaclass(metaclass): |
return metaclass(cls.__name__, cls.__bases__, orig_vars) |
return wrapper |
- |
-def python_2_unicode_compatible(klass): |
- """ |
- A decorator that defines __unicode__ and __str__ methods under Python 2. |
- Under Python 3 it does nothing. |
- |
- To support Python 2 and 3 with a single code base, define a __str__ method |
- returning text and apply this decorator to the class. |
- """ |
- if PY2: |
- if '__str__' not in klass.__dict__: |
- raise ValueError("@python_2_unicode_compatible cannot be applied " |
- "to %s because it doesn't define __str__()." % |
- klass.__name__) |
- klass.__unicode__ = klass.__str__ |
- klass.__str__ = lambda self: self.__unicode__().encode('utf-8') |
- return klass |
- |
- |
# Complete the moves implementation. |
# This code is at the end of this module to speed up module loading. |
# Turn this module into a package. |