New ruby-debug-* releases

52 views
Skip to first unread message

John Firebaugh

unread,
Oct 19, 2011, 10:20:05 PM10/19/11
to ruby-d...@googlegroups.com
Hi all,

The JRuby ruby-debug merge is complete, and I'd like to do releases of
ruby-debug-base, ruby-debug, and ruby-debug-ide. A number of bugs have
been fixed in ruby-debug-base, including an annoying JRuby deadlock. I
don't think there are any ruby-debug changes, but the version
dependencies are tight so they need to be released simultaneously. And
ruby-debug-ide has a nice performance improvement.

I've uploaded 0.10.5.rc1 gems to github:
https://github.com/ruby-debug/ruby-debug/downloads

Would someone mind pushing them to rubygems.org (or giving me the
necessary permissions to do so)?

Once they are up, I welcome any testing and bug reporting. Rocky and I
hope to do a final release by the end of the month.

Cheers,
John

Rocky Bernstein

unread,
Oct 19, 2011, 11:20:42 PM10/19/11
to ruby-d...@googlegroups.com
On Wed, Oct 19, 2011 at 10:20 PM, John Firebaugh <john.fi...@gmail.com> wrote:
Hi all,

The JRuby ruby-debug merge is complete, and I'd like to do releases of
ruby-debug-base, ruby-debug, and ruby-debug-ide. A number of bugs have
been fixed in ruby-debug-base, including an annoying JRuby deadlock. I
don't think there are any ruby-debug changes, but the version
dependencies are tight so they need to be released simultaneously. And
ruby-debug-ide has a nice performance improvement.

Great!  

I've uploaded 0.10.5.rc1 gems to github:
https://github.com/ruby-debug/ruby-debug/downloads

Would someone mind pushing them to rubygems.org (or giving me the
necessary permissions to do so)?

I've added you as an owner on gemcutter.org to ruby-debug and ruby-debug-base. I am not a member of ruby-debug-ide. 

I have not been following the activity of ruby-debug and ruby-debug-base all that closely and I've not tried the gems yet. I hope to do that though by the end of the week. 

Thanks for taking on the responsibility of seeing that something needed to be done and doing it!

John Firebaugh

unread,
Oct 19, 2011, 11:48:07 PM10/19/11
to ruby-d...@googlegroups.com, oleg.s...@gmail.com, dennis....@gmail.com
OK, ruby-debug and ruby-debug-base 0.10.5.rc1 are on rubygems.

Oleg or Dennis, are you on this list? What's the release process for
ruby-debug-ide? I know you've been bundling versions with RubyMine,
let's figure out how to coordinate a gem release.

John Firebaugh

unread,
Oct 24, 2011, 11:31:50 AM10/24/11
to Dennis Ushakov, ruby-d...@googlegroups.com, oleg.s...@gmail.com
On Fri, Oct 21, 2011 at 7:03 AM, Dennis Ushakov
<dennis....@gmail.com> wrote:
> We're also pushing all the betas of ruby-debug-ide to the rubygems,
> but the problem is that I'm not sure if Oleg has enough rights to add
> you as a owner. We can put ruby-debug-ide gem synchronously

That would be great.

Doesn't RubyMine have some magic that lets it load debug gems under
`bundle exec`, even when the Gemfile doesn't include them? Would it
need to be updated if ruby-debug-base adds a dependency? The new
version of ruby-debug-base has a new dependency on linecache in the
-java version, and a user is reporting a LoadError requiring it:

https://jira.codehaus.org/browse/JRUBY-6083?focusedCommentId=281913&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-281913

I can reproduce this when I check the 'bundle exec' checkbox in the
Run configuration.

Dennis Ushakov

unread,
Oct 27, 2011, 3:00:22 PM10/27/11
to John Firebaugh, ruby-d...@googlegroups.com, oleg.s...@gmail.com
We're adding ruby-debug-base and ruby-debug-ide gems on the loadpath
explicitly, so I guess we should also add linecache gems there too...
Actually I'm thinking about some cleaner solution without all that
magic, that will allow us to have both ruby-debug-ide and ruby-debug
gems for the same app, without conflicts (like, for example,
Debugger.start is not called yet
http://youtrack.jetbrains.net/issue/RUBY-7855). Any ideas?

John Firebaugh

unread,
Oct 27, 2011, 9:19:49 PM10/27/11
to Dennis Ushakov, ruby-d...@googlegroups.com, oleg.s...@gmail.com
On Thu, Oct 27, 2011 at 12:00 PM, Dennis Ushakov
<dennis....@gmail.com> wrote:
> We're adding ruby-debug-base and ruby-debug-ide gems on the loadpath
> explicitly, so I guess we should also add linecache gems there too...
> Actually I'm thinking about some cleaner solution without all that
> magic, that will allow us to have both ruby-debug-ide and ruby-debug
> gems for the same app, without conflicts (like, for example,
> Debugger.start is not called yet
> http://youtrack.jetbrains.net/issue/RUBY-7855). Any ideas?

The current less-magic way of doing it would be to require people to
add the necessary debugging gems to their Gemfile. There are three
cases:

1. They want to use just the command line debugger. In this case, the
Gemfile needs to contain ruby-debug (or ruby-debug19). Since
ruby-debug-base is a dependency, it will be included in the load path
automatically. This is, in fact, the current state of affairs for this
case; the Rails project Gemfile template even includes
ruby-debug/ruby-debug19 by default.

2. They want to use just the IDE debugger. In this case, the Gemfile
needs to contain both ruby-debug-base and ruby-debug-ide. Specifying
ruby-debug-ide alone is not enough, because ruby-debug-ide does not
depend on ruby-debug-base directly. (Instead it uses an extconf.rb
hack to conditionally install ruby-debug-base or ruby-debug-base19.)

3. They want to be able to use either the command line or IDE
debugger. This is problematic, because ruby-debug and ruby-debug-ide
conflict. There's no reason they should conflict, ruby-debug-ide is
just coded a bit sloppily. I fixed this partially here:
https://github.com/ruby-debug/ruby-debug-ide/commit/2028a4ce22bf920b407223dae647f5475344b9e3.
That allows both to be on the load path without conflict as long as
only one of the two is actually required. But requiring is the default
behavior with bundler; you're still screwed unless you use :require =>
false in the Gemfile. We can and should fix this in ruby-debug-ide.

This approach doesn't satisfy me though. Besides the confusing
configuration caused by the bifurcation into 1.8 and 1.9 gem variants,
requiring changes to the Gemfile elevates what should be a personal
choice of development tool to the level of project policy. Say I'm
working on fixing a bug in a third-party gem. I shouldn't have to edit
that project's Gemfile just to debug with the debugger of my choice.
Bundler needs a way to ensure that certain gems are placed on the load
path no matter what the current Gemfile specifies, so long as that
doesn't produce a dependency conflict. It sounds like the bundler
developers have committed to such a feature, but there's no timeline
for it: https://github.com/carlhuda/bundler/issues/183

Reply all
Reply to author
Forward
0 new messages