[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

undefined method `empty?' for nil:NilClass in gem build

Ken Bloom

5/20/2009 5:08:00 PM

I'm trying to build a rubygem, but I keep getting the following error.
Can anybody help?

$ gem build wordnet.gemspec
ERROR: While executing gem ... (NoMethodError)
undefined method `empty?' for nil:NilClass

$ cat wordnet.gemspec
Gem::Specification.new do |s|
s.name="WordNet"
s.author="Ken Bloom"
s.email="kbloom@gmail.com"
s.version="1.0.1"
s.summary="A binding to the WordNet C library"
s.require_path="ext"

#disabled because it spews lots of errors
#but the generated rdoc isn't useful in the least
s.has_rdoc=false

s.files += Dir["ext/*"]
s.extensions << "ext/extconf.rb"
end

$ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.2
- RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]
- INSTALLATION DIRECTORY: /var/lib/gems/1.8
- RUBY EXECUTABLE: /usr/bin/ruby1.8
- EXECUTABLE DIRECTORY: /var/lib/gems/1.8/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /var/lib/gems/1.8
- /home/bloom/.gem/ruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://gems.ruby...

--
Chanoch (Ken) Bloom. PhD candidate. Linguistic Cognition Laboratory.
Department of Computer Science. Illinois Institute of Technology.
http://www.iit.edu...


3 Answers

Eric Hodel

5/20/2009 7:11:00 PM

0

On May 20, 2009, at 10:08, Ken Bloom wrote:

> I'm trying to build a rubygem, but I keep getting the following error.
> Can anybody help?
>
> $ gem build wordnet.gemspec
> ERROR: While executing gem ... (NoMethodError)
> undefined method `empty?' for nil:NilClass
>
> $ cat wordnet.gemspec
> Gem::Specification.new do |s|
> s.name="WordNet"
> s.author="Ken Bloom"
> s.email="kbloom@gmail.com"
> s.version="1.0.1"
> s.summary="A binding to the WordNet C library"
> s.require_path="ext"
>
> #disabled because it spews lots of errors
> #but the generated rdoc isn't useful in the least
> s.has_rdoc=false

Note that RDoc 1.3.3 ignores this setting and always generates RDoc.

DON'T be lazy, document your code! (You may want to install RDoc 2 if
you're getting warnings)

> s.files += Dir["ext/*"]
> s.extensions << "ext/extconf.rb"
> end
>
> $ gem environment
> RubyGems Environment:
> - RUBYGEMS VERSION: 1.3.2

Maybe there's a bug in 1.3.2, try upgrading:

$ touch ext/extconf.rb

NOTE: DON'T be lazy, do it right! You forgot to specify all these
things. Filling them in is in the best interests of everyone.

$ gem build wordnet.gemspec
WARNING: no description specified
WARNING: no homepage specified
WARNING: no rubyforge_project specified
Successfully built RubyGem
Name: WordNet
Version: 1.0.1
File: WordNet-1.0.1.gem
$ gem env version
1.3.3


Ken Bloom

5/21/2009 1:08:00 AM

0

On Thu, 21 May 2009 04:11:27 +0900, Eric Hodel wrote:

> On May 20, 2009, at 10:08, Ken Bloom wrote:
>
>> I'm trying to build a rubygem, but I keep getting the following error.
>> Can anybody help?
>>
>> $ gem build wordnet.gemspec
>> ERROR: While executing gem ... (NoMethodError)
>> undefined method `empty?' for nil:NilClass

> NOTE: DON'T be lazy, do it right! You forgot to specify all these
> things. Filling them in is in the best interests of everyone.
>
> $ gem build wordnet.gemspec
> WARNING: no description specified
> WARNING: no homepage specified
> WARNING: no rubyforge_project specified
> Successfully built RubyGem
> Name: WordNet
> Version: 1.0.1
> File: WordNet-1.0.1.gem
> $ gem env version
> 1.3.3

It was the missing homepage field.

But failure to specify a homepage or rubyforge_project shouldn't be
considered lazy, when some projects don't have one becuase they're not
released yet, or (for the rubyforge_probject) when they're released
somehere other than Rubyforge, such as GitHub.

--Ken

--
Chanoch (Ken) Bloom. PhD candidate. Linguistic Cognition Laboratory.
Department of Computer Science. Illinois Institute of Technology.
http://www.iit.edu...


Eric Hodel

5/21/2009 8:55:00 PM

0

On May 20, 2009, at 18:08, Ken Bloom wrote:
> On Thu, 21 May 2009 04:11:27 +0900, Eric Hodel wrote:
>> On May 20, 2009, at 10:08, Ken Bloom wrote:
>>> I'm trying to build a rubygem, but I keep getting the following
>>> error.
>>> Can anybody help?
>>>
>>> $ gem build wordnet.gemspec
>>> ERROR: While executing gem ... (NoMethodError)
>>> undefined method `empty?' for nil:NilClass
>
>> NOTE: DON'T be lazy, do it right! You forgot to specify all these
>> things. Filling them in is in the best interests of everyone.
>>
>> $ gem build wordnet.gemspec
>> WARNING: no description specified
>> WARNING: no homepage specified
>> WARNING: no rubyforge_project specified
>> Successfully built RubyGem
>> Name: WordNet
>> Version: 1.0.1
>> File: WordNet-1.0.1.gem
>> $ gem env version
>> 1.3.3
>
> It was the missing homepage field.
>
> But failure to specify a homepage or rubyforge_project shouldn't be
> considered lazy, when some projects don't have one becuase they're not
> released yet,

That's why you only get a warning.

> or (for the rubyforge_probject) when they're released
> somehere other than Rubyforge, such as GitHub.

If a gem doesn't show up in `gem list -r` using RubyGems' default
sources it's not released.