Automated g4 rollback of changelist 213728792
PiperOrigin-RevId: 213825654
diff --git a/absl/flags/_flag.py b/absl/flags/_flag.py
index 96dabd8..8ef6cde 100644
--- a/absl/flags/_flag.py
+++ b/absl/flags/_flag.py
@@ -22,7 +22,6 @@
from __future__ import division
from __future__ import print_function
-import copy
import functools
from absl.flags import _argument_parser
@@ -126,18 +125,6 @@
return id(self) < id(other)
return NotImplemented
- def __getstate__(self):
- raise TypeError("can't pickle Flag objects")
-
- def __copy__(self):
- raise TypeError('%s does not support shallow copies. '
- 'Use copy.deepcopy instead.' % type(self).__name__)
-
- def __deepcopy__(self, memo):
- result = object.__new__(type(self))
- result.__dict__ = copy.deepcopy(self.__dict__)
- return result
-
def _get_parsed_value_as_string(self, value):
"""Returns parsed flag value as string."""
if value is None:
diff --git a/absl/flags/_flagvalues.py b/absl/flags/_flagvalues.py
index 7492199..9f55586 100644
--- a/absl/flags/_flagvalues.py
+++ b/absl/flags/_flagvalues.py
@@ -22,7 +22,6 @@
from __future__ import division
from __future__ import print_function
-import copy
import itertools
import logging
import os
@@ -636,18 +635,6 @@
self._assert_all_validators()
return [program_name] + unparsed_args
- def __getstate__(self):
- raise TypeError("can't pickle FlagValues")
-
- def __copy__(self):
- raise TypeError('FlagValues does not support shallow copies. '
- 'Use absl.testing.flagsaver or copy.deepcopy instead.')
-
- def __deepcopy__(self, memo):
- result = object.__new__(type(self))
- result.__dict__.update(copy.deepcopy(self.__dict__))
- return result
-
def _set_is_retired_flag_func(self, is_retired_flag_func):
"""Sets a function for checking retired flags.
diff --git a/absl/flags/tests/_flag_test.py b/absl/flags/tests/_flag_test.py
index 522711c..f72ed6b 100644
--- a/absl/flags/tests/_flag_test.py
+++ b/absl/flags/tests/_flag_test.py
@@ -21,9 +21,6 @@
from __future__ import division
from __future__ import print_function
-import copy
-import pickle
-
from absl._enum_module import enum
from absl.flags import _argument_parser
from absl.flags import _exceptions
@@ -70,24 +67,6 @@
self.flag._set_default('orange')
self.assertEqual('apple', self.flag.value)
- def test_pickle(self):
- with self.assertRaisesRegexp(TypeError, "can't pickle Flag objects"):
- pickle.dumps(self.flag)
-
- def test_copy(self):
- self.flag.value = 'orange'
-
- with self.assertRaisesRegexp(
- TypeError, 'Flag does not support shallow copies'):
- copy.copy(self.flag)
-
- flag2 = copy.deepcopy(self.flag)
- self.assertEqual(flag2.value, 'orange')
-
- flag2.value = 'mango'
- self.assertEqual(flag2.value, 'mango')
- self.assertEqual(self.flag.value, 'orange')
-
class BooleanFlagTest(parameterized.TestCase):
diff --git a/absl/flags/tests/_flagvalues_test.py b/absl/flags/tests/_flagvalues_test.py
index 72fb4d4..e885979 100644
--- a/absl/flags/tests/_flagvalues_test.py
+++ b/absl/flags/tests/_flagvalues_test.py
@@ -18,8 +18,6 @@
from __future__ import division
from __future__ import print_function
-import copy
-import pickle
import types
import unittest
@@ -343,27 +341,6 @@
self.assertEqual(3, len(fv))
self.assertTrue(fv)
- def test_pickle(self):
- fv = _flagvalues.FlagValues()
- with self.assertRaisesRegexp(TypeError, "can't pickle FlagValues"):
- pickle.dumps(fv)
-
- def test_copy(self):
- fv = _flagvalues.FlagValues()
- _defines.DEFINE_integer('answer', 0, 'help', flag_values=fv)
- fv(['', '--answer=1'])
-
- with self.assertRaisesRegexp(
- TypeError, 'FlagValues does not support shallow copies'):
- copy.copy(fv)
-
- fv2 = copy.deepcopy(fv)
- self.assertEqual(fv2.answer, 1)
-
- fv2.answer = 42
- self.assertEqual(fv2.answer, 42)
- self.assertEqual(fv.answer, 1)
-
def test_conflicting_flags(self):
fv = _flagvalues.FlagValues()
with self.assertRaises(_exceptions.FlagNameConflictsWithMethodError):