qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PROTON-1532) Undefined method "plain" for SASL in Ruby binding
Date Wed, 23 Aug 2017 07:07:00 GMT

    [ https://issues.apache.org/jira/browse/PROTON-1532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16137989#comment-16137989

ASF GitHub Bot commented on PROTON-1532:

Github user gberginc commented on the issue:

    @alanconway initially, I was using the gem from the rubygems link you mentioned, yes.
I am looking forward to the new published version. Until then, I will host the gem at https://github.com/gberginc/qpid_proton_gem
for I need to be able to deploy it from another app.
    I have tested your change and it almost worked for me. I only had to apply the following
    diff --git a/proton-c/bindings/ruby/lib/core/url.rb b/proton-c/bindings/ruby/lib/core/url.rb
    index 39b64650..195567f2 100644
    --- a/proton-c/bindings/ruby/lib/core/url.rb
    +++ b/proton-c/bindings/ruby/lib/core/url.rb
    @@ -84,6 +84,6 @@ end
     class String
       # Convert this string to a URL
       def to_url()
    -    return URL.new(self)
    +    return Qpid::Proton::URL.new(self)
    Not sure if this is because I am using the code from outside of the gem itself, though.

> Undefined method "plain" for SASL in Ruby binding
> -------------------------------------------------
>                 Key: PROTON-1532
>                 URL: https://issues.apache.org/jira/browse/PROTON-1532
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: ruby-binding
>         Environment: Centos, Ubuntu
>            Reporter: Gregor Berginc
>            Assignee: Alan Conway
>             Fix For: proton-c-0.18.0
> When I try to connect to an AMQP endpoint using the URL of the form amqp://user:password@host:port,
I get an error about a missing "plain" method. This occurs in [this line|https://github.com/apache/qpid-proton/blob/master/proton-c/bindings/ruby/lib/reactor/connector.rb#L91].
This error can be reproduced simply using the following code
> {code:ruby}
> 2.3.3 :001 > require "qpid_proton"
>  => true 
> 2.3.3 :002 > transport = Qpid::Proton::Transport.new
>  => #<Qpid::Proton::Transport:0x00000002754548 @impl=#<SWIG::TYPE_p_pn_transport_t:0x00000002754520
@__swigtype__="_p_pn_transport_t", @proton_wrapper=#<Qpid::Proton::Transport:0x00000002754548
> 2.3.3 :003 > sasl = transport.sasl
>  => #<Qpid::Proton::SASL:0x00000002748518 @impl=#<SWIG::TYPE_p_pn_sasl_t:0x000000027484f0
> 2.3.3 :004 > sasl.plain('', '')
> NoMethodError: undefined method `plain' for #<Qpid::Proton::SASL:0x00000002748518>
> from (irb):4
> from /usr/share/rvm/rubies/ruby-2.3.3/bin/irb:11:in `<main>'
> {code}
> I have tried in Ubuntu 16.04 installing Proton via system packages and gem 0.10.1 from
Rubygems as well as in Centos 7, following the source code install guide.
> I wonder if this method should be exposed by Swig somehow? Python binding does not use
it in that way, but it does set the username and password on the connection.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org

View raw message