Difftastic es una herramienta que sirve para identificar las diferencias de código entre distintos archivos teniendo en cuenta su sintaxis. Esto es muy diferente de las herramientas de comparación de texto, como el venerable comando de Unix diff
. Por ejemplo, Difftastic ignora las líneas insertadas para separar declaraciones largas en lenguajes como Java o TypeScript, las cuáles están delimitadas por punto y coma. La herramienta sólo resalta los cambios que afectan a la sintaxis del código. Para ello, primero analiza los archivos en árboles sintácticos abstractos y después calcula la distancia entre ellos mediante el algoritmo de Dijkstra. Hemos comprobado que Difftastic es especialmente útil para comprender los cambios cuando se revisan grandes bases de código. Difftastic es compatible con cualquier lenguaje de programación que pueda ser analizado sintácticamente y es compatible con más de 50 lenguajes de programación y formatos de texto estructurado como CSS y HTML. No se trata de una herramienta nueva, pero creemos que merece la pena ser destacada en la era de los asistentes de código basados en LLMs, donde las revisiones manuales de bases de código son cada vez más grandes y críticas.