-
-
Notifications
You must be signed in to change notification settings - Fork 550
Closed
Labels
bug:normalaffects many people or has quite an impactaffects many people or has quite an impact
Milestone
Description
Issue
hi tox team, I'm the maintainer of the library snowflake-sqlalchemy and we're using preview version of tox for our tests.
recently our CI started broken (example running here) due to pandas module not found.
The issue comes with tox >= 4.0.0rc2, tox < 4.0.0rc2 is fine.
To give some more details: snowflake-sqlalchemy library has defined pandas in the options.extras_require in setup.cfg, and in tox.ini, we put pandas under extras config.
With tox < 4.0.0rc2, the pandas dependency could be installed in the tox env, while in tox >= 4.0.0rc2, the pandas dependency is not installed.
Environment
Provide at least:
- OS: MacOS M1
pip listof the host Python wheretoxis installed:
asn1crypto==1.5.1
attrs==22.1.0
cachetools==5.2.0
certifi==2022.9.24
cffi==1.15.1
chardet==5.1.0
charset-normalizer==2.1.1
colorama==0.4.6
cryptography==38.0.4
distlib==0.3.6
exceptiongroup==1.0.4
filelock==3.8.2
idna==3.4
iniconfig==1.1.1
numpy==1.23.5
oscrypto==1.3.0
packaging==21.3
pandas==1.5.2
platformdirs==2.5.4
pluggy==1.0.0
py==1.11.0
pyarrow==8.0.0
pycparser==2.21
pycryptodomex==3.16.0
PyJWT==2.6.0
pyOpenSSL==22.1.0
pyparsing==3.0.9
pyproject_api==1.2.1
pytest==7.2.0
python-dateutil==2.8.2
pytz==2022.6
requests==2.28.1
six==1.16.0
snowflake-connector-python==2.8.3
snowflake-sqlalchemy==1.4.4
SQLAlchemy==1.4.44
tomli==2.0.1
tox==4.0.0rc2
typing_extensions==4.4.0
urllib3==1.26.13
virtualenv==20.17.1
Output of running tox
Provide the output of tox -rvv:
.pkg_external: commands[0]> pyproject-build -w . -o /Users/a/Projects/snowflake-sqlalchemy/dist
* Creating venv isolated environment...
* Installing packages in isolated environment... (setuptools >= 40.8.0, wheel)
* Getting build dependencies for wheel...
running egg_info
writing src/snowflake_sqlalchemy.egg-info/PKG-INFO
writing dependency_links to src/snowflake_sqlalchemy.egg-info/dependency_links.txt
writing entry points to src/snowflake_sqlalchemy.egg-info/entry_points.txt
writing requirements to src/snowflake_sqlalchemy.egg-info/requires.txt
writing top-level names to src/snowflake_sqlalchemy.egg-info/top_level.txt
reading manifest file 'src/snowflake_sqlalchemy.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'tests'
adding license file 'LICENSE.txt'
writing manifest file 'src/snowflake_sqlalchemy.egg-info/SOURCES.txt'
* Installing packages in isolated environment... (wheel)
* Building wheel...
running bdist_wheel
running build
running build_py
running egg_info
writing src/snowflake_sqlalchemy.egg-info/PKG-INFO
writing dependency_links to src/snowflake_sqlalchemy.egg-info/dependency_links.txt
writing entry points to src/snowflake_sqlalchemy.egg-info/entry_points.txt
writing requirements to src/snowflake_sqlalchemy.egg-info/requires.txt
writing top-level names to src/snowflake_sqlalchemy.egg-info/top_level.txt
reading manifest file 'src/snowflake_sqlalchemy.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'tests'
adding license file 'LICENSE.txt'
writing manifest file 'src/snowflake_sqlalchemy.egg-info/SOURCES.txt'
installing to build/bdist.macosx-11.1-arm64/wheel
running install
running install_lib
creating build/bdist.macosx-11.1-arm64/wheel
creating build/bdist.macosx-11.1-arm64/wheel/snowflake
creating build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/_constants.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/util.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/custom_commands.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/snowdialect.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/__init__.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/provision.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/requirements.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/custom_types.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
copying build/lib/snowflake/sqlalchemy/base.py -> build/bdist.macosx-11.1-arm64/wheel/snowflake/sqlalchemy
running install_egg_info
Copying src/snowflake_sqlalchemy.egg-info to build/bdist.macosx-11.1-arm64/wheel/snowflake_sqlalchemy-1.4.4-py3.8.egg-info
running install_scripts
creating build/bdist.macosx-11.1-arm64/wheel/snowflake_sqlalchemy-1.4.4.dist-info/WHEEL
creating '/Users/a/Projects/snowflake-sqlalchemy/dist/.tmp-m2kmurhq/snowflake_sqlalchemy-1.4.4-py2.py3-none-any.whl' and adding 'build/bdist.macosx-11.1-arm64/wheel' to it
adding 'snowflake/sqlalchemy/__init__.py'
adding 'snowflake/sqlalchemy/_constants.py'
adding 'snowflake/sqlalchemy/base.py'
adding 'snowflake/sqlalchemy/custom_commands.py'
adding 'snowflake/sqlalchemy/custom_types.py'
adding 'snowflake/sqlalchemy/provision.py'
adding 'snowflake/sqlalchemy/requirements.py'
adding 'snowflake/sqlalchemy/snowdialect.py'
adding 'snowflake/sqlalchemy/util.py'
adding 'snowflake_sqlalchemy-1.4.4.dist-info/LICENSE.txt'
adding 'snowflake_sqlalchemy-1.4.4.dist-info/METADATA'
adding 'snowflake_sqlalchemy-1.4.4.dist-info/WHEEL'
adding 'snowflake_sqlalchemy-1.4.4.dist-info/entry_points.txt'
adding 'snowflake_sqlalchemy-1.4.4.dist-info/top_level.txt'
adding 'snowflake_sqlalchemy-1.4.4.dist-info/RECORD'
removing build/bdist.macosx-11.1-arm64/wheel
Successfully built snowflake_sqlalchemy-1.4.4-py2.py3-none-any.whl
py310: install_package> python -I -m pip install --force-reinstall --no-deps /Users/a/Projects/snowflake-sqlalchemy/dist/snowflake_sqlalchemy-1.4.4-py2.py3-none-any.whl
py310: commands[0]> pytest --cov snowflake.sqlalchemy --junitxml /Users/a/Projects/snowflake-sqlalchemy/.tox/junit_py310.xml tests
/Users/a/Projects/snowflake-sqlalchemy/.tox/py310/lib/python3.8/site-packages/coverage/report.py:87: CoverageWarning: Couldn't parse '/Users/a/Projects/snowflake-sqlalchemy/src/snowflake/sqlalchemy/_constants.py': No source for code: '/Users/a/Projects/snowflake-sqlalchemy/src/snowflake/sqlalchemy/_constants.py'. (couldnt-parse)
coverage._warn(msg, slug="couldnt-parse")
======================================================================================== test session starts =========================================================================================
platform darwin -- Python 3.8.15, pytest-7.2.0, pluggy-1.0.0
cachedir: .tox/py310/.pytest_cache
rootdir: /Users/a/Projects/snowflake-sqlalchemy, configfile: tox.ini
plugins: rerunfailures-10.3, timeout-2.1.0, cov-4.0.0
collected 90 items / 1 error
=============================================================================================== ERRORS ===============================================================================================
_______________________________________________________________________________ ERROR collecting tests/test_pandas.py ________________________________________________________________________________
ImportError while importing test module '/Users/a/Projects/snowflake-sqlalchemy/tests/test_pandas.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/opt/miniconda3/envs/clean38/lib/python3.8/importlib/__init__.py:127: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
tests/test_pandas.py:13: in <module>
import pandas as pd
E ModuleNotFoundError: No module named 'pandas'Minimal example
If possible, provide a minimal reproducer for the issue:
$ git clone git@github.com:snowflakedb/snowflake-sqlalchemy.git
$ cd snowflake-sqlalchemy
$ pip install tox==4.0.0rc2
$ python -m tox -e py310compared with a successful running -- no ModuleNotFound error
$ git clone git@github.com:snowflakedb/snowflake-sqlalchemy.git
$ cd snowflake-sqlalchemy
$ pip install tox==4.0.0rc1
$ python -m tox -e py310Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bug:normalaffects many people or has quite an impactaffects many people or has quite an impact