views:

15

answers:

1

If I run

gem server

and go to localhost:8808, one of the entry is haml and it says it depends on maruku and yard

haml 3.0.22 [rdoc] [www] - depends on maruku, yard.
An elegant, structured XHTML/XML templating engine. Comes with Sass, a similar CSS templating engine. 
Executables are css2sass, haml, html2haml, sass, sass-convert.

but when I gem list on the command line, there is no maruku and no yard? I thought if haml depends on them, then the installation would have installed them?

A: 

haml lists those gems as development dependencies, so they're not installed by default with gem install, which only installs runtime dependencies.

https://rubygems.org/gems/haml

rspeicher
development dependencies is for the gem author? (not our development environment, right? otherwise maruku will need to be installed if we are running our rails app in development mode)... so if it is dependencies for the author when he writes haml, shouldn't it be transparent to the end users? For example, I can develop a gem foobar, and while debugging, I need some gems, like ruby-debug or a profiler... so those gems won't be listed as well...
動靜能量
Development dependencies are gems that need to be installed to develop on the gem. In this case Haml needs Yard to generate its documentation, and Maruku to test its `:markdown` filter. If you're not generating documentation for the gem (which you were doing), or modifying the gem, you don't need those dependencies installed.
rspeicher