Forum: Ruby-core [ruby-trunk - Bug #7679][Open] IRB history is broken

Posted by zzak (Zachary Scott) (Guest)
on 2013-01-10 14:04
(Received via mailing list)
Issue #7679 has been reported by zzak (Zachary Scott).

----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679

Author: zzak (Zachary Scott)
Status: Open
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by zzak (Zachary Scott) (Guest)
on 2013-01-10 14:10
(Received via mailing list)
Issue #7679 has been updated by zzak (Zachary Scott).

Status changed from Open to Assigned


----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35322

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by Lee Jarvis (hiroshi)
on 2013-01-10 15:17
(Received via mailing list)
I also tried with the following:

bin/irb -rirb/ext/save-history

But with the same outcome.
Posted by Lee Jarvis (hiroshi)
on 2013-01-11 14:08
(Received via mailing list)
Issue #7679 has been updated by injekt (Lee Jarvis).


I shouldn't also note that I'm having this issue on 1.9.3 and have 
always had it on 1.9.3, can anyone reproduce this on that version or 
anything earlier?

=begin
bin/irb -rirb/ext/save-history
irb(main):001:0> 1 + 2
=> 3
irb(main):002:0> quit
bin/irb -rirb/ext/save-history
irb(main):001:0> *up arrow* nothing..
irb(main):001:0> RUBY_DESCRIPTION
=> "ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-darwin12.2.0]"
=end
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35356

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by no6v (Nobuhiro IMAI) (Guest)
on 2013-01-11 14:48
(Received via mailing list)
Issue #7679 has been updated by no6v (Nobuhiro IMAI).


=begin
You need to set IRB.conf[:SAVE_HISTORY] how many lines you want to save.

 $ rm -f ~/.irbrc
 $ irb
 irb(main):001:0> 1
 => 1
 irb(main):002:0> 2
 => 2
 irb(main):003:0> 3
 => 3
 irb(main):004:0> Readline::HISTORY.to_a
 => ["1", "2", "3", "Readline::HISTORY.to_a"]
 irb(main):005:0> exit
 $ irb
 irb(main):001:0> *up arrow* nothing...
 $ echo 'IRB.conf[:SAVE_HISTORY] = 3' > ~/.irbrc
 $ irb
 irb(main):001:0> 1
 => 1
 irb(main):002:0> 2
 => 2
 irb(main):003:0> 3
 => 3
 irb(main):004:0> Readline::HISTORY.to_a
 => ["1", "2", "3", "Readline::HISTORY.to_a"]
 irb(main):005:0> exit
 $ irb
 irb(main):001:0> Readline::HISTORY.to_a
 => ["3", "Readline::HISTORY.to_a", "exit", "Readline::HISTORY.to_a"]

Recently invoked 3 lines are restored from history file (~/.irb_history 
or so).

HTH
=end

----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35357

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by zzak (Zachary Scott) (Guest)
on 2013-01-11 17:56
(Received via mailing list)
Issue #7679 has been updated by zzak (Zachary Scott).


history works in 1.9.3, but look:

1.9.3p362 :003 > IRB.conf[:SAVE_HISTORY]
 => nil
1.9.3p362 :004 > RUBY_DESCRIPTION
 => "ruby 1.9.3p362 (2012-12-25 revision 38607) [x86_64-linux]"

SAVE_HISTORY is nil, just like in trunk
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35362

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by no6v (Nobuhiro IMAI) (Guest)
on 2013-01-12 07:22
(Received via mailing list)
Issue #7679 has been updated by no6v (Nobuhiro IMAI).


If history works even though IRB.conf[:SAVE_HISTORY] is nil,
this may be done by rvm (~/.rvm/scripts/irbrc.rb) if you use.

----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35369

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by Lee Jarvis (hiroshi)
on 2013-01-12 12:51
(Received via mailing list)
Issue #7679 has been updated by injekt (Lee Jarvis).


Nobuhiro,

I think the point is, shouldn't we be setting SAVE_HISTORY by default? 
If version managers are doing this then it should tell us it should 
probably be done by default. Are there any reasons why this shouldn't be 
done?
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35375

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by zzak (Zachary Scott) (Guest)
on 2013-01-12 19:35
(Received via mailing list)
Issue #7679 has been updated by zzak (Zachary Scott).


no6v (Nobuhiro IMAI) wrote:
> If history works even though IRB.conf[:SAVE_HISTORY] is nil,
> this may be done by rvm (~/.rvm/scripts/irbrc.rb) if you use.

This is true, I see that rvm includes these defaults for us.
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35377

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by keiju (Keiju Ishitsuka) (Guest)
on 2013-01-13 16:40
(Received via mailing list)
Issue #7679 has been updated by keiju (Keiju Ishitsuka).


injekt (Lee Jarvis) wrote:
> Nobuhiro,
>
> I think the point is, shouldn't we be setting SAVE_HISTORY by default? If 
version managers are doing this then it should tell us it should probably be done 
by default. Are there any reasons why this shouldn't be done?

This behavior of Irb is modeled on csh or tcsh.
I admit that the Irb's document is not sufficient.
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35382

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by zzak (Zachary Scott) (Guest)
on 2013-01-13 16:48
(Received via mailing list)
Issue #7679 has been updated by zzak (Zachary Scott).


keiju (Keiju Ishitsuka) wrote:
> This behavior of Irb is modeled on csh or tcsh.
> I admit that the Irb's document is not sufficient.

That is a low blow Keiju-san :(

I will fix the Irb documentation for these configuration options.

----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35383

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by no6v (Nobuhiro IMAI) (Guest)
on 2013-01-13 17:50
(Received via mailing list)
Issue #7679 has been updated by no6v (Nobuhiro IMAI).


BTW, history file is world readable. Is it ok?
.history (t?csh), .histfile (zsh) and .bash_history (bash) can be read 
by only its owner.

----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35385

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by keiju (Keiju Ishitsuka) (Guest)
on 2013-01-14 12:21
(Received via mailing list)
Issue #7679 has been updated by keiju (Keiju Ishitsuka).


no6v (Nobuhiro IMAI) wrote:
> BTW, history file is world readable. Is it ok?
> .history (t?csh), .histfile (zsh) and .bash_history (bash) can be read by only 
its owner.

Surely, this is a problem.
Please, create ticket for this bug.
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35405

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by no6v (Nobuhiro IMAI) (Guest)
on 2013-01-14 13:48
(Received via mailing list)
Issue #7679 has been updated by no6v (Nobuhiro IMAI).


> Surely, this is a problem.
> Please, create ticket for this bug.

Submitted as #7694. Thanks in advance.

----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35406

Author: zzak (Zachary Scott)
Status: Assigned
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Posted by zzak (Zachary Scott) (Guest)
on 2013-01-20 05:23
(Received via mailing list)
Issue #7679 has been updated by zzak (Zachary Scott).

Status changed from Assigned to Closed

Thank you for the feedback
----------------------------------------
Bug #7679: IRB history is broken
https://bugs.ruby-lang.org/issues/7679#change-35489

Author: zzak (Zachary Scott)
Status: Closed
Priority: Normal
Assignee: keiju (Keiju Ishitsuka)
Category: lib
Target version: 2.0.0
ruby -v: 2.0.0


steps to reproduce:
$ irb
irb(main):001:> 1 + 2
=> 3
irb(main):002:0> exit
$ irb
irb(main):001:0> *up arrow* nothing

I should see at least "1 + 2" when I hit the up arrow.

Using: ruby 2.0.0dev (2012-12-30 trunk 38663) [x86_64-linux]

Also confirmed on: ruby 2.0.0dev (2013-01-07 trunk 38734) 
[x86_64-darwin12.2.0]
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.