Wing IDE 5.1.9: January 13, 2016

Wing Pro Screenshot

Wingware has released version 5.1.9 of Wing IDE, our cross-platform integrated development environment for the Python programming language.

Wing IDE features a professional code editor with vi, emacs, visual studio, and other key bindings, auto-completion, call tips, context-sensitive auto-editing, goto-definition, find uses, refactoring, a powerful debugger, version control, unit testing, search, project management, and many other features.

Changes in this release

  • Added --settings= and --cache= command line options for changing the location of the settings and cache directories
  • Added Mercurial resolve command
  • French localization updates (thanks to Jean Sanchez)
  • Fix failure to enable Stack Data and Watch lists in some cases when using multi-process debugging
  • Fix failure to call atexit functions when debug ends on Windows
  • Fix auto-spacing in PEP484 type annotations
  • Fix several problems with text rewrapping
  • Fix Run As Package Module in Testing properties
  • Fix debugger when using external console and Python 3.x
  • Partially fixed Django 1.9 template debugging (complete fix requires changes to Django; see see https://code.djangoproject.com/ticket/25848 )
  • Fix failure to goto base class in browser after switching projects
  • Fix defining custom keys with modifiers other than Alt and Ctrl in non-English locales
  • About 10 other minor bug fixes

See the change log for details.

What's New in Wing IDE 5.1

Multi-process Debugging

Wing Pro can now debug multiple processes at once. By default, Wing will accept multiple debug connections, showing a process selector wherever a stack selector is shown in the user interface, in addition to a thread selector if there are multiple threads in the debug process. The process selector groups processes into a process tree, showing the relationship between them regardless of how they were created or debug-enabled.

You can also ask Wing to automatically debug child processes. This is off by default since it can be confusing to new users, or unwanted in some code bases, but can be enabled with the Debugger > Processes > Debug Child Processes preference or the Debug/Execute > Debug Child Properties setting in Project Properties.

Wing can automatically debug child processes created with the multiprocessing module, with os.fork() (on Posix platforms) or whenever a process is started using sys.executable. In other cases, wingdbstub can be used to start debugging in the child process.

Additional features for debug process control are available in the Processes sub-menu of the Debug menu and the Debugger > Processes preferences group.

More information can be found in Multi-Process Debugging in the Wing IDE manual.

Improved Python Shell and Debug Probe

The Python Shell and Debug Probe now syntax highlight code, as in the editor. The shells now also show data value tooltips when the mouse hovers over symbols.

Improved Testing Tool

The Testing tool in Wing Pro now supports the pytest unit testing framework and saves results in the project file, along with the date the test was last run.

Other Improvements

  • Support for Python 3.5
  • Ability to debug code running on Raspberry Pi
  • Find Symbol in Project
  • Improved support for matplotlib
  • Added How-To and improved support for Flask
  • Support for Django 1.7 and 1.8 and Django running on Python 3
  • Support debugging Django with auto-reload enabled
  • Improved Django project setup
  • Updated and clarified the web2py How-To
  • Updated Plone How-To for launching Plone from the IDE
  • XCode keyboard personality
  • Convert indent style of pasted code to match the target file
  • Indicate project files in the stack menu and Exceptions and Call Stack tools
  • Recursive snippets and auto-invocation and other snippets improvements
  • Recognize ArcGIS *.pyt files as Python code
  • Syntax highlight CMake files
  • Added a way to send keys to the editor via the scripting API
  • Added preference for type of split created by Goto Definition in Other Split
  • Added ability to copy selected result line, message, or line number from PyLint results (thanks to Viktor Lucza)
  • Added a close-all-readonly command to close any read-only files
  • Support for recent Google App Engine versions
  • Improved auto-completion for PyQt
  • Improved Find Symbol dialog
  • Recursive invocation of code snippets, auto-invocation arg entry, and field-based auto-editing operations
  • Support for Pylint under Python 3
  • Ability to send EOL and NUL to the shells and Debug I/O
  • Added Change Case operations to the Source menu
  • Hg and Git reload the repository for push, pull, etc.
  • Improved and optimized source analysis
  • Step Out to Here debugger command
  • Better support for new syntax through Python 3.4
  • Ability to run unit tests concurrently
  • Updated French localization (thanks to Jean Sanchez)

See the change log for details.

Not all of these features are available in Wing IDE Personal and Wing IDE 101. For details, see the feature list and What's New in Wing IDE 5.

Compatibility Notes

Whenever possible, we recommend upgrading debugger installations used for remote debugging to match the current IDE version. However, this release can remote debug with debugger cores dating back to version 5.1.0. Any earlier versions will need to be updated to match the current release.

Wing 5.1 drops support for Python 3.0 (but not 3.1+, of course!) and makes a few other minor changes listed in the change log.

By default, Wing 5.1 will install over your Wing 5.0 installation. To avoid this: On Windows, uncheck the option to remove Wing 5.0 or use the .zip installer; on Linux use the tar file installer; on OS X, unpack the OS X disk image to a location other than your Applications folder.

Wing 5.1 and 5.0 can share project files, but we recommend backing up your projects if you plan to move back and forth between the two versions.

About Wing IDE

Wing IDE is an integrated development environment designed specifically for the Python programming language. It provides powerful editing, testing, and debugging features that help reduce development and debugging time, cut down on coding errors, and make it easier to understand and navigate Python code. Wing IDE can be used to develop Python code for web, GUI, and embedded scripting applications.

Wing IDE is available in three product levels: Wing IDE Professional is the full-featured Python IDE, Wing IDE Personal offers a reduced feature set at a low price, and Wing IDE 101 is a free simplified version designed for teaching beginning programming courses with Python.

Version 5.1 of Wing IDE Professional includes the following major features:

  • Native GUI on OS X, Windows, and Linux
  • Professional quality code editor with vi, emacs, Visual Studio, Eclipse, XCode, and other keyboard personalities
  • Code intelligence for Python: Auto-editing, auto-completion, call tips, find uses, goto-definition, error indicators, refactoring, find symbol, smart indent and rewrapping, and source navigation
  • Advanced multi-process and multi-threaded debugger with graphical UI, command line interaction, conditional breakpoints, data value tooltips over code, watch tool, move program counter, sharable launch configurations, named entry points, multi-threaded and multi-process debugging, and externally launched and remote debugging
  • Powerful search and replace options including keyboard driven and graphical UIs, multi-file, wild card, and regular expression search and replace
  • Version control integration for Subversion, CVS, Bazaar, git, Mercurial, and Perforce
  • Integrated unit testing with unittest, pytest, nose, doctest, and Django testing frameworks
  • Many other features including project manager, bookmarks, recursive code snippets, diff/merge tool, integrated OS command invocation, indentation manager, PyLint integration, named file sets, and perspectives
  • Extremely configurable and may be extended with Python scripts
  • Extensive product documentation, tutorial, and How-Tos for Django, Flask, Google App Engine, matplotlib, Plone, wxPython, PyQt, mod_wsgi, Autodesk Maya, blender, NUKE/NUKEX, and many other Python libraries and applications
  • Django support: Debugs Django templates, provides project setup tools, and runs Django unit tests

Please refer to the feature list for a detailed listing of features by product level.

System requirements are Windows XP or later, OS X 10.6 or later, or a recent Linux system (either 32 or 64 bit). Wing IDE supports Python versions 2.5 through 3.5 and Stackless Python.

For more information, see the Wing IDE product overview.

Downloads

Wing IDE Professional and Wing IDE Personal are commercial software and require a license to run. A free trial can be obtained directly from the product when launched.

Wing IDE Pro -- Full-featured product

Wing IDE Personal -- A simplified IDE

Wing IDE 101 -- For teaching with Python

Purchasing and Upgrading

Wing 5.1 is a free upgrade for all Wing IDE 5.x users. Users of earlier versions of Wing IDE Pro and Personal must upgrade their license or purchase a new license:

Purchase a new license

Upgrade a license

Wing IDE 101 is free and does not require a license to run.