| 9 | | Gems are like Cabal packages. There is a .gemspec file which corresponds to a .cabal file. A .gemspec file is actually Ruby source rather than a custom format, however it defines only a piece of structured data, not code. It is a collection of package metadata. A .gemspec file lives in the source directory of the project and can be built into a .gem file for distribution. I don't know the details of the .gem format but it sounds superficially similar to the .tar.gz files that Cabal/Hackage uses for distribution. |
| | 9 | Gems are like Cabal packages. There is a .gemspec file which corresponds to a .cabal file. A .gemspec file is actually Ruby source rather than a custom format, however it defines only a piece of structured data, not code. It is a collection of package metadata. A .gemspec file lives in the source directory of the project and can be built into a .gem file for distribution. |
| | 10 | |
| | 11 | ".gem packages are a .tar file with a .tar.gz of contents and a .gz of metadata. The metadata is a Gem::Specification in YAML format |
| | 12 | The only place you see .rb Gem::Specification files is in the local repo and sometimes in the source" -- Eric Hodel |
| | 13 | |