Rietveld: mais uma ajudinha na revisão de código

Rietveld: mais uma ajudinha na revisão de código

Rietveld: another code review aid

Autor original: Jake Edge

Publicado originalmente no: http://lwn.net/

Tradução: Roberto Bechtlufft

Com o lançamento do Rietveld, os interessados em revisão de código baseada na web contam com mais uma ferramenta. Em janeiro nós demos uma olhada no Review Board. O RB foi inspirado em uma ferramenta interna do Google chamada Mondrian, escrita por Guido van Rossum, criador do Python e funcionário do Google. O RB, por sua vez, deu origem ao Rietveld.

A lista de recursos do Rietveld é bastante parecida com a do Review Board, o que não é de se admirar, visto que ambos têm o Mondrian como modelo. A idéia original de van Rossum era transformar o Mondrian em um projeto livre, mas o programa estava muito atrelado à “infra-estrutura proprietária do Google”, o que o fez começar tudo de novo, e o resultado é o Rietveld. As duas ferramentas são implementadas em Python usando o framework Django, mas uma diferença importante é que o Rietveld foi escrito para usar o Google App Engine.

issues

Há muitas maneiras de incluir patches no sistema do Rietveld para criar uma “issue” – termo usado para designar um patch que aguarda revisão – como subir um diff unificado ou usar um script python para baixar os patches do repositório. No momento, o Rietveld suporta apenas o Subversion, mas van Rossum gostaria de acrescentar suporte a outros sistemas de controle de versão. O Review Board tem alguma vantagem nesse campo, suportando Mercurial, Git, Bazaar, Perforce, Subversion e CVS.

Uma vez que a issue tenha sido criada no sistema, os revisores podem ser convidados a comentar sobre as mudanças. Navegar pelo diff é bem simples, e o Javascript é usado livremente para dar um tom de aplicativo local à interface. Clicar duas vezes numa linha chama uma caixa de comentários que um revisor pode preencher com seus comentários sobre aquela linha. Todos os comentários são marcados como “rascunhos” até que o revisor esteja satisfeito ao ponto de “publicar” os comentários para o autor e outros revisores.

diff

O projeto Rietveld é um software livre, lançado sob a licença Apache 2.0, enquanto o aplicativo em si é executado via Google App Engine. Qualquer um pode navegar pelo sistema, mas quem tiver uma conta no Google pode acrescentar issues e comentários e fazer revisão com a ferramenta. Como o Rietveld usa o App Engine, quem quiser testar a ferramenta em seu código não precisa providenciar um servidor para instalar e executar o aplicativo – como seria necessário com o Review Board – bastando subir uma série de patches, chamar alguns revisores e seguir em frente.

Essa implementação sem complicações é um dos benefícios que o Google App Engine oferece. Para projetos livres, onde a revisão de código é feita às claras, o Rietveld oferece uma maneira rápida de se experimentar o aplicativo. Quem quiser manter seu código em segredo pode preferir instalar sua própria instância do Review Board ou outra ferramenta. Deve ser possível instalar o Rietveld em um ambiente diferente substituindo as partes específicas do Google App Engine, mas está claro que a idéia não é essa.

Ainda que o Rietveld não ofereça muito em termos de funcionalidade que o Review Board já não ofereça – na verdade o Review Board ganha dele em alguns pontos – ele oferece uma ótima introdução à interface do Google App Engine. Sem dúvida os desenvolvedores usarão o código como modelo para suas próprias idéias quando o Google disponibilizar mais contas do App Engine. A julgar pela histórico, linguagem e framework que compartilham, não é impossível imaginar que o Review Board e o Rietveld acabem unindo forças algum dia. Mesmo que isso não aconteça, é inevitável que os dois troquem figurinhas, o que acaba resultando na melhoria dos dois projetos. Com mais projetos usando um dos programas, ou mesmo os dois juntos, esperamos que o resultado seja um código ainda melhor para a comunidade.

Nota do tradutor: saiba mais sobre o Google App Engine nesta notícia do GDHn.

Créditos a Jake Edgehttp://lwn.net/

Tradução por Roberto Bechtlufft <robertobech at gmail.com>

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X