Data Science Early Access Program

DataSpell 2022.1 EAP 2: What’s New?

DataSpell 2022.1 EAP 2 is now available, and you can try the newly added features right away. Get the latest version using the ToolBox App by clicking Update – this will update your existing installation. You can also download the new EAP as a standalone version using this button:


New features overview

Bundled Grazie plugin

The DataSpell 2022.1 EAP 2 build includes Grazie, a plugin that provides spelling and grammar checks for the text that you write in the IDE. Grazie can provide support for 15 languages (go to Settings | Editor | Natural Languages to see the full list of supported languages). With Grazie bundled in DataSpell, you can be confident that the text in your notebooks will be error-free.

Optimized cell copy-pasting

DataSpell has two modes of cell operation, which are similar to Jupyter notebooks: Edit mode and Command mode. When a cell is in the Edit mode (green left border), you can type in it like a normal text editor. Command mode (blue left border) lets you treat the whole cell as one unit. This mode comes in useful when you re-organize your notebook file or perform actions that involve multiple cells at once. You can switch between these modes by pressing Esc and Enter on your keyboard.

In previous DataSpell versions, if you switched a cell that had an output to Command mode and then copied and pasted it elsewhere in the notebook, only the cell code itself would be pasted, not the output. You had to run the pasted cell to get its output. This is not something Jupyter notebooks users are used to.

If you do the same in DataSpell 2022.1 EAP 2, the cell will be pasted with its output, just like in Jupyter. This DataSpell behavior provides a more consistent experience for data science notebook users.

Support for Extract Superclass in Jupyter notebooks

Object-oriented programming (OOP) can help you reuse code that has already been written, or you can leverage it to organize your own data science code in a way that can be reused by other teams or applications. You can do this in Jupyter notebooks using the built-in refactoring functionality.

Let’s assume you have a class CatDetector that has methods A, B, and C to recognize cats in images. You want to reuse some of its methods to recognize dogs, and for that reason, you need to make a new class, DogDetector, which will include methods A, B, D, and E (but not method C, since it is only applicable to cats). How do you make this DogDetector class?

  1. Extract a parent class (also called a superclass) AnimalDetector from CatDetector that will include the methods A and B from CatDetector.
  2. Inherit a new class DogDetector from AnimalDetector. DogDetector that will include the AnimalDetector methods A and B.
  3. Add the new methods D and E to DogDetector.

In DataSpell, the Extract Superclass (Ctrl+Alt+Shift+T | Extract Superclass…) functionality worked in Python scripts (.py), but not in Jupyter notebooks (.ipynb). Now, there’s no need to switch to Python scripts, since you can do it right from your Jupyter notebook in DataSpell.

Other updates

We have fixed issues related to freezing when restarting the kernel, and we are very interested in hearing how it’s working for you – please create issues in our task tracker if you have any kernel restarting troubles. 

Other fixes include:

  • Improved caret behavior when moving between cells.
  • Python syntax highlighting in Jupyter notebooks.
  • Cell type now can be changed while indexing.

and more.


Try DataSpell 2022.1 EAP 2 and let us know what you think! We’re looking forward to your feedback:

– The DataSpell team