Partilhar via


vcpkg PR Lista de verificação de revisão

Revisão: 1

Visão geral

Este documento fornece uma lista de verificação anotada que os membros da equipe vcpkg usam para aplicar o rótulo "revisado" em solicitações pull de entrada. Se uma solicitação pull violar qualquer um desses pontos, poderemos pedir aos colaboradores que façam as alterações necessárias antes de podermos mesclar o conjunto de alterações.

Sinta-se à vontade para criar um problema ou pull request se achar que essa lista de verificação pode ser melhorada. Aumente o número de revisão ao modificar o conteúdo da lista de verificação.

Lista de Verificação

Você pode vincular qualquer um desses itens de lista de verificação em um comentário do GitHub copiando o endereço do link anexado a cada código de item.

c000001: Nenhuma função auxiliar preterida é usada

Consulte nossas Diretrizes e Políticas do Mantenedor para obter mais informações.

C000002: O campo '"Port-Version"' é atualizado

Consulte nossas Diretrizes e Políticas do Mantenedor para obter mais informações.

c000003: Novas portas contêm um campo '"description"' escrito em inglês

Uma descrição de apenas uma ou algumas frases é útil. Considere usar a descrição oficial da biblioteca a partir README.md deles ou similar, se possível. Traduções automáticas são aceitáveis e estamos felizes em limpar traduções para inglês para nossos colaboradores.

Consulte nossa documentação do arquivo de manifesto para obter mais informações.

c000004: Nenhum comentário desnecessário está presente no conjunto de alterações

Consulte nossas Diretrizes e Políticas do Mantenedor para obter mais informações.

c000005: Os arquivos baixados são versionados se disponíveisPara garantir que o conteúdo do arquivo não seja alterado, os arquivos baixados preferencialmente têm uma tag de versão associada que pode ser incrementada ao lado da "version"porta.

c000006: Novas portas passam por verificações de CI para trigêmeos que a biblioteca suporta oficialmente

Para garantir que as portas vcpkg sejam de alta qualidade, pedimos que as portas de entrada suportem as plataformas oficiais para a biblioteca em questão.

c000007: Os patches corrigem problemas que são específicos do vcpkg

Se possível, os patches para o código-fonte da biblioteca devem ser enviados para o repositório oficial da biblioteca. Abrir uma solicitação pull no repositório da biblioteca ajudará a melhorar a biblioteca para todos, não apenas para os usuários vcpkg.

c000008: Novas portas baixam o código-fonte da fonte oficial, se disponível

Para respeitar os autores da biblioteca e manter o código seguro, faça o download do código-fonte da fonte oficial. Podemos abrir exceções se o código-fonte original não estiver disponível e houver interesse substancial da comunidade em manter a biblioteca em questão.

c000009: Portas e recursos de porta são nomeados corretamente

Para a acessibilidade do usuário, preferimos que os nomes de portas e recursos de porta sejam intuitivos e próximos de seus homólogos em fontes oficiais e outros gerenciadores de pacotes. Se você não tiver certeza sobre a nomeação de uma porta ou recurso de porta, recomendamos verificar repology.org, packages.ubuntu.com ou procurar informações adicionais usando um mecanismo de pesquisa. Também podemos ajudar nossos colaboradores com isso, então sinta-se à vontade para pedir sugestões de nomenclatura se você não tiver certeza.

c000010: Os destinos da biblioteca são exportados quando apropriado

Para fornecer aos usuários uma integração perfeita do sistema de compilação, certifique-se de exportar e fornecer um meio de encontrar os destinos da biblioteca destinados a serem usados a jusante. Os alvos que não se destinam a ser exportados devem ser marcados como privados e não exportados.

c000011: As portas não usam aplicativos que modificam o sistema do usuário

As portas devem manter o contrato do vcpkg de não modificar o sistema do usuário, evitando aplicativos que o façam. Exemplos desses aplicativos são sudo, , aptbrewou pip. Por favor, use uma alternativa para esses tipos de programas sempre que possível.

c000012: Portas com dependências do sistema incluem uma mensagem de informação durante a instalação

Algumas portas têm dependências de biblioteca e ferramenta que não existem no vcpkg. Para essas dependências ausentes, pedimos que os colaboradores adicionem uma mensagem à parte superior da porta informando as dependências ausentes portfile.cmake e como adquiri-las. Pedimos que a mensagem seja exibida antes que qualquer trabalho importante seja feito para garantir que os usuários possam "sair cedo" do processo de instalação o mais rápido possível, caso estejam perdendo a dependência.

Exemplo:

message(
"${PORT} currently requires the following libraries from the system package manager:
    autoconf libtool
These can be installed on Ubuntu systems via sudo apt install autoconf libtool"
)
c000013: Arquivos de manifesto são usados em vez de arquivos CONTROL para novas portas

Muitas portas existentes usam a sintaxe do arquivo CONTROL; Embora essa sintaxe seja suportada por algum tempo, novas portas não devem usá-las. Qualquer porta recém-adicionada deve usar os arquivos de manifesto.

Também recomendamos, quando modificações significativas são feitas nas portas, que se alterne para arquivos de manifesto; no entanto, isso não é necessário. Você pode achar vcpkg format-manifest útil.