Aktuelles
OrchidE 2023.1.7
OrchidE 2023.1.7 bringt einige Verbesserungen für die Konfiguration von OrchidE und Syntax Highlighting für Ansible Test Plugins.
Globale Einstellung für Code Completion von Collections
Der Code-Completion Modus für Collections kann jetzt für alle Collections auf einmal gesetzt werden.
Individuelle Anpassung können nachträglich noch vorgenommen werden um einzelne Collections anders einzustellen.
Globales Pattern für Playbook Dateinamen
Zum Erkennen von Playbooks können jetzt auch Dateinamen oder Dateinamen-Pattern genutzt werden. Mit diesen Pattern wird im ganzen IntelliJ Projekt nach Dateien die dem Pattern entsprechen gesucht.
Dabei kann ein exakter Dateiname angegeben werden oder ein Pattern mit Platzhalter (‘*’).
Syntax Highlighting für Ansible Test Argumente
Quick Documentation für Ansible Test Plugins
Für Ansible Test Plugins wird jetzt ‘Quick Documentation’ im Editor mit Shortcut oder Mouse-over unterstützt.
Changes
- Change: Unterstützung für das Einfügen von schließenden Anführungszeichen ähnlich anderen IntelliJ-Editoren mit einigen Ansible Yaml-spezifischen Erweiterungen.
- Change: Bessere Unterstützung von Ansible Test Plugins für die Inspection ‘Undefined Variable’.
- Change: Weitere Default Einstellungen für ‘Ansible Folder Mapping’ hinzugefügt (docker-compose, gitlab, files/*)
- Change: Anpassungen für IntelliJ EAP Version 2024.3
Deprecation
Der Support für die IntelliJ Plattform 2023.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2025.1.
OrchidE 2023.1.6
OrchidE 2023.1.6 bringt Unterstützung für Ansible Test plugins und kann Warnungen aus dem Ansible Lint Plugin im OrchidE Editor anzeigen.
Ansible Test Plugin Support
OrchidE unterstützt Code Completion und Quick Documentation für Test-Bedingungen in der Form von “is <Bedingung>”
Konfiguration
Code Completion für Ansible Tests benutzt für die Entscheidung ob FQCN oder kurze Namen vorgeschlagen werden sollen, die Einstellungen der Collection.
Abweichend davon kann in den Editor Einstellung von OrchidE festgelegt werden ob zusätzlich immer der FQCN oder der kurze Name angezeigt werden soll. Für Jinja builtin (Python Jinja2 Library) Tests, gibt es kein FQCN.
Anzeige von Ansible Lint Warnungen im OrchidE Editor
OrchidE kann jetzt Warnung aus dem Ansible Lint Plugin in OrchidE Editoren anzeigen.
Changes
- Bugfix: Die Inspection “Undefined Variable” erkennt keine Variablen, die durch das Keyword “vars” in Playbooks definiert sind.
- Bugfix: Die Inspection “Undefined Variable” erkennt keine Schleifenvariablen, wenn das Keyword “loop_control” verwendet wird.
- Bugfix: NullPointerException beim Verweis auf Variablen in der argument_spec-Datei unter bestimmten Bedingungen.
- Bugfix: Exception in der Ansible-Strukturansicht bei Verwendung von Dot-Files oder Dateinamen mit einem Zeichen.
Deprecation
Der Support für die IntelliJ Plattform 2022.3 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.3.
OrchidE 2023.1.5.1
OrchidE 2023.1.5.1 bringt ein paar Bugfixes.
Changes
- Bugfix: Baumansicht in den Einstellung ‘Collections’ zeigt falsche Kategorien an.
- Bugfix: Inspection Undefined Variable unterstützt kein loop_var Keyword bei loop_control.
- Bugfix: Exception NotImplementedError bei Inspection Wrong Value Type.
- Bugfix: Einzelne Steuerzeichen wie ‘\n’, ‘\r’ werden in der Quick Documentation nicht angezeigt.
Deprecation
Der Support für die IntelliJ Plattform 2022.3 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.3.
OrchidE 2023.1.5
OrchidE 2023.1.5 unterstützt die Ansible Konfiguration zur Entschlüsselung von Ansible Vaults und bringt Fixes für die IntelliJ EAP Version 2024.2.
Ansible Vaults via Ansible Konfiguration vault_password_file entschlüsseln
Um Ansible Vaults zu entschlüsseln, kann eine Ansible Konfigurationsdatei ‘ansible.cfg’ angegeben werden. OrchidE verwendet die Angabe ‘vault_password_file’, um das Passwort auszulesen und Ansible Vaults zu entschlüsseln.
OrchidE unterstützt dabei das Lesen von Plain-Text Passwort-Dateien. Ausführbare Dateien werden nicht unterstützt.
Wenn Umgebungsvariablen in der ‘ansible.cfg’ verwendet werden, wird eine einfache variable substitution durchgeführt, erweiterte Shell-Variablenverarbeitung wird nicht unterstützt. Um Umgebungsvariablen verwenden zu können, müssen diese dem IntelliJ Plattform Prozess bekannt sein.
Die Ansible Konfigurationsdatei kann unter Settings ➞ Languages & Frameworks ➞ OrchidE angegeben werden.
Deprecation
Der Support für die IntelliJ Plattform 2022.3 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.3.
OrchidE 2023.1.4.1
OrchidE 2023.1.4 bringt ein paar Bugfixes und Support für IntelliJ Plattform EAP Version 2024.2.
Changes
- Bugfix: Mehrere Bugfixes für die Ansible Structure View.
- Bugfix: Code-Completion und die Intention ‘Undefinierte Variablen’ berücksichtigen nicht die Reihenfolge der pre_tasks/tasks/post_tasks/handler-_Keywords_ in Playbooks, wenn nach Variablen gesucht wird, die durch set_fact oder register definiert sind.
Deprecation
Der Support für die IntelliJ Plattform 2022.2 ist eingestellt mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.2.
OrchidE 2023.1.4
OrchidE 2023.1.4 bringt neue Code Assistant Funktionen für Ansible Plugin Filter. Die Code Assistant unterstützt Code Completion und Quick Documentation für alle Filter.
Die Unterstützung ist für alle Ansible Collections mit Filtern verfügbar (aktuelles OrchidE Builder Package erforderlich).
Anpassungen für Ansible Bedingungen
Die Bedingungen bei den Keywords “when”, “changed_when”, “failed_when” und “until” sind jetzt identisch zu Jinja Templates um Code Assistant besser zu unterstützen.
Neu hinzu kommt die Prüfung auf Undefined Variable, die jetzt auch bei Bedingungen verfügbar ist.
Aktuell gibt es noch die Einschränkung, das nested Variablen aus set_fact und register nicht unterstützt werden.
Changes
- Change: Die Unterstützung für Ansible Version 2.9 wurde entfernt.
- Bugfix: Das Laden von OrchidE Builder-Definitionsdateien aus Ordnerpfade mit Leerzeichen ist nicht möglich.
- Bugfix: Verbesserte Behandlung von mehrzeiligen Values.
- Bugfix: Quoted Keys am Zeilenanfang führen zu einen Parser-Fehler.
- Bugfix: OrchidE durchsucht auch Ordner außerhalb des IntelliJ-Projekts bei der Suche nach Ansible Ordner. Jetzt werden nur noch Projektverzeichnisse durchsucht.
Deprecation
Der Support für die IntelliJ Plattform 2022.2 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.2.
OrchidE 2023.1.3
OrchidE 2023.1.3 bringt kleinere Verbesserung für die Quick Documentation von Ansible Modulen und Updates für die EAP Version 2024.1.
Die Quick Documentation unterstützt neue Formatierung und Option-Links der Ansible 9 Dokumentation. Und Beispiel-Code in der Dokumentation wird jetzt mit Syntax Highlighting angezeigt.
Changes
- Change: Kompatibilität-Updates für IntelliJ Plattform Version EAP 2024.1.
- Change: Unterstützung für Inventory host variables in Unterordner.
Deprecation
Der Support für die IntelliJ Plattform 2022.2 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.2.
OrchidE 2023.1.2
OrchidE 2023.1.2 bringt Code Completion und Quick Documentation für Modul Parameter mit weiteren Unter-Parametern.
Code Completion für Unter-Parameter von Modul Argumenten
Für Modul Argument mit weiteren Unter Parameter als Liste von Dictionaries gibt es jetzt Code Completion. Zusätzlich werden Auswahllisten unterstützt, wenn der Unter-Parameter nur Werte aus einer Auswahlliste erlaubt.
Quick Documentation für Unter-Parameter von Modul Argumenten
Kurzbeschreibung von Vorschlägen in der Code Completion Auswahl
Bei der Code Completion von Modulen und Modul Argumenten wird jetzt ein Description Snippet mit angezeigt.
Changes
- Change: Kompatibilität-Updates für IntelliJ Plattform Version EAP 2024.1.
- Change: Es wird nun auch eine Quick Documentation für Variablen angezeigt, die in Argument-Spezifikationsdateien definiert sind, wenn die Definition kein Beschreibungs-Tag hat, aber andere Metadaten wie Typ, erforderlich Tag, …)
- Bugfix: Parsing-Fehler in Jinja2-Vorlagen, wenn der erste Wert eine Funktion ist und die Argumente der Funktion Zahlen sind (z.B. range(1,5)).
- Bugfix: In Jinja2-Vorlagen für Properties-Dateien wird markierter Text gelöscht, wenn der Property-Key selektiert wird und anschliessend geschweifte Klammern eingegeben werden, anstatt die Klammern um die Selektion hinzuzufügen.
Deprecation
Der Support für die IntelliJ Plattform 2022.2 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.2.
OrchidE 2023.1.1
OrchidE 2023.1.1 bringt Verbesserung bei der Nutzung von Variablen aus der Argument-Spec-Definition einer Rolle und erkennt automatisch Standard Ordner für Rollen, Playbooks und Inventories.
Verbesserter Support für Argument-Spec Variablen
In Inventory Variablen Dateien (group_vars/host_vars) wird jetzt für Code Completion, Quick Documentation, Type-Checks und Navigation umfangreich unterstützt:
- Code Completion für Unterstrukturen und Choices
- Navigation zu allen Keys
- Quick Documentation zu allen Keys im Editor und während Code Completion
- Type Check für Scalar Typen (Zeichen, Boolean, Nummern, Auswahllisten)
Um die Code Assistant für Argument-Spec-Variablen zu nutzen, muss die Variable mit einer OrchidE Role Annotation versehen sein und Playbooks mit Inventory Einträgen existieren (d.h. in Playbooks hosts: <name> und im Inventory ein entsprechender <name>-Einträge)
Automatische Erkennung von typischen Ansible Ordnern
OrchidE erkennt jetzt Standard Ansible Ordner und bietet an die Konfiguration automatisch zu übernehmen.
Gibt es noch keine Konfiguration, scannt OrchidE das IntelliJ Projekt und bietet die Übernahme aller gefundener Ordner an. Für die meisten Projekte ist damit keine weitere Konfiguration der Ansible Folder Mappings mehr nötig.
In der Konfiguration Ansible Folder Mapping werden jetzt gefundene Ansible Ordner angezeigt und können einfach hinzugefügt werden.
Erweiterung der Action “Go to related item”
Die Action “Go to related item” bietet jetzt auch Einträge aus dem Inventory an, wenn diese Ober- oder Untergruppen des Inventory Eintrags sind.
Beispiel:
[ansible:children] ansible-dev ansible-prod [ansible-dev] localhost
Wird im Playbook die Gruppe “ansible-dev” referenziert, kann mit der Action jetzt auch direkt auf Variablen-Dateien der Gruppe “ansible” navigiert werden.
Changes
- Change: Die Anzeige von Ordner in der Konfiguration Ansible Folder Mapping wird jetzt zur besseren Übersichtlichkeit relativ zum Projekt Verzeichnis angezeigt.
- Bugfix: Ansible Projekt View zeigt keine Top-Level Einträge aus YAML Inventory Dateien an.
- Bugfix: ‘SlowOperation not allowed in EDT’-Fehler in der Intention “Create File”.
Deprecation
Der Support für die IntelliJ Plattform 2022.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.1.
OrchidE 2023.1.0.1
Changes
- Bugfix: Copy & Paste funktioniert nicht für Plain-Text/Python Dateien (Einrückung basierend auf Leerzeichen).
Deprecation
Der Support für die IntelliJ Plattform 2022.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.1.
OrchidE 2023.1.0
OrchidE 2023.1.0 bringt Copy & Paste Support für Ansible Code Snippets, kann neue Passwörter für Ansible Vault Dateien setzen und unterstützt das Ver- und Entschlüsseln von Ansible Variablen.
Copy & Paste mit Einrückung
OrchidE rückt jetzt kopierten Text passend beim Einfügen ein.
OrchidE unterstützt aktuell das Einrücken beim Einfügen für Ansible
- Tasks,
- Module,
- Modul-Argumente,
- und Variablen.
Soll der kopierte Text unverändert eingefügt werden, kann Paste as Plain Text verwendet werden.
Anderer Text wird so eingerückt, wie er aus dem Original kopiert wurde.
Wenn Text im Spaltenmodus markiert und kopiert wird, wird die Einrückung nicht angepasst. Der kopierte Text wird unverändert eingefügt.
Verschlüsselung von Ansible-Variablen
OrchidE kann jetzt Werte von Variablen in Ansible Dateien ver- und entschlüsseln.
Passwort für Ansible Vault-Dateien ändern
Das Passwort für Ansible Vault-Dateien kann nun einfach im Editor geändert werden. Dabei spielt es keine Rolle, ob die Vault-Datei im Editor verschlüsselt oder unverschlüsselt angezeigt wird.
Deprecation
Der Support für die IntelliJ Plattform 2022.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.1.
OrchidE 2022.1.7.3
Hotfix für OrchidE Version 2022.1.7.2 für Windows.
Der Fix repariert den Fehler, dass der Pfad für die OrchidE-Builder Extension unter Windows nicht interpretiert wird.
OrchidE 2022.1.7.2
OrchidE kommt mit verbesserter Kompatibilität für IntelliJ EAP Version 2023.3 und Bugfixes.
Changes
- Bugfix: SlowOperations-Fehler beim Öffnen von Ansible-Vault-Dateien (OrchideUtilFile.getJavaNormalizedPath(OrchideUtilFile.kt:557)).
- Bugfix: Für Editor Tabs von Playbook Dateien wird ein falscher Name angezeigt, wenn OrchidE’s Custom Editor Tab Name Feature benutzt wird.
Deprecation
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt (-> jetzt in der Konfiguration Ansible Folder Mapping).
Der Support für die IntelliJ Plattform 2022.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.1.
OrchidE 2022.1.7.1
OrchidE kommt mit verbesserter Kompatibilität für IntelliJ EAP Version 2023.3 und einigen kleinen Bugfixes.
Changes
- Change: Verschiedene Änderungen um die Kompatibilität mit IntelliJ EAP Version 2023.3 zu verbessern.
- Bugfix: _SlowOperations_Fehler bei guessProjectForFile(ProjectLocatorImpl.java:45), OrchideVaultFileDocumentSynchronisationVetoer.maySaveDocument(OrchideVaultFileDocumentSynchronisationVetoer.kt:54).
- Bugfix: Fehler beim Prüfen, ob eine Yaml-Datei ein Ansible Vault ist (UnsupportedOperationException).
- Bugfix: Vault-Datei kann nicht gespeichert werden, wenn zwischen verschiedenen Betriebssystemen gewechselt wird (Windows vs. Unix-ähnliches OS) oder wenn mit VCS crlf-Konvertierung gearbeitet wird.
Deprecation
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt. (-> jetzt in der Konfiguration Ansible Folder Mapping)
Der Support für die IntelliJ Plattform 2022.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.1.
OrchidE 2022.1.7.0
In OrchidE 2022.1.7.0 werden jetzt auch die Inventory Ordner group_vars und host_vars erkannt, wenn sie im IntelliJ Projekt Root-Ordner liegen. Eine Konfiguration in den Ansible Folder Mapping Einstellungen ist dazu nicht nötig.
Anmerkung: Liegen die Ordner in einem Inventory Ordner innerhalb des Projekts, muss weiterhin das Inventory in den Einstellungen hinzugefügt werden.
Diese Version von OrchidE unterstützt IntelliJ EAP 2023.3 mit Einschränkungen.
Die nächste Version der IntelliJ Plattform 2023.3 (aktuell im EAP Programm) kommt mit einem neuen Threading-Modell (Parallel Verarbeitung von IDE Funktionen) und weiteren Prüfungen zur Performance Optimierung für IDE und Plugin Entwickler.
Das kann zu “informativen Fehlermeldung” in der IDE führen die einmalig je IDE Start angezeigt werden. Ausser der Anzeige der Fehlermeldung haben diese Fehlermeldung keine funktionale Einschränkung zur Folge.
(Von der Ablenkung durch die Fehlermeldung abgesehen.)
Die Fehlermeldung/Stacktraces starten immer mit einer dieser Zeilen:
java.lang.Throwable: Slow operations are prohibited on EDT. See SlowOperations.assertSlowOperationsAreAllowed javadoc
, oderjava.lang.Throwable: Non-cancelable slow operations are prohibited inside read action. See SlowOperations.assertNonCancelableSlowOperationsAreAllowed javadoc
.
Bitte senden Sie eine Kopie des Fehlers an , wenn ein solcher Fehler auftritt. Dies hilft uns, OrchidE an die nächste IntelliJ-Version anzupassen.
Changes
- Change: Performance Verbesserung für die Ansible Project View Ansicht.
- Bugfix: Fehler beim Öffnen von *.j2 Dateien während des Öffenen eines Projektes (cannot distinguish StubFileElementTypes. This might worsen the performance…).
- Bugfix: Fehler in einigen Fällen bei der Code-Vervollständigung beim ‘vars’-Keyword (NullPointerException in OrchideReferenceProviderDefaultVariable).
- Bugfix: Fehler beim Öffenen eines Projektes beim Wiederherstellen des Workspaces (NullPointerException in OrchideReferenceProviderDefaultVariable).
- Bugfix: Rollen werden nicht erkannt, wenn eine Rolle nur aus einer Tasks-Datei besteht und die Datei-Erweiterung yml verwendet wird.
Deprecation
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt. (-> jetzt in der Konfiguration Ansible Folder Mapping)
Der Support für die IntelliJ Plattform 2022.1 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2024.1.
OrchidE 2022.1.6.0
In OrchidE 2022.1.6.0 hat das Playbook Keyword hosts jetzt Code-Completion Support und unterstützt die Action “Go to Declaration”. Code Completion und Navigation verwenden die Definition aus dem Inventory. Inventory-Dateien im INI- und Yaml-Format werden unterstützt.
Code Completion
und Navigation
Unterstützung für Playbooks in Unterordner
OrchidE zeigt jetzt im Search Everywhere-Dialog (Go to class, Ctrl + N, ⌘ + O) und im Go to related Symbol-Dialog (Ctrl + Alt + Home, Ctrl + ⌥+ Up) auch für Playbooks den zugehörigen Pfad / Namespace an.
SearchEverywhere Dialog mit Anzeige des Kontextes für Rollen und Playbooks
Anstelle des IntelliJ-Moduls wird im Search Everywhere-Dialog jetzt der Kontext der Rollen- und Playbook-Einträge angezeigt. Die Bestimmung des Kontextes basiert auf den Einstellungen in Settings ➞ Languages & Frameworks ➞ OrchidE ➞ Ansible Folder Mapping.
Changes
- Change: Verbesserte Bezeichnung von Editor-Tabs.
- Bugfix: Code-Completion funktioniert nicht bei Rollen mit Leerzeichen.
- Bugfix: Code-Completion und Navigation funktionieren nicht, wenn Rollennamen in Anführungszeichen stehen.
- Bugfix: Inventory Gruppen zeigen ein falsches Icon in der Ansible-Strukturansicht an (bei yaml-Inventardateien).
- Bugfix: Bei Nutzung der Intention ‘Create Variable’ in Tasks-Dateien aus Unterordner heraus, werden fehlenden Vars-/Default-Dateien im falschen Ordner erstellt.
- Bugfix: Inlay-Hinweis für eine Jinja-Referenz wird nicht angezeigt, wenn die referenzierte Variable keinen Wert hat oder ein leerer String ist.
- Bugfix: meta/main.yml wird in der Ansible-Strukturansicht nicht angezeigt.
- Bugfix: Der Dialog zur Auswahl des Ordners in den Einstellungen für das Ansible Folder Mapping zeigt den Projektordner nicht an.
Deprecation
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt. (-> jetzt in der Konfiguration Ansible Folder Mapping)
Der Support für die IntelliJ Plattform 2021.3 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2023.3.
OrchidE 2022.1.5.1
Diese Version bringt hauptsächlich Bugfixes bei der Benutzung der neuen Konfiguration “Ansible Folder Mapping”.
Diese Version von OrchidE ist gegen die IntelliJ Plattform Version EAP 232.6484.1 vom 23. Mai 2023 geprüft.
Changes
- Bugfix: Dateien im Inventory werden nicht erkannt, wenn der IntelliJ-Projektordner als Playbook-Ordner in der Konfiguration “Ansible Folder Mapping” konfiguriert ist.
- Bugfix: Die Ansible-Strukturansicht zeigt den Ordner .idea an, wenn der IntelliJ-Projektordner als Root Ordner verwendet wird.
- Bugfix: Behebung der unnötigen Erstellung von .idea/orchide.xml bei Nicht-Ansible-Projekten.
- Bugfix: Fehler (NullPointerException) bei der Anzeige von *.j2-Dateien, die nur temporär existieren (z.B. VCS-Diff-Fenster).
- Bugfix: Fehler (NullPointerException) in verschiedenen Situationen beim Erkennen von Rollennamen
- Bugfix: Fehler / hohe CPU-Belastung beim Starten der Suche mit dem Zeichen ‘.’ im Search Everywhere-Dialog
Deprecation
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt. (-> jetzt in der Konfiguration Ansible Folder Mapping)
Der Support für die IntelliJ Plattform 2021.3 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2023.3.
OrchidE 2022.1.5.0
OrchidE 2022.1.5.0 unterstützt jetzt Rollen in Unterverzeichnissen (aka mit Namespace) und bringt eine neue Konfiguration für die Erkennung von Ansible Dateien.
Rollen in Unterordner
OrchidE unterstützt jetzt auch Rollen die innerhalb des Roles Ordner in Unterverzeichnissen sind:
- name: Sample playbook snippet roles: - role: mycompanyroles/setup
Ansible Ordner Konfigurationen
Unter Settings ➞ Languages & Frameworks ➞ OrchidE ➞ Ansible Folder Mapping erfolgt jetzt die komplette Konfiguration für die Erkennung von Ansible Playbooks, Roles und Inventories und Ausnahmen davon.
Dabei müssen die Basis-Ordner für Playbooks, Roles und Inventories festgelegt werden, damit OrchidE den korrekten Parser für alle IDE Features laden kann.
Innerhalb der Playbooks- und Roles-Konfiguration wird zusätzlich festgelegt was Variablen-Dateien oder Playbook/Roles Dateien sind. Playbook Ordner können z.B. Tasks Dateien enthalten die von Playbooks inkludiert werden oder Rollen können Playbooks in den molecule/tests Ordner enthalten.
Diese Version von OrchidE ist gegen die IntelliJ Plattform Version EAP 232.6095.10 vom 18. Mai 2023 geprüft.
Changes
- Change: Performance improvements bei der Code-Vervollständigung und der Navigation für Imports/Includes von Rollen in Playbooks.
- Bugfix: Quick documentation wird nicht korrekt in Variablen Dateien von Inventories eingefügt, wenn die Beschreibung in der ‘argument_spec’-Datei mehrzeilig ist.
Deprecation
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt. (-> jetzt in der Konfiguration Ansible Folder Mapping)
Der Support für die IntelliJ Plattform 2021.3 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2023.3.
OrchidE 2022.1.4.0
OrchidE 2022.1.4.0 bringt eine vereinfachte Konfiguration für Projekte, die nur eine Ansible Rolle enthalten.
Hat ein IntelliJ Projekt nur eine Ansible Rolle und deren Ordner (tasks, handlers, …) liegen direkt im Hauptordner des Projekts bietet OrchidE jetzt einen Schalter, um eine angepasste Konfiguration zu nutzen.
Unter Settings ➞ Languages & Frameworks ➞ OrchidE ➞ Ansible Folder Mapping kann die Konfiguration gesetzt werden.
Der Ordner molecule wird in der vereinfachten Konfiguration noch nicht unterstützt. Bei Bedarf kann man sich in den Einstellungen für die File Type Patterns eine Regel für Playbooks erstellen.
Dateien mit Tasks können über die IntelliJ Action ‘Override file type’ als Tasks-Dateien markiert werden oder über einen Eintrag in den File Type Patterns.
Ansible Ordner Konfigurationen
Die Konfiguration für die Basis-Ordner von Playbooks, Rollen und Inventories wurde von der Facet-Konfiguration in die Projekt-Konfiguration verschoben. Die neue Konfiguration wird auch als Basis für eine zukünftige, vereinfachte Konfiguration der File Type Patterns genutzt werden.
Die Facet-Konfiguration ist deprecated und wird mit einer der nächsten Versionen entfernt.
Bessere Unterstützung von import_tasks/include_tasks
Die Module import_tasks/include_tasks unterstützten jetzt bei der Navigation und Code Completion auch Dateien relativ zum Playbook.
Werden die Module in Rollen benutzt, findet OrchidE automatisch das passende Playbook und deren Pfad dazu. Optional können auch die eingestellten Ordner aus den Einstellungen für die Playbook-Ordner genutzt werden. Die Option kann in den Einstellungen unter Settings ➞ Editor ➞ Orchide : Abschnitt Code Completion eingestellt werden:
Changes
- Change: OrchidE zeigt jetzt eine Warnung an, wenn die Datei Erweiterung YAML der IntelliJ Funktion “Python Template Language” zugeordnet ist. Mit dieser Zuordnung werden die OrchidE Zuordnung zum Parser von OrchidE überschrieben. Damit lässt sich OrchidE nicht zusammen mit dieser Funktion nutzen. Die Einschränkung gilt, wenn die Dateien im gleichen IntelliJ Modul sind. In getrennten IntelliJ Modulen kann die Funktion “Python Template Language” und OrchidE genutzt werden.
- Change: Das src-Argument des template Moduls unterstützt jetzt auch Ordner/Pfade bei der Code Completion.
- Bugfix: Quick documentation wird bei den Modulen import_tasks / include_tasks nicht angezeigt.
Deprecation
Der Support für die IntelliJ Plattform 2021.2 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2023.2.
OrchidE 2022.1.3.0
OrchidE 2022.1.3.0 unterstützt die aktuelle IntelliJ Plattform EAP Version 2023.1 und bringt einige Bugfixes.
Diese Version von OrchidE ist gegen die IntelliJ Plattform Version EAP 231.6471.13 vom 3. Februar 2023 geprüft.
Changes
- Bugfix: Rollen Variablen Dateien in Unterordner werden nicht genutzt bei Code Completion und Inspections.
- Bugfix: Beim Auflösen von inkludierten Dateien mit dem Keyword vars_files kommt es zu einer endlos Rekursion, wenn für den Dateinamen Jinja-Variablen verwendet werden (StackOverflowException).
- Bugfix: Beim Auflösen von Jinja Variablen mit zirkulären Abhängigkeiten kommt es zu einem Überlauf bei der Auflösung (StackOverflowException).
- Bugfix: Die Intention “Add extra variable” wird schon beim Selektieren ausgeführt und nicht erst bei Bestätigung der Auswahl.
- Bugfix: Editor Tabs zeigen nach Speichern einer Ansible Vault Datei den falschen Status für mark modified (*) an.
- Changes: Interne API Updates.
Deprecation
Der Support für die IntelliJ Plattform 2021.2 ist deprecated und endet mit dem Erscheinen der EAP Version der IntelliJ Plattform 2023.2.
OrchidE 2022.1.2.0
OrchidE 2022.1.2.0 bringt weitere Inspections und Verbesserungen für importierte Playbooks.
Eine neue Inspection prüft, ob ein verwendeter Ansible Task ohne Namespace zu einer Mehrdeutigkeit führt. Dabei werden die gelisteten Namespaces im collections keyword berücksichtigt.
Import Playbook
In Playbooks, die von anderen Playbooks importiert werden (via import_playbook) werden jetzt auch die Keywords ‘vars’ und ‘vars_files’ unterstützt. Damit werden Variablen, die mit vars/vars_files definiert wurden, für die Navigation, fürs Code Completion und für die Inspection ‘Undefined Variables’ genutzt.
Das Feature unterstützt auch kaskadierte Imports von Playbooks.
Private Role Vars
Für die Navigation, Code Completion und die Inspection “Undefined Variables” werden in Jinja2 Templates jetzt auch private role vars berücksichtigt.
Jinja2 Templates
In Jinja2 Templates gibt es jetzt eine Status-Bar die einen Breadcrumb von Jinja Expressions anzeigt.
Inventory
Um in Inventory Variablen Dateien verbesserte Unterstützung für die Navigation, Quick Documentation, Code Completion und Inspections zu haben gibt es die OrchidE Role Annotation.
Eine neue Intention und Inspection unterstützen beim nachträglich Hinzufügen der Annotation.
Ist die Warnung für die fehlende Annotation nicht gewünscht, kann Sie in den Einstellungen (Settings ➞ Editor ➞ Inspections ➞ Ansible: ‘Missing role annotation’) geändert oder deaktiviert werden.
Changes
- Bugfix: Quick fix ‘Create group/host variable’ zeigt zu viele Möglichkeiten an. (Auch nicht unterstützte Meta/Argument Spec Dateien).
- Bugfix: Fehler, wenn eine Vault Datei im IDE Editor geöffnet ist und außerhalb der IDE entschlüsselt wird.
- Bugfix: Variablenwerte / aufgelöste Referenzen von Jinja2 Templates werden in IntelliJ 2022.3 nicht als Inlays angezeigt.
Deprecation
Der Support für die IntelliJ Plattform 2021.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2023.1.
OrchidE 2022.1.1.0
OrchidE 2022.1.1.0 bringt viele kleine Verbesserungen und Fixes.
Für Ansible Vault Dateien kann jetzt nachträglich die Vault Id gesetzt werden.
Datei Referenzen
Die Code-Assistant Funktionen für die Module include_tasks, import_tasks und template wurden verbessert und erweitert:
- Es werden jetzt auch relative Pfade zu Jinja Template Dateien unterstützt.
- Die Navigation zu einer inkludierten Datei ist jetzt ein Kompletteintrag.
- Jinja Templates innerhalb einer Pfadangabe unterstützten jetzt Code Completion für verschachtelte Dictionaries
- include_tasks: "{{ main.subentry }}.yml
- Die Inspection Missing file zeigt jetzt den Originaltext mit Jinja Templates.
- Die Code Completion für Template-Dateien filtert jetzt auf die Dateierweiterung
*.j2
. Um alle Dateien anzuzeigen, gibt es in den Einstellungen einen Schalter (Settings ➞ Editor ➞ OrchidE : Sektion Code Completion). - Das Auflösen der Datei Referenzen wurde optimiert und ist jetzt performanter.
Changes
- Change: Die Inspection Undefined Variable berücksichtigt nun auch Variablen die mit dem Task Keyword vars definiert sind.
- Bugfix: Inlays zeigen falsche Werte an, wenn Variablennamen den gleichen Prefix haben.
- Bugfix: Der Parser erkennt das Keyword block nicht, wenn direkt danach ein Kommentar steht.
- Bugfix: Die Inspection Wrong Keyword zeigt einen Fehler an, wenn der Name mit einem Modulnamen übereinstimmt.
- Bugfix: Der Parser zeigt einen Fehler an, wenn in Jinja Templates ein Dictionary/eine Liste in einer Jinja Funktion verwendet wird (z.B.
{{ combine(var1, { 'key': value|string + x['abc'] } ) }}
. - Bugfix: Code completion zeigt keine Variable an die mit dem Keyword vars definiert sind.
- Bugfix: Die Inspection wrong module argument type bringt einen Fehler, wenn referenzierte Werte ein ‘
\
’ Zeichen enthalten.
Deprecation
Der Support für die IntelliJ Plattform 2021.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2023.1.
OrchidE 2022.1.0.0
OrchidE 2022.1.0.0 bringt Code Assistant für Ansible Group und Host Variables im Inventory.
- Code Completion von Variablen auf Basis der Argument-Spec Definition und der Defaults-Datei in Rollen.
- Optional wird die Beschreibung zusätzlich oberhalb der Variable eingefügt (Code completion mit Enter-Taste)
- Navigation zur Deklaration von Variablen in der Argument-Spec Datei
- Anzeige der Beschreibung und des Typs einer Variable in der Quick-Documentation (basierend auf der argument-spec)
- Typ-Check von Variablenwerten anhand der Definition in der Argument-Spec Datei
- OrchidE eigene Annotation für eine verbesserte User-Experience
Code Completion
(mit Role-Annotation werden nur die passenden Vorschläge angezeigt)
Navigation
(für die Navigation muss eine Role-Annotation vorhanden sein)
Quick Documentation
OrchidE unterstützt die HTML Shortcuts (z.B I(italic) für Kursivschrift) aus der Ansible Dokumentation und rendert den HTML Text korrekt wenn Shortcuts in der Argument Spec Beschreibung genutzt wird.
Typ-Check von Werten
Folding
Changes
- Change: Binaries in Ansible vault Dateien werden erkannt und nicht mehr im Editor angezeigt
- Bugfix: Fehler bei der Suche Find Usages wenn Jinja2 template Referenzen noch nicht gültig sind/im Hintergrund noch verarbeitet werden.
Deprecation
Der Support für die IntelliJ Plattform 2020.3 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.3.
OrchidE 2021.1.8.1
Orchide 2021.1.8.1 enthält kleinere Bugfixes und Unterstützung für die IntelliJ EAP Version 2022.3.
Changes
- Bugfix: Parser Fehler, wenn in Jinja2 Ausdrücken eine leeres dictionary verwendet wird
('{}')
. - Bugfix: Parser Fehler, wenn in Jinja2 Templates ein Jinja2 Ausdruck verwendet wird,
z.B. bei{{ lookup('file', '{{ item }}') }}
. - Bugfix: Code completion für Jinja2 Klammern funktioniert nicht in Ansible Task und Variablen-Dateien.
- Bugfix: IDE Error (NullPointerException) beim Start der IDE während des indexieren von Dateien im Inventory Ordner.
Deprecation
Der Support für die IntelliJ Plattform 2020.3 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.3.
OrchidE 2021.1.8.0
OrchidE 2021.1.8.0 unterstützt jetzt Code Completion und Navigation für Template Dateien.
- Code Completion für das src-Argument des Moduls template.
- Navigation zur Template Datei für das Modul template (ohne Jinja Support)
Für die Code Completion wird der Such-Pfad in der Defaulteinstellung limitiert auf den Such-Pfad <Ansible search paths>/templates/*.
In der Konfiguration Editor | OrchidE kann das Verhalten geändert werden, um alle Dateien vorgeschlagen zu bekommen, die Ansible unterstützt.
Für Variablen vom Typ ‘list’ aus der argument_spec-Datei gibt es jetzt Code Completion für Listen.
Changes
- Bugfix: IntelliJ Fehler, wenn im VCS Diff-Fenster auf VCS Seite ein Jinja2 template ausgewählt wird
- Bugfix: Parser Fehler bei der Verwendung von verketteten Strings in Jinja2 templates, z.B. bei {{ groups[ prefix.host + “Server”] }}.
Deprecation
Der Support für die IntelliJ Plattform 2020.3 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.3.
OrchidE 2021.1.7.0
OrchidE 2021.1.7.0 verbessert den Support für Variablen die mit dem set_fact Modul oder dem Keyword register gesetzt werden:
- Code Completion für Jinja2 Variablen schlägt jetzt auch set_fact/register Variablen vor, wenn sie über import/include_tasks eingebunden sind.
- Die Navigation zu Variablen die mit set_fact/register gesetzt wurden, unterstützt jetzt auch Variablen die in import/include_tasks gesetzt wurden.
- Die Inspection ‘Undefined Variables’ unterstützt jetzt auch set_fact/register Variablen, die in importierten/inkludierten Dateien gesetzt wurden.
Die Auflösung der importierten Dateien erfolgt hierarchisch, damit werden auch (Reihenfolgen)-Abhängigkeiten der importierten Dateien erkannt.
Die Verbesserungen sind auch in Jinja2 Template Dateien verfügbar.
Deprecation
Der Support für die IntelliJ Plattform 2020.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.2.
Der Support für die Ansible Versionen 2.9 und 2.8 ist deprecated.
OrchidE 2021.1.6.0
OrchidE 2021.1.6.0 unterstützt jetzt Code Completion für argument spec-Variablen bei der Verwendung in Playbooks und in Jinja2 templates (
{{ }}
) in Roles.Changes
- Change: Überarbeitete file type patterns für eine bessere Erkennung von Playbooks und Variablen Dateien.
Deprecation
Der Support für die IntelliJ Plattform 2020.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.2.
Der Support für die Ansible Versionen 2.9 und 2.8 ist deprecated.
OrchidE 2021.1.5.0
In OrchidE 2021.1.5.0 unterstützt die Inspection Undefined Variables einfache Variablen Zuweisungen mit
set
.Und für die Jinja2 Template Strukturen if, for, macro, filter, call gibt es Prüfung, ob ein entsprechendes Ende Statement vorhanden ist (endif, endfor, …).
Changes
- Change: Der Parser für YAML zeigt jetzt für einige typische Fehler verbesserte Fehlermeldungen.
- Bugfix: Code Completion von Module-Argumenten werden nicht angezeigt, wenn das Argument eine Version in der Dokumentation enthält (hinzugefügt in Version).
- Bugfix: In Jinja2 Templates in Ansible multi-line Statements wird ein Fehler bei der Nutzung von ‘{%-‘ angezeigt.
- Bugfix: Der File Type Pattern Dialog zeigt Fehler, wenn eine leere Eingabe gemacht wurde.
- Bugfix: Jinja2 JSON templates zeigen einen JSON Parser Fehler wenn das Template ein Boolean oder eine Nummer zurückliefert.
Deprecation
Der Support für die IntelliJ Plattform 2020.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.2.
Der Support für die Ansible Versionen 2.9 und 2.8 ist deprecated.
OrchidE 2021.1.4.0
OrchidE 2021.1.4.0 unterstützt für Ansible Dateien jetzt die Navigation zu zugehörigen Ansible Dateien. Zum Beispiel kann aus einer Rolle heraus, direkt
- zu Playbooks, welche die Rolle enthalten,
- zu Group/Host Variablen,
- zu Inventory Einträgen
- und zu allen Dateien innerhalb der Rolle
navigiert werden.
Die Funktion ist über die IntelliJ Action Navigate -> Related Symbol verfügbar (Ctrl + Alt + Home, Ctrl + ⌥+ Up)
Unterstützt wird die Navigation:
aus Playbooks
- zu inkludierten Variablen-Dateien
- zu Rollen (-> tasks/main.yml)
- zu Group/Host Variablen
- zu Inventory Einträgen
aus Rollen (tasks, vars, defaults)- zu allen Dateien in der Rolle
- zu Playbooks, welche die Rolle einbinden
- zu Group/Host Variablen (via Rolle in Playbook)
- zu Inventory Einträgen (via Rolle in Playbook)
von Inventory Einträgen (exakte Cursor-Position)- zu Playbooks
- zu Group/Host Variablen
aus Group/Host Variablen- zu Playbooks
- zu Rollen (via Playbooks)
- zu Inventory Einträgen
Deprecation
Der Support für die IntelliJ Plattform 2020.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.1.
Der Support für die Ansible Versionen 2.9 und 2.8 ist deprecated.
OrchidE 2021.1.3.0
OrchidE 2021.1.3.0 unterstützt jetzt auch Inventory-Dateien im YAML Format für den Project View -> Ansible Structure.
Und für Inventory Gruppen und Host Einträgen gibt es eine Navigation zu Playbooks die für den Host/die Gruppe sind bzw. zu den entsprechenden Variablen.
Die Navigation erfolgt über Navigate -> Related Symbol (Ctrl + Alt + Home, Ctrl + ⌥+ Up)
Änderungen
- Change: Der Project View Ansible Structure zeigt jetzt farblich den Datei-Status, wenn die Datei unter Versions-Kontrolle ist.
Deprecation
Der Support für die IntelliJ Plattform 2020.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.1.
Der Support für die Ansible Versionen 2.9 und 2.8 ist deprecated.
OrchidE 2021.1.2.0
OrchidE 2021.1.2.0 unterstützt jetzt beim Erzeugen von neuen Ansible Dateien.
Das Erzeugen erfolgt dabei Kontext-unabhängig, d.h z.B. Rollen werden immer im konfigurierten Rollen-Ordner erstellt. Die New file-Aktion nutzt dazu die Facet-Konfiguration (Facet ‘OrchidE Ansible’).
Folgende Typen können angelegt werden:
- Rollen: erzeugt einen Ordner für die Rolle und je nach Auswahl noch ein tasks/main.<ext> oder meta/main.<ext> Datei.
- Playbooks: erzeugt eine Playbook-Datei oder ein Ordner mit main.<ext>.
- Group var: erzeugt eine Inventory group var-Datei im <inventory>/group_vars Ordner. Optional als Ordner mit voreingestellten Dateiname.
- Host var: erzeugt eine Inventory host var-Datei im <inventory>/host_vars Ordner.
Sollte kein Ordner für den Typ in der Facet Konfiguration angegeben sein, wird der aktuell ausgewählte Pfad aus dem Project-View als Basis genommen.
Sollten mehrere Ordner für den Typ in der Facet Konfiguration angegeben sein, wird auf Basis des aktuellen Pfades im Project-View der passende Pfad gesucht. Ist der aktuelle Pfad nicht Teil eines konfigurierten Inventory-, Playbook- oder Rollen-Basis-Verzeichnisses, wird der aktuelle Pfad genutzt.Den Default Dateinamen für Ordner-basierte Group Var-Dateien und die bevorzugte YAML Dateierweiterung kann in den Einstellungen (File | Settings | Editor | OrchidE) konfiguriert werden.
Änderungen
- Change: Inlay-Hinweise können nun rekursiv aufgelöste Werte für Variablen anzeigen, wenn die Referenz eindeutig ist.
- Change: Inlay-Hinweise für Jinja-Variablen unterstützen jetzt set_fact-Variablen.
- Change: Inlay-Hinweise in Tooltips enthalten jetzt den Pfad zur Datei der Referenz.
- Change: Inlay-Hinweise können jetzt als “Tooltip-Icon” angezeigt werden. Die komplette Information steht dann im Tooltip.
- Change: Jinja2-Templates (.j2) unterstützen nun auch YAML-Dateien als Basis (.yml.j2, *.yaml.j2). (unterstützt die kombinierte Nutzung mit anderen YAML-basierten Plugins wie JetBrains’ Kubernetes-Plugin)
- Change: Das Jinja2-Template Feature fügt nun eine schließende Klammer bei Jinja “
{{ }}
” hinzu. - Change: Die Einstellung für die Ansible Version wurde für die Version ab 2.10 ersetzt durch den Eintrag
. Die Version wird dabei durch das installierte OrchidE Builder Definitionspaket definiert. - Change: Die Inspection “Deleted Module” wurde für Ansible Version >=2.10 entfernt. Stattdessen kann die Inspektion “Unknown Ansible play, task and block keyword” verwendet werden.
- Bugfix: Bei der Anzeige von Inlay-Hinweise wird die Einstellung ‘hide default values’ nicht korrekt berücksichtigt.
- Bugfix: Die Einstellung für das File Type Pattern “Task” wird nicht erkannt.
- Bugfix: Refactoring ‘Introduce Variable’ funktioniert nicht bei YAML multi line scalars.
- Bugfix: ‘Comment with Line Comment’ in Jinja2 template (plain text) setzt den Cursor in die nächste Zeile.
Deprecation
Der Support für die IntelliJ Plattform 2020.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.1.
Der Support für die Ansible Versionen 2.9 und 2.8 ist deprecated.
Der Support für Ansible Version 2.7 wurde entfernt.OrchidE 2021.1.1.0
OrchidE 2021.1.1.0 kann jetzt die Werte von Jinja Variablen als inlay Information anzeigen.
Inlay Hints für Jinja VariablenDie Inlay-Information können in den Einstellungen (File | Settings | Editor | Inlay Hints) konfiguriert werden.
Änderungen
- Bugfix: Beim selektieren eines Editors mit Playbook wird die Datei nicht im Ansible Structure View selektiert.
- Bugfix: Nach dem Löschen einer Datei aus dem Ansible Structure View wird der Datei-Baum mehrmals erneuert.
- Bugfix: Das Auflösen von Jinja-Referenzen zeigt falsche Einträge, wenn der Name der Referenz teilweise mit der Deklaration übereinstimmt.
Deprecation
Der Support für die IntelliJ Plattform 2020.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2022.1.
OrchidE 2021.1.0.0
OrchidE 2021.1.0.0 bringt einen Project View für Ansible und eine Suche nach Inventory Einträgen.
Project View für AnsibleDer Project View zeigt nur Inventory Einträge und Variablen-Dateien, Playbooks und Roles an und blendet die restliche Struktur aus.
Weitere Details können der Dokumentation entnommen werden.
Support für die Suche nach Inventory Hosts und Groups im SearchEverywhere-Dialog
Im SearchEverywhere-Dialog kann jetzt nach Inventory group und host Namen gesucht werden und zu der zugehörigen Deklaration oder zu der zugehörigen Variablen-Definition navigiert werden. (Shortcut Ctrl+Shift+O, danach I, ⌘+Shift+O, danach I))
Die Suche/Navigation zu Host und Group-Namen ist aktuell für Inventory-Dateien im INI-Format verfügbar. Für die Nutzung muss zusätzlich das INI Plugin (ini4idea) von JetBrains installiert sein. (YAML für Inventory-Dateien wird nicht unterstützt.)
Für den Project View und die Suche nach Inventory Einträgen muss die Facet “OrchidE Ansible” einem Modul zugeordnet und konfiguriert werden.
Änderungen
- Kleinere Bugfixes.
Deprecation
Der Support für die IntelliJ Plattform 2019.3 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.3.
OrchidE 2020.1.9.0: Bugfixes und Support für die neuste IntelliJ EAP Version
OrchidE 2020.1.9.0 unterstützt jetzt die IntelliJ Plattform 2021.3 EAP 2.
Änderungen
- Bugfix: Inspection “Duplicate Keywords” zeigt falsche Fehler bei Verwendung role: in Playbooks.
Deprecation
Der Support für die IntelliJ Plattform 2019.3 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.3.
OrchidE 2020.1.8.0: Neue Funktionen
OrchidE 2020.1.8.0 erlaubt das schnelle Navigieren zwischen Tasks (via IntelliJ Action Next/Previous Method) und das einfache Verschieben von Tasks (via IntelliJ Action Move Statement Up/Down).
Navigation und Verschieben von TasksHighlighting von Jinja2 Statements in mehrzeiligem Text
Structure View Anzeige
Die Structure View kann nun Tasks und Includes in Playbooks und Tasks-Dateien anzeigen.
Änderungen
- Change: Verbesserung bei der Erkennung von deprecated Modulen, wenn kein FQCN benutzt wird und das Modul in mehreren Collections existiert.
- Change: Definition von Variablen in set_fact dürfen Jinja2 templates enthalten.
Deprecation
Der Support für die IntelliJ Plattform 2019.3 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.3.
OrchidE 2020.1.7.0: Neue Funktionen
OrchidE 2020.1.7.0 bringt eine neue Inspection um den Typ eines keywords oder module argument zu prüfen. Code Completion für keywords und module arguments bieten jetzt auch bekannte Werte mit an für ein noch schnelleres Editieren.
Type Checks
OrchidE kann jetzt die Typen
- Boolean,
- Integer und
- Auswahllisten
bei keywords und module arguments prüfen und vor Verwendung falscher Typen warnen.
Unterstützt wird auch die Verwendung von Jinja Variablen mit einfachen Referenzen.
Typ Definitionen werden von der collection und keyword Dokumentation genutzt. Eigene Definition aus argument_specs werden zurzeit nicht unterstützt.
Code Completion mit Werten
Boolean und Werte-Listen werden jetzt als zusätzliche Code Completion bei keywords und module arguments vorgeschlagen.
Welche Kombination von Booleans (true/false, yes/no, on/off) vorgeschlagen wird, kann in den Editor Einstellungen gesetzt werden.
Änderungen
- Change: Code Completion für Variablen bei
debug: -> var:
hinzugefügt. - Change: Verschiedentliche Verbesserungen und Fixes für
include_tasks
bei Code Completion und der Navigation zur Deklaration. - Bugfix: Inspection Undefined Variables berücksichtigt keine Schleifenvariable in Jinja Templates aus host/group Variablen.
- Bugfix: Fehlerhafte Anzeige “keine gültige Datei” bei Argumenten mit Namen “file”.
Deprecation
Der Support für die IntelliJ Plattform 2019.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.2.
OrchidE 2020.1.6.0: Neue Funktionen
OrchidE 2020.1.6.0 bringt Verbesserung für Ansible include-Module (
import_tasks
,include_tasks
,import_playbook
undvars_files
).OrchidE unterstützt jetzt zusätzlich
- Code Completion von Dateien
- Navigation zu Pfaden
- Erkennung von fehlenden Dateien
- das Erzeugen von fehlenden Dateien
- das Erzeugen von zusätzlichen Dateien, wenn Ansible Facts Variablen verwendet werden
Für das Erzeugen neuer Dateien wird mind. die IntelliJ Plattform 2019.3 benötigt.
Unterstützte Ansible Facts sind
- ansible_distribution
- ansible_os_family
- ansible_system
- ansible_distribution_major_version
Weitere Facts gerne per email-Anfrage oder GitHub Issue/Pull Request für die Definitionsdatei.
Änderungen
- Change: Inspection Undefined Variables erkennt jetzt auch Variablen bei Schleifen mit
with_dict
. - Change: Neue Inspection zur Erkennung doppelter YAML keys.
- Bugfix: Exception beim Setzen von GroupVar-Dateien auf PlainText beseitigt.
- Bugfix: Korrektur des Parser bei String-Concatenation in Jinja2 templates.
- Bugfix: Quick Dokumentation zeigt nicht dekodierte Zeichen in der Dokumentation von Return Values.
Deprecation
Der Support für die IntelliJ Plattform 2019.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.2.
OrchidE 2020.1.5.0: Neue Funktionen
OrchidE 2020.1.5.0 bringt Code Completion und Navigation für die Ansible Keywords
when
,failed_when
,changed_when
unduntil
.Für Variablen definiert durch das Keyword
register
wird Code Completion, Navigation und Quick Documentation unterstützt. Diese Funktionen werden für Variablen, die in derselben Datei definiert wurden, unterstützt.- Code Completion für Ansible Variablen in Conditions
- Navigation zur Deklaration für bei Conditions verwendeten Ansible Variablen
- Code Completion für register-Variablen inklusive Code Completion von Return-Value Strukturen.
- Navigation zur Deklaration von register-Variablen.
- Bei der Verwendung von register-Variablen können direkt die Return-Values in der Quick Documentation angesehen werden.
Jinja2 Templates
Die Inspection Undefined Variables erkennt jetzt Loop-Variablen in Jinja2-Templates.
Collections
Ansible 2.11 Unterstützung und verbesserter Einstellungsdialog für die Konfiguration von Collections.
- Konfiguration von Collections via Tastatur.
- Neuladen der Collection-Konfiguration nach Übernahme der Änderungen ohne Neustart.
Module set_fact
Für Variablen die mit dem Module set_fact gesetzt werden, gibt es Unterstützung für Code Completion und Navigation (Go to declaration) (innerhalb der gleichen Datei)
Änderungen
- Change: Stabilitätsverbesserungen bei mehreren geöffneten Projekten.
- Change: Hinweis auf empfohlene Konfigurationseinstellung für Orchide-Extension und Nutzung von Ansible 3.3.
- Change: Unterstützung für Ansible 2.6 und 2.5 entfernt.
- Bugfix: Korrektur der Definitionen von “Command Modulen (shell, script, …)” - free_form entfernt, cmd hinzugefügt. (Ansible 2.8, 2.9)
Deprecation
Der Support für die IntelliJ Plattform 2019.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.2.
OrchidE 2020.1.4.0: Unterstützung für Ansible Vault Dateien
OrchidE 2020.1.4.0 kann jetzt Ansible Vault Dateien ent- und verschlüsseln.
Achtung
(Update vom 16. April 2021)
Die aktuelle Version ist jetzt auf dem Marketplace verfügbar.
Diese Version ist aktuell nicht über den JetBrains Marketplace verfügbar.Bitte laden Sie die Version von der Webseite herunter und installieren Sie das Plugin über den Menüpunkt ( –> “Install Plugin from disk”) in den Plugin Settings.OrchidE 2020.1.4.0 für IntelliJ Version >= 2019.3.1OrchidE 2020.1.4.0 für IntelliJ Version 2019.2OrchidE 2020.1.4.0 für IntelliJ Version 2019.1
Der gewohnte Download aus dem Marketplace wird so schnell wie möglich nachgeliefert.- Entschlüsseln von Vault-Dateien mit und ohne Vault ID.
- Entschlüsselte Dateien können wir normale Dateien mit Variablen verwendet werden - Navigation, Code Completion, Inspection
- Optionales persistentes Speichern des Passwortes im IntelliJ Passwort Safe für jede Vault ID. Alternativ wird das Passwort nur im Speicher gehalten.
- Verschlüsseln von neuen Dateien mit/ohne Vault ID.
- Unterstützung für die “Auto-Save” Funktion von IntelliJ - OrchidE verschlüsselt Vault Dateien beim Speichern durch IntelliJ. Die
Passwörter (in Ansible Dateien) werden nie im Klartext gespeichert - auch wenn Sie im Editor sichtbar sind.
Ein explizites Verschlüsseln ist nicht nötig. - Unterstützt den Vergleich von Vault-Dateien mit VCS.
Mehr Details zum Ent-/Verschlüsseln in der Dokumentation
Änderungen
- Change: Weitere Performance Verbesserung für die Inspection “Undefined Variables”.
- Change: Inspection “Undefined Variables” unterstützt jetzt auch Variablen die in include-/import_role definiert sind
- import_role: name: test_role vars: testkey: "hello"
Einschränkungen für IntelliJ Plattform 2019.1 und 2019.2
Bei mehr als einem geöffneten Projekt mit den IntelliJ Plattform Versionen 2019.1 und 2019.2, muß der “Projekt schließen”-Button zweimal betätigt werden, sofern noch nicht gespeicherte Vault Dateien vorhanden sind.
Deprecation
Der Support für die IntelliJ Plattform 2019.2 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.2.
OrchidE Version 2020.1.4.0 ist die letzte Version mit Unterstützung für die IntelliJ Plattform 2019.1.
Mitteilung: Verzögerungen bei der Veröffentlichung von OrchidE Releases
Aufgrund einer Re-Organisation für die Entwicklung von OrchidE können im Moment leider keine Releases veröffentlicht werden.
Wir arbeiten daran die Re-Organisation so schnell wie möglich abzuschließen und neue Releases zu veröffentlichen.
OrchidE 2020.1.3.0: Performance Verbesserungen und neue Features
Performance
OrchidE 2020.1.3.0 enthält Performance Verbesserungen für die Navigation und die Inspection Undefined Variables.
Code CompletionFür Modulargument die eine Auswahl erwarten steht jetzt Code Completion zur Verfügung.
Code Completion, Navigation und Inspection Undefined VariablesFür weitere Variablendefinitionen steht jetzt Code Completion, Goto Declaration und eine Validierung (Inspection Undefined Variables) zur Verfügung:
- Variablen die in Playbooks mit dem Keyword vars definiert sind, werden jetzt in Roles vollständig unterstützt.
- Variablen die in “Playbooks -> roles: -> vars:” definiert sind, werden jetzt in Roles vollständig unterstützt.
Changes- Changes: Dokumentation für Keywords hinzugefügt (benötigt OrchidE-Builder Update -> (Settings | Languages & Frameworks | Orchide | Extension)
- Bugfix: Behebung IllegalStateException wenn die Code Completion Version auf 2.9 oder älter eingestellt ist.
Deprecation
Der Support für die IntelliJ Plattform 2019.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.1.
OrchidE 2020.1.2.0: Konfigurationsoptionen für Code Completion von Collections
In Version 2020.1.2.0 kann man die Code Completion für Collections konfigurieren. Zur Auswahl stehen
- nur den full qualified collection name (FQCN) verwenden
- nur den short name verwenden (Modulnamen)
- auf Basis des Keywords collections den short name verwenden. Bei fehlender Collection wird der FQCN und short name angezeigt
- immer FQCN und short name anzeigen
Navigation
Für das Modul include_tasks werden jetzt auch Dateinamen mit Jinja2 Templates unterstützt.
Diese Funktion benötigt die OrchidE-Builder Erweiterung (File | Settings | Languages & Frameworks | OrchidE | Extension) und wird nur für eine Auswahl von Variablen unterstützt.
Fehlende Variablen können gerne via email oder GitHub Issues angefragt werden.
Mehr Details dazu in der Dokumentation
Konfiguration
Die Zuordnung der Dateierweiterung für YAML ist jetzt nicht mehr für OrchidE zwingend erforderlich. OrchidE kann jetzt auch YAML Dateien erkennen, wenn die Erweiterungen *.yml, *.yaml dem YAML plugin zugeordnet sind.
Das ermöglicht das parallele Nutzen von OrchidE mit anderen YAML-basierten Plugins und verbessert das Erkennen von Ansible Dateien nach IntelliJ Updates.
Deprecation
Der Support für die IntelliJ Plattform 2019.1 ist deprecated und endet mit dem Erscheinen der IntelliJ Plattform 2021.1.
IntelliJ IDEA EAP 2020.3 Support
OrchidE unterstützt jetzt IntelliJ IDEA EAP 2020.3.
OrchidE benötigt zur Erkennung der YAML Dateien das YAML Plugin oder eine manuelle Zuordnung der Dateierweiterung zu OrchidE in den Einstellungen.
Zum Zeitpunkt der Veröffentlichung von neuen EAP Versionen kann es passieren das es kein YAML Plugin im JetBrains Plugin Repository gibt. Einen aktuellen Snapshot Build zur manuellen Installation gibt es in der Regel im Snapshot Repository.
Alternativ setzt man die Datei-Erweiterung in den Einstellungen (File | Settings | Editor | File Types).
OrchidE 2020.1.1.0: Quick Documentation Support für Ansible Module
In Version 2020.1.1.0 unterstützt OrchidE die Anzeige der Ansible Dokumentation für Module.
Im IntelliJ Quick Documentation Popup und Tool Window wird jetzt die Dokumentation zu Ansible Modulen und Argumenten angezeigt.
OrchidE zeigt die Beschreibung von Modulen und deren Argumente an. Enthalten ist die Beschreibung, die Anforderungen und Anmerkungen, die Dokumentation zu Argumenten, Rückgabewerte und Beispiele.
Die Dokumentation ist nicht Bestandteil des Plugins und muß nach der Installation/dem Update des OrchidE Plugins nachinstalliert werden.
Dazu öffnet man den Dialog File | Settings | Languages & Frameworks | OrchidE | Extension, legt das Download Verzeichnis fest und installiert das OrchidE Definition Archive. Danach ist ein Restart von IntelliJ nötig.
Änderungen
- Bugfix: Behebung des Parser-Fehler bei Berechnungen mit “/” innerhalb Jinja2 Templates.
Sonderpreis zum einjährigen Bestehen
50% Rabatt für private Nutzung und 30% für Unternehmen
weitere Details
OrchidE 2020.1.0.0: Unterstützung für Ansible Galaxy Collections
In Version 2020.1.0.0 werden jetzt Ansible Collections unterstützt und die Navigation zu Zieldateien bei import/include Modulen ist möglich.
Ansible Collection Support
OrchidE unterstützt jetzt Module der gängigsten Ansible Galaxy Collections - in FQCN und kurzer Schreibweise. Die Unterstützung umfasst das Parsen von Ansible Dateien und die Code Completion für Module für die Ansible Version 2.10.
OrchidE kann mit weiteren Ansible Collections erweitert werden um fehlende oder aktualisierte Collections zu nutzen. Dazu gibt es auf GitHub ein CLI Tool um aktualisierte Definition zu erzeugen.
Navigation Support für import*/include* Tasks
Für die Module (mit Argumenten)
- import_playbook
- import_tasks
- include_tasks
- include_tasks: -> file:
- import_role: -> name:
- include_role: -> name:
- include_vars: -> file:
- vars_files:
wird jetzt die Navigation “Go to Declaration” (Ctrl + B/Command + B) unterstützt. Unterstützt werden Datei-/Pfadangaben relativ zur aktuellen Datei.
Neue Inspections
Neue Inspections prüfen die Gültigkeit von Keywords und Modul-Argumenten:
- Inspection “Unknown Ansible play, task and block keyword”
- Inspection “Unknown Ansible role keyword”
- Inspection “Unknown module argument”
(Unterstützt für die Ansible Versionen 2.8 - 2.10)
Offene Punkte
Bei der Nutzung von Modulen in Kurzform gibt es Einschränkungen wenn zwei oder mehrere Collections den gleichen Namen verwenden (z.B user).
Bei der Code Completion werden in diesem Fall immer alle Modul-Argumente zur Auswahl angeboten. Bei der Inspection “Unknown module argument” erfolgt die Prüfung auf alle Argumente aller möglichen Module.
Die Inspections “Removed Modules” ist noch nicht an das Release Ansible project 2.10 angepasst.
Änderungen
- Bugfix: Behebung des falschen Highlighting für Nicht-Playbook/Tasks Dateien.
OrchidE 2019.1.12.0: Fehlerkorrekturen im Parser
Änderungen
- Change: Verbesserungen des Parsers für Ansible Blocks.
- Change: Verbesserungen des Parsers für YAML sequence flows.
- Change: Anpassungen für IntelliJ Plattform 2020.2.
- Bugfix: Unterstützung für nachfolgende Kommas bei YAML sequence flows.
OrchidE 2019.1.11.0: Fehlerkorrekturen im Parser
Änderungen
- Change: Verbesserungen des Parsers beim Interpretieren von plain scalar Texten.
- Bugfix: Behebung Parser Fehler bei der Verwendung von Text in Anführungszeichen innerhalb Jinja2 Templates.
- Bugfix: Unterstützung für Rollennamen mit Sonderzeichen für den Befehl Go to Declaration.
- Bugfix: Behebung fehlerhafte Erkennung von TODOs in roles und variables.
OrchidE 2019.1.10.0: Unterstützung bei der Erstellung von Ansible Variablen
In Version 2019.1.10.0 können Ansible Variablen für roles und host/group vars direkt aus Jinja2 template code erstellt werden.
Mit den Intentions “Create vars variable” und “Create defaults variable” können für Ansible Referenzen (
{{ my_variable }}
) in Rollen die zugehörigen Variablen erzeugt werden.Mit der Intention “Create host/group var variable” kann für jede Ansible Referenz eine Variable in einer bestehenden host/group var erzeugt werden.
Um Ansible command line Variablen (Parameter –extra-vars) in OrchidE zu nutzen, können Variablen in OrchidE erstellt werden, die bei der Code Completion und der Inspection “Undefined Variable” berücksichtigt werden.
Die Werte im IntelliJ .idea Verzeichnis abgespeichert (orchide-extravars.xml) und können ins Version-Control System übernommen werden.
Mit dem Quick Fix für die Inspection “Undefined Variable” können neue Variablen einfach zu der Liste hinzugefügt werden.
Weitere Änderungen
- Bugfix: Behebung Parser Fehler bei Enter in einer leeren Datei
- Bugfix: Behebung Parser Fehler bei der Verwendung von mehrzeiligen quoted strings.
- Bugfix: Behebung Parser Fehler in Jinja2 templates
- Bugfix: Behebung Parser Fehler bei der Verwendung von Modul-Namen als Variablen.
- Bugfix: Fehler bei der Nutzung von Quick Fix in plain-text Jinja Template Dateien.
OrchidE 2019.1.9.0: Änderungen, Bug Fixes und Unterstützung für beliebige Verzeichnisstrukturen für Ansible Dateien
In Version 2019.1.9.0 lässt sich jetzt das Pattern-Matching zur Erkennung von Ansible Playbooks, Rollen und Variablen konfigurieren. Damit können beliebige Verzeichnisstrukturen verwendet werden und Rollen und Playbooks in beliebigen Ordner angelegt werden.
Die “Folding”-Funktionen unterstützt jetzt weitere Elemente, unterstützt werden playbooks, keywords, tasks, modules, module arguments, blocks, multi-line text, lists und dictionaries.
Für ein vollständiges Ein/Ausklappen aller Elemente, muss die Funktionen in den Einstellungen aktiviert werden. (File | Settings | Editor | OrchidE | Absatz Folding)
Die Standardeinstellung berücksichtigt weiterhin nur Tasks und Top-Level Variablen.
Weitere Änderungen
- Change: Bei Einfügen von Modulen mit “free_from” Argument wird jetzt kein Zeilenumbruch mehr eingefügt (shell, command, import_tasks, …)
- Change: Unterstützung für das Tag
!unsafe
- Change: Verbesserungen und Bug Fixes für die Funktion Indent on Enter
- Bugfix: Behebung mehrer Parser-Fehler für Ansible Filter
OrchidE 2019.1.8.0: Änderungen, Bug Fixes und IntelliJ EAP 2020 Support
Version 2019.1.8.0 rückt den Cursor jetzt automatisch ein und unterstützt das EAP Programm 2020.1.
Bei Enter erfolgt jetzt eine automatische Einrückung anhand typischer Nutzung in Ansible Playbooks und Roles. Für die Keywords - block, rescue, always, tasks, pre_tasks, post_tasks und handlers - wird zudem auch der Bindestrich für die typischerweise folgenden Tasks hinzugefügt.
Um die Einrückung einer Zeile rückgängig zu machen, wird jetzt die “Smart Key” Einstellung Unindent on Backspace unterstützt. Eine Unterscheidung zwischen den zwei Einrückungsoptionen von IntelliJ gibt es bei OrchidE nicht.
Außerdem kann die Einrückung durch die Enter Taste rückgängig gemacht werden, wenn die aktuelle Zeile eine Leerzeile ist. Diese Funktionalität ist standardmäßig deaktiviert und muss über Settings -> Editor -> OrchidE aktiviert werden.
Es können jetzt verschlüsselte Werte für Variablen in Playbooks, Roles und Vars Dateien verwendet werden (YAML tag !vault)
Weitere Änderungen
- Change: Variablen können mit “_” oder Zahlen beginnen
- Change: (internal) Plugin-Metadaten auf Organisations-ID umgestellt
- Change: Verbesserung des Parsers bei mehrzeiligen Text.
- Bugfix: behebt den Parser-Fehler wenn nach einer Jinja Variable ein Komma kommt.
- Bugfix: behebt den Parser-Fehler bei der Verwendung von Listen unterhalb roles:.
- Bugfix: behebt die Code-Completion in der handler: Sektion in playbooks.
OrchidE 2019.1.7.0: kleine Änderungen und Bugfixes
Version 2019.1.7.0 von OrchidE ignoriert jetzt Ansible vault-Dateien und unterstützt das Keyword vars in tasks.
- Change: Unterstützung für das Keyword vars innerhalb tasks. Variablen, die durch das Schlüsselwort vars definiert sind, werden von der Code-Vervollständigung, der Inspektion Undefined Variables und bei der Navigation go to declaration berücksichtigt. Der Navigationsfehler des Playbook-Keywords vars wurde gefixed.
- Change: Ansible vault-Dateien werden nicht mehr als group var geladen, sondern als plain text. Damit wird bei Code Inspection kein Fehler mehr angezeigt.
- Change: Unterstützung für die aktuellste JetBrains Floating License Server API.
- Bugfix: behebt den Fehler falscher Warnungen der Inspection deprecated module wenn zw. Ansible 2.9 und einer ältern Version gewechselt wird.
- Bugfix: behebt den Fehler falscher Warnungen der Inspection deleted modules wenn zw. Ansible 2.9 und einer ältern Version gewechselt wird.
- Bugfix: der Parser unterstützt jetzt trim Syntax für mehrzeiligen Text (
|-
,>-
). - Bugfix: NPE com.taff.plugin.orchide.codeinsight.OrchideUtilKt.getType.
- Bugfix: behebt die TypeCastException bei der code completion in einem leeren block Element.
OrchidE 2019.1.6.0: IntelliJ Plattform 2019.3 Support
Version 2019.1.6 von OrchidE unterstützt jetzt die IntelliJ Plattform 2019.3.
In Playbooks wird jetzt das Keyword
vars:
für Code Completion und die Inspection “Undefined Variables” unterstützt.- Bugfix: Fehlende Keywords “become_exe” und “throttle” für Ansible 2.9 hinzugefügt.
- Bugfix: Fix Commenter Exception “Access is allowed from event dispatch thread only.”
OrchidE 2019.1.5.0: Ansible 2.9 Support
Version 2019.1.5 von OrchidE unterstützt jetzt Ansible Version 2.9.
Eine neue Inspection “Removed Modules” hilft jetzt beim Migrieren auf eine neue Ansible Version. Ab Ansible Version 2.9 werden entfernte Module weiterhin vom Parser akzeptiert, können aber über die Inspection “Removed Modules” als Warnung/Fehler deklariert werden und in den Inspection Ergebnissen übersichtlich eingesehen werden.
- Change: Die Inspection zur Erkennung von Deprecated Modules zeigt jetzt die Namen des Modules und eventl. existierende Ersatzmodule an.
- Bugfix: Jinja2 Whitespace Control - Jinja2 templates werden jetzt
korrekt geparsed beim Nutzen von Jinja2 Whitespace Control Expressions
{{-
,-}}
. - Deprecated: Unterstützung für Ansible Version 2.5 Syntax Highlighting und Code Completion ist deprecated.
OrchidE 2019.1.4.0: kleine Änderungen und Bugfixes
Version 2019.1.4.0 von OrchidE erlaubt jetzt auch “yaml” als Dateinamenerweiterung und bringt ein paar Bugfixes.
- Change: Es ist jetzt auch möglich für Ansible Dateien die Dateinamenerweiterung yaml zu nutzen.
- Bugfix: Beim Extrahieren von selektiertem Text in eine Jinja Variable wurde zuviel Text ausgeschnitten, wenn der Cursor am Ende der jeweiligen Zeile stand.
- Bugfix: Behebung der StringIndexOutOfBoundsException im Jinja2 Template Parser.
- Bugfix: Für Jinja Variablen wird jetzt das Refactoring-Menü ausgeblendet (“Extract Variable/Constant”).
- Bugfix: Performance-Problem beim Öffnen des Kontextmenü im Editor und des Refaktor-Menüs behoben.
- Bugfix: Erkennung von Gruppen-/Host-Variablen Dateien mit Standard-Verzeichnisbaum behoben.
OrchidE 2019.1.3.0 bringt Jinja2 Template Unterstützung
Jinja2 Templates
OrchidE unterstützt jetzt Jinja2 Templates.
OrchidE unterstützt Jinja2 Templates für
- XML (“.xml.j2”)
- JSON (“.json.j2”)
- Properties (“.properties.j2”)
Dateien. Andere Datei-Erweiterungen werden als Plain-Text interpretiert.
Um die Jinja2 Template Unterstützung zu nutzen, muß die Datei-Erweiterung “.j2” angehängt werden.
In Jinja2 werden Expressions (
{{ }}
/ Ansible Variablen und Filter) und einfache Statements ({% %}
) unterstützt. Dafür werden alle IntelliJ Funktion wie für Ansible Playbooks und Rollen unterstützt (Goto-Funktionen, Suchen, Highlighting, Code Completion)Inspection Undefined Variables mit verbessertem Loop Support
Die Inspection Undefined Variables kann jetzt dictionaries in Schleifenvariablen prüfen.
Changes
- Die Goto Funktion (für Goto Ansible Variablen - Navigate | Symbol, Ctrl + Alt + Shift + N, Cmd + Alt + O) sucht jetzt
in allen Rollen des Projekts.
Bisher wurde die Suche beschränkt auf Host- und Gruppenvariablen und weiteren Variablen in Abhängigkeit des aktiven Editors.
Bugfixes
- OrchidE erkennt jetzt auch YAML-Dateien als Ansible Variablen Dateien welche direkt in dem Ordner group_vars abgelegt ist.
- Die Goto Funktion (Navigate | Class, Ctrl + N, Cmd + O) findet jetzt Roles-Dateien in Rollen-Ordner mit dem Pattern “roles[^/]*”.
Bisher war das Pattern “roles\/”.
OrchidE 2019.1.2.0 veröffentlicht
OrchidE unterstützt jetzt die IntelliJ Plattform Version 2019.2. Kurz nachdem JetBrains Ihre neueste Version herausgebracht hat können Sie bereits OrchidE damit nutzen.
Changes
- Code Completion für Jinja Variablen zeigt jetzt auch Snippets der Werte an.
- Code Completion für Jinja Variablen funktioniert jetzt auch bei unvollständigen Jinja Templates und nachfolgenden Parser Fehler.
Bugfixes
- Kommentare direkt nach einem Multi-Line String werden jetzt korrekt als Kommentar angezeigt.
- Keywords die erst mit einer Ansible Version 2.5 - 2.8 neu hinzugekommen sind, werden jetzt korrekt mit der eingestellten Version verglichen und entsprechend bei der Code Completion korrekt ein- und ausgeblendet.
- Die Goto Funktion (Navigate | Class, Ctrl + N, Cmd + O) findet jetzt auch Playbook-Dateien ohne explizite Unterordner.
- Code Completion für Block Keywords funktioniert jetzt auch nach always und rescue.
Die neueste Version von OrchidE bringt Unterstützung für weitere Produkte von JetBrains und Syntax Highlighting und Code Completion für Ansible version 2.8.
- OrchidE unterstützt jetzt Ansible Version 2.8 für Code Completion und Syntax Highlighting.
- OrchidE ist jetzt mit weiteren Produkten von JetBrains nutzbar:
- DataGrip
- GoLand
- PyCharm
- PhpStorm
- RubyMine
- WebStorm
Für die Nutzung von OrchidE wird mind. die Version 2019.1.1 des jeweiligen JetBrains Produktes benötigt.