Is there opportunity to debug http request?

Appear problem when I try to debug http response with default Ruby lib Net::HTTP

Example. I have such piece of code

url = URI.parse("http://nibbler.silktide.com/") # any http resource

req = Net::HTTP.get_response(url) # the same situation with get method of the Net::HTTP module

p req

 

I set breakpoint on the second line and try to execute it in the Interactive console and got  "Timeout: evaluation took longer than 10 seconds."

But when I set breakpoint on the third line (or press F8 to make Step Over) I got correct value in req => #<Net::HTTPOK 200 OK readbody=true>

Why such situation appear? In such way I can't debug response in my code. Could you help me?

Environment:

OS - Ubuntu 16.04 x64

RubyMine version - 2017.2.4

Ruby version - 2.4.2p198

ruby-debug-ide (0.6.1.beta10)

 

Thank you in advance

 

2
6 comments
Avatar
Permanently deleted user

I have the same issue with Ruby 2.4. With 1.9 works fine

1

 

Just to let other people with the same problem know, there is a corresponding thread on SO with an answer that might help:

https://stackoverflow.com/a/48312826

-1
Avatar
Permanently deleted user

It's my post on SO and there is no correct way to fix this issue.

The same actions with ruby 2.2.9 works fine

0

Sorry for misunderstanding. Could you please specify whether you're evaluating the second line after stopping on it? I didn't get any timeout after stopping and stepping into for example.

0
Avatar
Permanently deleted user

The steps to reproduce next: set breakpoint on the second line and execute it (second line) in Interactive console.

With ruby 2.2.9 works fine but with newer got timeout error

0

Thank you for explanations, I managed to reproduce and submitted it to our tracker. Please follow it:

https://youtrack.jetbrains.com/issue/RUBY-21066

0

Please sign in to leave a comment.