Βλέπεις ένα banner για αρχεία legacy; Να τι πρέπει να ξέρεις.
Αν το βλέπεις αυτό στο Elixir ή στο Elm αφού άρχισες να χρησιμοποιείς τη v3, πιθανότατα οφείλεται στο ότι αυτά τα tracks άλλαξαν τη δομή των αρχείων τους. Δες τις ενότητες στο τέλος αυτού του εγγράφου για το πώς να χειριστείς αυτή την αλλαγή.
Αν χρησιμοποιείς τον online editor του Exercism, μπορεί μερικές φορές να συναντήσεις μια προειδοποίηση για αρχεία legacy. Υπάρχουν δύο λόγοι για τους οποίους μπορεί να τη δεις.
Όταν χρησιμοποιείς τη γραμμή εντολών, μπορείς να ανεβάσεις όποια αρχεία θέλεις. Ωστόσο, ο online editor σου επιτρέπει να επεξεργαστείς μόνο τα αρχεία που γνωρίζει. Έτσι, αν ανεβάσεις ένα αρχείο που ο editor δε γνωρίζει, δε θα σε αφήσει να το επεξεργαστείς και θα σου δείξει μια προειδοποίηση, σε περίπτωση που θέλεις να το διαγράψεις.
Μερικές φορές η δομή των ασκήσεων αλλάζει.
Κάποια αρχεία μπορεί να μετονομαστούν ή να αλλάξει ολόκληρη η δομή μιας άσκησης.
Παρόλο που προσπαθούμε να το αποφύγουμε, μερικές φορές είναι η σωστή απόφαση από πρακτική άποψη.
Για παράδειγμα, ένα track μπορεί να αλλάξει το σύστημα build του, όπως έκανε το Elixir όταν πέρασε από αρχεία exs σε αρχεία ex.
Ή μπορεί να αλλάξει η συνηθισμένη δομή καταλόγων μέσα σε μια γλώσσα, όπως συνέβη με το Elm όταν μετακίνησε τα πάντα σε υποκαταλόγους.
Σε αυτές τις περιπτώσεις δε μπορούμε να μετακινήσουμε τα αρχεία αυτόματα για σένα, οπότε έχεις λίγη χειροκίνητη δουλειά να κάνεις. Στον editor θα δεις το παλιό αρχείο λύσης (ή τα παλιά αρχεία λύσης) με ένα banner legacy, και το stub του νέου αρχείου λύσης. Αντέγραψε τη δουλειά σου από το παλιό αρχείο στο νέο και πείραξε όποιον κώδικα χρειάζεται αλλαγή. Μόλις περνούν τα tests, μπορείς να διαγράψεις το παλιό αρχείο λύσης σου και να ξεχάσεις ότι όλο αυτό συνέβη ποτέ 🙂
Όταν διαγράφεις ένα αρχείο legacy, αυτό δεν επηρεάζει τις προηγούμενες επαναλήψεις. Αυτό το αρχείο θα εξακολουθεί να υπάρχει μέσα σε εκείνες τις επαναλήψεις. Η διαγραφή ενός αρχείου απλώς το αφαιρεί από την επόμενη επανάληψη που υποβάλλεις μέσω του editor.
Τον Ιούλιο του 2019, το Elixir άλλαξε τη δομή των ασκήσεών του, από σενάρια Elixir (αρχεία *.exs) σε ένα πλήρες Mix project για κάθε άσκηση.
Για να χρησιμοποιήσεις τις δυνατότητες της v3, αντέγραψε τη λύση σου στο αρχείο stub που βρίσκεται στη διαδρομή lib/<exercise_stub>.ex.
Δε χρειάζεται να μετακινήσεις το αρχείο tests. Η ενημερωμένη έκδοση θα βρίσκεται ήδη στη σωστή θέση.
Με την κυκλοφορία της v3, το Elm άλλαξε τις ασκήσεις του.