Pular para o conteúdo
Documentação: Versões e tags

Versões e tags

Versões semânticas, dist-tags, depreciação e retirada.

A documentação que vem no Ronne AI Marketplace 0.3.0, traduzida do inglês.

Versões

Cada release é uma versão: major.minor.patch, como 1.4.0. O primeiro release é 1.0.0. Uma versão nunca muda depois de publicada: uma correção é uma versão nova.

Um pré-release é para quem testa antes de todos, como 1.1.0-beta.1: um id de letras minúsculas e dígitos, começando com uma letra, e um número que sobe a cada pré-release.

Ninguém digita uma versão: ela decorre da escolha feita ao lançar, um item de cada vez ou vários de uma vez, caso em que uma só escolha dá a cada item a sua própria próxima versão.

Patch, minor ou major

Quem lança escolhe que tipo de mudança é; a versão vem daí.

IncrementoQuandoExemplo
patchCorreções; nada novo, nada removido.1.4.0 → 1.4.1
minorAlgo novo que não quebra nada para ninguém: um arquivo, uma dependência, uma palavra-chave, uma opção.1.4.0 → 1.5.0
majorUma mudança que quebra algo nas instalações: uma opção, uma dependência ou um arquivo nomeado que foi removido.1.4.0 → 2.0.0

Para uma proposta de mudança, a caixa de diálogo de publicação sugere um incremento a partir do que mudou, e diz por quê. Ao lançar vários de uma vez, Suggested for each usa a sugestão de cada proposta; ou escolha um incremento para todos. Um primeiro release é 1.0.0 de qualquer jeito.

Tags

Uma tag é um nome que aponta para uma versão, para que as instalações possam pedi-la em vez de um número. Moderadores e o root as movem na aba Versions do item.

  • latest é o que uma instalação sem versão recebe. Ela só aponta para uma versão estável e não pode ser removida.
  • next é para onde os pré-releases vão por padrão.
  • Outras tags, como stable-1: de 1 a 32 letras minúsculas, dígitos e hifens, começando com uma letra, e que não possam ser lidas como uma faixa de versões.

Quando um item é instalado por tag, a tag é convertida na versão para a qual ela aponta naquele momento, e o lockfile mantém essa versão até que o rmk update verifique de novo.

Lançar em lote

Submissões aprovadas podem sair juntas: marque-as em My submissions (as suas), ou na aba To release da fila de revisão (moderadores e root, as de qualquer pessoa), e depois clique em Release selected. Select all cobre a página que você está vendo, nas duas telas: mostre 100 por página, ou filtre antes, para lançar mais itens de uma só vez.

  • Um só conjunto de configurações para todos: estável ou pré-release, o incremento (o sugerido para cada mudança, ou um para todos), a tag (a padrão de cada versão, ou uma para todos) e notas de versão opcionais. Um primeiro release é sempre 1.0.0.
  • Todas as versões aparecem antes, como cada caixa de diálogo de publicação as mostraria, e Release fica desativado até que as configurações sirvam para todas.
  • As dependências vão primeiro. Selecionar uma submissão adiciona as dependências aprovadas dela que ainda não foram lançadas, marcadas como incluídas; uma que ainda esteja em revisão a deixa de fora.
  • Cada uma é lançada separadamente. Uma que falhe, como uma proposta desatualizada, só barra a si mesma e o que depende dela no lote (ignoradas); o resto sai. No máximo 50 de cada vez.

Depreciar ou retirar

AçãoO que aconteceQuando usar
deprecatedContinua instalável, e o rmk imprime a mensagem dela sempre que a instala ou atualiza.Há uma versão ou um item melhor: "Use a 1.2.0 ou mais recente."
yankedNovas instalações não conseguem obtê-la; um projeto cujo lockfile a fixa ainda a instala, com um aviso. Se latest apontava para ela, a tag volta para a versão estável mais nova que restar.Está quebrada ou insegura. A retirada pode ser desfeita.

Onde o item tem uso informado, a página Versions mostra as execuções e instalações de cada versão em 30 dias, e as duas caixas de diálogo mostram esses números antes de você confirmar: quem ainda receberia um aviso de depreciação, e o que uma retirada barraria.