O número 100 significa algo especial? Para os navegadores…

… Google Chromium, Microsoft Edge e (futuramente) Mozilla Firefox, sim! Os três navegadores WEB praticamente alcançaram a versão 100 (embora o Firefox ainda esteja “estacionado” na versão 99), que por sua vez representa um marco para a sua evolução, apesar do esquema de versionamento ter mudado radicalmente, com a adoção de um sistema de desenvolvimento que preza pela entrega contínua de recursos e funcionalidades pontuais para os navegadores, em um curto prazo de tempo. Se por um lado, teremos uma evolução mais gradual destes sofisticados navegadores com base neste sistema de versionamento…

… por outro, também poderemos ter alguns problemas mais sérios relacionados a compatibilidades! A adoção do terceiro dígito em sua nova versão, talvez possa trazer alguns sérios problemas para o funcionamento de sites e portais, os quais geralmente utilizam mecanismos internos para identificar a versão do navegador em uso e notificar aos seus usuários, a necessidade de realiza a atualização deste software, para que possam usufruir de todos os recursos e funcionalidades oferecidos pela entidade. O mais incrível é que estes problemas já aconteceram em um passado não muito distante, quando os navegadores nesta época alcançaram as suas décimas edições!

Por ora, a O Google, a Microsoft e a Mozilla estão atentas em relação a esta questão, promovendo esforços em prol das melhorias, realizando testes de compatibilidade e notificando os desenvolvedores de sites, em relação aos problemas encontrados até o momento. Felizmente, pelo fato deste problema não ser algo novo (pois já havia acontecido antes), certamente muitos destes problemas já são conhecidos e por isso, as suas respectivas soluções devem estar bem documentadas. Ainda assim, ninguém esperava que pudéssemos “avançar” tão rápido, a ponto de alcançarmos as centésimas edições em apenas alguns anos!

O que mudou de lá para cá? Antes, os navegadores WEB utilizam o sistema tradicional de versionamento baseados em três campos separados por ponto (X.Y.Z), o qual utiliza valores numéricos para representar a sua evolução. De início, temos major release (maior lançamento), o qual entrega um grande número de mudanças e por isto, demorava mais para ser atualizado de uma edição para outra. A seguir, temos o minor release (menor lançamento), o qual entrega apenas as mudanças pontuais (que não alteram a estrutura do software de forma significativa) e por isto, era atualizado com maior frequência). Por fim, temos as correções pontuais para a solução de bugs e falhas de segurança (patches), as quais ocorrem com uma certa frequência (embora sejam mais imprevisíveis).

Como a Internet é um mundo em constante evolução e por isto, traz profundas transformações ao longo do tempo, este sistema de versionamento se mostrou ineficiente para acompanhar as mudanças e por isto, acabou dando o lugar a um novo sistema de versionamento que utiliza apenas 2 campos (X.Y), além de se basear na metodologia CI/CD (Continuous Integration/Continuous Delivery). Esta por sua vez preza pelo desenvolvimento do software em um processo de contínua adição de recursos e funcionalidades, ao mesmo tempo em que promove a entrega destas inovações de forma rápida para os seus clientes (neste caso, os usuários). Por isto, quase todos os meses temos novas atualizações para os navegadores WEB, embora elas sejam mais suaves e nem sempre perceptíveis.

Seja como for, a partir da versão 100 certamente teremos algumas mudanças importantes neste cenário, seja em relação ao sistema de desenvolvimento destes softwares ou na manutenção do atual sistema de versionamento, para a gestão das suas atualizações (e ocorrências indesejadas). Até lá, continuaremos atento em relação as notícias relacionadas ao funcionamento destes novos navegadores, torcendo para que não ocorram problemas mais sérios, a ponto de sermos obrigados a redefinirmos os nossos planejamentos para a manutenção destes softwares, instalados em nossos PCs desktops (ou do trabalho).

E por um bom tempo, vou continuar usando o Firefox ESR… &;-D