Wing IDE Professional 8.0.3 (Win / macOS / Linux) | 60 - 80 MB
Wing Python IDE was designed from the ground up for Python, to bring you a more productive development experience. Wing Pro is a full-featured Python IDE designed for professional developers. It includes powerful editing, code intelligence, refactoring, debugging, search, unit testing, project management, revision control, and remote development features.
Get More Done
Type less and let Wing worry about the details. Get immediate feedback by writing your Python code interactively in the live runtime. Easily navigate code and documentation.
Write Better Code
Avoid common errors and find problems early with assistance from Wing's deep Python code analysis. Keep code clean with smart refactoring and code quality inspection.
Find Bugs Faster
Debug any Python code. Inspect debug data and try out bug fixes interactively without restarting your app. Work locally or on a remote host, VM, or container.
Wingware's 21 years of Python IDE experience bring you a more Pythonic development environment. Wing was designed from the ground up for Python, written in Python, and is extensible with Python. So you can be more productive.
Intelligent Editor
Wing's editor speeds up interactive Python development with context-appropriate auto-completion and documentation, inline error detection and code quality analysis, PEP 8 enforcement, invocation assistance, auto-editing, refactoring, code folding, multi-selection, customizable code snippets, and much more. Wing can emulate vi, emacs, Eclipse, Visual Studio, XCode, and MATLAB.
Powerful Debugger
Wing's debugger makes it easy to fix bugs and write new Python code interactively. Use conditional breakpoints to isolate a problem, then step through code, inspect data, try out bug fixes with the Debug Console's command line, watch values, and debug recursively. You can debug multi-process and multi-threaded code launched from the IDE, hosted in a web framework, called from an embedded Python instance, or run on a remote host, VM, container, or cluster. Wing also provides an array and dataframe viewer for scientific and data analysis tasks.
Easy Code Navigation
Wing makes it easy to get around code with goto-definition, find uses, find symbol in project, editor symbol index, module and class browser, keyboard-driven search, and powerful multi-file search. Visit history is stored automatically, so you can instantly return to previously visited code. Or define and traverse categorized bookmarks that track automatically as code changes.
Project Management
Wing's powerful project management capabilities work with Python environments managed by virtualenv, pipenv, conda, and Docker, with revision control using Git, Mercurial, Perforce, Subversion, or CVS. You can easily create new Python environments from Wing, add, remove, or update Python packages, and freeze your package configuration for use by other developers.
Integrated Unit Testing
Wing supports test-driven development with the unittest, doctest, nose, pytest, and Django testing frameworks. Failing tests are easy to diagnose and fix with Wing's powerful debugger, and you can write new code interactively in the live runtime context set up by a unit test.
Remote Development
Wing's quick-to-configure remote development support delivers all of Wing's features seamlessly and securely to Python code running on a remote host, VM, container, or cluster. Remote development is possible to hosts running macOS and Linux, including those hosted by Docker, Docker Compose, AWS, Vagrant, WSL, Raspberry Pi, and LXC/LXD.
Customizable and Extensible
Wing offers hundreds of configuration options affecting editor emulation, display themes, syntax coloring, UI layout, and much more. Easily switch to and from dark mode, magnify the interface for presentations and meetings, and use perspectives to manage task-specific UI configurations. New IDE features can be added by writing Python code that calls down to Wing's scripting API. You can even develop and debug your extension scripts with Wing.
And Much More
Other features include a difference/merge tool, code reformatting with Black, YAPF, and autopep8, indentation style conversion, and executing OS command lines. Wing runs on Windows, macOS, and Linux, and also supports remote development to Raspberry Pi and other ARM Linux devices.
Scientific and Data Analysis
Wing's focus on interactive development works well for scientific and data analysis with Jupyter, NumPy, SciPy, Matplotlib, pandas, and other frameworks. The debugger's dataframe and array viewer makes it easy to inspect large data sets.
Web Development
Wing supports development with Django, Flask, web2py, Pyramid, Google App Engine, and other web frameworks. The debugger can step through Django and web2py templates. Wing works seamlessly with code running on a remote host, virtual machine, or container such as Vagrant or WSL.
Animation and Games
Since Wing's debugger can run in embedded instances of Python, it can be used to develop scripts for Blender, Autodesk Maya, NUKE, Source Filmmaker and other modeling, rendering, and compositing applications that use Python. Wing also works with pygame and other Python-based game engines.
Desktop Apps and More
Wing can develop, test, and debug desktop applications with PyQt, wxPython, Tkinter, and other UI development frameworks. Scripting, Raspberry Pi, and other types of development are also supported.
New in Wing 8
Wing 8 adds support for developing, testing, and debugging Python code that runs inside Docker and LXC/LXD containers and Docker Compose clusters. This release also adds a new tool to manage packages in your Python environment with pipenv, pip, and conda. New Project has been redesigned and expanded to support Django on remote hosts and containers, creation of a new source directory with the project, cloning from revision control repositories, and creation of a new virtualenv, pipenv, Anaconda env, or Docker container along with your project. Wing 8's static analysis system now fully supports f-strings, named tuples, multiple return value types, tuple unpacking, and offers cleaner update of code warnings indicators during edits. Other improvements include support for Python 3.10, a native Apple Silicon (M1) build, more flexible display theming, a new Nord style theme, configuration of port forwarding for remote hosts, reduced application startup time, improved scripting API for child process control, and much more.
Support for Containers and Clusters
Wing 8 adds support for developing, testing, and debugging Python code that runs inside containers, such as those provided by Docker and LXC/LXD. Wing works with files on local disk for editing, code analysis, error checking, and version control, but transparently runs code for testing and debugging inside the container.
Wing 8 also supports working with clusters of containers managed by a container orchestration system like Docker Compose. Whole clusters may be debugged, or individual debug, test, Python Shell, and OS Commands processes may be started on containers configured by the cluster, either on synthesized out-of-cluster instances of those containers or in-cluster on the actively running cluster.
A new Containers tool supports starting, stopping, and monitoring container services, and new Docker container environments may be created during project creation.
New Package Management Tool
Wing 8 adds a new Packages tool that provides the ability to install, remove, and update packages found in the Python environment used by your project. This supports pipenv, pip, and conda as the underlying package manager. Packages may be selected manually from PyPI or by package specifications found in a requirements.txt or Pipfile.
Improved New Project Creation
Wing 8 redesigns New Project support so that the host, project directory, Python environment, and project type may all be selected independently. New projects may use either an existing or newly created source directory and existing or newly created Python environment.
This change adds and/or improves the following specific capabilities:
- Django and all other project types may be created either on the local host or on a selected remote host, VM, or container.
- A new source directory may be created for the project, optionally by cloning a revision control repository.
- A new virtualenv, pipenv, Anaconda env, or Docker container may be created together with the new project, optionally with installation of packages specified individually or in a requirements.txt or Pipfile.
Improved Python Code Analysis and Warnings
Wing 8 expands the capabilities of Wing's static analysis engine, by improving its support for f-strings, named tuples, imports from modules that contain __all__, multiple return value types, tuple unpacking, stringified and commented type hints, simple expressions, and global/non-local statements.
As a result of this work, Find Uses, Refactoring, and auto-completion now work with f-string expressions and Wing's built-in code warnings work with named tuples.
The Code Warnings tool now also allows disabling individual syntax errors and indent warnings, and code warning indicators are updated more cleanly during edits.
Finally, Wing's Source Assistant now displays more detailed and complete value type information.
Other Improvements
- Support for Python 3.10
- Native support for macOS on Apple Silicon (M1) hardware
- Allow setting the user interface and editor colors independently from each other
- New Nord style display theme
- Allow specifying port forwards in a remote host configuration
- Better support Django running on a remote host
- Reduce application startup time
- Enable structural folding in .pyi and .pi files
- Add syntax highlighting for Dockerfile
- Better child process support in the scripting API
- Wing now runs on Qt 5.15