Ha pasado poco menos de un mes desde que nos enteramos que Google estaba planteando algunos cambios en Chrome que podrían acabar con los bloqueadores de anuncios como los conocemos, gracias a nuevas limitaciones en lo que los desarrolladores pueden hacer con sus extensiones.
Sin embargo, todo se trata de discusiones preliminares de lo que han llamado el Manifest V3, que tras no ser nada bien recibido por la comunidad de progrmadores, especialmente de los creadores de bloqueadores como uBlock Origin, ha tenido que sufrir algunos cambios y la empresa ha terminado aclarando que no tienen intenciones de acabar con los adblockers.
El origen del problema
En enero, el Manifest V3 exponía que para mejorar el rendimiento y la privacidad de Chrome, pasarían a restringir una API llamada WebRequest, que al final será reemplazada por una nueva llamada DeclarativeNetRequest.
La primera API tiene funciones de bloqueo y permite que los desarrolladores de extensiones como uBlock Origin puedan interceptar las peticiones de red para bloquearlas, modificarlas o redigirilas. La segunda no permite esto, solo permite observar las peticiones, aunque sigue siendo compatible con bloqueadores como Adblock Plus, puesto que sus funciones de filtrado son más sencillas y utilizan listas para bloquear URLs a través de dos canales.
Además de esto la nueva API proponía un límite en las listas de bloqueo de 30.000 (la API actual no tiene límite), un número considerado insuficiente por los desarrolladores porque ni siquiera alcanzaría para cubrir todas las reglas de EasyList, el set de reglas originalmente iniciado por Adblock que ahora usan muchos bloqueadores para eliminar innumerable cantidad de molestias al navegar más allá de los anuncios.
Google ahora ha decidido ser más flexible con su nueva API, y justamente uno de los cambios que dicen van a implementar es aumentar ese límite de 30.000, pero seguirá habiendo un límite (aún no tienen un nuevo número).
Argumentan que muchas veces se añaden nuevas reglas a las listas pero las obsoletas no se eliminan. También apuntan a investigaciones externas que indican que "el 90% de las reglas de EasyList no tienen beneficios en situaciones comunes de bloqueo".
La nueva API seguirá en desarrollo y se seguirá expandiendo, y el equipo de Chrome deja claro que los cambios exactos que se harán aún no están finalizados. También apuntan a que WebRequest, la API actual, no se va a eliminar por completo con el Manifest V3, sin embargo, lo único que no sufrirá cambios son sus facultades para observar peticiones.
Lo que quiere decir que sigue en sus planes restringir que esta API pueda modificar las peticiones web y redirigirlas. Como el bloqueo de solicitudes web es solo una pequeña parte de lo que hacen los bloqueadores de anuncios, al menos de momento, para subsanar un poco la limitación de la API, planean añadir soporte para más condiciones que permitan a las extensiones modificar partes de una petición en lugar de solo bloquearlas.
El Manifest V3 no será lanzado "hasta que no esté listo". La discusión permanece abierta y Google sigue pidiendo el _feedback_ de los desarrolladores y que si consideran algo insuficiente, expliquen por qué. Ya los desarrolladores de Ghostery explicaron por qué el rendimiento no era una causa realmente válida para implementar estos cambios, según sus pruebas, los bloqueadores de anuncios no representan un problema para Chrome en ese aspecto.
Ver 2 comentarios