Граф коммитов

470 Коммитов

Автор SHA1 Сообщение Дата
ayumin 212ea12e3a add information of incompatibility about Prime.prime? [Bug #7395]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-23 15:32:19 +00:00
naruse 6b4f9210b0 * file.c (stat_birthtime): add birthtime support [Feature #9647]
* file.c (rb_stat_birthtime): add File::Stat.birthtime

* file.c (rb_file_s_birthtime): add File.birthtime

* file.c (rb_file_birthtime): add File#birthtime

* configure.in: check struct stat.st_birthtimespec.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-22 11:49:22 +00:00
naruse 210f863906 revert File::Statfs [Feature #9772]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-22 10:39:48 +00:00
akr ea1a4f2929 * ext/etc/etc.c: Etc.sysconf, Etc.confstr and IO#pathconf implemented.
* ext/etc/extconf.rb: Check sysconf(), confstr() and fpathconf().

* ext/etc/mkconstants.rb: New file.

 [ruby-core:62600] [Feature #9842]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 01:48:47 +00:00
akr 63a23dc678 * ext/etc/etc.c: Etc.uname method implemented.
* ext/etc/extconf.rb: Check uname() function.

  [ruby-core:62139] [Feature #9770]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 00:58:34 +00:00
akr 63fee73500 * configure.in: Check nextafter() availability.
* include/ruby/missing.h (nextafter): New optional declaration.

* missing/nextafter.c: New file.

* numeric.c: Float#next_float and Float#prev_float implemented.

   [ruby-core:62562] [Feature #9834]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 00:37:10 +00:00
akr ddd155842f * enum.c: Enumerable#slice_after implemented.
* enumerator.c: Enumerator::Lazy#slice_after implemented.

  Requested by Tsuyoshi Sawada.  [ruby-core:58123] [Feature #9071]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 00:06:05 +00:00
akr e56d2c385a * include/ruby/ruby.h: Hide Rational internal.
(RRational): Moved to internal.h
  (RRATIONAL): Ditto.
  (RRATIONAL_SET_NUM): Moved to rational.c.
  (RRATIONAL_SET_DEN): Ditto.

* rational.c (rb_rational_num): New function.
  (rb_rational_den): Ditto.

* include/ruby/intern.h (rb_rational_num): Declared.
  (rb_rational_den): Ditto.

*  ext/bigdecimal/bigdecimal.c: Follow the above change.

* ext/date/date_core.c: Ditto.

  [ruby-core:60665] [Feature #9513]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-17 16:37:41 +00:00
sorah fb8f7259c3 * NEWS: Add news about removal of lib/test/**/*.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-17 08:05:35 +00:00
akr 7a69a3583c * process.c (check_exec_redirect): Open the file in write mode for
redirect from [:out, :err].
  Proposed and implemented by Yusuke Endoh.
  [ruby-dev:41430] [Feature #3348]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-05 13:37:09 +00:00
akr 391fc2eeec * ext/pathname/lib/pathname.rb (Pathname#/): Aliased to Pathname#+.
Suggested by Alexey Muranov.  [ruby-core:61432] [Feature #9625]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-05 12:49:27 +00:00
akr c2a87a1fa1 * lib/time.rb (Time.strptime): Raise ArgumentError if Date._strptime
doesn't extract date information.
  Reported by tadayoshi funaba.  [ruby-core:62349]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-05 02:47:53 +00:00
akr fffbcf2867 * lib/time.rb (Time.force_zone!): Use usual local time if it has
expected offset from UTC.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 11:52:26 +00:00
nobu 7a6ebecf9e math.c: C99-like atan2
* math.c (math_atan2): return values like as expected by C99 if
  both two arguments are infinity.  based on the patch by cremno
  phobia <cremno AT mail.ru> in [ruby-core:62310].  [Feature #9799]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-04 01:23:01 +00:00
akr ca7c0fee20 [DOC]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-03 18:47:41 +00:00
nobu 38656e24be math.c: check domain of base argument
* math.c (math_log): check domain of base argument too.  raises
  Math::DomainError instead of returning NaN if the base is less
  than 0, and returns NaN instead of -infinity if both of two
  arguments are 0.  [ruby-core:62309] [Bug #9797]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-03 05:28:46 +00:00
naruse 035a4e7d72 * file.c: newly added a class File::Statfs. (experimental)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 10:35:57 +00:00
akr e419c88b0f [DOC]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-22 09:52:06 +00:00
nobu 398abd204d fix typo
* NEWS, README.EXT: fix typo.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-18 15:11:35 +00:00
nobu 609a6ebac5 string.c: share middle of a string
* string.c (rb_str_new_frozen): consider the shared string at
  middle.
* string.c (rb_str_subseq, rb_str_substr, str_byte_substr): share
  middle of a string.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-18 12:48:26 +00:00
nobu 37dffb599d string.c: rb_str_cat_cstr
* string.c (rb_str_cat): make non-buf version main.

* string.c (rb_str_cat_cstr): rename from rb_str_cat2.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-17 05:22:57 +00:00
marcandre d11d87c362 * lib/matrix.rb: Add Matrix#cofactor [fix GH-568]
Patch by gogotanaka

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-06 17:46:16 +00:00
marcandre b8ba202301 * lib/matrix.rb: Add first_minor [fix GH-568]
Patch by gogotanaka

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-06 17:45:54 +00:00
nari 7c9f1aa3d5 [DOC] Fix NEWS about Symbol GC
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-27 05:42:57 +00:00
nari e6dcb3b174 [DOC] Add NEWS about Symbol GC
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-26 14:19:10 +00:00
akr f9382d033c [DOC]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-24 13:51:28 +00:00
normal ef59670a44 st.c: use power-of-two sizes to avoid slow modulo ops
* st.c (hash_pos): use bitwise AND to avoid slow modulo op
  (new_size): power-of-two sizes for hash_pos change
  (st_numhash): adjust for common keys due to lack of prime modulo
  [Feature #9425]
* hash.c (rb_any_hash): right shift for symbols
* benchmark/bm_hash_aref_miss.rb: added to show improvement
* benchmark/bm_hash_aref_sym_long.rb: ditto
* benchmark/bm_hash_aref_str.rb: ditto
* benchmark/bm_hash_aref_sym.rb: ditto
* benchmark/bm_hash_ident_num.rb: added to prevent regression
* benchmark/bm_hash_ident_obj.rb: ditto
* benchmark/bm_hash_ident_str.rb: ditto
* benchmark/bm_hash_ident_sym.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-22 23:34:21 +00:00
nobu 81ed2d65e4 NEWS: change at r45327
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-14 04:29:36 +00:00
ktsj e38d95497f [DOC] Add NEWS about Find#find, Pathname#find.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-08 11:01:48 +00:00
zzak 60bfa43238 * NEWS: [DOC] Update doc regarding filesystem load when flushing IO [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-02 22:18:38 +00:00
usa 5c8b8c03b3 * NEWS: mention about the change of r45254.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-02 18:01:55 +00:00
naruse 0b5685a69b * string.c (sym_find): Add Symbol.find(str), which returns whether given
string is defined as symbol or not. [Feature #7854]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-02-25 16:34:00 +00:00
akr f9810d26b1 Add note about "struct RBignum is hidden.".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-02-15 02:47:19 +00:00
akr 3a541fd9aa Describe "Deprecated APIs removed." and "struct RBignum is hidden."
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-02-15 02:43:32 +00:00
akr f526784e1e * enum.c: Enumerable#{min,min_by,max,max_by} extended to take an
optional argument.
  (nmin_cmp): New function.
  (nmin_block_cmp): Ditto
  (nmin_filter): Ditto.
  (nmin_i): Ditto.
  (nmin_run): Ditto.
  (enum_min): Call nmin_run if the optional argument is given.
  (nmin_max): Ditto.
  (nmin_min_by): Ditto.
  (nmin_max_by): Ditto.

* range.c: Range#{min,max} extended to take an optional argument.
  (range_min): Call range_first if the optional argument is given.
  (range_max): Call rb_call_super if the optional argument is given.

[ruby-core:57111] [Feature #8887]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-02-14 15:45:11 +00:00
kazu da8b79b4c4 old ChangeLog and NEWS move to doc
* doc/NEWS-2.1.0: moved from NEWS
* doc/ChangeLog-2.1.0: moved ChangeLog older than created ruby_2_0_0 branch
* NEWS: NEWS for 2.2.0 that describes changes since 2.1.0
* ChangeLog: ChangeLog since created v2_1_0_rc1 tag (branch point of ruby_2_1 branch)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-25 16:05:13 +00:00
kazu b0cd40849a fix a typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-20 14:02:40 +00:00
nobu 571955c13f hash.c: revert
* hash.c (rb_hash_reject): revert to deprecated behavior, with
  warnings, due to compatibility for HashWithDifferentAccess.
  [ruby-core:59154] [Bug #9223]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-17 11:15:00 +00:00
drbrain 14e213c3c0 * NEWS (RDoc): Update version number so I don't have to change it
for the final release.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-16 20:14:50 +00:00
nobu 9931920c59 * NEWS: mention about Hash#reject.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-16 13:45:06 +00:00
shugo 9c5b2fd8aa * ext/curses, sample/curses: removed curses.
* NEWS: added an entry for the above change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-09 04:39:49 +00:00
drbrain 68e2146738 * NEWS: Update RubyGems entry with notable features.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-08 19:52:38 +00:00
naruse e54e3d70a8 edit NEWS to move texts correct places
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-08 11:04:56 +00:00
ktsj b521f42a88 * NEWS: [DOC] update NEWS about GC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-08 09:33:56 +00:00
tmm1 4876dd3fb1 gc.c: add GC.latest_gc_info()
* gc.c (struct rb_objspace): rename internal last_collection_flags to
  latest_gc_info
* gc.c (gc_latest_collection_info): add GC.latest_gc_info() with similar
  behavior to GC.stat()
* gc.c (rb_gc_latest_gc_info): new c-api for above
* gc.c (gc_stat_internal): remove :last_collection_flags from GC.stat
* gc.c (gc_profile_decode_flags): remove GC::Profiler.decode_flags
* include/ruby/intern.h (rb_gc_latest_gc_info): export new c-api
* test/ruby/test_gc.rb (class TestGc): test for new behavior
* NEWS: note about new api

* gc.c (gc_stat_internal): raise TypeError on wrong type
* gc.c (gc_stat): fix error message

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-05 10:30:38 +00:00
tmm1 241c1a5459 gc.c: expose GC.stat() to C-api via rb_gc_stat()
* include/ruby/intern.h: add rb_gc_stat() for access to GC.stat
  variables from c-api
* gc.c (rb_gc_stat): new c-api method. accepts either VALUE hash like
  GC.stat, or VALUE symbol key and returns size_t directly. the second
  form is useful to avoid allocations, i.e. for usage inside
  INTERNAL_EVENT_GC tracepoints.
* gc.c (gc_stat): add GC.stat(:key) to return single value instead of hash
* gc.c (gc_stat_internal): helper method to retrieve single or all stat values
* test/ruby/test_gc.rb (class TestGc): test for new behavior
* NEWS: note about this new api

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-05 07:45:13 +00:00
tmm1 393b9e65e9 gc.c: split GC_END event into GC_END_MARK and GC_END_SWEEP
* include/ruby/ruby.h: remove INTERNAL_EVENT_GC_END and replace with
  two new events: GC_END_MARK and GC_END_SWEEP
* gc.c (gc_after_sweep): emit GC_END_SWEEP after lazy sweep is done
* gc.c (gc_marks_body): emit GC_END_MARK at end of minor/major mark
* ext/-test-/tracepoint/tracepoint.c (struct tracepoint_track): tests
  for new events.
* test/-ext-/tracepoint/test_tracepoint.rb (class TestTracepointObj):
  ditto.
* NEWS: remove ObjectSpace.after_gc_*_hook. These are only a sample,
  and will be removed before ruby 2.1.
* ext/objspace/gc_hook.c: remove ObjectSpace.after_gc_end_hook=

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-05 04:26:04 +00:00
naruse ee7fa8b227 Add a description about string-scrub.gem to NEWS
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-03 06:30:58 +00:00
ko1 5b40cb6a2c * vm_trace.c: prohibit to specify normal events and internal events
simultaneously.
  I will introduce special care for internal events later.
* ext/-test-/tracepoint/tracepoint.c: test this behavior.
* test/-ext-/tracepoint/test_tracepoint.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 08:41:44 +00:00
tmm1 302743d3e7 * NEWS: Add ObjectSpace.after_gc_{start,end}_hook=
* ext/objspace/objspace_dump.c: [DOC] catch up dump/dump_all to r43679

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-25 21:46:00 +00:00