summaryrefslogtreecommitdiff
path: root/version.c
AgeCommit message (Collapse)Author
2021-10-20Show +YJIT in version string and RUBY_DESCRIPTIONAlan Wu
There might be code out there that expect `ruby -v` to print only one line. Since MJIT shows +JIT in `ruby -v` and RUBY_DESCRIPTION, let's show +YJIT. The crash report doesn't show anything about MJIT, so adjust the test. The "test_ruby_version" test was unaware of RUBY_YJIT_ENABLE and so was failing when the variable is set and inherited into the children processes it spawns. Explicitly unset the variable in the test.
2021-10-20Yet Another Ruby JIT!Jose Narvaez
Renaming uJIT to YJIT. AKA s/ujit/yjit/g.
2021-10-20Machinery to implement deferred compilationMaxime Chevalier-Boisvert
2021-10-20ujit.h instead in the rest of RubyAlan Wu
ujit_iface.h is meant for uJIT internal use only.
2021-10-20Don't increment instr/exit counters if stats not requestedMaxime Chevalier-Boisvert
2021-10-20Fix ujit cc/cme invalidation code for opt_send_without_blockMaxime Chevalier-Boisvert
2021-10-20Refactor uJIT code into more files for readabilityMaxime Chevalier-Boisvert
2021-10-20Don't put MicroJIT status in RUBY_DESCRIPTIONAlan Wu
That messes with tests too much.
2021-10-20Show whether MicroJIT is enabled in the version stringAlan Wu
2021-09-10include/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. Notes: Merged: https://github.com/ruby/ruby/pull/4815
2019-10-23Provides ruby2_keywordsNobuyoshi Nakada
So that requiring it succeeds even if that forward compatibility gem is not installed.
2019-06-06Update RDoc of RUBY_REVISIONNobuyoshi Nakada
2019-05-23Fallback RUBY_FULL_REVISION if not definedNobuyoshi Nakada
2019-05-22Make RUBY_REVISION full lengthNobuyoshi Nakada
2019-04-22Migrate RUBY_VERSION/RUBY_DESCRIPTION to GitTakashi Kokubun
from Subversion. This behavior is tentative and not discussed well. The point of discussion will be just the length of commit hash, and I thought we should include this kind of change in 2.7.0-preview1 release even before the length is fixed yet. Let's discuss that afterwards and fix it later as needed. Naruse suggested that length=10 is very unlikely to cause conflict, and thus it's used by email notification and rubyci now. This behavior is in favor of that for now.
2018-12-28Moved version numbersnobu
* Define major and minor version numbers only in the public include/ruby/version.h header, as the API version numbers. * Define only teeny version number in the private version.h header. * RUBY_VERSION moved to version.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-20add disabling MJIT features option.ko1
* configure.ac: introduce new configure option `--enable-mjit` and `--disable-mjit`. Default is "enable". `--disable-mjit` disables all of MJIT features so that `ruby --jit` can't enable MJIT. This option affect a macro `USE_MJIT`. This change remove `--enable/disable-install-mjit-header` option. * Makefile.in: introduce the `ENABLE_MJIT` variable. * common.mk: use `ENABLE_MJIT` option. * internal.h: respect `USE_MJIT`. Same as other *.c, *.h. * test/ruby/test_jit.rb: check `ENABLE_MJIT` key of rbconfg.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-10version.c: MKSTR for fake.rbnobu
* version.c (Init_ruby_description): fake.rb needs MKSTR to extract constant names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-10version.c: separate Init_ruby_descriptionnobu
* version.c (Init_ruby_description): separate to initialize RUBY_DESCRIPTION constant according to mjit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-02-24version.h: get rid of duplicationnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-02-22version.c: show +JIT when --jit is passedk0kubun
in version output. version.h: ditto ruby.c: propagate option for it common.mk: updated dependency for version.c mjit.c: overwrites the RUBY_DESCRIPTION to have +JIT when --jit is passed test/ruby/test_rubyoptions.rb: add test for them Only `ruby --jit -v` will have "+JIT", but this is intentional. This may not be convenient for debugging by ticket with `ruby -v`, but it's convenient for benchmark tools that pass options (--jit) when showing it. At least such behavior is planned for benchmark_driver.gem and this behavior is designed for it. Other benchmark tools are recommended to follow the behavior too if they show version. RUBY_DESCRIPTION might be useful for it too. The position of "+JIT" is changed from original proposal because other platforms like JRuby and TruffleRuby end it with archtecture. It's made similar to JRuby, but it's upper-cased because Matz made approval for "+JIT" in the ticket. Example: $ ruby -v ruby 2.6.0dev (2018-02-22 trunk 62529) [x86_64-linux] $ ruby --jit -v ruby 2.6.0dev (2018-02-22 trunk 62529) +JIT [x86_64-linux] After --jit is made default in the future, this output may be removed. So do not rely on this output if possible. [Feature #14462] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-07version.c: no exit in ruby_show_copyrightnobu
* include/ruby/backward.h (ruby_show_copyright_to_die): for source code backward compatibility. * ruby.c (process_options): return Qtrue to exit the process successfully. * version.c (ruby_show_copyright): no longer exit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-29version.c: remove ruby_engine_namenobu
* ruby.c (load_file_internal, ruby_process_options): share ruby_engine instead of literal strings. * version.c (Init_version): remove internal `ruby_engine_name`, but set the VM program name in addition to the global constant. * vm_backtrace.c (location_to_str, oldbt_init): use th eVM program name always. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-11fake.rb.in: scan version.cnobu
* template/fake.rb.in: scan MKSTR and MKINT from version.c and then extract the value for them from version.i. * version.c (Init_version): use MKINT as the marker. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-10fake.rb.in: accurate fakenobu
* template/fake.rb.in: turn into erb template from autoconf template to fake more accurately. * common.mk (fake.rb): needs preprocessed file now. * version.c (Init_version): add dummy expression to RUBY_ENGINE_VERSION. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-09version.c: use str_new_staticnobu
* version.c (MKSTR): always make from static strings for sizeof operator. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-08version.c: support RUBY_ENGINE_VERSIONnobu
* version.c (Init_version): the version of the engine or interpreter. [Fix GH-858] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-18version.c: last commit titlenobu
* version.c (ruby_show_version): show last commit title, if different than the trunk. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-05version.c: show malloc_confnobu
* configure.in (jemalloc): check for the header regardless drop-in libjemalloc is found, for `malloc_conf` declaration. * version.c (ruby_show_version): show `malloc_conf` if set. [Feature #9113] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-28version.c: EXIT_SUCCESSnobu
* version.c (ruby_show_copyright): use EXIT_SUCCESS instead of magic number 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-15loadpath.c: splitnobu
* loadpath.c: split load path staffs from version.c. * dmyloadpath.c: miniruby has no builtin load paths, so verconf.h is not needed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-18version.c: move ruby_exec_prefixnobu
* version.c (ruby_exec_prefix): move all path configuration stuffs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-09configure.in: empty versionnobu
* configure.in, version.c: prevent duplicated load paths by empty version string, it does not work right now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06configure.in: architecture namenobu
* configure.in, version.c: parametric architecture name for paths. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-14* eval.c: Add doxygen comments.yugui
* ruby.c: ditto. * thread_pthread.c: ditto * version.c: ditto. * vm_core.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-27* configure.in (verconf.h): separate load path specific stuff fromnobu
config.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-29 * math.c: Attach documentation for Math.drbrain
* object.c: Document NIL, TRUE, FALSE. * io.c: Improve grammar in ARGF comment. Document STDIN/OUT/ERR. Document ARGF global constant. * lib/rake: Hide deprecated toplevel constants from RDoc (import from rake trunk). * lib/thwait.rb: Document ThWait. * lib/mathn.rb: Hide Math redefinition from RDoc * lib/sync.rb: Add a basic comment for Sync_m, Synchronizer_m, Sync, Synchronizer. * parse.y: Document SCRIPT_LINES__. * hash.c: Document ENV class and global constant. * vm.c: Document TOPLEVEL_BINDING. * version.c: Document RUBY_* constants. * ruby.c: Document DATA and ARGV. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-22* configure.in (SITE_DIR, VENDOR_DIR),nobu
version.c (ruby_initial_load_paths): exclude directories that are configured without them from $LOAD_PATH. [ruby-core:33267] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23* include/ruby/version.h (RUBY_API_VERSION_*): renamed and movednobu
from version.h. [ruby-dev:42103] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-15* vm.c (vm_backtrace_each): get rid of use of malloc from signalnobu
handler by using ruby_engine_name. [ruby-core:29497] * vm_eval.c (print_backtrace): file may be nil when segfaulted in very early stage. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-17* configure.in (RUBY_EXEC_PREFIX): added to config.h.nobu
* ruby.c (ruby_init_loadpath_safe): TMP_RUBY_PREFIX should be exec_prefix, not rubylibprefix. [ruby-core:28718] * version.c (RUBY_LIB_PREFIX): fallback to RUBY_EXEC_PREFIX. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-08* dmyversion.c: empty load path in miniruby.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-25* version.c (RUBY_LIB, RUBY_*_LIB): moved from configures.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-22* version.c (ruby_initial_load_paths): moved terminating semicolon.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-05* configure.in (RUBY_LIB_VERSION): added for library version, tonobu
split from core version. [ruby-dev:37748] * configure.in (RUBY_LIB_PATH, etc): moved actual version dependent stuff to version.c. * ruby.c (ruby_init_loadpath_safe): ditto. * version.c (ruby_initial_load_paths): moved initial load path version depending on version from ruby.c. * version.h (RUBY_VERSION_{MAJOR,MINOR,TEENY}): now mean library and API version, and reverted to 1.9.1. [ruby-dev:37889] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* version.c (Init_version): add RUBY_ENGINE constant.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21auto update version.h test lasteban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21auto update version.h testeban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21auto update version.h testeban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21auto update version.h testeban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e