Pular para o conteúdo
Development

Consertando a lista desatualizada de repositórios fixados do GitHub

Por Victor Da Luz•
astrogithubdev-logsite

A seção “On GitHub” da homepage tem uma fileira de cards de repositório gerados automaticamente, puxados de um serviço de estatísticas com base numa lista fixa no código em src/data/projects.ts. O comentário acima dessa lista diz “Espelha os repositórios fixados no perfil do GitHub.” Não espelhava.

O array ainda tinha trello-extractor e programming-problems, dois repositórios que eu desfixei um tempo atrás. E estava faltando astro-affiliate e astro-opt-in-analytics, duas bibliotecas que fixei mais recentemente. Conferi o conjunto de fixados de verdade pela API GraphQL do GitHub para ter certeza, em vez de confiar no que o código afirmava.

Vale notar: esse site já tem uma seção separada, escrita à mão, “Pacotes compartilhados” listando as três bibliotecas @vdaluz/* com uma descrição e links de cada uma. Esse fix é especificamente sobre as imagens dos cards de repositórios fixados gerados automaticamente, que é um caminho de renderização diferente e que só conhecia astro-blog das três.

O fix foi uma linha:

pinnedRepos: ['homelab-tools', 'astro-blog', 'astro-affiliate', 'astro-opt-in-analytics'],

Verifiquei num navegador de verdade em vez de confiar só no build: iniciei o servidor de desenvolvimento, naveguei até a homepage, e checei tanto a árvore de acessibilidade quanto as requisições de rede reais chegando na API de estatísticas. As quatro requisições de card de repositório voltaram com 200 e os nomes de repositório certos na ordem certa, e os cards renderizados bateram.

A lição aqui não é realmente sobre o código, é sobre o comentário. “Espelha os repositórios fixados” era verdade quando foi escrito e depois foi silenciosamente ficando desatualizado conforme meu perfil do GitHub mudava. Uma lista fixa no código sem checagem de desvio sempre vai acabar mentindo sobre o que afirma espelhar.

Leitura relacionada

Você também pode achar útil

Proton

Proton Pass

Gerenciador de senhas focado em privacidade, da equipe por trás do Proton Mail.

Como parceiro da Proton, ganho com compras qualificadas dos serviços de privacidade e segurança da Proton (Pass, Mail, VPN, Drive).

Saiba mais
Proton

Proton VPN

VPN comercial com filtragem NetShield e interruptor de desligamento automático.

Como parceiro da Proton, ganho com compras qualificadas dos serviços de privacidade e segurança da Proton (Pass, Mail, VPN, Drive).

Saiba mais
NordPass

NordPass

Gerenciador de senhas da equipe por trás da NordVPN, com um plano gratuito.

Como afiliado da NordPass, ganho com compras qualificadas.

Saiba mais