Skip to content
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

JupyterLab 4.0 migration #949

Merged
merged 83 commits into from Aug 26, 2023
Merged

Conversation

krassowski
Copy link
Member

@krassowski krassowski commented Jul 2, 2023

References

Related to #917.

Features:

General:

  • disabling features
  • statusbar
  • settings
    • when settings are open during startup the form renders generic fields; this may be resolve in lab 4.1 as we may be able to remove delayed transformation of settings

Testing/CI:

  • builds
  • tests pass:
    • unit
    • integration
  • documentation
    • builds
    • updated

Nice to have:

  • re-enable immutable installs for yarn 3 (the problem is that hash for file: protocol includes any rubbish and needs to be recomputed on each commit; there probably should not be a hash at all, and indeed portal: does not have it but is not supported by learna; official recommendation is to use workspace:, see comment which we did. Related issue and SO.
  • upstream: should ICompletionContext.widget be IDocumentWidget rather than Widget? (because we want to access .context.path); depends on where we believe completer will be used
  • add a default type for WidgetLSPAdapter<T> generic to avoid WidgetLSPAdapter<any>

Upstream PRs:

Issues:

Code changes

User-facing changes

Backwards-incompatible changes

  • .lsp-completer class got removed and instead body[data-lsp-completer-layout] selector is being used; this is suboptimal CSS performance-wise and may be changed.
  • feature registration is now handled by ILSPFeatureManager from upstream @jupyterlab/lsp package

@github-actions
Copy link

github-actions bot commented Jul 2, 2023

Binder 👈 Launch a binder notebook on branch krassowski/jupyterlab-lsp/jupyterlab-4.0

install validation on CI. `workspace:` is another good option but
requires some more configuration - portal may be good enough for now.
Using `workspace:*` over relative specs as paths are experimental,
and as of today did not work for me in any reasonable way (either
resolution worked but build did not, or both did not depending on
attempt).
@krassowski
Copy link
Member Author

The lerna run test failures are odd - there are no errors and it all passes locally.

@krassowski
Copy link
Member Author

I plan to merge this soon and iterate on remaining tasks after releasing an alpha. The robot tests heavily rely on diagnostics including the title in DOM but this is now what lint extension in CM6 does. One way forward would be to rely on diagnostics panel and only check for presence/absence of diagnostic ranges in the editor as needed.

@krassowski
Copy link
Member Author

Merging as it is getting uncomfortably long:

  • unit tests, lint, smoke tests pass
  • works locally
  • all remaining items are tracked in issues (here or upstream)

@krassowski krassowski merged commit 6d0c90f into jupyter-lsp:main Aug 26, 2023
17 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants