dfang
dfang

Reputation: 1386

Why there is no gemspec in some gems

why there is no .gemspec file in some gems, eg. rspec or rspec-rails, if there is no .gemspec file, how did the gem build ?

thanks!

Upvotes: 0

Views: 1647

Answers (1)

Jörg W Mittag
Jörg W Mittag

Reputation: 369458

The .gemspec is needed to build the gem, but not to use it. Why would it be in the gem? The spec is already contained in the gem's metadata, why duplicate it?

gem spec rspec
# --- !ruby/object:Gem::Specification
# name: rspec
# version: !ruby/object:Gem::Version
#   version: 3.0.0
# platform: ruby
# authors:
# - Steven Baker
# - David Chelimsky
# - Myron Marston
# autorequire: 
# bindir: bin
# cert_chain: []
# date: 2014-06-02 00:00:00.000000000 Z
# dependencies:
# - !ruby/object:Gem::Dependency
#   name: rspec-core
#   requirement: !ruby/object:Gem::Requirement
#     requirements:
#     - - "~>"
#       - !ruby/object:Gem::Version
#         version: 3.0.0
#   type: :runtime
#   prerelease: false
#   version_requirements: !ruby/object:Gem::Requirement
#     requirements:
#     - - "~>"
#       - !ruby/object:Gem::Version
#         version: 3.0.0
# - !ruby/object:Gem::Dependency
#   name: rspec-expectations
#   requirement: !ruby/object:Gem::Requirement
#     requirements:
#     - - "~>"
#       - !ruby/object:Gem::Version
#         version: 3.0.0
#   type: :runtime
#   prerelease: false
#   version_requirements: !ruby/object:Gem::Requirement
#     requirements:
#     - - "~>"
#       - !ruby/object:Gem::Version
#         version: 3.0.0
# - !ruby/object:Gem::Dependency
#   name: rspec-mocks
#   requirement: !ruby/object:Gem::Requirement
#     requirements:
#     - - "~>"
#       - !ruby/object:Gem::Version
#         version: 3.0.0
#   type: :runtime
#   prerelease: false
#   version_requirements: !ruby/object:Gem::Requirement
#     requirements:
#     - - "~>"
#       - !ruby/object:Gem::Version
#         version: 3.0.0
# description: BDD for Ruby
# email: [email protected]
# executables: []
# extensions: []
# extra_rdoc_files: []
# files: []
# homepage: http://github.com/rspec
# licenses: []
# metadata: 
# post_install_message: 
# rdoc_options: []
# require_paths:
# - lib
# required_ruby_version: !ruby/object:Gem::Requirement
#   requirements:
#   - - ">="
#     - !ruby/object:Gem::Version
#       version: '0'
# required_rubygems_version: !ruby/object:Gem::Requirement
#   requirements:
#   - - ">="
#     - !ruby/object:Gem::Version
#       version: '0'
# requirements: []
# rubyforge_project: rspec
# rubygems_version: 2.2.2
# signing_key: 
# specification_version: 4
# summary: rspec-3.0.0
# test_files: []
# has_rdoc: true

Upvotes: 1

Related Questions