Como obter vários projetos de código aberto para usar uma maneira padrão de fazer algo

5

- Problema

Nas últimas duas semanas, usei três ferramentas diferentes de "repositório" (listadas em ordem alfabética):

Eu os chamo de ferramentas de "repositório" porque eu também usei sbt - que felizmente usa hera para gerenciar é cache ou repositório local.

Cada uma dessas ferramentas criará seu próprio repositório. Os padrões são:

  • ~ / .m2 / repository para maven
  • ~ / .gradle / cache
  • ~ / .ivy2 / cache

Por que eles não podem usar o mesmo cache?

- Objetivo

Eu gostaria de mudar o mundo para que todas as três ferramentas de compilação pudessem usar o mesmo cache. Estou à procura de conselhos sobre problemas que eu provavelmente encontrarei e maneiras inteligentes de contorná-los.

Por "usar o mesmo cache", eu faço não significa "recuperar do cache de outra ferramenta de compilação".

Quero dizer " recuperar de e armazenar em cache de outra ferramenta de compilação".

Embora eu possa ir em frente e enviar questões para os três projetos, sei por experiência (como desenvolvedor em um projeto de código aberto) que, se você quer algo feito, é melhor fazê-lo sozinho.

Além disso, parece que preciso reunir todas as três comunidades em algum grau.

- Pergunta

Qual é a abordagem recomendada para realizar esse tipo de coisa? Como abordo as diferentes comunidades? Eu trabalho em patches para os 3 projetos diferentes, ou seria melhor criar meu próprio projeto de "interface" que lida com esses problemas e ter as 3 ferramentas com essa interface? Esta é uma questão de padrões que eu preciso abordar nessa frente?

Por fim, se estiver faltando alguma coisa e isso for possível (de uma maneira globalmente configurável), então, por favor, me avise.

    
por Marco 22.09.2012 / 13:33
fonte

2 respostas

3

Então, a coisa a fazer é educadamente alcançar os três líderes de projeto das comunidades em questão. Jason Van Zyl da Sonatype (Maven) é certamente o tipo de pessoa que vai ouvir as idéias e tenho certeza de que os outros leads do projeto são os mesmos. Você precisa obter um consenso social dos três líderes que suas comunidades gostariam de fazer isso.

Supondo que você obtenha o consenso social, inicie um projeto de OSS onde as ideias podem ser prototipadas e experimentadas. Convide membros de cada comunidade para participar deste projeto.

As regras usuais de OSS serão aplicadas, esperamos que a solução mais meritocrática chegue ao topo e você tenha ajudado a mudar o mundo: -).

Se você se lembrar de que o OSS é principalmente uma atividade social, não técnica, você terá uma chance.

    
por 23.09.2012 / 21:42
fonte
2

Eu gostaria de criar um projeto separado & interface e, em seguida, fornecer patches para cada ferramenta.

Ter um projeto separado facilita centralizar as decisões de design para o formato comum. É necessário fornecer patches para mostrar a viabilidade e eliminar erros na especificação e na implementação.

Além disso, ter sua implementação de cache separada permite que até mesmo outros projetos usem o mesmo cache.

    
por 22.09.2012 / 19:44
fonte