-
Notifications
You must be signed in to change notification settings - Fork 164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Python3.13, fix running test on localhost, and move regression tests to pytest #545
base: main
Are you sure you want to change the base?
Conversation
@adutra @collado-mike @eric-maynard may I get a review for this one? |
@MonkeyCanCode from a first glance, I note that the original ask in #21 was to move the tests to pytests, but your PR has actually 3 (unrelated?) changes:
Would it be possible to split this PR in 3? In particular I'm worried about the complete redesign of the dockerfile. Also, the removal of Lines 105 to 111 in 9377aa7
|
Thanks for the quick check. Yes, I can split them into 3 diff PRs later this week. So the run_spark_sql.sh won't be needed with this PR as it got refactor into running the same thing in pytest. Also, I removed the part for downloading spark distribution and installed it via pip poetry instead. But yeah, let me do them in diff PR. Also, one more thing is python 3.8 is EOL since 2024-10-07. Should we bump the minimal support version to 3.9 instead (EOL at 2025-10)? |
Sounds good, looking forward to the new PRs!
I still am concerned by this. What if users want to start a Spark SQL session just to play with Polaris locally? Is there another easy way to do this? |
+1 for splitting |
Sounds good. Let me revisit this a bit later this week then update. |
Description
Fix #21
High level changes:
While trying to run regtest on local with Python 3.13, it failed on installing
pydantic-core
:This then prevents the installation of
pytest
which then fails all tests that are based onpytest
.Fix running test on localhost
Also,
regtests/t_cli/src/test_cli.py
set default polaris host topolaris
which can be problematic (as we are not documenting extra set for setting hostname anywhere for running test on local. Thus, better to set this tolocalhost
instead.Move all regression tests to pytests
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
Detail changes summary:
AWS_TEST_BASE
reference due to bad incomplete logic in the test cases (we should create a diff test case for this)regtests
tox
from>=3.9.0
to>=4.19.0
as that is the first version that support Python 3.13platformdirs
to4.3.6
asvirtualenv
has>=3.9.1,<5
and will try to downgrade version to3.11.0
during rerun of local testregtests/pyspark-setup.sh
,regtests/run_spark_sql.sh
andregtests/setup.sh
as these two are no longer neededregtests/runsh
to perform regression tests on pytests onlylocalhost
as default value for polaris host instead ofpolaris
to support running regression tests not within docker (still do-able without this change if we want to add document to ask user to setPOLARIS_HOST
)conftest.py
andiceberg_spark.py
Things I didn't do
regtests/t_pyspark/src/test_spark_sql_s3_with_privileges.py
. I can do another follow up PR to refactor all of them to more standard layout/format after current PR. Also, we should removesnowflake
in this file in the next PR.Test results:
Checklist:
Please delete options that are not relevant.