Eric (software)

Last updated
eric
Original author(s) Detlev Offenbach
Developer(s) Detlev Offenbach
Initial release2002;23 years ago (2002)
Stable release
25.1 [1]   OOjs UI icon edit-ltr-progressive.svg / 14 January 2025;34 days ago (14 January 2025)
Repository
Written in Python
Operating system Linux, macOS, Microsoft Windows
Platform Python, Qt, PyQt
Available inEnglish, German, French, Russian, Czech, Spanish, Italian, Turkish, Chinese
Type Integrated Development Environment
License GPL version 3 or later
Website eric-ide.python-projects.org

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.

Contents

eric is written in the programming language Python and its primary use is for developing software written in Python. It is usable for development of any combination of Python 3 or Python 2, Qt 5 or Qt 4 and PyQt 5 or PyQt 4 projects, on Linux, macOS and Microsoft Windows platforms.

License, price and distribution

eric is licensed under the GNU General Public License version 3 or later and is thereby Free Software. This means in general terms that the source code of eric can be studied, changed and improved by anyone, that eric can be run for any purpose by anyone and that eric - and any changes or improvements that may have been made to it - can be redistributed by anyone to anyone as long as the license is not changed (copyleft).

eric can be downloaded at SourceForge and installed manually with a python installer script. [2] Most major Linux distributions include eric in their software repositories, so when using such Linux distributions eric can be obtained and installed automatically by using the package manager of the particular distribution. [3] Additionally, the author offers access to the source code via a public Mercurial repository. [4]

Characteristics

eric is written in Python and uses the PyQt Python bindings for the Qt GUI toolkit. [5] By design, eric acts as a front end for several programs, for example the QScintilla editor widget. [6]

Features

The key features of eric 6 are: [7]

Support for Python 2 and 3

Prior to the release of eric version 5.5.0, eric version 4 and eric version 5 coexisted and were maintained simultaneously, while eric 4 was the variant for writing software in Python version 2 and eric version 5 was the variant for writing software in Python version 3.

With the release of eric version 5.5.0 both variants had been merged into one, so that all versions as of eric version 5.5.0 support writing software in Python 2 as well as in Python 3, making the separate development lanes of eric version 4 and 5 obsolete. Those two separate development lanes are no longer maintained, and the last versions prior to merging them both to 5.5.0 were versions 4.5.25 and 5.4.7. [8]

Releases

Versioning scheme

Until 2016, eric used a software versioning scheme with a three-sequence identifier, e.g. 5.0.1. The first sequence represents the major version number which is increased when there are significant jumps in functionality, the second sequence represents the minor number, which is incremented when only some features or significant fixes have been added, and the third sequence is the revision number, which is incremented when minor bugs are fixed or minor features have been added.

From late 2016, the version numbers show the year and month of release, e.g. 16.11 for November 2016. [9]

Release strategy

eric follows the development philosophy of Release early, release often , following loosely a time-based release schedule. Currently a revision version is released around the first weekend of every month, a minor version is released annually, in most cases approximately between December and February.

Version history

The following table shows the version history of eric, starting from version 4.0.0. Only major (e.g. 6.0.0) and minor (e.g. 6.1.0) releases are listed; revision releases (e.g. 6.0.1) are omitted.

Legend:
Old version, not maintained
Old version, still maintained
Latest version
Future version
BranchVersionRelease dateMajor changes
4class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="4.0.0" | Old version, not maintained: 4.0.02007-06-03
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="4.1.0" | Old version, not maintained: 4.1.02008-02-03
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="4.2.0" | Old version, not maintained: 4.2.02008-08-09
  • Added a toolbar manager
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="4.3.0" | Old version, not maintained: 4.3.02009-02-08
  • Changed license to GPL "v3 or later"
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="4.4.0" | Old version, not maintained: 4.4.02010-01-09
  • Changed the help viewer to a full blown web browser (based on QtWebKit) [11]
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="4.5.0" | Old version, not maintained: 4.5.02012-02-04
  • Added Mac OS X to the officially supported platforms [12]
5class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="5.0.0" | Old version, not maintained: 5.0.02010-07-04
  • The eric 5 branch represents the new Python 3 variant of eric. It is not supporting Python 2 (yet). For Python 2 support the development of the eric 4 branch is continued. [11]
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="5.1.0" | Old version, not maintained: 5.1.02011-02-27
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="5.2.0" | Old version, not maintained: 5.2.02012-02-18
  • Added Mac OS X to the officially supported platforms [12]
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="5.3.0" | Old version, not maintained: 5.3.02013-02-03
  • Added support for Qt5 [13]
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="5.4.0" | Old version, not maintained: 5.4.02014-01-07
  • Added support for PyQt5 projects [8]
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="5.5.0" | Old version, not maintained: 5.5.02014-10-27
  • Added Python 2 support to the eric 5 branch, so that from now on both, Python 3 and Python 2, are supported by one single version of eric, making the eric 4 branch for Python 2 obsolete, which is not further continued [8]
6class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="6.0.0" | Old version, not maintained: 6.0.02014-12-28
  • eric 6 replaces the eric 5.5.x line of development. It is usable with any combination of Python 2 or Python 3, Qt5 or Qt4 and PyQt5 or PyQt4, on Linux, Mac OS X and Windows platforms
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="6.1.0" | Old version, not maintained: 6.1.02015-12-05
  • Added multithreading support for checkers to make use of multiple CPUs/CPU-Cores [14]
16class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="16.11" | Old version, not maintained: 16.112016-11-12
  • Switching the release scheme [9]
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="16.12" | Old version, not maintained: 16.122016-12-03
17class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.01" | Old version, not maintained: 17.012017-01-01
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.02" | Old version, not maintained: 17.022017-02-04
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.03" | Old version, not maintained: 17.032017-03-03
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.04" | Old version, not maintained: 17.042017-04-07
  • Minimum required Python versions increased: Python 2 - 2.7.10; Python 3 - 3.4.0
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.05" | Old version, not maintained: 17.052017-05-06
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.06" | Old version, not maintained: 17.062017-06-03
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.07" | Old version, not maintained: 17.072017-07-02
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.08" | Old version, not maintained: 17.082017-08-03
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.09" | Old version, not maintained: 17.092017-09-01
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.10" | Old version, not maintained: 17.102017-10-07
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.11" | Old version, not maintained: 17.112017-11-03
class="templateVersion co swatch-unsupported" style="color: var(--color-base, #202122); " title="Old version, not maintained" data-sort-value="17.12" | Old version, not maintained: 17.122017-12-02
18class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.01" | Latest version:18.012018-01-06
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.02" | Latest version:18.022018-02-03
  • Added support for attributes introduced with Qt 5.9 and Qt 5.10 [15]
  • New session file format
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.03" | Latest version:18.032018-03-04
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.04" | Latest version:18.042018-04-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.05" | Latest version:18.052018-05-01
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.06" | Latest version:18.062018-06-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.07" | Latest version:18.072018-07-07
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.08" | Latest version:18.082018-08-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.09" | Latest version:18.092018-09-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.10" | Latest version:18.102018-10-03
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.11" | Latest version:18.112018-11-01
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="18.12" | Latest version:18.122018-12-01
19class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.01" | Latest version:19.012019-01-10
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.02" | Latest version:19.022019-02-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.03" | Latest version:19.032019-03-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.04" | Latest version:19.042019-04-06
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.05" | Latest version:19.052019-05-04
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.06" | Latest version:19.062019-06-02
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.07" | Latest version:19.072019-07-07
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.08" | Latest version:19.082019-08-03
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.09" | Latest version:19.092019-09-07
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.10" | Latest version:19.102019-10-03
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.11" | Latest version:19.112019-11-01
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="19.12" | Latest version:19.122019-12-07
20class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="20.01" | Latest version:20.012020-01-01
class="templateVersion c swatch-latest" style="color: var(--color-base, #202122); " title="Latest version" data-sort-value="20.02" | Latest version:20.022020-02-02

Name

Several allusions are made to the British comedy group Monty Python, which the Python programming language is named after. Eric alludes to Eric Idle, a member of the group, as does IDLE, the standard python IDE shipped with most distributions. [16] [ failed verification ]

Criticism

The Eric Python IDE does not feature an integrated toolchain for now.

See also

References

  1. https://eric-ide.python-projects.org/eric-news.html.{{cite web}}: Missing or empty |title= (help)
  2. Sourceforge: Eric Integrated Development Environment
  3. Ubuntu package search: eric
  4. Official website: Access information for mercurial repository
  5. Reitz, Kenneth; Schlusser, Tanya (August 30, 2016). The Hitchhiker's Guide to Python: Best Practices for Development. O'Reilly Media, Inc. p. 31. ISBN   9781491933237 . Retrieved January 18, 2019.
  6. Charney, Reg (August 30, 2004). "Programming Tools: Eric3". Linux Journal. Retrieved January 18, 2019.
  7. eric-ide.python-projects.org: Features
  8. 1 2 3 eric news 2014
  9. 1 2 eric news 2016
  10. 1 2 eric news 2007
  11. 1 2 eric news 2010
  12. 1 2 eric news 2012
  13. eric news 2013
  14. eric news 2015
  15. eric news 2018
  16. Bidwell, Jonni (April 14, 2018). "Best IDE for Python in 2018". TechRadar. Retrieved January 18, 2019.