QuantStack / jupyterlab-blockly

Blockly extension for JupyterLab
https://jupyterlab-blockly.readthedocs.io/en/latest/
BSD 3-Clause "New" or "Revised" License
54 stars 16 forks source link

Store selected kernel and toolbox in .jpblockly file #103

Open Phoenix616 opened 1 month ago

Phoenix616 commented 1 month ago

This adjusts the format of the .jpblockly files to allow storing of additional metadata similarly to .ipynb files: It stores the selected kernel and toolbox as well as adds the ability to define a list of allowed blocks.

While improving the experience when using the Blockly editor (as one doesn't need to select the kernel and toolbox manually on each file open) this also makes it possible to distribute pre-configured files for certain types of content e.g. for exercises that should be done only with certain blocks.

Old file in the previous format are loaded and automatically stored in the new one on the next save.

github-actions[bot] commented 1 month ago

Binder :point_left: Launch a Binder on branch Phoenix616/jupyterlab-blockly/pr/file-metadata

DenisaCG commented 1 month ago

Thanks for opening this @Phoenix616!

I approved the workflows run. Can you try to fix the failing test? It seems to be a linting issue.

Phoenix616 commented 1 month ago

Sure, it didn't show that locally for me though. How do you build it correctly to trigger the linter to check the code? Because neither the build command from the README.md nor RELEASE.md did make this show up and only being able to check that on github seems pretty inefficient.

EDIT: Ah, saw it in the action now, it seems to be jlpm eslint:check. Is there a reason that's not part of the normal build process?

DenisaCG commented 1 month ago

How do you build it correctly to trigger the linter to check the code?

JupyterLab extensions generally use jlpm lint to lint the extension. It should also fix the linting issues in this PR. For this repo, the pre-commit hook is configured and should have triggered the linting issues locally as far as I know. Just to check if there is an issue with it, have you followed the dev install? And did the pre-commit hook run?

Phoenix616 commented 1 month ago

Ah, right, that would explain it. I didn't manage to set that up properly as I run builds via WSL but commit via IntelliJ running on Windows. I remember there being an issue getting it to build originally and forgot to run the pre-commit stuff manually after finally getting it at least to build for me.

Just tested directly in WSL and it seems to run fine when doing the commit there too so there is no issue with the project setup itself at least.

Phoenix616 commented 1 month ago

Code style issues should all be fixed now.