Me gustaría escribir un paquete para Ruby y ponerlo a disposición como una joya.
¿Cuáles son las herramientas, los pasos y las dificultades?
¿Hay buenos tutoriales, screencasts, etc. que te hayan ayudado a aprender cómo hacerlo?Ruby: ¿Cómo escribir una gema?
Respuesta
Rubygems.org's Guides es uno de los mejores recursos para escribir su propia joya.
Si está usando Bundler en su aplicación, es posible que desee consultar la guía de Ryan Bigg al Developing a RubyGem using Bundler y la Railscast on creating gems with Bundler.
Si usted está interesado en herramientas para ayudarle a escribir gemas:
- Jeweler - herramienta pertinaz para la creación y gestión de proyectos rubygem. También hay un Gemcutter and Jeweler Railscast.
- Hoe - De los chicos de seattlrb.
- gem-this agrega un montón de útiles tareas de rake.
Algunos tutoriales/guías:
- Creating Your First Gem
- Using bundler and rvm to build a rubygem - Uso bundler y RVM para crear una joya
- Gem Packaging: Best Practices
- Ruby Gem Recipe - guía Introducción a la creación de una joya utilizando bundler y joyero
- How to build a ruby gem and host it on gemcutter - tutorial usando echoe y gemcutter
- The Truth About Gemspecs - Balón por encima gemspecs y sugerencias para tratar con ellos
- Packaging with RubyGems - una guía de inicio rápido para el joyero
- gem that - James Adam - opiniones herramientas que ayudan a construir gemas (azada, newgem, echoe, gemhub, joyería, joya es este)
- Using Gemcutter's Api from the Commandline
- New Gem with Bundler – Sample Rakefile - Rakefile Útil para el despliegue y la publicación de una joya
- Let's Write a Gem
- How To Build A Ruby Gem With Bundler, Test-Driven Development, Travis CI And Coveralls, Oh My!
No necesita comenzar a escribir una gema, solo escriba un código, escriba algunas pruebas, utilícelo como quiera, y una vez que esté satisfecho con él, use gem this para generar el Rakefile correspondiente.
Te ayuda si te apegas a los enfoques que toman otras gemas (tener un directorio lib, evitar nombrar archivos de forma que pueda chocar con otras gemas, escribir algunas pruebas si puedes, tener un léame), pero no es necesario.
Una vez que tenga algo que quiera compartir, colóquelo en github y presiónelo en gemcutter.
No lo pienses más, no uses azada u otras herramientas de sobrecarga, diviértete, no hagas nada que yo no haría.
Esta es la forma en general creo y desprender piedras preciosas:
- Inscríbase para https://github.com
- Inscríbase para https://rubygems.org
$ gem install ore rubygems-tasks rdoc rspec
$ mine awesome_gem
cd awesome_gem/
y editarREADME.rdoc
yawesome_gem.gemspec
, escriba el código enlib/awesome_gem/
y agregue las pruebas de RSpec enspecs/
.- cuando esté listo para lanzar, actualice el archivo
ChangeLog.rdoc
, ejecuterake spec
yrake rerdoc
, abrahtml/index.html
y verifique si hay algún error tipográfico. rake release
- (Opcional) envíe un enlace y una explicación de su nueva joya impresionante para http://rubyflow.com
Sentarse y disfrutar de la gloria de su primera gema. :)
- 1. Cómo modificar una gema Ruby
- 2. ¿Qué es una gema Ruby?
- 3. ¿Cómo ejecuto una gema de Ruby?
- 4. Configuración de configuración al escribir una gema
- 5. Cómo escribir hipervínculos usando una gema de hoja de cálculo en Ruby?
- 6. gema matemática Ruby
- 7. ¿Cómo acceder a la versión de una gema desde Ruby?
- 8. ¿Cómo incluir un controlador con una gema Ruby on Rails?
- 9. Acceso a los archivos empaquetados en una gema Ruby
- 10. Ruby on Rails: ¿Eliminar una dependencia al instalar una gema?
- 11. ¿Cómo eliminar una ruta de gema?
- 12. Escribir una utilidad de línea de comandos en Ruby
- 13. Ruby, Rails: gema mysql2, ¿alguien usa esta gema? ¿Es estable?
- 14. Ruby gema listada, pero no se cargará (gema en dir de usuario, no ruby dir)
- 15. Detectar parada con la gema Ruby Daemons
- 16. ¿Cómo envuelvo una extensión Ruby C en una Ruby Gem?
- 17. Ruby: lista de correo biblioteca o gema
- 18. Rails/Ruby: ¿Qué gema puede crear una imagen con texto?
- 19. ¿Es posible descargar una gema Ruby sin instalarla automáticamente?
- 20. ruby: código para instalar gema si falta
- 21. Instalación de gema bcrypt-ruby en Windows
- 22. ¿Cómo necesito una versión específica de una gema de rubí?
- 23. Ruby LESS equivalente de gema en Python
- 24. ¿Cómo eliminar la gema de la aplicación Ruby on Rails?
- 25. Marco de Ruby para escribir una API?
- 26. ¿Cómo me registro correctamente dentro de mi gema Ruby?
- 27. ¿Cómo reemplazar la gema Unicode en Ruby 1.9?
- 28. Aplicación Sinatra en una gema
- 29. Ruby on rails gema para google map integration
- 30. Viendo el código fuente de una gema
'gem build' es proporcionada por RubyGems. Toda la gema de Gemcutter (y pronto, RubyGems propiamente dicha) le permite hacer es empujar un RubyGem usando la API. http://gemcutter.org/pages/gem_docs http://gemcutter.org/pages/api_docs – qrush
Gracias, he editado la respuesta. –