Du siehst ein Banner zu Legacy-Dateien? Hier erfährst du, was du wissen musst.
Wenn du das auf Elixir oder Elm siehst, nachdem du mit v3 angefangen hast, liegt das höchstwahrscheinlich daran, dass diese Tracks ihre Dateistrukturen geändert haben. In den Abschnitten am Ende dieses Dokuments erfährst du, wie du mit dieser Änderung umgehst.
Wenn du den Online-Editor von Exercism benutzt, siehst du vielleicht manchmal eine Warnung zu Legacy-Dateien. Es gibt zwei Gründe, warum du das sehen könntest.
Wenn du die Kommandozeile benutzt, kannst du beliebige Dateien hochladen. Der Online-Editor erlaubt dir aber nur, Dateien zu bearbeiten, die er kennt. Wenn du also eine Datei hochlädst, die der Editor nicht kennt, lässt er dich sie nicht bearbeiten und zeigt dir eine Warnung, falls du sie löschen möchtest.
Manchmal ändert sich die Struktur von Übungen.
Dateien werden vielleicht umbenannt, oder ganze Übungsstrukturen ändern sich.
Wir versuchen das zwar zu vermeiden, aber manchmal ist es die pragmatisch richtige Entscheidung.
Zum Beispiel könnte ein Track sein Build-System ändern, wie Elixir es beim Wechsel von exs- zu ex-Dateien getan hat.
Oder die normale Verzeichnisstruktur innerhalb einer Sprache ändert sich, wie es bei Elm passierte, als alles in Unterverzeichnisse verschoben wurde.
In diesen Situationen können wir die Dateien nicht automatisch für dich verschieben, also musst du ein wenig selbst Hand anlegen. Im Editor siehst du die alte(n) Lösungsdatei(en) (mit einem Legacy-Banner) und den Stub der neuen Lösungsdatei. Kopiere deine Arbeit aus der alten Datei in die neue und passe den Code an, der geändert werden muss. Sobald die Tests bestanden sind, kannst du deine alte Lösungsdatei löschen und vergessen, dass das jemals passiert ist 🙂
Wenn du eine Legacy-Datei löschst, hat das keine Auswirkungen auf vorherige Iterationen. Diese Datei existiert in diesen Iterationen weiterhin. Wenn du eine Datei löschst, wird sie einfach aus der nächsten Iteration entfernt, die du über den Editor einreichst.
Im Juli 2019 änderte Elixir seine Übungsstruktur von Elixir-Skripten (*.exs-Dateien) hin zu einem vollständigen Mix-Projekt für jede Übung.
Um die Funktionen von v3 zu nutzen, kopiere deine Lösung in die Stub-Datei unter lib/<exercise_stub>.ex.
Du musst die Testdatei nicht verschieben, die aktualisierte Version ist bereits am richtigen Ort vorhanden.
Zum Start von v3 änderte Elm seine Übungen.