[BUGFIX] Erro de mismatch Checksum no Boost c++ library
Contexto técnico:
Versão do node: 18
Versão do React Native: 0.71.13
Versão do xCode: 15 ( por enquanto )
Erro de mismatch Checksum no Boost
Tudo começou na virada de 2024 para 2025, onde meu React Native na versão 0.71.13 começou a dar um erro ao utilizar o recurso pod install e aparecia a seguinte mensagem de erro:
Verification checksum was incorrect, expected 6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e, got 5e89103d9b70bba5c91a794126b169cb67654be2051f90cf7c22ba6893ede0ff
Logo minha primeira reação foi pensar "ok, algo mudou", porém ainda achava que poderia ser algo que eu havia feito em meu código, então fui dar uma pesquisada e encontrei um artigo do próprio repositório do react-native do facebook onde explicava bem o erro, o artigo está aqui: [(https://github.com/facebook/react-native/issues/42180)], e se você não quer ler tudo foi explica de forma resumida: a biblioteca c++ chamada boost
usada pelo React Native na parte de depedências do IOS
é hospedada pelo JFrog ( que é um NPM, porém privado onde empresas pagam para hospedar seus packages e também fazer o gerenciamento das versões que serão usadas pelos seus sistemas de forma a ter mais controle sobre atualizações), que teve alguns problemas fim de semana do dia 06 de Janeiro e por isso estava retornando no donwload um arquivo diferente daquele esperado, e causando um erro na validação de checksum ( que é uma verificação de integridade dos dados, comparando a quantidade esperada de bytes, com a quantidade recebida para saber se o arquivo está integro nesse caso).
A solução?
O próprio time do react native ensinou um passo a passo de como dar um by-pass nessa validação para poder ter o arquivo correto em sua máquina, más, logo na sequência já lançaram patches de correções para as versões
- 0.73.2
- 0.72.9
- 0.71.15 ( atualizei meu app para esta)
Após isso tudo voltou ao normal, então se você estiver enfrentando uma situação parecida e não imagina o que pode estar acontecendo, os seguintes passos podem te ajudar a achar uma solução:
-
Sempre antes de fazer uma alteração, verifique o estado atual do projeto para se certificar que nenhum bug ( tecnicamente chamados de regressões no código ) foi introduzido;
-
De uma olhada no chatGPT se ele pode ajudar em algo ( ou ferramenta de I.A semelhante);
-
Procure nos repositórios das próprias mantenedoras das libraries ou frameworks que está utilizando ( que foi o que eu fiz );
-
Compartilhe seu problema em fórums e grupos que você tem de tecnologia focados em solução de problemas;
-
E a mais importante: Domine as tecnologias que está trabalhando, muitas vezes causamos muitos problemas por falta de conhecimento da ferramentas nos colocam como usuários sem realmente perceber o que está por baixo dos panos!
( O curso.dev ensina isso )
Até logo, valeu!