Poco después de que nos hiciéramos eco de la propuesta por parte de Joshua Ashton de incluir ‘frog-fifo-v1’ en Wayland para poner fin a ciertos problemas con el rendimiento y el stuttering, otro empleado de Valve, Mike Blumenkrantz, ha planteado a través de una petición de fusión publicada en el GitLab de Wayland un cambio en el desarrollo con el propósito de acelerarlo.
Blumenkrantz expone en la petición de fusión que “los protocolos de Wayland han luchado con las prácticas de desarrollo durante muchos años. Este estancamiento suele presentarse de dos formas: la barrera de entrada y el infierno de revisiones”. A estas alturas es conocido que el desarrollo de Wayland va lento y que la inclusión de nuevos protocolos es un proceso que llega de demorarse meses o incluso años. Esto, junto a otros problemas, ha terminado convirtiendo a Wayland en una eterna promesa que no termina de consolidarse dieciséis años después de iniciar oficialmente su andadura.
Con el fin de acelerar el desarrollo de Wayland y ciñéndonos a las partes fundamentales, Blumenkrantz ha planteado incluir una nueva fase en el desarrollo de los protocolos llamada experimental/
, con la que pretende reducir la barrera de entrada al permitir cambios más profundos y un desarrollo iterativo. Dicha fase experimental se sumaría a las ya existentes: staging/
, que no permitiría cambios importantes, los protocolos estarían versionados en ella y daría comienzo a las implementaciones y las pruebas, y stable/
, que bloquearía en un principio los cambios, permitiría versiones y aseguraría el uso en producción.
Mike Blumenkrantz dice que su “propuesta ofrece una solución a los problemas anteriores en forma de una nueva etapa de vida del protocolo. Un protocolo experimental permite la creación rápida de prototipos y el desarrollo práctico al promover esa participación desde el principio”. Los protocolos propuestos para ser fusionados en la fase experimental deberán pasar por un periodo de revisión de dos semanas, una cantidad de tiempo que a apunta ser flexible a la hora de la verdad, pero manteniendo el propósito de que se quede por debajo de un mes.
Otro punto importante es la gestión de los reconocimientos, donde Blumenkrantz también quiere introducir cambios, pero con el propósito de evitar que se hagan propuestas de protocolos de manera indiscriminada y centrar el trabajo en las personas que forman parte de Wayland.
Resumiendo lo propuesto por Blumenkrantz, básicamente consiste en una nueva fase en el desarrollo de protocolo de Wayland llamada experimental/
, la cual iría antes de las staging/
y stable/
ya existentes. El propósito es reducir la barrera de entrada permitiendo la introducción de cambios más profundos y un desarrollo iterativo, además de establecer un periodo de revisión que deberá superarse si se quiere que el protocolo sea fusionado en experimental/
.
Es importante tener en cuenta que la petición de fusión de Blumenkrantz todavía no ha sido aceptada, así que puede acabar rechazada. Por otro lado, y en caso de terminar aprobada, veremos si los cambios propuestos sirven de verdad para acelerar el desarrollo de Wayland, cosa que necesita como el comer viendo las circunstancias. Eso sí, Blumenkrantz ya adelanta que esto no va a resolver todos los problemas presentes en Wayland, pero espera que al menos sí sirva para resolver un conjunto de ellos.
Para terminar, no viene mal echar un vistazo a la entrada que Mike Blumenkrantz ha publicado en su blog personal, donde expone las razones de su propuesta, recalca su compromiso con el código abierto y expone frentes en los que Valve intenta mejorar Wayland, como la tasa de refresco, la “lucha” contra el stuttering y los desacuerdos en el desarrollo.