Maxime Chevalier-Boisvert
a14015e9b5
Report unknown --ujit-* options
2021-10-20 18:19:28 -04:00
Alan Wu
b7f93e81df
Implement --ujit-stats and instructoin counting
...
VM and ujit instruction counting in debug builds.
shopify/ruby#19
2021-10-20 18:19:27 -04:00
Maxime Chevalier-Boisvert
e4c65ec49c
Refactor uJIT code into more files for readability
2021-10-20 18:19:26 -04:00
Alan Wu
726bdd4d35
Show whether MicroJIT is enabled in the version string
2021-10-20 18:19:24 -04:00
Alan Wu
a8d784888d
Fix mistake in ujit command line parsing
2021-10-20 18:19:24 -04:00
Alan Wu
e8c914c250
Implement the --disable-ujit command line option
2021-10-20 18:19:24 -04:00
Nobuyoshi Nakada
842b0008c1
Skip broken strings as the locale encoding
2021-10-01 20:28:44 +09:00
Nobuyoshi Nakada
409dbc951b
Replace expanded load path only when modified
2021-10-01 20:28:44 +09:00
Nobuyoshi Nakada
b6534691a1
Copy path strings as interned strings
2021-10-01 20:28:44 +09:00
Nobuyoshi Nakada
60d0421ca8
Fix the encoding of loaded feature names [Bug #18191 ]
...
The feature names loaded from the default load paths should also
be in the file system encoding.
2021-10-01 20:28:44 +09:00
卜部昌平
f83b14af24
include/ruby/internal/interpreter.h: add doxygen
...
Must not be a bad idea to improve documents. [ci skip]
In fact many functions declared in the header file are already
documented more or less. They were just copy & pasted, with applying
some style updates.
2021-09-10 20:00:06 +09:00
S-H-GAMELINKS
bdd6d8746f
Replace RBOOL macro
2021-09-05 23:01:27 +09:00
Nobuyoshi Nakada
3db7f6353f
Suppress unused-but-set-variable warning
2021-07-06 00:09:27 +09:00
Yusuke Endoh
9438c99590
Rename error_squiggle to error_highlight
2021-06-29 23:45:49 +09:00
Yusuke Endoh
e946049665
[WIP] add error_squiggle gem
...
```
$ ./local/bin/ruby -e '1.time {}'
-e:1:in `<main>': undefined method `time' for 1:Integer (NoMethodError)
1.time {}
^^^^^
Did you mean? times
```
https://bugs.ruby-lang.org/issues/17930
2021-06-29 23:45:49 +09:00
Samuel Williams
45e65f302b
Deprecate and rework old (fd) centric functions.
2021-06-22 22:48:57 +12:00
Nobuyoshi Nakada
791d7d4947
Freeze command line script
2021-06-10 15:15:35 +09:00
Benoit Daloze
68d6bd0873
Fix trivial -Wundef warnings
...
* See [Feature #17752 ]
Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
2021-05-04 14:56:55 +02:00
Nobuyoshi Nakada
1f08b0d18d
Removed dln_a_out
...
a.out format is considered extinct nowadays.
2021-03-24 20:13:55 +09:00
NARUSE, Yui
d58daad37b
[Feature #17684 ] Declare --disable-gems is for debugging
2021-03-17 15:36:05 +09:00
Nobuyoshi Nakada
90c12defb3
Constified variables for getenv
2021-03-12 17:13:53 +09:00
Yusuke Endoh
8ccc12118e
Keep libpath length non-negative [Bug #16784 ]
...
When runtime_libruby_path does not include '/', it attempts to call
rb_str_resize with negative length. This change makes sure that the
length non-negative.
Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
2021-03-06 00:50:09 +09:00
YO4 (Yoshinao Muramatsu)
b94b7965c4
Fixed fallback ENABLE_VIRTUAL_TERMINAL_PROCESSING value [Bug #17639 ]
2021-02-20 00:50:57 +09:00
Nobuyoshi Nakada
d6e43e4723
Moved --verbose, --verbose and --help options to last [ci skip]
2021-01-24 14:59:41 +09:00
Nobuyoshi Nakada
6f6dfdcc68
Make warning values consistent [Bug #17523 ]
...
They should be affected, as well as `$VERBOSE`, by `-w`/`-W`
options, not only in the main script but in scripts loaded by `-r`
option too.
2021-01-13 18:12:49 +09:00
Nobuyoshi Nakada
dc13bd22bb
Ignore failure on unsupported fcntl to drop non-blocking mode
...
Fixes https://github.com/ruby/ruby/pull/3723
2020-12-26 09:45:06 +09:00
Nobuyoshi Nakada
b9d00f42e6
Enable escape sequence on Windows10 console via pager too
2020-12-21 18:12:02 +09:00
Jeremy Evans
05313c914b
Use category: :deprecated in warnings that are related to deprecation
...
Also document that both :deprecated and :experimental are supported
:category option values.
The locations where warnings were marked as deprecation warnings
was previously reviewed by shyouhei.
Comment a couple locations where deprecation warnings should probably
be used but are not currently used because deprecation warning
enablement has not occurred at the time they are called
(RUBY_FREE_MIN, RUBY_HEAP_MIN_SLOTS, -K).
Add assert_deprecated_warn to test assertions. Use this to simplify
some tests, and fix failing tests after marking some warnings with
deprecated category.
2020-12-18 09:54:11 -08:00
Nobuyoshi Nakada
8b32191a31
Ignore failure on unsupported fcntl to drop non-blocking mode
2020-12-16 17:54:43 +09:00
Jeremy Evans
dca13e2bf7
Make ruby -We the same as ruby -W -e
...
This changes the behavior, which I'm not sure is acceptable.
However, it's odd to allow an option to be combined, but change
the behavior of the option when combined.
2020-12-10 10:16:40 -08:00
Kenta Murata
146b3695c0
ruby.c: remove needless substitution of uenc
...
uenc has already been initialized the top of the function.
2020-12-08 02:10:03 +09:00
Lars Kanis
94b6933d1c
Set default for Encoding.default_external to UTF-8 on Windows ( #2877 )
...
* Use UTF-8 as default for Encoding.default_external on Windows
* Document UTF-8 change on Windows to Encoding.default_external
fix https://bugs.ruby-lang.org/issues/16604
2020-12-08 01:48:37 +09:00
Nobuyoshi Nakada
afd765f2ee
Initialize UTF-8 encoding first as it is used always now
2020-11-23 09:45:17 +09:00
Koichi Sasada
99310e3eb5
Some global variables can be accessed from ractors
...
Some global variables should be used from non-main Ractors.
[Bug #17268 ]
```ruby
# ractor-local (derived from created ractor): debug
'$DEBUG' => $DEBUG,
'$-d' => $-d,
# ractor-local (derived from created ractor): verbose
'$VERBOSE' => $VERBOSE,
'$-w' => $-w,
'$-W' => $-W,
'$-v' => $-v,
# process-local (readonly): other commandline parameters
'$-p' => $-p,
'$-l' => $-l,
'$-a' => $-a,
# process-local (readonly): getpid
'$$' => $$,
# thread local: process result
'$?' => $?,
# scope local: match
'$~' => $~.inspect,
'$&' => $&,
'$`' => $`,
'$\'' => $',
'$+' => $+,
'$1' => $1,
# scope local: last line
'$_' => $_,
# scope local: last backtrace
'$@' => $@,
'$!' => $!,
# ractor local: stdin, out, err
'$stdin' => $stdin.inspect,
'$stdout' => $stdout.inspect,
'$stderr' => $stderr.inspect,
```
2020-10-20 15:38:54 +09:00
Nobuyoshi Nakada
996af2ce08
Disable deprecation warning by the default [Feature #16345 ]
...
And `-w` option turns it on.
2020-09-25 09:50:33 +09:00
Nobuyoshi Nakada
0dbf6e46fb
[Feature #17157 ] removed -T command line option
2020-09-07 00:59:53 +09:00
卜部昌平
7cf4625690
feature_option: do not goto into a branch
...
I'm not necessarily against every goto in general, but jumping into a
branch is definitely a bad idea. Better refactor.
2020-06-29 11:05:41 +09:00
Nobuyoshi Nakada
9ce2066209
Improved error messages for mjit option
...
and default jit-verbose to 1 if no argument.
2020-06-23 10:01:24 +09:00
Nobuyoshi Nakada
2c3c6c96cf
Defer initialization
...
Defer initialization of extension libraries, loading prelude files
and requiring files, and skip if dump options are given.
2020-05-16 17:37:28 +09:00
Yusuke Endoh
39365b46e2
Merge pull request #3047 from mame/suppress-backtrace
...
Add `--suppress-backtrace=num` option to limit the backtrace length
2020-05-15 01:22:56 +09:00
卜部昌平
9e41a75255
sed -i 's|ruby/impl|ruby/internal|'
...
To fix build failures.
2020-05-11 09:24:08 +09:00
卜部昌平
d7f4d732c1
sed -i s|ruby/3|ruby/impl|g
...
This shall fix compile errors.
2020-05-11 09:24:08 +09:00
Yusuke Endoh
91e4e2403e
internal/process.h: add a no-warning simple wrapper for fork(2)
...
As fork(2) is deprecated, its calls must be guarded by
`COMPILER_WARNING_IGNORED(-Wdeprecated-declarations)`.
All usages of fork(2) in process have been alread guarded. A new call
to fork(2) was added in ruby.c with f22c4ff359
.
This caused a build failure on Solaris 11.
It may hide a bug to guard big code unnecessarily, so this change
introduces a simple wrapper "rb_fork" whose definition is guarded, and
replaces all calls to fork(2) with the wrapper function.
2020-05-02 21:34:10 +09:00
Nobuyoshi Nakada
a07cbacd23
Honor COLUMNS [Feature #16754 ]
2020-04-12 14:58:13 +09:00
Nobuyoshi Nakada
cc68d2fbd0
Hightlight usage [Feature #16754 ]
2020-04-12 14:58:13 +09:00
Nobuyoshi Nakada
3825662d77
Set up environment variable for pager [Feature #16754 ]
2020-04-12 14:58:13 +09:00
Nobuyoshi Nakada
e6551d835f
PAGER without fork&exec too [Feature #16754 ]
2020-04-12 14:58:13 +09:00
Nobuyoshi Nakada
f22c4ff359
View the help message with PAGER [Feature #16754 ]
...
View the help message wth pager designed by RUBY_PAGER or PAGER
environment variable, unless that value is empty.
2020-04-12 14:58:13 +09:00
卜部昌平
9e6e39c351
Merge pull request #2991 from shyouhei/ruby.h
...
Split ruby.h
2020-04-08 13:28:13 +09:00
Yusuke Endoh
c6b26f5ccf
io.c, ruby.c: include internal/variable.h for rb_gvar_readonly_setter
...
Same as 053f78e139
.
emscripten requires a prototype declaration of rb_gvar_readonly_setter
if it is refered as a function pointer.
2020-01-09 23:57:46 +09:00