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

Native Notebook / Webview parity checklist #1231

Closed
43 of 76 tasks
greazer opened this issue Jun 8, 2020 · 6 comments
Closed
43 of 76 tasks

Native Notebook / Webview parity checklist #1231

greazer opened this issue Jun 8, 2020 · 6 comments
Assignees
Labels
debt Code quality issues

Comments

@greazer
Copy link
Contributor

greazer commented Jun 8, 2020

This epic represents the work we need to reach parity with our current notebook and interactive window behavior such that we can turn it on for everyone.

VSCode Issues in order of priority

GA Check list

  • Variable viewer
  • Plot viewer
  • Ipywidgets (Don WIP)
  • Language features
    • Autocomplete, Hover, Signature help
  • Kernels
    • Preferred kernel is not working
    • Selection of local kernel
    • Selection of remote kernels
    • Kernels (Other languages)
  • Gather
  • Remote Jupyter
  • Jupyter activity bar
  • Run by line
  • Raw cells?
  • Extended Language Features
    • Formatting
    • Linting
    • Refactoring
    • Sort imports
    • Goto def
  • Live share (needs to be tested with widgets, plots, run by line, gather)
  • Use new NB for start page (this must be used when users are in experiment) - hopefully nothing to do here.
  • Refactor to remove old code (transition to new stuff), there's an issue for this
  • Run all below/all above (command, do we need icons?)
  • Update nterat in renderers
  • Renderers extension
  • Using renderer extension scripts in interactive window
  • White backgrounds for vega plots
  • White backgrounds for SVGs (e.g. axes in plt.plot aren't visible in dark mode)
  • Verify that renaming notebooks works
  • Trusted notebooks
  • Export (pdf/html) - should be the easiest from this entire list
  • Full blown debugger
Breakdown

IPyWidgets (breakdown)

  • Renderers for IPyWidgets
    • Prototype available
    • Copy stuff from container.tsx and hook up comms
    • Create index.tsx purely widgets
  • Extension Listeners
    • IPyWidgetHandler
    • IPyWidgetScriptSource
  • Refactor our UI tests
    • Launch HTML page act like NB that only displays output

Variable Explorer (breakdown)

  • Jupyter in Activity Bar
  • Varialbles
    • Variables in a new panel (in Jupyter sidebar panel)
    • Use treeview.
  • Kernels
  • Metadata

Miscellaneous

  • (3) Kernel selection & Updating metadata
    • Move or copy (little code), but needs to be done in right place
    • Automatically & manually selecting a kernel & updating metadata
    • Move or copy code, but needs to be done in right place
    • Preferably move (to ensure we do things right, as this has a lot of business rules)
  • Gather extension
  • Trusted notebooks

Notebook handling

  • Standardize names for notebook objects (we will have 4)
    • nbformat.xx for Jupyter Cells and Output
    • INotebookModel & ICell for out models
    • NotebookData & NotebookCellData for VSCode model
    • NotebookDocument & NotebookCell for VS Code models
    • Refactor to use new naming convention (to discuss if this is confusing). With the new VSC API, this is very confusing.

Language features

  • Hover provider (new work done as part of Run by line)
@greazer greazer changed the title DS: GA (stable release) MVP using VS Code notebook API DS: GA (stable release) ?September? MVP using VS Code notebook API Jun 9, 2020
@greazer greazer changed the title DS: GA (stable release) ?September? MVP using VS Code notebook API DS: GA (stable release) using VS Code notebook API Jun 9, 2020
DonJayamanne referenced this issue in microsoft/vscode-python Jul 16, 2020
For #12189
Use new API in renderers
DonJayamanne referenced this issue in microsoft/vscode-python Jul 27, 2020
DonJayamanne referenced this issue in microsoft/vscode-python Jul 27, 2020
For #12189
Move into separate folder for easier refactoring (separate PR)
@greazer greazer changed the title DS: GA (stable release) using VS Code notebook API DS: Parity (aka "GA" release) using VS Code notebook API Aug 12, 2020
@greazer greazer changed the title DS: Parity (aka "GA" release) using VS Code notebook API DS: Parity (aka "GA") release using VS Code notebook API Aug 12, 2020
DonJayamanne referenced this issue in microsoft/vscode-python Aug 12, 2020
For #12189

* The kernel information returned to VSC from kernel provider now returns a stateless class
* No more validation is performed when a kernel is changed (this happens when executing code)
* Cleaned up IKernel interface
* Move all execution of code & managing state of cells and notebook into IKernel class
Hence deleted the old ExecutionService
DonJayamanne referenced this issue in microsoft/vscode-python Aug 17, 2020
@DonJayamanne DonJayamanne transferred this issue from microsoft/vscode-python Nov 13, 2020
@DonJayamanne DonJayamanne added bug Issue identified by VS Code Team member as probable bug ds-vscode-notebook labels Nov 13, 2020
@greazer greazer changed the title DS: Parity (aka "GA") release using VS Code notebook API Ship Native Notebook MVP with Webview parity Nov 14, 2020
@greazer greazer removed the bug Issue identified by VS Code Team member as probable bug label Nov 14, 2020
@greazer greazer added this to the March 2021 Release milestone Jan 23, 2021
@greazer greazer changed the title Ship Native Notebook MVP with Webview parity Native Notebook GA with Webview parity Jan 23, 2021
@greazer greazer changed the title Native Notebook GA with Webview parity Native Notebook GA with Webview parity (was MVP) Jan 23, 2021
@greazer greazer added this to In progress in monthly-release Jul 7, 2021
@greazer greazer moved this from In progress to To do in monthly-release Jul 7, 2021
@greazer greazer added debt Code quality issues and removed epic labels Aug 7, 2021
@greazer greazer changed the title Native Notebook GA with Webview parity (was MVP) Native Notebook GA with Webview parity checklist Aug 7, 2021
@greazer greazer changed the title Native Notebook GA with Webview parity checklist Native Notebook / Webview parity checklist Aug 7, 2021
@greazer greazer added bug Issue identified by VS Code Team member as probable bug engineering labels Aug 7, 2021
@greazer greazer removed this from the August 2021 milestone Aug 9, 2021
@greazer greazer self-assigned this Sep 9, 2021
@greazer greazer added this to the September 2021 milestone Sep 9, 2021
@greazer greazer removed this from the September 2021 milestone Sep 23, 2021
@greazer greazer removed the bug Issue identified by VS Code Team member as probable bug label Oct 10, 2021
@greazer
Copy link
Contributor Author

greazer commented Nov 15, 2021

Just about all of this has been accounted for. If not, we'll find out through further feedback.

@greazer greazer closed this as completed Nov 15, 2021
monthly-release automation moved this from July 2021 Iteration to Done Nov 15, 2021
@Jimimaku
Copy link

Dieses Epos repräsentiert die Arbeit, die wir brauchen, um Parität mit unserem aktuellen Notizbuch- und interaktiven Fensterverhalten zu erreichen, so dass wir es für alle einschalten können.

VSCode-Probleme in der Reihenfolge ihrer Priorität

GA Checkliste

  • Variabler Viewer
  • Plot-Viewer
  • Ipywidgets (Don WIP)
  • Sprachfunktionen
    • Hilfe zu AutoVervollständigung, Hover, Signatur
  • Kerne
    • Bevorzugter Kernel funktioniert nicht
    • Auswahl des lokalen Kernels
    • Auswahl von Remote-Kernels
    • Kerne (Andere Sprachen)
  • Versammeln
  • Remote-Jupyter
  • Jupyter-Aktivitätsleiste
  • Per Linie laufen
  • Rohe Zellen?
  • Erweiterte Sprachfunktionen
    • Formatierung
    • Linting
    • Refactoring
    • Sort imports
    • Goto def
  • Live share (needs to be tested with widgets, plots, run by line, gather)
  • Use new NB for start page (this must be used when users are in experiment) - hopefully nothing to do here.
  • Refactor to remove old code (transition to new stuff), there's an issue for this
  • Run all below/all above (command, do we need icons?)
  • Update nterat in renderers
  • Renderers extension
  • Using renderer extension scripts in interactive window
  • White backgrounds for vega plots
  • White backgrounds for SVGs (e.g. axes in aren't visible in dark mode)plt.plot
  • Verify that renaming notebooks works
  • Trusted notebooks
  • Export (pdf/html) - should be the easiest from this entire list
  • Full blown debugger

Breakdown

@WouterVanGoey
Copy link

Hi, any news on when linting will work in Jupyter notebooks running in VS Code?

@ghost
Copy link

ghost commented Dec 30, 2022

Yes, I second this question, linting in Jupyter notebooks running in VSCode is badly needed

@jrich100
Copy link

jrich100 commented Feb 7, 2023

@DonJayamanne Any info on the prioritization of type checking/linting in notebooks?

@Fissium
Copy link

Fissium commented Mar 19, 2023

Hi, any info on linting in notebooks?

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 5, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
debt Code quality issues
Projects
No open projects
Development

No branches or pull requests

7 participants