Skip to content

Releases: PyAr/CDPedia

0.9.0

06 Jul 18:35
87c1bfd
Compare
Choose a tag to compare

Renovación del índice:

  • Cambiamos la arquitectura del índice, utilizando directamente una base de datos SQLite para su guardado, y codificando los datos en sus tablas para optimizar espacio y velocidad de acceso.
  • Reestructuramos la forma de trabajar con páginas reales y los redirects de wikipedia, de forma que los resultados mostrados siempre apuntan a la página más útil, mostrando en los resultados una buena descripción de la misma.

Cómo mostramos y procesamos las imágenes:

  • Incluimos ahora todos los SVG pero ya no más como archivos externos sino integrados en el HTML de cada página
  • Cambiamos la forma de procesar las imágenes, ahora utilizamos Pillow para limpiar y redimensionar, pngquant para compactar los PNGs.

Mejoras en la experiencia de les usuaries finales:

  • Optimizamos el soporte para la ejecución de la CDPedia en entornos Windows
  • Pulimos la forma de mostrar enlaces (internos y externos) y otros elementos de las páginas finales (reproductores de sonido, etc.)
  • Construimos la página inicial de la CDPedia utilizando lo último que esté armado en la Wikipedia origen.
  • Incluimos las páginas de estilo actualizadas al momento de la generación de la imagen de CDPedia.
  • Actualizamos el tutorial de Python agregado en la CDPedia a la última versión, ahora también incluyendo toda la documentación de Python en castellano.
  • Renovamos la página web del proyecto para poder internacionalizarla, ahora muestra los distintos lenguajes de CDPedia, en distintos idiomas.

Mejoras en la producción de las imágenes de CDPedia:

  • Ahora podemos elegir páginas puntuales de pruebas que sirven para evaluar la calidad de la imagen generada.
  • Paralelizamos todas las descargas del proyecto con una nueva estructura que comunica correctamente el progreso y pendientes.
  • Generalizamos y mejoramos estructuras que permiten la generación de CDPedias en otros idiomas además del castellano.
  • Actualizamos a LZMA el compresor utilizado para las estructuras de bloques finales. De esta forma se ahorra aproximadamente 20% de espacio respecto al compresor anterior ( bzip2), por lo que podemos incluir más artículos.

Modernización del proyecto:

  • Migramos a Python 3, soportando desde Python 3.5 en adelante para tener en cuenta computadoras clientes no tan actualizadas.
  • Corregimos toda la batería de tests, y agregamos verificadores de estilo y estructura de los archivos, yendo a una infraestructura basada en pytest localmente y Github Actions como CI.
  • Evitamos que las dependencias de ejecución del proyecto estuvieran estáticamente integradas y ahora utilizamos el estado de arte de cada una al momento de generación de la imagen de CDPedia.
  • Aplicamos buenas prácticas de desarrollo modernizando todo el código (usamos logging en vez de prints, docstrings y comentarios en inglés, estilo según PEP8, etc.)