-
Notifications
You must be signed in to change notification settings - Fork 77
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
Support local Python application development #4662
Conversation
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 can go over this a bit deeper on Monday, but I think it seems like a reasonable start!
Potential other names I thought of are positron-app-runner
and positron-app-viewer
, although I don't think the current one is too bad 😄
c38d1a4
to
ab94ba7
Compare
d87b75f
to
8a2c4ea
Compare
Next CI error is because the test is running outside of a workspace. I can't figure out why, since that's not the case locally. Will try to debug next week or disable these tests in CI for now so we can merge once this is ready. |
…dd dont show again button
61282cb
to
724cd17
Compare
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.
tried out with sample scripts and some community-built applications, and everything seems to run as expected!
side note: when I first built Positron, I ran into this error. After restarting it disappeared. noting in case this pops up again somewhere, but it seems unrelated to these changes
Command failed: . /Users/isabelzimmerman/code/positron-scratch/scratchvenv/bin/activate && echo 'e8b39361-0157-4923-80e1-22d70d46dee6' && python /Users/isabelzimmerman/code/positron/extensions/positron-python/python_files/printEnvVariables.py Debugger listening on ws://127.0.0.1:52539/19a0b899-0894-458d-8ae5-8a307458405d For help, see: https://nodejs.org/en/docs/inspector Debugger attached.
Testing on Workbench(example apps from PR description) StreamlitSeems to be running just fine!DashMessage that popped up before running Dash appAfter
|
This PR adds support for local Python application development for the following frameworks:
This is facilitated by a new extension:
positron-run-app
.Addresses #4557, #4555, #3023, #3027, #3024.
Screen.Recording.2024-09-13.at.19.23.43.mov
QA notes
Here are example apps for all of the supported frameworks:
Streamlit
Dash
Gradio
FastAPI
Flask
Next steps: Workbench integration
To support Workbench, we'll need to update
runApplication
to detect if we're in Workbench, and if so, find a free port and corresponding proxied URL (possibly related to #4274) and pass them both togetTerminalOptions
.