diff options
author | Yilei Yang (杨一磊) <yileiyang@google.com> | 2022-06-01 13:34:06 -0700 |
---|---|---|
committer | Yilei Yang (杨一磊) <yileiyang@google.com> | 2022-06-01 13:34:06 -0700 |
commit | 432398f4f280cf1aa5f31d1873d8a5a1468aa6f4 (patch) | |
tree | faf738843747b43d4bc5f9b46ec8ea33436a62ad | |
parent | ce06222fa6feae6f7569310e7af6b9baa97e388a (diff) | |
parent | 6b3c1b8bdd9371d263793b0a4e5480802fd40f8c (diff) | |
download | absl-py-432398f4f280cf1aa5f31d1873d8a5a1468aa6f4.tar.gz |
Merge commit for internal changes.
-rw-r--r-- | CHANGELOG.md | 5 | ||||
-rw-r--r-- | WORKSPACE | 13 | ||||
-rw-r--r-- | absl/BUILD | 7 | ||||
-rw-r--r-- | absl/_collections_abc.py | 28 | ||||
-rw-r--r-- | absl/flags/BUILD | 6 | ||||
-rw-r--r-- | absl/flags/__init__.py | 5 | ||||
-rw-r--r-- | absl/flags/_argument_parser.py | 37 | ||||
-rw-r--r-- | absl/flags/_flag.py | 9 | ||||
-rw-r--r-- | absl/flags/_flag.pyi | 2 | ||||
-rw-r--r-- | absl/flags/_flagvalues.py | 70 | ||||
-rw-r--r-- | absl/flags/_flagvalues.pyi | 1 | ||||
-rw-r--r-- | absl/flags/_helpers.py | 8 | ||||
-rw-r--r-- | absl/logging/BUILD | 1 | ||||
-rw-r--r-- | absl/logging/__init__.py | 2 | ||||
-rw-r--r-- | absl/testing/BUILD | 3 | ||||
-rw-r--r-- | absl/testing/absltest.py | 2 | ||||
-rw-r--r-- | absl/testing/parameterized.py | 6 | ||||
-rw-r--r-- | absl/testing/tests/absltest_py3_test.py | 1 | ||||
-rw-r--r-- | absl/testing/tests/parameterized_test.py | 2 | ||||
-rw-r--r-- | setup.py | 7 | ||||
-rwxr-xr-x | smoke_tests/smoke_test.sh | 4 | ||||
-rw-r--r-- | third_party/BUILD | 2 | ||||
-rw-r--r-- | third_party/six.BUILD | 14 |
23 files changed, 46 insertions, 189 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 7b41a67..3c36751 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com). ## Unreleased +Nothing notable unreleased. + +## 1.1.0 (2022-06-01) + * `Flag` instances now raise an error if used in a bool context. This prevents the occasional mistake of testing an instance for truthiness rather than testing `flag.value`. +* `absl-py` no longer depends on `six`. ## 1.0.0 (2021-11-09) @@ -12,16 +12,3 @@ # See the License for the specific language governing permissions and # limitations under the License. workspace(name = "io_abseil_py") - -load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") - -http_archive( - name = "six_archive", - build_file = "@//third_party:six.BUILD", - sha256 = "105f8d68616f8248e24bf0e9372ef04d3cc10104f1980f54d57b2ce73a5ad56a", - strip_prefix = "six-1.10.0", - urls = [ - "http://mirror.bazel.build/pypi.python.org/packages/source/s/six/six-1.10.0.tar.gz", - "https://pypi.python.org/packages/source/s/six/six-1.10.0.tar.gz", - ], -) @@ -22,13 +22,6 @@ py_library( ) py_library( - name = "_collections_abc", - srcs = ["_collections_abc.py"], - visibility = [":__subpackages__"], - deps = ["@six_archive//:six"], -) - -py_library( name = "tests/app_test_helper", testonly = 1, srcs = ["tests/app_test_helper.py"], diff --git a/absl/_collections_abc.py b/absl/_collections_abc.py deleted file mode 100644 index 1d06f05..0000000 --- a/absl/_collections_abc.py +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2019 The Abseil Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Python 2/3 compatibility module for collections.abc.""" - -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - -import six - -# pylint: disable=g-importing-member -# pylint: disable=unused-import -if six.PY3: - from collections import abc -else: - import collections as abc diff --git a/absl/flags/BUILD b/absl/flags/BUILD index c180599..33a7b07 100644 --- a/absl/flags/BUILD +++ b/absl/flags/BUILD @@ -13,7 +13,6 @@ py_library( ":_flagvalues", ":_helpers", ":_validators", - "@six_archive//:six", ], ) @@ -31,7 +30,6 @@ py_library( srcs_version = "PY2AND3", deps = [ ":_helpers", - "@six_archive//:six", ], ) @@ -66,8 +64,6 @@ py_library( ":_argument_parser", ":_exceptions", ":_helpers", - "//absl:_collections_abc", - "@six_archive//:six", ], ) @@ -80,7 +76,6 @@ py_library( ":_flag", ":_helpers", ":_validators_classes", - "@six_archive//:six", ], ) @@ -88,7 +83,6 @@ py_library( name = "_helpers", srcs = ["_helpers.py"], srcs_version = "PY2AND3", - deps = ["@six_archive//:six"], ) py_library( diff --git a/absl/flags/__init__.py b/absl/flags/__init__.py index 99501bb..e6014a6 100644 --- a/absl/flags/__init__.py +++ b/absl/flags/__init__.py @@ -25,10 +25,6 @@ The specific function used determines how the flag is parsed, checked, and optionally type-converted, when it's seen on the command line. """ -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - import getopt import os import re @@ -43,7 +39,6 @@ from absl.flags import _flag from absl.flags import _flagvalues from absl.flags import _helpers from absl.flags import _validators -import six # Initialize the FLAGS_MODULE as early as possible. # It's only used by adopt_module_key_flags to take SPECIAL_FLAGS into account. diff --git a/absl/flags/_argument_parser.py b/absl/flags/_argument_parser.py index 4f6bd69..9c6c8c6 100644 --- a/absl/flags/_argument_parser.py +++ b/absl/flags/_argument_parser.py @@ -18,22 +18,17 @@ Do NOT import this module directly. Import the flags package and use the aliases defined at the package level instead. """ -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - import collections import csv import io import string from absl.flags import _helpers -import six def _is_integer_type(instance): """Returns True if instance is an integer, and not a bool.""" - return (isinstance(instance, six.integer_types) and + return (isinstance(instance, int) and not isinstance(instance, bool)) @@ -95,7 +90,7 @@ class _ArgumentParserCache(type): # inherit from `ArgumentParser` and not `ArgumentParser[SomeType]`. # The corresponding DEFINE_someType method (the public API) can be annotated # to return FlagHolder[SomeType]. -class ArgumentParser(six.with_metaclass(_ArgumentParserCache, object)): +class ArgumentParser(metaclass=_ArgumentParserCache): """Base class used to parse and convert arguments. The parse() method checks to make sure that the string argument is a @@ -128,7 +123,7 @@ class ArgumentParser(six.with_metaclass(_ArgumentParserCache, object)): Returns: The parsed value in native type. """ - if not isinstance(argument, six.string_types): + if not isinstance(argument, str): raise TypeError('flag value must be a string, found "{}"'.format( type(argument))) return argument @@ -228,7 +223,7 @@ class FloatParser(NumericParser): def convert(self, argument): """Returns the float value of argument.""" if (_is_integer_type(argument) or isinstance(argument, float) or - isinstance(argument, six.string_types)): + isinstance(argument, str)): return float(argument) else: raise TypeError( @@ -274,7 +269,7 @@ class IntegerParser(NumericParser): """Returns the int value of argument.""" if _is_integer_type(argument): return argument - elif isinstance(argument, six.string_types): + elif isinstance(argument, str): base = 10 if len(argument) > 2 and argument[0] == '0': if argument[1] == 'o': @@ -296,14 +291,14 @@ class BooleanParser(ArgumentParser): def parse(self, argument): """See base class.""" - if isinstance(argument, six.string_types): + if isinstance(argument, str): if argument.lower() in ('true', 't', '1'): return True elif argument.lower() in ('false', 'f', '0'): return False else: raise ValueError('Non-boolean argument to boolean flag', argument) - elif isinstance(argument, six.integer_types): + elif isinstance(argument, int): # Only allow bool or integer 0, 1. # Note that float 1.0 == True, 0.0 == False. bool_value = bool(argument) @@ -433,7 +428,7 @@ class EnumClassParser(ArgumentParser): """ if isinstance(argument, self.enum_class): return argument - elif not isinstance(argument, six.string_types): + elif not isinstance(argument, str): raise ValueError( '{} is not an enum member or a name of a member in {}'.format( argument, self.enum_class)) @@ -496,18 +491,10 @@ class CsvListSerializer(ArgumentSerializer): def serialize(self, value): """Serializes a list as a CSV string or unicode.""" - if six.PY2: - # In Python2 csv.writer doesn't accept unicode, so we convert to UTF-8. - output = io.BytesIO() - writer = csv.writer(output, delimiter=self.list_sep) - writer.writerow([unicode(x).encode('utf-8') for x in value]) # pylint: disable=undefined-variable - serialized_value = output.getvalue().decode('utf-8').strip() - else: - # In Python3 csv.writer expects a text stream. - output = io.StringIO() - writer = csv.writer(output, delimiter=self.list_sep) - writer.writerow([str(x) for x in value]) - serialized_value = output.getvalue().strip() + output = io.StringIO() + writer = csv.writer(output, delimiter=self.list_sep) + writer.writerow([str(x) for x in value]) + serialized_value = output.getvalue().strip() # We need the returned value to be pure ascii or Unicodes so that # when the xml help is generated they are usefully encodable. diff --git a/absl/flags/_flag.py b/absl/flags/_flag.py index a1c53ff..d7ad944 100644 --- a/absl/flags/_flag.py +++ b/absl/flags/_flag.py @@ -18,18 +18,13 @@ Do NOT import this module directly. Import the flags package and use the aliases defined at the package level instead. """ -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - +from collections import abc import copy import functools -from absl._collections_abc import abc from absl.flags import _argument_parser from absl.flags import _exceptions from absl.flags import _helpers -import six @functools.total_ordering @@ -411,7 +406,7 @@ class MultiFlag(Flag): def _parse(self, arguments): if (isinstance(arguments, abc.Iterable) and - not isinstance(arguments, six.string_types)): + not isinstance(arguments, str)): arguments = list(arguments) if not isinstance(arguments, list): diff --git a/absl/flags/_flag.pyi b/absl/flags/_flag.pyi index f28bbf3..9b4a3d3 100644 --- a/absl/flags/_flag.pyi +++ b/absl/flags/_flag.pyi @@ -17,10 +17,8 @@ import copy import functools -from absl._collections_abc import abc from absl.flags import _argument_parser import enum -import six from typing import Text, TypeVar, Generic, Iterable, Type, List, Optional, Any, Union, Sequence diff --git a/absl/flags/_flagvalues.py b/absl/flags/_flagvalues.py index c9be720..1b54fb3 100644 --- a/absl/flags/_flagvalues.py +++ b/absl/flags/_flagvalues.py @@ -17,36 +17,26 @@ Do NOT import this module directly. Import the flags package and use the aliases defined at the package level instead. """ -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - import copy import itertools import logging import os import sys +from typing import Generic, TypeVar from xml.dom import minidom from absl.flags import _exceptions from absl.flags import _flag from absl.flags import _helpers from absl.flags import _validators_classes -import six - -# pylint: disable=unused-import -try: - import typing - from typing import Text, Optional -except ImportError: - typing = None -# pylint: enable=unused-import # Add flagvalues module to disclaimed module ids. _helpers.disclaim_module_ids.add(id(sys.modules[__name__])) +_T = TypeVar('_T') + -class FlagValues(object): +class FlagValues: """Registry of 'Flag' objects. A 'FlagValues' can then scan command line arguments, passing flag @@ -247,7 +237,7 @@ class FlagValues(object): for flags_by_module_dict in (self.flags_by_module_dict(), self.flags_by_module_id_dict(), self.key_flags_by_module_dict()): - for flags_in_module in six.itervalues(flags_by_module_dict): + for flags_in_module in flags_by_module_dict.values(): # While (as opposed to if) takes care of multiple occurrences of a # flag in the list for the same module. while flag_obj in flags_in_module: @@ -313,7 +303,7 @@ class FlagValues(object): registered_flag = self._flags().get(flagname) if registered_flag is None: return default - for module, flags in six.iteritems(self.flags_by_module_dict()): + for module, flags in self.flags_by_module_dict().items(): for flag in flags: # It must compare the flag with the one in _flags. This is because a # flag might be overridden only for its long name (or short name), @@ -338,7 +328,7 @@ class FlagValues(object): registered_flag = self._flags().get(flagname) if registered_flag is None: return default - for module_id, flags in six.iteritems(self.flags_by_module_id_dict()): + for module_id, flags in self.flags_by_module_id_dict().items(): for flag in flags: # It must compare the flag with the one in _flags. This is because a # flag might be overridden only for its long name (or short name), @@ -389,7 +379,7 @@ class FlagValues(object): Args: flag_values: FlagValues, the FlagValues instance from which to copy flags. """ - for flag_name, flag in six.iteritems(flag_values._flags()): # pylint: disable=protected-access + for flag_name, flag in flag_values._flags().items(): # pylint: disable=protected-access # Each flags with short_name appears here twice (once under its # normal name, and again with its short name). To prevent # problems (DuplicateFlagError) with double flag registration, we @@ -485,18 +475,8 @@ class FlagValues(object): if self.__dict__['__flags_parsed'] or fl[name].present: return fl[name].value else: - error_message = ('Trying to access flag --%s before flags were parsed.' % - name) - if six.PY2: - # In Python 2, hasattr returns False if getattr raises any exception. - # That means if someone calls hasattr(FLAGS, 'flag'), it returns False - # instead of raises UnparsedFlagAccessError even if --flag is already - # defined. To make the error more visible, the best we can do is to - # log an error message before raising the exception. - # Don't log a full stacktrace here since that makes other callers - # get too much noise. - logging.error(error_message) - raise _exceptions.UnparsedFlagAccessError(error_message) + raise _exceptions.UnparsedFlagAccessError( + 'Trying to access flag --%s before flags were parsed.' % name) def __setattr__(self, name, value): """Sets the 'value' attribute of the flag --name.""" @@ -507,7 +487,7 @@ class FlagValues(object): """Sets multiple flag values together, triggers validators afterwards.""" fl = self._flags() known_flags = set() - for name, value in six.iteritems(attributes): + for name, value in attributes.items(): if name in self.__dict__['__hiddenflags']: raise AttributeError(name) if name in fl: @@ -528,7 +508,7 @@ class FlagValues(object): validator. """ all_validators = set() - for flag in six.itervalues(self._flags()): + for flag in self._flags().values(): all_validators.update(flag.validators) self._assert_validators(all_validators) @@ -858,7 +838,7 @@ class FlagValues(object): def flag_values_dict(self): """Returns a dictionary that maps flag names to flag values.""" - return {name: flag.value for name, flag in six.iteritems(self._flags())} + return {name: flag.value for name, flag in self._flags().items()} def __str__(self): """Returns a help string for all known flags.""" @@ -887,11 +867,10 @@ class FlagValues(object): else: output_lines = [] # Just print one long list of flags. - values = six.itervalues(self._flags()) + values = self._flags().values() if include_special_flags: - values = itertools.chain(values, - six.itervalues( - _helpers.SPECIAL_FLAGS._flags())) # pylint: disable=protected-access + values = itertools.chain( + values, _helpers.SPECIAL_FLAGS._flags().values()) # pylint: disable=protected-access self._render_flag_list(values, output_lines, prefix) return '\n'.join(output_lines) @@ -912,7 +891,7 @@ class FlagValues(object): if include_special_flags: self._render_module_flags( 'absl.flags', - six.itervalues(_helpers.SPECIAL_FLAGS._flags()), # pylint: disable=protected-access + _helpers.SPECIAL_FLAGS._flags().values(), # pylint: disable=protected-access output_lines, prefix) return '\n'.join(output_lines) @@ -1291,11 +1270,8 @@ class FlagValues(object): is_key=is_key)) outfile = outfile or sys.stdout - if six.PY2: - outfile.write(doc.toprettyxml(indent=' ', encoding='utf-8')) - else: - outfile.write( - doc.toprettyxml(indent=' ', encoding='utf-8').decode('utf-8')) + outfile.write( + doc.toprettyxml(indent=' ', encoding='utf-8').decode('utf-8')) outfile.flush() def _check_method_name_conflicts(self, name, flag): @@ -1316,14 +1292,8 @@ class FlagValues(object): FLAGS = FlagValues() -if typing: - _T = typing.TypeVar('_T') - _Base = typing.Generic[_T] -else: - _Base = object - -class FlagHolder(_Base): +class FlagHolder(Generic[_T]): """Holds a defined flag. This facilitates a cleaner api around global state. Instead of diff --git a/absl/flags/_flagvalues.pyi b/absl/flags/_flagvalues.pyi index 9f1e1a5..e25c6dd 100644 --- a/absl/flags/_flagvalues.pyi +++ b/absl/flags/_flagvalues.pyi @@ -16,7 +16,6 @@ from absl.flags import _flag -import six from typing import Any, Dict, Generic, Iterable, Iterator, List, Optional, Sequence, Text, Type, TypeVar diff --git a/absl/flags/_helpers.py b/absl/flags/_helpers.py index 68b8cfc..37ae360 100644 --- a/absl/flags/_helpers.py +++ b/absl/flags/_helpers.py @@ -34,9 +34,6 @@ try: except ImportError: termios = None -import six -from six.moves import range # pylint: disable=redefined-builtin - _DEFAULT_HELP_WIDTH = 80 # Default width of help output. _MIN_HELP_WIDTH = 40 # Minimal "sane" width of help output. We assume that any @@ -172,9 +169,6 @@ def create_xml_dom_element(doc, name, value): An instance of minidom.Element. """ s = str_or_unicode(value) - if six.PY2 and not isinstance(s, unicode): - # Get a valid unicode string. - s = s.decode('utf-8', 'ignore') if isinstance(value, bool): # Display boolean values as the C++ flag library does: no caps. s = s.lower() @@ -340,7 +334,7 @@ def flag_dict_to_args(flag_map, multi_flags=None): Yields: sequence of string suitable for a subprocess execution. """ - for key, value in six.iteritems(flag_map): + for key, value in flag_map.items(): if value is None: yield '--%s' % key elif isinstance(value, bool): diff --git a/absl/logging/BUILD b/absl/logging/BUILD index e666d7a..6c0d1bc 100644 --- a/absl/logging/BUILD +++ b/absl/logging/BUILD @@ -7,7 +7,6 @@ py_library( visibility = ["//visibility:public"], deps = [ ":converter", - "//absl:_collections_abc", "//absl/flags", ], ) diff --git a/absl/logging/__init__.py b/absl/logging/__init__.py index a475bd5..8804490 100644 --- a/absl/logging/__init__.py +++ b/absl/logging/__init__.py @@ -72,6 +72,7 @@ The differences in behavior are historical and unfortunate. """ import collections +from collections import abc import getpass import io import itertools @@ -88,7 +89,6 @@ import types import warnings from absl import flags -from absl._collections_abc import abc from absl.logging import converter try: diff --git a/absl/testing/BUILD b/absl/testing/BUILD index 6dbbaea..b608c8c 100644 --- a/absl/testing/BUILD +++ b/absl/testing/BUILD @@ -8,7 +8,6 @@ py_library( deps = [ ":_pretty_print_reporter", ":xml_reporter", - "//absl:_collections_abc", "//absl:app", "//absl/flags", "//absl/logging", @@ -34,7 +33,6 @@ py_library( visibility = ["//visibility:public"], deps = [ ":absltest", - "//absl:_collections_abc", ], ) @@ -225,7 +223,6 @@ py_test( deps = [ ":absltest", ":parameterized", - "//absl:_collections_abc", ], ) diff --git a/absl/testing/absltest.py b/absl/testing/absltest.py index 1303fd4..cebb1ca 100644 --- a/absl/testing/absltest.py +++ b/absl/testing/absltest.py @@ -18,6 +18,7 @@ This module contains base classes and high-level functions for Abseil-style tests. """ +from collections import abc import contextlib import difflib import enum @@ -55,7 +56,6 @@ except ImportError: from absl import app from absl import flags from absl import logging -from absl._collections_abc import abc from absl.testing import _pretty_print_reporter from absl.testing import xml_reporter diff --git a/absl/testing/parameterized.py b/absl/testing/parameterized.py index f318b98..ec6a529 100644 --- a/absl/testing/parameterized.py +++ b/absl/testing/parameterized.py @@ -204,10 +204,7 @@ as [asynctest](https://github.com/Martiusweb/asynctest): self.assertEqual(actual, expected) """ -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - +from collections import abc import functools import inspect import itertools @@ -215,7 +212,6 @@ import re import types import unittest -from absl._collections_abc import abc from absl.testing import absltest diff --git a/absl/testing/tests/absltest_py3_test.py b/absl/testing/tests/absltest_py3_test.py index d39b501..7c5f500 100644 --- a/absl/testing/tests/absltest_py3_test.py +++ b/absl/testing/tests/absltest_py3_test.py @@ -1,4 +1,3 @@ -# Lint as: python3 # Copyright 2020 The Abseil Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/absl/testing/tests/parameterized_test.py b/absl/testing/tests/parameterized_test.py index 7f63d01..8acbd93 100644 --- a/absl/testing/tests/parameterized_test.py +++ b/absl/testing/tests/parameterized_test.py @@ -14,10 +14,10 @@ """Tests for absl.testing.parameterized.""" +from collections import abc import sys import unittest -from absl._collections_abc import abc from absl.testing import absltest from absl.testing import parameterized @@ -31,10 +31,6 @@ except ImportError: if sys.version_info < (3, 6): raise RuntimeError('Python version 3.6+ is required.') -INSTALL_REQUIRES = [ - 'six', -] - setuptools_version = tuple( int(x) for x in setuptools.__version__.split('.')[:2]) @@ -51,7 +47,7 @@ with open(_README_PATH, 'rb') as fp: setuptools.setup( name='absl-py', - version='1.0.0', + version='1.1.0', description=( 'Abseil Python Common Libraries, ' 'see https://github.com/abseil/abseil-py.'), @@ -62,7 +58,6 @@ setuptools.setup( packages=setuptools.find_packages(exclude=[ '*.tests', '*.tests.*', 'tests.*', 'tests', ]), - install_requires=INSTALL_REQUIRES, include_package_data=True, license='Apache 2.0', classifiers=[ diff --git a/smoke_tests/smoke_test.sh b/smoke_tests/smoke_test.sh index cde5185..99307a4 100755 --- a/smoke_tests/smoke_test.sh +++ b/smoke_tests/smoke_test.sh @@ -54,8 +54,7 @@ set -u trap 'deactivate' EXIT # When running macOS <= 10.12, pip 9.0.3 is required to connect to PyPI. -# So we need to manually use the latest pip to install `six`, -# then install absl-py. See: +# So we need to manually use the latest pip to install absl-py. See: # https://mail.python.org/pipermail/distutils-sig/2018-April/032114.html if [[ "$(python -c "import sys; print(sys.version_info.major, sys.version_info.minor)")" == "3 6" ]]; then # Latest get-pip.py no longer supports Python 3.6. @@ -64,7 +63,6 @@ else curl https://bootstrap.pypa.io/get-pip.py | python fi pip --version -pip install six python --version python setup.py install diff --git a/third_party/BUILD b/third_party/BUILD deleted file mode 100644 index 7b80db4..0000000 --- a/third_party/BUILD +++ /dev/null @@ -1,2 +0,0 @@ -# This BUILD file is empty. It is only needed so that this directory is a bazel -# package and its files can be referenced by `http_archive.build_file`. diff --git a/third_party/six.BUILD b/third_party/six.BUILD deleted file mode 100644 index a1b2f7b..0000000 --- a/third_party/six.BUILD +++ /dev/null @@ -1,14 +0,0 @@ -# Description: -# Six provides simple utilities for wrapping over differences between Python 2 -# and Python 3. - -licenses(["notice"]) # MIT - -exports_files(["LICENSE"]) - -py_library( - name = "six", - srcs = ["six.py"], - srcs_version = "PY2AND3", - visibility = ["//visibility:public"], -) |