¿Ves un aviso sobre archivos heredados? Esto es lo que necesitas saber.
Si ves esto en Elixir o Elm después de empezar a usar la v3, lo más probable es que se deba a que esos tracks cambiaron la estructura de sus archivos. Consulta las secciones al final de este documento para saber cómo manejar este cambio.
Si usas el editor en línea de Exercism, a veces puedes encontrarte con una advertencia sobre archivos heredados. Hay dos razones por las que puedes verla.
Cuando usas la CLI, puedes subir los archivos que quieras. Sin embargo, el editor en línea solo te permite editar los archivos que conoce. Así que si subes un archivo que el editor no conoce, no te dejará editarlo y te mostrará una advertencia por si quieres eliminarlo.
A veces la estructura de los ejercicios cambia.
Puede que se renombren archivos o que cambien estructuras enteras de un ejercicio.
Aunque tratamos de evitarlo, a veces es la decisión pragmática correcta.
Por ejemplo, un track puede cambiar su sistema de compilación, como hizo Elixir al pasar de archivos exs a archivos ex.
O puede cambiar la estructura de directorios habitual dentro de un lenguaje, como pasó con Elm cuando movieron todo a subdirectorios.
En estas situaciones no podemos mover los archivos por ti, así que hay algo de trabajo manual de tu parte. En el editor verás el o los archivos de tu solución anterior (con un banner que indica que son heredados) y el stub del nuevo archivo de solución. Copia tu trabajo del archivo anterior al nuevo y ajusta el código que haga falta. Una vez que pasen los tests, puedes eliminar tu archivo de solución anterior y olvidarte de que esto pasó alguna vez 🙂
Cuando eliminas un archivo heredado, no afecta a las iteraciones anteriores. Ese archivo seguirá existiendo en esas iteraciones. Eliminar un archivo simplemente lo quita de la siguiente iteración que envíes desde el editor.
En julio de 2019, Elixir cambió la estructura de sus ejercicios: pasó de usar scripts de Elixir (archivos *.exs) a un proyecto Mix completo para cada ejercicio.
Para usar las funcionalidades de la v3, copia tu solución al archivo stub que está en lib/<exercise_stub>.ex.
No necesitas mover el archivo de tests, ya que la versión actualizada estará en la ubicación correcta.
Con el lanzamiento de la v3, Elm cambió sus ejercicios.