Skip to content


Subversion checkout URL

You can clone with
Download ZIP


fix excon adapter version #202

wants to merge 1 commit into from

3 participants


When tried to run the tests using excon adapter, I got this error

uninitialized constant Excon::VERSION

The issue was that excon doesn't define this varible Excon::VERSION


What version of Excon do you use? I can see Excon::VERSION defined in current version 0.15.5.


:O I'm using excon "0.14.3"


sure, but for some reason doesn't works and can't upgrade excon, because I'm using fog too that depends of excon ~> 0.14. any suggestions for this case?


can you try loading irb, require excon and see it Excon::VERSION is available?


no, looks like is not available

irb(main):001:0> Excon
=> Excon
irb(main):002:0> Excon::VERSION
NameError: uninitialized constant Excon::VERSION
    from (irb):2


> require 'rubygems'
 => true 
> require 'excon'
 => true 
> Excon::VERSION
 => "0.14.3" 

Can you investigate this Excon class and ensure it's the one from Excon 0.14.3 gem? Maybe there is some other code defining it?

@bblimke bblimke closed this

I ran into the same problem and found out that some gems define a top-level VERSION constant. In my case it was 'its-it', by including their main module into the top-level object.

If excon is loaded after that, the check at returns true and prevents Excon::VERSION to be defined correctly.

A workaround is to load excon as soon as possible.


@bauersman are you sure that's the case? Can you please show a code snippet to reproduce that? only checks if VERSION constant
is defined inside Excon module.

In Ruby you always have top level VERSION constant which represents Ruby version.


Sure, minimal test case here:

Edit: the global constant representing the ruby version is RUBY_VERSION, not VERSION


It's a change in behaviour between ruby 1.8 and ruby 1.9. looks like this behaviour only appears in 1.9


I created an issue in Excon excon/excon#147

@sanemat sanemat referenced this pull request from a commit in sanemat/webmock
@sanemat sanemat Add license in .gemspec
Rubygems warns empty license
Warn is licenses is empty. Fixes #202 · ed1098d · rubygems/rubygems
@sanemat sanemat referenced this pull request

Add license in .gemspec #235

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Aug 13, 2012
  1. @robertomiranda
This page is out of date. Refresh to see the latest.
Showing with 1 addition and 1 deletion.
  1. +1 −1  lib/webmock/http_lib_adapters/excon_adapter.rb
2  lib/webmock/http_lib_adapters/excon_adapter.rb
@@ -5,7 +5,7 @@
if defined?(Excon)
-'Excon', Excon::VERSION, '0.9.6').check_version!
+'Excon', Gem.loaded_specs["excon"].version.to_s, '0.9.6').check_version!
module WebMock
module HttpLibAdapters
Something went wrong with that request. Please try again.