[ANN] Spyder 6.1.0a3 is released!

47 views
Skip to first unread message

Daniel Althviz Moré

unread,
Jun 6, 2025, 5:27:27 PMJun 6
to spyder

Hi all,

On behalf of the Spyder Project Contributors, I'm pleased to announce the third alpha of our next minor version: Spyder 6.1.

We've been working on this version for around half a year now and it's working relatively well. We encourage all people who like the bleeding edge to give it a try.

Spyder 6.1 comes with the following interesting new features and fixes:

  • New features

    • Add support to work with multiple cursors in the Editor. Options to configure them are available in Preferences > Editor > Advanced settings.
    • Add a graphical interface to the update process of our standalone installers.
    • Plot histograms from the dataframe viewer.
    • Add support for frozenset, Numpy string arrays and pathlib.Path objects to the Variable Explorer.
    • Show the remote file system in the Files pane when a remote console has focus.
    • Add support to use Pixi environments in the IPython console.
    • Paths can be added to the front of sys.path in the Pythonpath manager.
    • Copy/cut the current line if nothing is selected in the Editor with Ctrl+C/Ctrl+X, respectively.
    • Add option to show/hide the Editor's file name toolbar to Preferences > Editor > Interface.
    • Select full floating point numbers by double-clicking them on the Editor and the IPython console.
  • Important fixes

    • Much better support for PyQt6 and PySide6.
    • Make shortcuts to move to different panes work when they are undocked.
    • Disable magics and commands to call Python package managers in the IPython console because they don't work reliably there.
    • Drop support for Python 3.8
  • UX/UI improvements

    • Add option to hide all messages displayed in panes that are empty to Preferences > Application > Interface.
  • API changes

    • Editor
      • Breaking - The NewFileOpenFileOpenLastClosedMaxRecentFilesClearRecentFilesSaveFileSaveAllSaveAsSaveCopyAsRevertFileCloseFile and CloseAll actions were moved to the ApplicationActions class in the Application plugin.
      • Breaking - The shortcuts "new file", "open file", "open last closed", "save file", "save all", "save as", "close file 1", "close file 2" and "close all" were moved to the "main" section.
      • Add open_last_closedcurrent_file_is_temporarysave_allsave_assave_copy_as and revert_file methods.
    • IPython console
      • Breaking - The sig_current_directory_changed signal now emits two strings instead of a single one.
      • Breaking - Remove set_working_directory method. You can use set_current_client_working_directory instead, which does the same.
      • Breaking - The save_working_directory method was made private because it's only used internally.
      • Add sender_plugin kwarg to the set_current_client_working_directory method.
      • Add server_id kwarg to the set_current_client_working_directory method.
    • Working Directory
      • Breaking - The sig_current_directory_changed signal now emits three strings instead of a single one.
      • Breaking - The sender_plugin kwarg of the chdir method now expects a string instead of a SpyderPluginV2 object.
      • Add server_id kwarg to the chdir method.
    • Remote Client
      • Breaking - The create_ipyclient_for_server and get_kernels methods were removed.
      • Add sig_server_changed signal to report when a server was added or removed.
      • Add get_server_name method to get a server name given its id.
      • Add register_api and get_api methods in order to get and register new rest API modules for the remote client.
      • Add get_jupyter_api method to get the Jupyter API to interact with a remote Jupyter server.
      • Add get_file_api method to get the SpyderRemoteFileServicesAPI rest API module to manage remote file systems.
    • Pythonpath manager
      • Breaking - The sig_pythonpath_changed signal now emits a list of strings and a bool, instead of two dictionaries.
    • Application plugin
      • Add create_new_fileopen_file_using_dialogopen_file_in_pluginopen_last_closed_fileadd_recent_filesave_filesave_file_assave_copy_asrevert_fileclose_fileclose_all and enable_file_action methods to perform file operations in the appropriate plugin.
      • Add focused_plugin attribute.
    • File Explorer
      • Breaking - ExplorerTreeWidgetActions renamed to ExplorerWidgetActions.
      • Breaking - The sig_dir_opened signal now emits two strings instead of a single one.
      • Add server_id kwarg to the chdir method.
    • SpyderPluginV2
      • Add CAN_HANDLE_FILE_ACTIONS and FILE_EXTENSIONS attributes and create_new_fileopen_fileget_current_filenamecurrent_file_is_temporaryopen_last_closed_filesave_filesave_allsave_file_assave_copy_asrevert_fileclose_file and close all methods to allow other plugins to hook into file actions.
      • Add sig_focused_plugin_changed signal to signal that the plugin with focus has changed.
    • PluginMainWidget
      • Add SHOW_MESSAGE_WHEN_EMPTYMESSAGE_WHEN_EMPTYIMAGE_WHEN_EMPTYDESCRIPTION_WHEN_EMPTY and SET_LAYOUT_WHEN_EMPTY class attributes, and set_content_widgetshow_content_widget and show_empty_message methods to display a message when it's empty (like the one shown in the Variable Explorer).
    • Shellconnect
      • Breaking - Rename is_current_widget_empty to is_current_widget_error_message in ShellConnectMainWidget.
      • Add switch_empty_message to ShellConnectMainWidget to switch between the empty message widget and the one with content.
      • Add ShellConnectWidgetForStackMixin class for widgets that will be added to the stacked widget part of ShellConnectMainWidget.
    • AsyncDispatcher
      • Breaking - Remove dispatch method to use it directly as decorator.
      • Add class DispatcherFuture to spyder.api.asyncdispatcher and QtSlot method to AsyncDispatcher so that connected methods can be run inside the main Qt event loop.
      • Add early_return and return_awaitable kwargs its constructor.

For a more complete list of changes, please see our changelog

You can easily install this release candidate if you use conda by running:

conda install -c conda-forge/label/spyder_dev -c conda-forge/label/spyder_kernels_rc -c conda-forge spyder=6.1.0a3

Or you can use pip with this command:

pip install --pre -U spyder

Enjoy!


Daniel

Reply all
Reply to author
Forward
0 new messages