Commit graph

219 commits

Author SHA1 Message Date
kazu
38054f99aa Remove unnecessary :
Before:

`.../irb/init.rb:280: warning: :LoadError: cannot load such file -- hoge`

After:

`.../irb/init.rb:280: warning: LoadError: cannot load such file -- hoge`

[ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-12 15:01:07 +00:00
shyouhei
f2a91397fd Add uplevel keyword to Kernel#warn and use it
If uplevel keyword is given, the warning message is prepended
with caller file and line information and the string "warning: ".
The use of the uplevel keyword makes Kernel#warn format output
similar to how rb_warn formats output.

This patch modifies net/ftp and net/imap to use Kernel#warn
instead of $stderr.puts or $stderr.printf, since they are used
for printing warnings.

This makes lib/cgi/core and tempfile use $stderr.puts instead of
warn for debug logging, since they are used for debug printing
and not for warning.

This does not modify bundler, rubygems, or rdoc, as those are
maintained outside of ruby and probably wish to remain backwards
compatible with older ruby versions.

rb_warn_m code is originally from nobu, but I've changed it
so that it only includes the path and lineno from uplevel
(not the method), and also prepends the string "warning: ",
to make it more similar to rb_warn.

From: Jeremy Evans code@jeremyevans.net
Signed-off-by: Urabe Shyouhei shyouhei@ruby-lang.org


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-12 11:56:25 +00:00
k0kubun
4fe2ca38c1 irb/init.rb: make sure ARGV refers to toplevel one
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-12 11:32:37 +00:00
k0kubun
da1ba13714 irb.rb: preserve ARGV on binding.irb
This is not perfectly good solution (at least we don't want to have ARGV
as default value of `argv` argument), but unfortunately IRB.setup and
IRB.parse_opts are public methods and we can't make breaking change to
those methods.

We may deprecate using them and then make them private in the future,
but the removal should not be in Ruby 2.5. So I kept their interface for
now.

[Bug #14162] [close GH-1770]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-12 11:25:16 +00:00
kazu
6d14c47c20 Fix TOCTTOU and avoid to read existing unreadable file
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-24 11:00:10 +00:00
nobu
9b48a6aec1 workspace.rb: one more space
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-24 05:44:58 +00:00
nobu
8b6e9aa792 workspace.rb: fix SCRIPT_LINES__
* lib/irb/workspace.rb (code_around_binding): `SCRIPT_LINES__`
  values are arrays of lines.  get file and line at once.  moved
  loop-invariant format string.  join without extra strings by
  `$,`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-24 05:00:56 +00:00
k0kubun
106c9883e1 irb.rb: show source around binding.irb on start
[Feature #14124] [ruby-dev:50319] [close GH-1764]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-24 03:53:27 +00:00
kazu
6064132c42 Remove unnecessary require 'thread'
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-08 07:00:01 +00:00
a_matsuda
88de87c295 Don't pollute toplevel by an IRB internal method
There actually are some libraries that requires 'irb' such as byebug, and when
'irb' is required, it requires irb/src_encoding.rb, then it defines the toplevel
default_src_encoding method that is visible from anywhere in the end users' apps.

Here's a quick oneliner that shows what's happening.

  % ruby -rpry-byebug -e 'p private_methods(false)'
  [:include, :using, :define_method, :public, :private, :DelegateClass, :default_src_encoding]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-15 10:43:17 +00:00
nobu
f14f0d3464 ruby-lex.rb: fix continued line conditions
* lib/irb/ruby-lex.rb (RubyLex#lex): fix conditions for continued
  line; empty lines, a semicolon, first line in `begin` block,
  just after `else` are not continued.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-20 11:07:02 +00:00
nobu
716ce65138 ruby-lex.rb: merge regexps
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-20 11:07:00 +00:00
hsbt
6a08beef51 Removed math mode from irb.
mathn is deprecated from Ruby 2.2.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-20 09:11:36 +00:00
nobu
474a730182 slex.rb: japanese comment [ci skip]
* lib/irb/slex.rb (postproc): translated a japanese comment in
  ISO-2022-JP.  [ruby-core:79017] [Misc #13117]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-09 02:45:28 +00:00
nobu
5dad4ef825 require "irb/output-method" for StdioOutputMethod
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-13 03:55:14 +00:00
nobu
519af46806 ruby-lex.rb: fix for label
* lib/irb/ruby-lex.rb (identify_identifier): treat identifier just
  followed by a colon as a lable.  this is not a precise solution
  but enough for the time being.  [ruby-core:78526] [Bug #13012]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-08 08:31:01 +00:00
hsbt
6b35c34c68 * basictest/test.rb: Adjust spaces in class declarations
with inheritance. [fix GH-1227] Patch by @adrfer
* lib/irb/*: ditto.
* lib/prime.rb: ditto.
* lib/shell/builtin-command.rb: ditto.
* object.c: ditto.
* sample/*.rb: ditto.
* test/-ext-/method/test_arity.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-10-07 05:18:57 +00:00
nobu
4b298ad77a Use qualified names
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-30 06:22:30 +00:00
hsbt
589169cb78 * lib/irb/ext/save-history.rb: Fix NoMethodError when method is not defined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 11:27:38 +00:00
naruse
af24631af6 * lib/irb/ext/save-history.rb: suppress warning: method redefined;
discarding old save_history=.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-14 10:06:41 +00:00
hsbt
6f04ae5688 * lib/irb/ruby-lex.rb: fixed parse error for striped heredocument syntax.
[fix GH-1127] Patch by @koic

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-18 01:25:08 +00:00
naruse
3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
hsbt
3e8515bf36 * lib/drb/drb.rb: use attr_reader instead of Module#attr.
[Feature #10172][ruby-core:64582]
* lib/irb/ruby-token.rb: ditto.
* lib/net/telnet.rb: ditto.
* lib/rdoc/ruby_token.rb: ditto.
* lib/thwait.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-27 12:10:21 +00:00
hsbt
2afed6ecef * lib/e2mmap.rb: remove needless instance variables.
* lib/irb.rb: ditto.
* lib/irb/**/*.rb: ditto.
* lib/shell.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-24 07:16:25 +00:00
hsbt
643551f0d3 * lib/irb/completion.rb: reverted r47163.
because another case can't be show completion target.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-13 03:02:26 +00:00
hsbt
087d1d2749 * lib/irb/completion.rb: fixed broken completion list with
String including spaces. Contributed from @dunric. [fix GH-465]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-13 02:11:37 +00:00
hsbt
0b7979a8fd * lib/irb/ext/multi-irb.rb: fixed indent.
* lib/irb/output-method.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-10 01:05:08 +00:00
hsbt
f9a81499ff * lib/irb/ext/multi-irb.rb: removed commented-out code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-10 01:05:06 +00:00
hsbt
76515504d5 * lib/irb.rb: removed commented-out code.
* lib/irb/**/*.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-09 02:02:58 +00:00
hsbt
8e5af8b628 * lib/cmath.rb: fixed indent.
* lib/drb/ssl.rb: ditto.
* lib/irb/**/*.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-09 01:36:49 +00:00
hsbt
9b9a9249f4 * lib/irb/init.rb: removed unreachable code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-08 07:41:33 +00:00
keiju
44ab0f8b3a * lib/irb/ruby-lex.rb: fix counting indent in identify_string_dvar.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-08 15:19:30 +00:00
nobu
c2356225c4 lib/irb/locale.rb: fix typo
* lib/irb/locale.rb (IRB::Locale#modifier): fix wrong attr_reader
  `modifieer` => `modifier` from irb locale.  [fix GH-656]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-04 20:05:54 +00:00
a_matsuda
adf511efc6 * lib/irb/inspector.rb: [DOC] Fix typo (s/dependant/dependent/)
* lib/irb/workspace.rb:  [DOC] Fix typo (s/binging/binding/)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-30 09:50:11 +00:00
a_matsuda
da66677061 * lib/irb/notifier.rb: [Doc] Fix typo
* ext/json/lib/json/common.rb:  Ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 12:56:08 +00:00
a_matsuda
0d72c6655c * lib/irb/notifier.rb: Fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 09:05:57 +00:00
ayumin
ee9c279e9b * lib/irb/lc/ja/help-message: update help messages.
following r41028. [ruby-dev:46707] [Feature #7510]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-04 15:33:34 +00:00
eregon
5f55e23f9c * lib/irb/completion.rb: Use %w literal construction for long lists.
Patch by Dave Goodchild. [Fixes GH-299]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-04 14:17:17 +00:00
zzak
78c04602ad * lib/irb/lc/help-message: Apply english updates for irb --help #7510
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-02 05:11:16 +00:00
zzak
f11ff34d8f * lib/irb.rb, lib/irb/ext/save-history.rb: Add documentation on how to
enabled irb history [ruby-core:51347] [Bug #7679]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 23:04:09 +00:00
zzak
e195e181e6 * lib/irb.rb, lib/irb/context.rb: Add documentation on how to enable
auto-indentation and autocompletion using irbrc and irb_context
  [ruby-core:51209] [Bug #7642] and [ruby-core:51348] [Bug #7680]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 22:36:22 +00:00
drbrain
247d51a44f * .document: Removed extra space
* lib/irb/lc/.document:  Hide help-message
* lib/minitest/.document:  Hide README.txt
* lib/rake/lib/.document:  Hide project.rake
* lib/rdoc/generator/template/json_index/.document:  Hide JavaScript
  files
* lib/rubygems/ssl_certs/.document:  Hide PEM files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-16 00:36:07 +00:00
keiju
e70e46a1be * lib/irb/ext/save-history.rb: identify rightly a status of a
history file that already exists [Bug #7694]. Thanks Nobuhiro IMAI
	  for this patch.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-15 13:42:09 +00:00
keiju
9deb82b1d9 * lib/irb/ext/save-history.rb: outputs its history to
owner-only-readable file and change the permission of a file that
	  already exists [Bug #7694]. Thanks Nobuhiro IMAI for bug reports.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-14 14:17:18 +00:00
keiju
b0767cf8c0 * lib/irb/completion.rb: treat rightly comletion for symbol on irb
[Bug #7632].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-29 12:59:06 +00:00
keiju
80b0c6ca3b * lib/irb/context.rb: IRB::Context#new: Check from JobManager
inside IRB namespace [Bug #7628]. Thanks rafaelfranca for bug
	  report and its patch.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-28 12:49:19 +00:00
keiju
7b34c2f81a * lib/irb/ruby-lex.rb: make lex_state to EXPR_END when next token
is an operator after SYMBEG [Bug #6378].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 14:48:42 +00:00
keiju
8f4d0c4526 * lib/irb/ruby-lex.rb: allow to handle recursive heredocs on
irb[Bug #5648].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 12:35:28 +00:00
zzak
8f54e81dbb fix typo from r38623
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-26 15:43:26 +00:00
keiju
8494484dc0 * lib/irb/context.rb: fix IRB::Inspector#keys_with_inspector [Bug #7598]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-26 14:56:57 +00:00