Restrições de Versão e o Arquivo de Bloqueio
Fixe e resolva versões de dependências.
Restrições de Versão e o Arquivo de Bloqueio é uma aula grátis de Dart Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Dart Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Dart Academy inclui 4 aulas no total.
Por que existem restrições
Uma version constraint informa ao pub quais versões de um pacote seu projeto aceita. Ela equilibra a obtenção de correções com a prevenção de alterações incompatíveis. 🎯
http: ^1.2.0Versionamento semântico
Os pacotes Dart seguem o semantic versioning: major.minor.patch. Um aumento da versão major indica alterações incompatíveis; minor adiciona recursos; patch corrige erros.
version: 2.4.1A restrição caret
O caret ^1.2.0 aceita qualquer versão a partir de 1.2.0, mas inferior a 2.0.0. Esse é o padrão conveniente usado pelo pub.
http: ^1.2.0Fixar uma versão
Escrever apenas um número significa exactly essa versão, e nenhuma outra. Use isso com moderação quando precisar de uma única versão conhecida.
http: 1.2.0Restrições de intervalo
Você pode especificar um range com operadores de comparação. Isso oferece controle preciso sobre os limites inferior e superior.
http: '>=1.0.0 <2.0.0'A restrição any
Usar any aceita todas as versões. Isso é arriscado, pois uma futura versão major pode causar problemas; por isso, prefira caret.
http: anyConheça o arquivo de bloqueio
Quando o pub resolve suas dependências, ele registra as versões exatas escolhidas em pubspec.lock. Esse arquivo fixa o que todos realmente instalam.
Compilações reproduzíveis
O arquivo de bloqueio garante compilações reproducible: quando um colega executa pub get, obtém exatamente as mesmas versões que você testou, sem atualizações inesperadas.
Você deve incluí-lo no controle de versão?
Para aplicativos, faça commit do pubspec.lock no controle de versão. Para pacotes reutilizáveis, deixe-o de fora para que os consumidores resolvam as versões por conta própria.
Atualizar o arquivo de bloqueio
Execute dart pub upgrade para atualizar o pubspec.lock para as versões mais recentes permitidas por suas restrições. Um get simples mantém as versões fixadas existentes.
dart pub upgradeResolver conflitos
Se dois pacotes exigirem versões incompatíveis, o pub informará um conflict. Então, afrouxe uma restrição ou escolha versões compatíveis dos pacotes.
Verificação rápida
O que a restrição ^1.2.0 permite?
Recapitulação
Agora você sabe interpretar constraints, como caret e intervalos, e sabe que o pubspec.lock fixa versões exatas para compilações reproduzíveis e sem conflitos. 🎉
Aprenda Dart com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “Restrições de Versão e o Arquivo de Bloqueio” é grátis?
Sim — o texto completo de “Restrições de Versão e o Arquivo de Bloqueio” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Dart Academy, atualize para CoddyKit PRO. O curso de Dart Academy inclui 4 aulas no total.
O que vou aprender em “Restrições de Versão e o Arquivo de Bloqueio”?
Fixe e resolva versões de dependências. Você pratica Dart Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Dart Academy?
Nenhuma experiência prévia é necessária. Dart Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Restrições de Versão e o Arquivo de Bloqueio”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Dart Academy?
Sim. Cada aula de Dart Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Anatomia de pubspec.yaml
- Adicionando Dependências com dart pub
- Importações, Exportações e Bibliotecas
- Restrições de Versão e o Arquivo de Bloqueio