-
Notifications
You must be signed in to change notification settings - Fork 128
python: upstream merge: v2025.14.0 #9613
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
Conversation
|
E2E Tests 🚀 |
1dedb0a to
2e62839
Compare
2e62839 to
3c198ce
Compare
| os: [ubuntu-latest] | ||
| # Run the tests on the oldest and most recent versions of Python. | ||
| python: ['3.9', '3.13'] | ||
| python: ['3.9', '3.13', '3.14'] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
adding this for now instead of replacing 3.13, until #9654
| pytest | ||
| flask | ||
| fastapi | ||
| fastapi; python_version < '3.14' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See #9654 for discussion on all these python_version < '3.14' and the skipped tests below!
| import { CreateEnv } from '../../../common/utils/localize'; | ||
|
|
||
| const SUPPORTED_UV_PYTHON_VERSIONS = ['3.13', '3.12', '3.11', '3.10', '3.9']; | ||
| const SUPPORTED_UV_PYTHON_VERSIONS = ['3.13', '3.12', '3.11', '3.10', '3.9', '3.14']; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I put this at the bottom and added (preview) for now; see discussion in #9654
| // Upstream doesn't run on OSX but that seems to fail too. | ||
| // if (WINDOWS) { | ||
| if (WINDOWS || OSX) { | ||
| // --- End Positron --- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was really weird to track down. After the upstream changes in microsoft/vscode-python#25404, some file system tests started failing on MacOS, which upstream does not run on. But they pass on ubuntu.
I noticed all the failing tests were gated by if (!SUPPORTS_SOCKETS) {skip()}, so I tried this, and it makes everything pass. I don't know if this is something we should worry about. Probably not, since they decided they can skip all these tests on Windows anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for looking into this! Looks like all these are tests for .sock files, which from my google searches seems to be a UNIX domain socket, so I don't think this is too surprising. Although there are these docs that were last updated 2013-09-17 on how to use them on osx machines 😅 I feel fine skipping this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed. I vaguely recall that we have skipped tests on macos for this reason before
| // We support versions where MINIMUM_PYTHON_VERSION <= version < MAXIMUM_PYTHON_VERSION_EXCLUSIVE. | ||
| export const MINIMUM_PYTHON_VERSION = { major: 3, minor: 9, patch: 0, raw: '3.9.0' } as PythonVersion; | ||
| export const MAXIMUM_PYTHON_VERSION_EXCLUSIVE = { major: 3, minor: 14, patch: 0, raw: '3.14.0' } as PythonVersion; | ||
| export const MAXIMUM_PYTHON_VERSION_EXCLUSIVE = { major: 3, minor: 15, patch: 0, raw: '3.15.0' } as PythonVersion; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
| // Upstream doesn't run on OSX but that seems to fail too. | ||
| // if (WINDOWS) { | ||
| if (WINDOWS || OSX) { | ||
| // --- End Positron --- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for looking into this! Looks like all these are tests for .sock files, which from my google searches seems to be a UNIX domain socket, so I don't think this is too surprising. Although there are these docs that were last updated 2013-09-17 on how to use them on osx machines 😅 I feel fine skipping this.
| assert "this is a warning" in caplog.text | ||
|
|
||
|
|
||
| @pytest.mark.skipif(lightning is None, reason="lightning is not installed") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: on these skipifs, can you mention 3.14 so it's easier to search and remove all these later?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My only hesitation is that we might run into this same scenario for e.g. Python 3.15 in the future. If these skipifs are still there, it'll make it a lot easier to add preview support. They also shouldn't affect the tests if the modules are installed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh true! That makes sense 💯
seeM
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks Austin!
extensions/positron-python/python_files/posit/positron/tests/test_inspectors.py
Outdated
Show resolved
Hide resolved
| // Upstream doesn't run on OSX but that seems to fail too. | ||
| // if (WINDOWS) { | ||
| if (WINDOWS || OSX) { | ||
| // --- End Positron --- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed. I vaguely recall that we have skipped tests on macos for this reason before
7a84a7a
Addresses #9541 and #9419.
Merging in v2025.14.0 of the upstream python extension, plus monthly maintenance, plus adding support for Python 3.14.
Release Notes
New Features
Bug Fixes
QA Notes
@:web @:win
It might be good to manually test that everything works with Python 3.14. I recommend downloading from https://www.python.org/downloads/release/python-3140rc3/ instead of using
uvbecause they don't have the latest release candidate as of this writing. Watch out for #9655 if you're testing.