Unverified Commit ce50305e authored by Aymeric Augustin's avatar Aymeric Augustin Committed by GitHub
Browse files

Merge pull request #2270 from aaugustin/remove-python-2

Remove support for Python 2
parents b6ea0f43 1a948d70
...@@ -14,13 +14,11 @@ ...@@ -14,13 +14,11 @@
# limitations under the License. # limitations under the License.
""" Load XXX dataset. """ """ Load XXX dataset. """
from __future__ import absolute_import, division, print_function
import collections import collections
import json import json
import logging import logging
import math import math
from io import open
from transformers.tokenization_bert import BasicTokenizer, whitespace_tokenize from transformers.tokenization_bert import BasicTokenizer, whitespace_tokenize
......
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
# limitations under the License. # limitations under the License.
""" XXX model configuration """ """ XXX model configuration """
from __future__ import absolute_import, division, print_function, unicode_literals
import logging import logging
......
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
# limitations under the License. # limitations under the License.
"""Convert XXX checkpoint.""" """Convert XXX checkpoint."""
from __future__ import absolute_import, division, print_function
import argparse import argparse
import logging import logging
......
...@@ -19,7 +19,6 @@ ...@@ -19,7 +19,6 @@
# In this template, replace all the XXX (various casings) with your model name # In this template, replace all the XXX (various casings) with your model name
#################################################### ####################################################
from __future__ import absolute_import, division, print_function, unicode_literals
import logging import logging
......
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
# In this template, replace all the XXX (various casings) with your model name # In this template, replace all the XXX (various casings) with your model name
#################################################### ####################################################
from __future__ import absolute_import, division, print_function, unicode_literals
import logging import logging
import os import os
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,11 +12,10 @@ ...@@ -12,11 +12,10 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function, unicode_literals
import os import os
import unittest import unittest
from io import open
from transformers.tokenization_bert import VOCAB_FILES_NAMES, XxxTokenizer from transformers.tokenization_bert import VOCAB_FILES_NAMES, XxxTokenizer
......
...@@ -14,12 +14,10 @@ ...@@ -14,12 +14,10 @@
# limitations under the License. # limitations under the License.
""" Tokenization class for model XXX.""" """ Tokenization class for model XXX."""
from __future__ import absolute_import, division, print_function, unicode_literals
import collections import collections
import logging import logging
import os import os
from io import open
from .tokenization_utils import PreTrainedTokenizer from .tokenization_utils import PreTrainedTokenizer
...@@ -146,11 +144,11 @@ class XxxTokenizer(PreTrainedTokenizer): ...@@ -146,11 +144,11 @@ class XxxTokenizer(PreTrainedTokenizer):
return split_tokens return split_tokens
def _convert_token_to_id(self, token): def _convert_token_to_id(self, token):
""" Converts a token (str/unicode) in an id using the vocab. """ """ Converts a token (str) in an id using the vocab. """
return self.vocab.get(token, self.vocab.get(self.unk_token)) return self.vocab.get(token, self.vocab.get(self.unk_token))
def _convert_id_to_token(self, index): def _convert_id_to_token(self, index):
"""Converts an index (integer) in a token (string/unicode) using the vocab.""" """Converts an index (integer) in a token (str) using the vocab."""
return self.ids_to_tokens.get(index, self.unk_token) return self.ids_to_tokens.get(index, self.unk_token)
def convert_tokens_to_string(self, tokens): def convert_tokens_to_string(self, tokens):
......
...@@ -12,12 +12,11 @@ ...@@ -12,12 +12,11 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import json import json
import os import os
import tempfile
from .test_tokenization_common import TemporaryDirectory
class ConfigTester(object): class ConfigTester(object):
...@@ -42,7 +41,7 @@ class ConfigTester(object): ...@@ -42,7 +41,7 @@ class ConfigTester(object):
def create_and_test_config_to_json_file(self): def create_and_test_config_to_json_file(self):
config_first = self.config_class(**self.inputs_dict) config_first = self.config_class(**self.inputs_dict)
with TemporaryDirectory() as tmpdirname: with tempfile.TemporaryDirectory() as tmpdirname:
json_file_path = os.path.join(tmpdirname, "config.json") json_file_path = os.path.join(tmpdirname, "config.json")
config_first.to_json_file(json_file_path) config_first.to_json_file(json_file_path)
config_second = self.config_class.from_json_file(json_file_path) config_second = self.config_class.from_json_file(json_file_path)
...@@ -52,7 +51,7 @@ class ConfigTester(object): ...@@ -52,7 +51,7 @@ class ConfigTester(object):
def create_and_test_config_from_and_save_pretrained(self): def create_and_test_config_from_and_save_pretrained(self):
config_first = self.config_class(**self.inputs_dict) config_first = self.config_class(**self.inputs_dict)
with TemporaryDirectory() as tmpdirname: with tempfile.TemporaryDirectory() as tmpdirname:
config_first.save_pretrained(tmpdirname) config_first.save_pretrained(tmpdirname)
config_second = self.config_class.from_pretrained(tmpdirname) config_second = self.config_class.from_pretrained(tmpdirname)
......
...@@ -12,14 +12,13 @@ ...@@ -12,14 +12,13 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import os import os
import time import time
import unittest import unittest
import requests import requests
import six
from requests.exceptions import HTTPError from requests.exceptions import HTTPError
from transformers.hf_api import HfApi, HfFolder, PresignedUrl, S3Obj from transformers.hf_api import HfApi, HfFolder, PresignedUrl, S3Obj
...@@ -50,7 +49,7 @@ class HfApiLoginTest(HfApiCommonTest): ...@@ -50,7 +49,7 @@ class HfApiLoginTest(HfApiCommonTest):
def test_login_valid(self): def test_login_valid(self):
token = self._api.login(username=USER, password=PASS) token = self._api.login(username=USER, password=PASS)
self.assertIsInstance(token, six.string_types) self.assertIsInstance(token, str)
class HfApiEndpointsTest(HfApiCommonTest): class HfApiEndpointsTest(HfApiCommonTest):
...@@ -74,7 +73,7 @@ class HfApiEndpointsTest(HfApiCommonTest): ...@@ -74,7 +73,7 @@ class HfApiEndpointsTest(HfApiCommonTest):
def test_presign_and_upload(self): def test_presign_and_upload(self):
for FILE_KEY, FILE_PATH in FILES: for FILE_KEY, FILE_PATH in FILES:
access_url = self._api.presign_and_upload(token=self._token, filename=FILE_KEY, filepath=FILE_PATH) access_url = self._api.presign_and_upload(token=self._token, filename=FILE_KEY, filepath=FILE_PATH)
self.assertIsInstance(access_url, six.string_types) self.assertIsInstance(access_url, str)
with open(FILE_PATH, "r") as f: with open(FILE_PATH, "r") as f:
body = f.read() body = f.read()
r = requests.get(access_url) r = requests.get(access_url)
......
...@@ -12,16 +12,15 @@ ...@@ -12,16 +12,15 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function, unicode_literals
import json import json
import os import os
import tempfile
import unittest import unittest
from transformers.modelcard import ModelCard from transformers.modelcard import ModelCard
from .test_tokenization_common import TemporaryDirectory
class ModelCardTester(unittest.TestCase): class ModelCardTester(unittest.TestCase):
def setUp(self): def setUp(self):
...@@ -65,7 +64,7 @@ class ModelCardTester(unittest.TestCase): ...@@ -65,7 +64,7 @@ class ModelCardTester(unittest.TestCase):
def test_model_card_to_json_file(self): def test_model_card_to_json_file(self):
model_card_first = ModelCard.from_dict(self.inputs_dict) model_card_first = ModelCard.from_dict(self.inputs_dict)
with TemporaryDirectory() as tmpdirname: with tempfile.TemporaryDirectory() as tmpdirname:
filename = os.path.join(tmpdirname, "modelcard.json") filename = os.path.join(tmpdirname, "modelcard.json")
model_card_first.to_json_file(filename) model_card_first.to_json_file(filename)
model_card_second = ModelCard.from_json_file(filename) model_card_second = ModelCard.from_json_file(filename)
...@@ -75,7 +74,7 @@ class ModelCardTester(unittest.TestCase): ...@@ -75,7 +74,7 @@ class ModelCardTester(unittest.TestCase):
def test_model_card_from_and_save_pretrained(self): def test_model_card_from_and_save_pretrained(self):
model_card_first = ModelCard.from_dict(self.inputs_dict) model_card_first = ModelCard.from_dict(self.inputs_dict)
with TemporaryDirectory() as tmpdirname: with tempfile.TemporaryDirectory() as tmpdirname:
model_card_first.save_pretrained(tmpdirname) model_card_first.save_pretrained(tmpdirname)
model_card_second = ModelCard.from_pretrained(tmpdirname) model_card_second = ModelCard.from_pretrained(tmpdirname)
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import logging import logging
import unittest import unittest
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,15 +12,13 @@ ...@@ -12,15 +12,13 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import copy import copy
import json import json
import logging import logging
import os.path import os.path
import random import random
import shutil
import sys
import tempfile import tempfile
import unittest import unittest
import uuid import uuid
...@@ -43,23 +41,6 @@ if is_torch_available(): ...@@ -43,23 +41,6 @@ if is_torch_available():
BERT_PRETRAINED_MODEL_ARCHIVE_MAP, BERT_PRETRAINED_MODEL_ARCHIVE_MAP,
) )
if sys.version_info[0] == 2:
class TemporaryDirectory(object):
"""Context manager for tempfile.mkdtemp() so it's usable with "with" statement."""
def __enter__(self):
self.name = tempfile.mkdtemp()
return self.name
def __exit__(self, exc_type, exc_value, traceback):
shutil.rmtree(self.name)
else:
TemporaryDirectory = tempfile.TemporaryDirectory
unicode = str
def _config_zero_init(config): def _config_zero_init(config):
configs_no_init = copy.deepcopy(config) configs_no_init = copy.deepcopy(config)
...@@ -92,7 +73,7 @@ class ModelTesterMixin: ...@@ -92,7 +73,7 @@ class ModelTesterMixin:
out_2 = outputs[0].numpy() out_2 = outputs[0].numpy()
out_2[np.isnan(out_2)] = 0 out_2[np.isnan(out_2)] = 0
with TemporaryDirectory() as tmpdirname: with tempfile.TemporaryDirectory() as tmpdirname:
model.save_pretrained(tmpdirname) model.save_pretrained(tmpdirname)
model = model_class.from_pretrained(tmpdirname) model = model_class.from_pretrained(tmpdirname)
model.to(torch_device) model.to(torch_device)
...@@ -238,7 +219,7 @@ class ModelTesterMixin: ...@@ -238,7 +219,7 @@ class ModelTesterMixin:
except RuntimeError: except RuntimeError:
self.fail("Couldn't trace module.") self.fail("Couldn't trace module.")
with TemporaryDirectory() as tmp_dir_name: with tempfile.TemporaryDirectory() as tmp_dir_name:
pt_file_name = os.path.join(tmp_dir_name, "traced_model.pt") pt_file_name = os.path.join(tmp_dir_name, "traced_model.pt")
try: try:
...@@ -366,7 +347,7 @@ class ModelTesterMixin: ...@@ -366,7 +347,7 @@ class ModelTesterMixin:
heads_to_prune = {0: list(range(1, self.model_tester.num_attention_heads)), -1: [0]} heads_to_prune = {0: list(range(1, self.model_tester.num_attention_heads)), -1: [0]}
model.prune_heads(heads_to_prune) model.prune_heads(heads_to_prune)
with TemporaryDirectory() as temp_dir_name: with tempfile.TemporaryDirectory() as temp_dir_name:
model.save_pretrained(temp_dir_name) model.save_pretrained(temp_dir_name)
model = model_class.from_pretrained(temp_dir_name) model = model_class.from_pretrained(temp_dir_name)
model.to(torch_device) model.to(torch_device)
...@@ -435,7 +416,7 @@ class ModelTesterMixin: ...@@ -435,7 +416,7 @@ class ModelTesterMixin:
self.assertEqual(attentions[2].shape[-3], self.model_tester.num_attention_heads) self.assertEqual(attentions[2].shape[-3], self.model_tester.num_attention_heads)
self.assertEqual(attentions[3].shape[-3], self.model_tester.num_attention_heads) self.assertEqual(attentions[3].shape[-3], self.model_tester.num_attention_heads)
with TemporaryDirectory() as temp_dir_name: with tempfile.TemporaryDirectory() as temp_dir_name:
model.save_pretrained(temp_dir_name) model.save_pretrained(temp_dir_name)
model = model_class.from_pretrained(temp_dir_name) model = model_class.from_pretrained(temp_dir_name)
model.to(torch_device) model.to(torch_device)
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from __future__ import absolute_import, division, print_function
import unittest import unittest
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment