


import re
from pathlib import Path
from unittest import TestCase

import pytest






@pytest.mark.integration
class  UpperCamelCase__(     lowerCAmelCase ):




				def   a__(	self    :				Tuple   ,					lowerCAmelCase    :				str   )->  List[str]:

										"""simple docstring"""




										with open(lowerCAmelCase   ,					encoding='''utf-8'''   ) as input_file:
																UpperCAmelCase         =			re.compile(R'''(?!.*\b(?:encoding|rb|w|wb|w+|wb+|ab|ab+)\b)(?<=\s)(open)\((.*)\)'''   )
																UpperCAmelCase         =			input_file.read()
																UpperCAmelCase         =			regexp.search(lowerCAmelCase   )

										return match




				def   a__(	self    :				Dict   ,					lowerCAmelCase    :				str   )->  Tuple:

										"""simple docstring"""




										with open(lowerCAmelCase   ,					encoding='''utf-8'''   ) as input_file:
																UpperCAmelCase         =			re.compile(R'''#[^\r\n]*print\(|\"[^\r\n]*print\(|\"\"\".*?print\(.*?\"\"\"|(print\()'''   ,					re.DOTALL   )
																UpperCAmelCase         =			input_file.read()
																# use `re.finditer` to handle the case where the ignored groups would be matched first by `re.search`
																UpperCAmelCase         =			regexp.finditer(lowerCAmelCase   )

										UpperCAmelCase         =			[match for match in matches if match is not None and match.group(1   ) is not None]
										return matches[0] if matches else None




				def   a__(	self    :				List[str]   )->  Optional[int]:

										"""simple docstring"""




										UpperCAmelCase         =			Path('''./datasets'''   )
										UpperCAmelCase         =			list(dataset_paths.absolute().glob('''**/*.py'''   )   )

										for dataset in dataset_files:
																if self._no_encoding_on_file_open(str(lowerCAmelCase   )   ):
																						raise AssertionError(F"""open(...) must use utf-8 encoding in {dataset}"""   )





				def   a__(	self    :				int   )->  Optional[Any]:

										"""simple docstring"""




										UpperCAmelCase         =			Path('''./datasets'''   )
										UpperCAmelCase         =			list(dataset_paths.absolute().glob('''**/*.py'''   )   )

										for dataset in dataset_files:
																if self._no_print_statements(str(lowerCAmelCase   )   ):
																						raise AssertionError(F"""print statement found in {dataset}. Use datasets.logger/logging instead."""   )









'''simple docstring'''



# coding=utf-8
# Copyright 2020 The HuggingFace Inc. team.
#
# 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.

# this script dumps information about the environment

import os
import sys

import transformers


_lowercase    :    Union[str, Any]			     =  """3"""

print("""Python version:""", sys.version)
print("""transformers version:""", transformers.__version__)

try:
	import torch

	print("""Torch version:""", torch.__version__)
	print("""Cuda available:""", torch.cuda.is_available())
	print("""Cuda version:""", torch.version.cuda)
	print("""CuDNN version:""", torch.backends.cudnn.version())
	print("""Number of GPUs available:""", torch.cuda.device_count())
	print("""NCCL version:""", torch.cuda.nccl.version())
except ImportError:
	print("""Torch version:""", None)

try:
	import deepspeed

	print("""DeepSpeed version:""", deepspeed.__version__)
except ImportError:
	print("""DeepSpeed version:""", None)

try:
	import tensorflow as tf

	print("""TensorFlow version:""", tf.__version__)
	print("""TF GPUs available:""", bool(tf.config.list_physical_devices("""GPU""")))
	print("""Number of TF GPUs available:""", len(tf.config.list_physical_devices("""GPU""")))
except ImportError:
	print("""TensorFlow version:""", None)





