-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Updated WebAgg JS to check and send request over wss if using HTTPS #25039
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
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.
Thank you for opening your first PR into Matplotlib!
If you have not heard from us in a while, please feel free to ping @matplotlib/developers
or anyone who has commented on the PR. Most of our reviewers are volunteers and sometimes things fall through the cracks.
You can also join us on gitter for real-time discussion.
For details on testing, writing docs, and our review process, please see the developer guide
We strive to be a welcoming and open project. Please follow our Code of Conduct.
On its face this looks reasonable to me, but I have no idea how to test it. |
@tacaswell I created a repo that uses a Docker image to reproduce the issue and test the updated JS. You can find it here https://github.com/whyvra/matplotlib-sample. Please let me know if you need more info on anything. Cheers |
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 confirmed this worked with a Caddy reverse proxy.
…uest over wss if using HTTPS
…039-on-v3.7.x Backport PR #25039 on branch v3.7.x (Updated WebAgg JS to check and send request over wss if using HTTPS)
PR Summary
Added a small change to the JavaScript for the WebAgg backend. The added JavaScript code will check the protocol and updated the websocket uri to
wss:
ifhttps:
is being used.This is to fix an issue with matplotlib running behind a reverse proxy that adds HTTPS and secure HTTP headers like HSTS. The connection to the insecure websocket i.e.
ws:
is blocked by the browser with the message:PR Checklist
Documentation and Tests
Has pytest style unit tests (andN/Apytest
passes)Documentation is sphinx and numpydoc compliant (the docs should build without error).N/ANew plotting related features are documented with examples.N/ARelease Notes
New features are marked with aN/A.. versionadded::
directive in the docstring and documented indoc/users/next_whats_new/
API changes are marked with aN/A.. versionchanged::
directive in the docstring and documented indoc/api/next_api_changes/
Release notes conform with instructions inN/Anext_whats_new/README.rst
ornext_api_changes/README.rst
Not sure whether or not I need to update any documentation, so please let me know if I do.
Thank you