Repository: evidentlyai/evidently
Issue: Unable to launch multitest on Mac OS, Python 3.9.13
Root cause: Environment Incompatibility

```bash
$ pytest tests/multitest -v
======================================================================== test session starts =========================================================================
platform darwin -- Python 3.9.13, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/bin/python
cachedir: .pytest_cache

rootdir: /Users/aadral/workspace/evidently, configfile: setup.cfg
plugins: reportlog-0.4.0, spark-0.6.0
collected 0 items / 1 error

=============================================================================== ERRORS ===============================================================================
________________________________________________________ ERROR collecting tests/multitest/metrics/test_all.py ________________________________________________________
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/_pytest/python.py:249: in pytest_pycollect_makeitem
    res = list(collector._genfunctions(name, obj))
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/_pytest/python.py:470: in _genfunctions
    self.ihook.pytest_generate_tests.call_extra(methods, dict(metafunc=metafunc))
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/pluggy/_hooks.py:292: in call_extra
    return self(**kwargs)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
tests/multitest/metrics/conftest.py:113: in pytest_generate_tests
    parameters = [
tests/multitest/metrics/conftest.py:113: in <listcomp>
    parameters = [
tests/multitest/metrics/conftest.py:105: in generate_metric_dataset_outcome
    load_test_metrics()
tests/multitest/metrics/conftest.py:101: in load_test_metrics
    import_module(f"tests.multitest.metrics.{module}")
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1030: in _gcd_import
    ???
<frozen importlib._bootstrap>:1007: in _find_and_load
    ???
<frozen importlib._bootstrap>:986: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:680: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:850: in exec_module
    ???
<frozen importlib._bootstrap>:228: in _call_with_frames_removed
    ???
tests/multitest/metrics/data_drift.py:105: in <module>
    def embeddings_drift_metric():
tests/multitest/metrics/conftest.py:80: in metric
    metric_fixtures.append(f())
tests/multitest/metrics/data_drift.py:107: in embeddings_drift_metric
    "embeddings_drift_metric", EmbeddingsDriftMetric("small_subset"), NoopOutcome(), datasets=[embeddings_dataset()]
tests/multitest/metrics/data_drift.py:82: in embeddings_dataset
    embeddings_data = datasets.fetch_lfw_people()
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/sklearn/datasets/_lfw.py:321: in fetch_lfw_people
    lfw_home, data_folder_path = _check_fetch_lfw(
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/site-packages/sklearn/datasets/_lfw.py:111: in _check_fetch_lfw
    tarfile.open(archive_path, "r:gz").extractall(path=lfw_home)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/tarfile.py:2045: in extractall
    self.extract(tarinfo, path, set_attrs=not tarinfo.isdir(),
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/tarfile.py:2086: in extract
    self._extract_member(tarinfo, os.path.join(path, tarinfo.name),
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/tarfile.py:2159: in _extract_member
    self.makefile(tarinfo, targetpath)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/tarfile.py:2208: in makefile
    copyfileobj(source, target, tarinfo.size, ReadError, bufsize)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/tarfile.py:247: in copyfileobj
    buf = src.read(bufsize)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/gzip.py:300: in read
    return self._buffer.read(size)
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/_compression.py:68: in readinto
    data = self.read(len(byte_view))
/opt/homebrew/Caskroom/miniconda/base/envs/evidently_dev/lib/python3.9/gzip.py:506: in read
    raise EOFError("Compressed file ended before the "
E   EOFError: Compressed file ended before the end-of-stream marker was reached
========================================================================== warnings summary ==========================================================================
src/evidently/utils/visualizations.py:13
  /Users/aadral/workspace/evidently/src/evidently/utils/visualizations.py:13: DeprecationWarning: Please use `LinAlgError` from the `scipy.linalg` namespace, the `scipy.linalg.basic` namespace is deprecated.
    from scipy.linalg.basic import LinAlgError

-- Docs: https://docs.pytest.org/en/stable/warnings.html
====================================================================== short test summary info =======================================================================
ERROR tests/multitest/metrics/test_all.py - EOFError: Compressed file ended before the end-of-stream marker was reached
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
==================================================================== 1 warning, 1 error in 2.82s =====================================================================
```

Environment:
```bash
$ pip freeze
appnope==0.1.3
argon2-cffi==21.3.0
argon2-cffi-bindings==21.2.0
asttokens==2.0.8
attrs==22.1.0
backcall==0.2.0
beautifulsoup4==4.11.1
black==22.8.0
bleach==5.0.1
certifi @ file:///private/var/folders/nz/j6p8yfhx1mv_0grj5xl4650h0000gp/T/abs_ccvvj6f93d/croots/recipe/certifi_1663615678215/work/certifi
cffi==1.15.1
charset-normalizer==2.1.1
click==8.1.3
dataclasses==0.6
debugpy==1.6.3
decorator==5.1.1
defusedxml==0.7.1
entrypoints==0.4
-e git+https://github.com/evidentlyai/evidently.git@fe8be9bbb7fa077a176305d7f87a7f18e8c60919#egg=evidently
executing==1.1.0
fastjsonschema==2.16.2
findspark==2.0.1
flake8==4.0.1
idna==3.4
importlib-metadata==4.12.0
iniconfig==1.1.1
ipykernel==6.16.0
ipython==8.5.0
ipython-genutils==0.2.0
ipywidgets==8.0.2
isort==5.10.1
jedi==0.18.1
Jinja2==3.1.2
joblib==1.2.0
jsonschema==4.16.0
jupyter==1.0.0
jupyter-console==6.4.4
jupyter-core==4.11.1
jupyter_client==7.3.5
jupyterlab-pygments==0.2.2
jupyterlab-widgets==3.0.3
llvmlite==0.39.1
lxml==4.9.1
MarkupSafe==2.1.1
matplotlib-inline==0.1.6
mccabe==0.6.1
mistune==2.0.4
mypy==0.920
mypy-extensions==0.4.3
nbclient==0.6.8
nbconvert==7.0.0
nbformat==5.6.1
nest-asyncio==1.5.5
nltk==3.8.1
notebook==6.4.12
numba==0.56.4
numpy==1.23.3
packaging==21.3
pandas==1.5.0
pandocfilters==1.5.0
parso==0.8.3
pathspec==0.10.1
patsy==0.5.2
pexpect==4.8.0
pickleshare==0.7.5
Pillow==9.5.0
platformdirs==2.5.2
plotly==5.10.0
pluggy==1.0.0
prometheus-client==0.14.1
prompt-toolkit==3.0.31
psutil==5.9.2
ptyprocess==0.7.0
pure-eval==0.2.2
py==1.11.0
py4j==0.10.9.5
pyarrow==11.0.0
pycodestyle==2.8.0
pycparser==2.21
pydantic==1.10.7
pyflakes==2.4.0
Pygments==2.13.0
pynndescent==0.5.10
pyparsing==3.0.9
pyrsistent==0.18.1
pyspark==3.3.0
pytest==6.2.5
pytest-reportlog==0.4.0
pytest-spark==0.6.0
python-dateutil==2.8.2
pytz==2022.2.1
PyYAML==5.4.1
pyzmq==24.0.1
qtconsole==5.3.2
QtPy==2.2.0
regex==2022.10.31
requests==2.28.1
scikit-learn==1.1.2
scipy==1.9.1
Send2Trash==1.8.0
six==1.16.0
soupsieve==2.3.2.post1
stack-data==0.5.1
statsmodels==0.13.2
tenacity==8.1.0
terminado==0.16.0
threadpoolctl==3.1.0
tinycss2==1.1.1
toml==0.10.2
tomli==2.0.1
tornado==6.2
tqdm==4.64.1
traitlets==5.4.0
types-dataclasses==0.6.0
types-PyYAML==6.0.1
types-requests==2.26.0
typing_extensions==4.3.0
umap-learn==0.5.3
urllib3==1.26.12
wcwidth==0.2.5
webencodings==0.5.1
widgetsnbextension==4.0.3
zipp==3.8.1
```

There were a problem with sklearn dataset.

Workaround for history:
```bash
$ rm -rf ~/scikit_learn_data  # path to sklearn datasets
$ ipython or python
>>> from sklearn import datasets
>>> datasets.fetch_lfw_people()  # wait for ±200 MB download
$ PROFIT
```