2011-08-08 24 views

Respuesta

13

Si alguien decide piratear su gema por cualquier motivo, p. lo bifurcan en Github para agregarle una función (que pueden querer contribuir), es útil saber qué dependencias de desarrollo necesita su gema (por ejemplo, pruebas de marcos, herramientas de burla, etc.).

Si está utilizando bundler con el comando gemspec, que se enganchará en sus dependencias gemspec e instalar las dependencias de desarrollo, junto con los de tiempo de ejecución cuando se ejecuta

bundle install 

Esto le ahorra tener que instalar estas joyas a mano.

El comando joya También puede enumerar todas las dependencias de una joya entre ellos los dedicados al desarrollo:

gem dependency my_gem 

Gem my_gem-0.1.3 
    activerecord (~> 3.0.0) 
    json (~> 1.4.3, development) 
    rake (>= 0, development) 
    rspec (~> 2.5.0, development) 
    ruby-openid (~> 2.1.0) 

Una vez más, esto es probablemente más para otras personas más que por sí mismo.

+0

Uso un Gemfile para el primero, y el segundo es un poco inútil, pero es bueno saber que no hay nada más en marcha :) – grosser

3

Mis gemas tienen normalmente una prueba de unidad. Esta prueba requiere a veces gemas, que no son necesarias para usar la gema. O quizás necesites gemas adicionales para generar partes de la gema.


Una vez que un mal uso dependencias de desarrollo para definir '' dependecies opcionales (dependecies eran necesarios para algunas características de mi joya, pero no es necesario para el uso 'normal').

Ejemplo: Mi aplicación ofrece la posibilidad de exportar a un archivo como texto o PDF. La generación de PDF usa prawn. Así que la gamba es una dependencia, pero no es necesario usar la aplicación, solo una característica específica lo necesita.

Así que no agregué gambas a las dependencias de gemas (no es necesario), sino a las dependencias de desarrollo (es útil para la gema).

+0

No recibo su segunda oración – lulalala

+0

@lulalala Agregué un ejemplo. – knut

Cuestiones relacionadas