Ver perfil

EnRails #5 - Seguridad, comunidad y encriptación

Ruby on Rails en Español
Ya es verano, al menos en algunas partes, y es perfectamente normal sentirnos un poco menos productivos durante estas fechas, sobre todo por el calor. Te recomiendo que este fin de semana descanses, te desconectes y bebas algo frío, o caliente en su defecto.
En Ruby y Rails las ruedas siguen girando, quizás a un ritmo mas tranquilo de lo normal, pero de igual forma te cuento un par de cosas sobre la rama main de Rails, un par de eventos en la comunidad de EnRails y tu sección favorita de gemas interesantes.
Que disfrutes y muchas gracias por seguir leyendo.

En el main de Rails
Capybara + Cuprite
Se depreca por ahora y se quitará en Rails 7.1 los drivers de poltergeist y webkit (capybara-webkit) en favor de Cuprite. Solo se escuchan cosas buenas de él, incluyendo el performance y flexibilidad de interacción con el navegador. Y por cierto, no necesita Qt 😉
Cuprite 👉 | Pull request 👉
Seguridad en redirect_to
Es un agujero de seguridad que redirect_to acepte cualquier URL (CWE-601) y este ha sido un tema desde hace mucho en Ruby on Rails. Por suerte, esta adición estará deshabilitada por default y podremos optar por redirigir por método o a nivel de aplicación.
ActiveModel::Errors#inspect pierde peso
Este cambio nos da una abrazo a los ojos a la hora de inspeccionar errores de un modelo haciéndolos mas directos, es decir, podremos ver los errores en formato #<ActiveModel::Errors []> en lugar de incluir el @base.
Favicon en aplicaciones nuevas
Una trivialidad, pero seguramente habrás visto la linea (No route matches [GET] "/favicon.ico") en una aplicación de Rails nueva. Pues ya no sucederá mas, pues convirtieron el favicon a un SVG en Base64.
De la comunidad
Estos son mensajes y cosas que han pasado en el Discord de EnRails. Si te gustaría aportar, platicar o preguntar, únete a nosotres. Somos buena onda.
JuanCrg90 nos comparte oj y ox, parsers de JSON y de XML y nos cuenta que han podido bajar el tiempo de computo considerablemente y de uso de memoria de forma extraordinaria.
ohler55/oj 👉 | ohler55/ox 👉
eduardoghdez nos compartió un blog post en inglés bastante bueno sobre Concurrent::Ruby, una gema que debe de dar respeto pero que sin duda es muy interesante.
Ra'sAlGhul nos comparte un blog post en inglés de cómo mejorar la experiencia de desarrollo con overmind (equivalente de foreman). Personalmente lo uso todo el tiempo y me encanta.
natygaol nos pidió ayuda para usar Docker en Windows WSL 2 con Ubuntu y pudimos ayudarle a resolver un problema que tenía. Nos da gusto poder ayudar, para eso está la comunidad.
eduardoghdez y kinduff estuvieron participando como mentores de un hackaton organizado por PALO IT y TECHO llamado: Hackaton 4 Good. Nos alegra mucho contarles que el equipo Colimotes fue el ganador y su aplicación está escrita en Ruby on Rails 🎉
Gemas interesantes
💻 WorkingHours
Una gema para hacer cálculos de horas de trabajo. Tiene varias opciones útiles si te encuentras con este problema, en lugar de escribir y calcular los métodos por tu lado. Su documentación es muy explícita.
⚙️ RubyCritic
Nos la recomienda Omar Vazquez. Una herramienta de análisis estático que incluye Reek, Flay y Fog. Nos devuelve un reporte en HTML bastante bueno. Se integra muy bien con Ruby on Rails.
🥯 Retriable
Es una gema con un DSL para hacer reintentos en métodos o rutinas en intervalos aleatorios exponenciales. Particularmente útil para APIs, servicios remotos, entre otros.
🔒 Lockbox
Además del feature nativo que nos trajo Basecamp para Rails 7, tenemos esta gema por el famoso Andrew Kane que nos permite encriptar cadenas de texto, archivos y campos de nuestra base de datos.
🔑 Blind Index
Complementando Lockbox con este combo, la gema blind_index nos permite poder buscar en los campos encriptados de forma segura pero con una gran nota sobre leakage.
📝 YAAF
Aunque el nombre suena raro, su funcionalidad es atractiva. Nos permite implementar el patrón de objetos de formularios (form objects) muy integrado a Ruby on Rails: su código es de 71 lineas pues aprovecha a Rails al máximo.
¿Te ha gustado? No
EnRails
EnRails @en_rails

Newsletter bimensual de EnRails con lo último de Ruby on Rails en Español: noticias, cambios importantes, artículos, gemas, bolsa de trabajo y mucho mas.

Para cancelar tu suscripción, haz clic aquí.
Si te han remitido este boletín y te ha gustado, puedes suscribirte aquí.
Created with Revue by Twitter.