Wing IDE

Last updated
Wing Python IDE
Developer(s) Wingware
Initial release1.0 beta / September 7, 2000;23 years ago (2000-09-07)
Stable release
10.0.5 / July 8, 2024
Preview release
10.0.0.3 / December 7, 2023
Written in Python, Cython, C, C++
Operating system Windows, OS X , Linux
Type IDE for Python
License Proprietary
Website wingware.com

The Wing Python IDE is a family of integrated development environments (IDEs) from Wingware created specifically for the Python programming language with support for editing, testing, debugging, inspecting/browsing, and error-checking Python code.

Contents

There are three versions of this IDE, each one focused on different types of users:

Wing Pro provides AI-assisted development, local and remote debugging, editing (with multiple key bindings, auto-completion, auto-editing, and multi-selection), source browser and code navigation, code refactoring, import management, error checking, auto-reformatting, unit testing with code coverage, version control, project management, Python environment and package management, single and multi-file search, fine-grained customization, support for Docker and LXC containers, assistance for working with third-party frameworks and tools (such as Django, Flask, Matplotlib, Pandas, Blender, Maya, Unreal Engine, PyQt, wxPython, and others) through Python scripting, and comprehensive documentation.

Wing Personal and Wing 101 omit many of these features. All three versions of Wing support installation on Windows, Mac OS X, and Intel and ARM Linux.

Free licenses for Wing Pro are available for educational users and unpaid open-source software developers.[ citation needed ]

AI Assisted Development

The AI assistant, available in Wing Pro only, can be used to write new code, refactor or redesign existing code, and inspect and understand code. Using the assistant, users may:

Debugger

The debugger can be used to locate and fix bugs, as well as a way to write new code interactively in the live runtime state for which the code is being designed. The level of the debugging support depends on the version used, with each tier of service giving the user more features with which they can debug.[ citation needed ]

Wing 101 supports:

Wing Personal adds:

Wing Pro adds:

Code intelligence

The code intelligence features speed up editing, facilitated navigation through code, and inspected code for errors. These features rely both on static analysis of Python code found in the project and on the Python Path and runtime analysis of code whenever the debugger is active or the code is active in the integrated Python Shell. The features available to the user depend on the version being used.[ citation needed ]

Wing 101 provides:

Wing Personal adds:

Wing Pro adds:

Project Management

Wing's project manager allows developers to set up, manage, and share development configurations. It supports creating projects for existing or new source directories, with optional code retrieval from version control repositories. The IDE facilitates easy creation and configuration of Python environments using virtualenv, pip, Poetry, pipenv, or conda, either locally, on a remote host, or with containers managed by Docker or LXC/LXD. [1]

Version control

Wing Pro integrates with various version control systems, including Git, Mercurial, Perforce, Subversion, and CVS. It offers features such as status checking, committing, logging, blame/praise/annotate, reverting, resolving, and repository push/pull operations. A difference and merge tool is also available for comparing files or directories and reviewing uncommitted changes. [1]

Package Management

Wing Pro includes an integrated package management tool that simplifies inspecting, adding, removing, and upgrading Python packages in the development environment. It supports pip, Poetry, pipenv, and conda environments. [1]

Unit testing

Wing Pro supports unit testing by allowing running and debugging of unit tests written for the unittest, pytest, doctest, nose, and Django testing frameworks. It optionally tracks code coverage, to indicate how well code is being tested and to re-run only tests affected by changes to code.

Remote development

Wing Pro also supports secure development on remote hosts, virtual machines, or containers hosted by Docker, Docker Compose, or LXC/LXD. Code on the remote system may be edited, debugged, tested, and managed from the IDE, as for locally stored files. Remote development also supports externally launched debugging.

Other features

Other features present in all versions include:

Wing Personal adds:

Wing Pro adds:

History

The first public version of Wing was released on the 7th of September of 2000, as 1.0 beta, only for Linux.

The first stable version was v1.0 for Linux, released on the 1st of December of 2000.

As of March 29, 2004, Archaeopteryx Software Inc began doing business as Wingware.

Wing version 4.x and earlier were based on GTK2 and the OS X version required X11. Wing 5 changed to Qt4 via PySide and no longer uses X11 on OS X. Wing 6 moved to Qt5 with PyQt5. Wing 10 uses PyQt6.5.

See also

Related Research Articles

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.

A programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs, that can be combined to accomplish a task, much as one might use multiple hands to fix a physical object. The most basic tools are a source code editor and a compiler or interpreter, which are used ubiquitously and continuously. Other tools are used more or less depending on the language, development methodology, and individual engineer, often used for a discrete task, like a debugger or profiler. Tools may be discrete programs, executed separately – often from the command line – or may be parts of a single large program, called an integrated development environment (IDE). In many cases, particularly for simpler use, simple ad hoc techniques are used instead of a tool, such as print debugging instead of using a debugger, manual timing instead of a profiler, or tracking bugs in a text file or spreadsheet instead of a bug tracking system.

<span class="mw-page-title-main">SharpDevelop</span>

SharpDevelop is a discontinued free and open source integrated development environment (IDE) for the .NET Framework, Mono, Gtk# and Glade# platforms. It supports development in C#, Visual Basic .NET, Boo, F#, IronPython and IronRuby programming languages.

eric (software) Python development environment

eric is a free integrated development environment (IDE) used for computer programming. Since it is a full featured IDE, it provides by default all necessary tools needed for the writing of code and for the professional management of a software project.

<span class="mw-page-title-main">Komodo Edit</span> Text editor for dynamic programming languages

Komodo Edit is a free and open source text editor for dynamic programming languages. It was introduced in January 2007 to complement ActiveState's commercial Komodo IDE. As of version 4.3, Komodo Edit is built atop the Open Komodo project. Komodo IDE is no longer supported and maintained by developers for Python.

<span class="mw-page-title-main">Aptana</span> Text editor

Aptana, Inc. is a company that makes web application development tools for use with a variety of programming languages. Aptana's main products include Aptana Studio, Aptana Cloud and Aptana Jaxer.

The following tables list notable software packages that are nominal IDEs; standalone tools such as source-code editors and GUI builders are not included. These IDEs are listed in alphabetic order of the supported language.

<span class="mw-page-title-main">Komodo IDE</span>

Komodo IDE is an integrated development environment (IDE) for dynamic programming languages. It was introduced in May 2000. Many of Komodo's features are derived from an embedded Python interpreter.

<span class="mw-page-title-main">PyDev</span>

PyDev is a third-party plug-in for Eclipse. It is an Integrated Development Environment (IDE) used for programming in Python supporting code refactoring, graphical debugging, code analysis among other features.

Web2py is an open-source web application framework written in the Python programming language. Web2py allows web developers to program dynamic web content using Python. Web2py is designed to help reduce tedious web development tasks, such as developing web forms from scratch, although a web developer may build a form from scratch if required.

<span class="mw-page-title-main">Qt Creator</span> QT development environment

Qt Creator is a cross-platform C++, JavaScript, Python and QML integrated development environment (IDE) which simplifies GUI application development. It is part of the SDK for the Qt GUI application development framework and uses the Qt API, which encapsulates host OS GUI function calls. It includes a visual debugger and an integrated WYSIWYG GUI layout and forms designer. The editor has features such as syntax highlighting and autocompletion. Qt Creator uses the C++ compiler from the GNU Compiler Collection on Linux. On Windows it can use MinGW or MSVC with the default install and can also use Microsoft Console Debugger when compiled from source code. Clang is also supported.

<span class="mw-page-title-main">Ninja-IDE</span>

NINJA-IDE, is a cross-platform integrated development environment (IDE) designed to build Python applications.

<span class="mw-page-title-main">PyCharm</span> Python IDE

PyCharm is an integrated development environment (IDE) used for programming in Python. It provides code analysis, a graphical debugger, an integrated unit tester, integration with version control systems, and supports web development with Django. PyCharm is developed by the Czech company JetBrains.

<span class="mw-page-title-main">Spyder (software)</span> IDE for scientific programming in Python

Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software. It is released under the MIT license.

Mbed is a development platform and operating system for internet-connected devices based on 32-bit ARM Cortex-M microcontrollers. The project was a collaboratively developed by Arm and its technology partners. As of July 2024 Mbed is no longer actively developed by Arm.

<span class="mw-page-title-main">ZeroBrane Studio</span> Open-source IDE for the Lua programming language

ZeroBrane Studio is a lightweight open-source Lua IDE with code completion, syntax highlighting, code analyzer, live coding, and debugging support for Lua 5.1, Lua 5.2, Lua 5.3, Lua 5.4, LuaJIT, and other Lua engines. ZeroBrane Studio is a cross-platform application written in Lua that runs on Windows, Linux, and macOS (10.9+) operating systems. It uses the wxWidgets toolkit and the Scintilla component for file editing.

References

  1. 1 2 3 America, Wingware P. O. Box 400527CambridgeMA02140-0006United States of. "Project Management Features - Wing Python IDE". wingware.com. Retrieved 2024-07-07.{{cite web}}: CS1 maint: numeric names: authors list (link)

[1]