-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
User service #12926
User service #12926
Conversation
Thanks for making a pull request to jupyterlab! |
Could we keep |
Could you elaborate on the need @ellisonbg ? I fear that this will create inconsistency in remix because accessing Note: JupyterLite will deal with user authentication using its custom service manager for the user endpoint (similarly to other Jupyter server endpoints): https://github.com/jupyterlite/jupyterlite/blob/6b8458dcfe051a89df191bcfe6b5a09d16194b7c/packages/server/src/app.ts#L25 |
28a3104
to
15f2039
Compare
15f2039
to
193d3a0
Compare
Most likely JupyterLite or other custom apps can handle that via their own |
193d3a0
to
b1cad5c
Compare
The workflow Test Minimum Versions fails because the The problem is that jupyterlab depends in
I bumped |
In jp-server v2, the terminal was moved to an extension. Some examples of standalone apps are configured to not load extensions. See: jupyterlab/examples/app/main.py Lines 11 to 13 in f1bc627
jupyterlab/examples/app/main.py Line 28 in f1bc627
That makes the tests of the examples fail because the terminal doesn't work. |
Would you mind opening an issue because we definitely need to do a follow up that support missing terminal feature in |
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 @hbcarlos
@meeseeksdev please backport to 3.6.x |
Owee, I'm MrMeeseeks, Look at me. There seem to be a conflict, please backport manually. Here are approximate instructions:
And apply the correct labels and milestones. Congratulations — you did some good work! Hopefully your backport PR will be tested by the continuous integration and merged soon! Remember to remove the If these instructions are inaccurate, feel free to suggest an improvement. |
@@ -25,7 +27,8 @@ class ExampleApp(LabServerApp): | |||
extension_url = "/lab" | |||
default_url = "/lab" | |||
name = __name__ | |||
load_other_extensions = False | |||
# In jupyter-server v2 terminals are an extension | |||
load_other_extensions = True |
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.
It would be nice to keep that one to False
as one of the main purposes of these examples is to show how to create standalone applications.
If that makes the tests fail maybe the test should be updated to not expect terminals anymore?
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.
The tests check that JupyterLab starts without throwing an error in the dev console.
We could make the terminal service optional or catch the error and show a warning.
But I'm not sure what is the best solution.
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'm looking into it.
* Backport PR #12926: User service * Fix integrity * Handle missing user service * Fix tests * Integrity fix Co-authored-by: Carlos Herrero <contact@carloshb.com>
* Creates a new service to fetch the identity of the user * Change ICurrentUser to a service * Pin jp-server v2 * Explicit test dependencies * Fixes user tests * Bumps importlib-metadata and fixes lint * Bumps notebook_shim * Fixes the examples * Fixes the examples Co-authored-by: Frédéric Collonval <fcollonval@gmail.com>
* Creates a new service to fetch the identity of the user * Change ICurrentUser to a service * Pin jp-server v2 * Explicit test dependencies * Fixes user tests * Bumps importlib-metadata and fixes lint * Bumps notebook_shim * Fixes the examples * Fixes the examples Co-authored-by: Frédéric Collonval <fcollonval@gmail.com>
* Creates a new service to fetch the identity of the user * Change ICurrentUser to a service * Pin jp-server v2 * Explicit test dependencies * Fixes user tests * Bumps importlib-metadata and fixes lint * Bumps notebook_shim * Fixes the examples * Fixes the examples Co-authored-by: Frédéric Collonval <fcollonval@gmail.com>
This is ready for review. I'm keeping it as a draft because we need to update the jupyter-server dependency since this need server v2.
References
Fixes #11678
Code changes
Removes the ICurrentUser token and creates a new service manager to fetch the user's identity and permissions.
User-facing changes
N/A
Backwards-incompatible changes
N/A