Enviar uma solicitação pull

Uma ficha limpa

Recentemente, comecei a portar algumas funcionalidades de mono-rail para um novo aplicativo Rails 4. Eu não sei qual é o formato do seu código de front end, mas a base de código em que estou trabalhando tem 6 anos de dependências de front end não documentadas e hackeado um dos arquivos JS. Com uma ficha limpa, decidi ver o que mudou nesse meio tempo para tornar possível o gerenciamento de bibliotecas JS.

Bower

Então, se você vem do Rails, o Bower é como RubyGems para JS de front end. O Bower não se preocupa com muitos detalhes de implementação do módulo, então você pode usá-lo com as bibliotecas mais populares agora e, se não puder, é um fork ou pull request.

O que eu encontrei foi um plugin Rails chamado bower-railsque tinha tarefas Rake para manipular o Bower e até mesmo fornecer um GemfileDSL como o chamado Bowerfilepara que os usuários Rails não precisassem criar um .jsonarquivo de dependências.

Então eu instalei, adicionei meu Bowerfilearquivo e executei rake bower:installe não funcionou.

WTF está acontecendo?

Leia o código

Então as coisas não funcionaram, mas felizmente sou um programador. Abri o código que estava bem organizado, mas faltava testes, então procurei as coisas que não pareciam certas e comecei a escrever alguns testes com base no README. Em uma hora escrevi alguns testes, encontrei o bug que estava me desligando, consertei e enviei um pull request.

Eu tenho um servidor de gem privado, então fui capaz de cortar um gem, implantar e seguir em frente, mas há um pull request esperando aqui – https://github.com/42dev/bower-rails/pull/38 então as coisas são um um pouco melhor para a próxima pessoa que vier e quiser usar o Bower para gerenciar suas bibliotecas JS no Rails.

Links

Página inicial do Bower: http://bower.io/

fonte bower-rails: https://github.com/42dev/bower-rails

diretório de componentes do bower: http://sindresorhus.com/bower-components/

Geminabox: https://github.com/geminabox/geminabox