-
Notifications
You must be signed in to change notification settings - Fork 5k
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
Fixes #5002 #5021
Fixes #5002 #5021
Conversation
I suspect removing that line also breaks using |
1 similar comment
I suspect removing that line also breaks using |
@takluyver To clarify, what is the intended behavior? And how do these changes break that behavior? To me everything seems to work with the changes, which suggests I don't understand what the intended behavior is, and thus what is broken. By default Right now, if both are specified by the user, only one of those specifications is listened to, which is rather confusing and frustrating (it took me 1-2 weeks of digging through the source code to figure out what was going on). Being able to specify both independently is important e.g. when running If it is actually intended that |
Yuck, this is the kind of thing that makes me hate traitlets: the relationship between I suspect that the fact that setting them to different values gives you read-only access to files in one but not the other is a coincidence of how the implementation works, not something that's designed or guaranteed for the future. |
@takluyver So would it make sense to change this PR to instead make |
@takluyver I updated the PR to just make the contents manager and kernel manager root directories non-configurable, since those settings are already silently overwritten by That being said it would probably be better if a deprecation warning for their non-configurability were inserted somehow -- I don't know what the best way would be to do that.
|
That would be my preferred direction - fewer config options that can interfere with one another. But as it's possible to set them separately at the moment, there's a good chance that someone has a use case for that, so it would be tricky to switch config off for those attributes now. :-( |
OK, so what if this PR was changed to create deprecation warnings saying that configuration for these traits is deprecated and will be removed in Notebook 7 or Notebook 8? As well as changes/additions to the Docs and docstrings saying that these will be deprecated? Would that be better? Again, these traits are already de facto un-configurable, this is the gist of #5002, so it seems like it would be impossible for anyone to have a use case that depends on configuring them. My main interest is in fixing #5002, because I lost a lot of time puzzling over that one before figuring out what the issue was, and it was an incredibly frustrating experience which I would prefer to ensure that future users can avoid. I really like Jupyter a lot and prefer that other people avoid frustrating experiences with it so that they can like Jupyter a lot too. |
Well, they are configurable when you don't use the I suspect that your original fix was probably the best idea - let the contents manager get the application option as part of calculating the default. It's just annoyingly hard to reason about these kind of interactions to verify that that will do the right thing in all situations - e.g. that it couldn't initialise the default before the config option is set on the application. |
…rs get the application option as part of calculating the default
OK @takluyver that makes sense to me too and I updated the PR with that strategy in mind. The kernel manager and contents manager already automatically check the notebook app's |
Thanks for your patience; let's try it like that and see if anyone complains. |
Deleting line 1278 fixes #5002
The rest of the deletions are code which was supposed to be removed with notebook 5.0, and it seems like notebook has advanced beyond that version.