Hi all,

On behalf of the Spyder Project Contributors 
<https://github.com/spyder-ide/spyder/graphs/contributors>, I'm pleased to 
announce the fourth 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 Polars dataframes, frozen sets, 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 connect to JupyterHub servers.
      - 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.
      - Remove blank lines around cells when copying their contents to the 
      console.
      - Automatically kill kernels when Spyder crashes.
      - 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
   - Reorganize most menus to make them easier to navigate.
      - Add shortcut Ctrl+W to close Variable Explorer viewers.
      - Add option to hide all messages displayed in panes that are empty 
      to Preferences > Application > Interface.
      - Fix plots looking blurred when scaling is enabled in high DPI 
      screens.
   - 
   
   API changes
   - Editor
         - Breaking - The NewFile, OpenFile, OpenLastClosed, MaxRecentFiles
         , ClearRecentFiles, SaveFile, SaveAll, SaveAs, SaveCopyAs, 
         RevertFile, CloseFile 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_closed, current_file_is_temporary, save_all, 
         save_as, save_copy_as and revert_file methods.
         - Add set_default_kernel_spec to remoteclient plugin, in order to 
         set default kernel spec used to open default consoles.
      - 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 rest API module to manage 
         remote file systems.
         - Add get_environ_api method to get the rest API module to work 
         with environment variables in the remote machine.
      - 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_file, open_file_using_dialog, open_file_in_plugin
         , open_last_closed_file, add_recent_file, save_file, save_file_as, 
         save_copy_as, revert_file, close_file, close_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.
      - Main menu
         - Breaking - From SourceMenuSections, move the Formatting section 
         to EditMenuSections and Cursor to SearchMenuSections, remove the 
         CodeAnalysis section and add the Autofix section.
         - Breaking - Replace the Tools, External and Extras sections in 
         ToolsMenuSections with Managers and Preferences.
      - SpyderPluginV2
         - Add CAN_HANDLE_FILE_ACTIONS and FILE_EXTENSIONS attributes and 
         create_new_file, open_file, get_current_filename, 
         current_file_is_temporary, open_last_closed_file, save_file, 
         save_all, save_file_as, save_copy_as, revert_file, close_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_EMPTY, MESSAGE_WHEN_EMPTY, IMAGE_WHEN_EMPTY
         , DESCRIPTION_WHEN_EMPTY and SET_LAYOUT_WHEN_EMPTY class 
         attributes, and set_content_widget, show_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 
<https://github.com/spyder-ide/spyder/blob/master/changelogs/Spyder-6.md>

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

-- 
You received this message because you are subscribed to the Google Groups 
"spyder" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to spyderlib+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/spyderlib/d4b866f2-6b6c-4928-b693-dace2355c002n%40googlegroups.com.

Reply via email to