ESLint – Wikipedia

ESLint

Basisdaten

Hauptentwickler Nicholas C. Zakas
Entwickler Nicholas C. Zakas
Erscheinungsjahr Juni 2013[1][2][3]
Aktuelle Version 9.9.0[4]
(9. August 2024)
Betriebssystem Cross-Plattform
Programmier­sprache JavaScript
Kategorie Statische Code-Analyse
Lizenz MIT-Lizenz
https://eslint.org

ESLint ist ein Werkzeug zur statischen Quellcode-Analyse. Es identifiziert problematische Stellen und Muster in JavaScript-Codezeilen. ESLint wurde 2013 von Nicholas C. Zakas entwickelt.[5][6] Es ist ein Linting-Tool, bei dem alle Regeln konfigurierbar sind und zusätzliche Regeln definiert und gegebenenfalls zur Laufzeit geladen werden können.[7] Es unterstützt auch das Linting der neuesten Versionen von JavaScript, ECMAScript 2015 und höher.[8][9]

Sowohl bei JSLint als auch bei JSHint fehlt die Möglichkeit, Regeln zur Überprüfung des Quellcodes anzulegen, zu konfigurieren und an individuelle Bedürfnisse anzupassen.[6] Deshalb beschloss Nicholas C. Zakas im Juni 2013, nachdem er zur Entwicklung von JSHint beigetragen hatte, ein neues Programmanalyse-Werkzeug zu entwickeln, bei dem es auch möglich sein sollte, zusätzliche Regeln anzulegen, zu konfigurieren und zur Laufzeit zu laden.[7]

Im April 2016 trat das ESLint-Projekt der jQuery Foundation bei.[10] Im gleichen Jahr fusionierte die jQuery Foundation mit der Dojo Foundation um zur JS Foundation, einem Linux Foundation-Projekt, zu werden.[11][12]

Im Oktober 2017 wurde das ESLint-Projekt durch sein Mentorship-Programm zum "Graduate Project" der JS Foundation befördert.

Schlussendlich wurde ESLint im März 2019 durch die Fusionierung der JS-Foundation und der Node.js-Foundation ein Bestandteil der OpenJS-Foundation.[13]

Integrationen/Aktuelle Entwicklungen

[Bearbeiten | Quelltext bearbeiten]

JetBrains bietet integrierte ESLint-Unterstützung in den integrierten Entwicklungsumgebungen WebStorm,[14] PhpStorm[15] und IntelliJ IDEA[16] (aber nur in der Ultimate Edition) an. Hier wird jede Sourcecode-Datei gemäß den definierten Konfigurationswerten untersucht und der programmierenden Person gegebenenfalls Warnungen und Hinweise unmittelbar bei den beanstandeten Zeilen im Editor angezeigt.

Seit 2016 stellt das Vue.js-Project ein ESLint-Plugin zur Verfügung, mit dem man u. a. automatisch Vue.js-Templates validieren kann.[17] Seit 2018 ist dieses Plugin auch Teil des Vue.js-Assistenten zum Anlegen eines Vue.js-Projekts.[18]

Im Oktober 2018 veröffentlichte das React-Projekt (von Facebook entwickelt) ein offizielles ESLint-Plugin zur Unterstützung bei der Durchsetzung von Coding-Guidelines.[19]

2021 ist ESLint der am weitesten verbreitete JavaScript-Linter und wird derzeit über 20,000,000 Mal pro Woche heruntergeladen.[20]

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. eslint.org.
  2. rangle.io.
  3. eslint.org.
  4. Release 9.9.0. 9. August 2024 (abgerufen am 22. August 2024).
  5. Nicholas C. Zakas: ESLint. In: Github. Abgerufen am 22. Dezember 2021 (englisch).
  6. a b Nicholas C. Zakas: Introducing ESLint. In: Human Who Codes. 16. Juli 2013, abgerufen am 22. Dezember 2021 (englisch).
  7. a b Evan Schultz: Understanding the Real Advantages of Using ESLint. In: Rangle.io. 26. März 2015, abgerufen am 22. Dezember 2021 (englisch).
  8. Kai Cataldo: ESLint v7.2.0 released. In: ESLint.org. 5. Juni 2020, abgerufen am 22. Dezember 2021 (englisch): „ECMAScript 2020 syntax support has landed in ESLint!“
  9. Rename project to ESLint. In: Github. 4. Juli 2013, abgerufen am 22. Dezember 2021 (englisch).
  10. Nicholas C. Zakas: ESLint Joins The jQuery Foundation. In: ESLint.org. 9. April 2016, abgerufen am 22. Dezember 2021 (englisch).
  11. Kris Borchers: jQuery Foundation and Dojo Foundation to Merge. In: blog.jquery.com. 1. September 2015, abgerufen am 22. Dezember 2021 (englisch).
  12. Greg Wallace: jQuery Foundation and Dojo Foundation to Merge. In: prweb.com. 1. September 2015, abgerufen am 22. Dezember 2021 (englisch).
  13. Manish Singh: Node.js and JS foundations are merging to form OpenJS. In: venturebeat.com. 12. März 2019, abgerufen am 22. Dezember 2021 (englisch).
  14. ESlint. In: Jetbrains.com Help Pages WebStorm. 26. November 2021, abgerufen am 23. Dezember 2021 (englisch).
  15. ESLint. In: Jetbrains.com Help Pages PhpStorm. 10. Dezember 2021, abgerufen am 23. Dezember 2021 (englisch).
  16. ESLint. In: Jetbrains.com Help Pages IntelliJ IDEA. 10. Dezember 2021, abgerufen am 23. Dezember 2021 (englisch).
  17. eslint-plugin-vue. In: eslint.vuejs.org. 8. Oktober 2021, abgerufen am 23. Dezember 2021 (englisch).
  18. Flavio Copes: The Vue Handbook: a thorough introduction to Vue.js. In: freecodecamp.org. 5. Juli 2018, abgerufen am 23. Dezember 2021 (englisch).
  19. Rules of Hooks. In: reactjs.org. Abgerufen am 23. Dezember 2021 (englisch).
  20. John Potter: @typescript-eslint/eslint-plugin vs eslint vs jshint vs jslint vs tslint. In: npm trends. 23. Dezember 2021, abgerufen am 23. Dezember 2021 (englisch).