* ext/fiddle/closure.c: Documentation for Fiddle
* ext/fiddle/lib/fiddle/import.rb: ditto
* ext/fiddle/lib/fiddle/value.rb: ditto
* ext/fiddle/lib/fiddle/pack.rb: ditto
* ext/fiddle/lib/fiddle/cparser.rb: ditto
* ext/fiddle/lib/fiddle/struct.rb: ditto
* ext/fiddle/lib/fiddle/function.rb: ditto



git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c (thread_join): A trap handler check was moved from
  thread_join_m because Thread#value should be raised an exception
  too.
* thread.c (thread_join_m): remove trap handler check.
* test/ruby/test_thread.rb (test_thread_join_in_trap): add test
  for thread#value.
* NEWS: documentation fix for the above.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/psych/extconf.rb: use embedded libyaml if no system libyaml is
  found. [ruby-core:49463]
* ext/psych/lib/psych.rb: updating to psych 2.0.0
* ext/psych/lib/psych/deprecated.rb: updated docs
* ext/psych/psych.gemspec: updated to psych 2.0.0
* ext/psych/psych.h: fixing header file include for rename
* ext/psych/psych_emitter.c: renamed to avoid libyaml conflict.
* ext/psych/psych_emitter.h: ditto
* ext/psych/psych_parser.c: ditto
* ext/psych/psych_parser.h: ditto
* ext/psych/psych_to_ruby.c: ditto
* ext/psych/psych_to_ruby.h: ditto
* ext/psych/psych_yaml_tree.c: ditto
* ext/psych/psych_yaml_tree.h: ditto
* ext/psych/yaml/LICENSE: embedding libyaml 0.1.4
* ext/psych/yaml/api.c: ditto
* ext/psych/yaml/config.h: ditto
* ext/psych/yaml/dumper.c: ditto
* ext/psych/yaml/emitter.c: ditto
* ext/psych/yaml/loader.c: ditto
* ext/psych/yaml/parser.c: ditto
* ext/psych/yaml/reader.c: ditto
* ext/psych/yaml/scanner.c: ditto
* ext/psych/yaml/writer.c: ditto
* ext/psych/yaml/yaml.h: ditto
* ext/psych/yaml/yaml_private.h: ditto

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* properties.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c (thread_s_new): uses main_thread->status instead of
  th->inhibit_thread_creation for preventing thread creation.
* vm_core.h (rb_vm_struct): remove inhibit_thread_creation field.
* thread.c (rb_thread_terminate_all): ditto.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c (rb_mutex_lock): moved trap context check from
  rb_mutex_trylock because try_lock have no change to make
  a deadlock.
* thread.c (rb_mutex_trylock): ditto.
* NEWS: news for the above.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/psych/extconf.rb: copy sources into build directory,
  not into srcdir.



git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: revert r37911, r37906 and r37904 which break build
  with non-gcc and/or non-IA32 compilers, e.g. Solaris Studio,
  Fujitsu C Compiler. [ruby-dev:46646] [Bug #7451]


git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c (FMODE_SYNCWRITE): removed unused macro.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: fix r37294: run only on i[3-6]86-linux.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/rdoc/servlet.rb:  Add support for serving documentation from a
  subdirectory.
* lib/rdoc/generator/darkfish.rb:  ditto
* test/rdoc/test_rdoc_servlet.rb:  Test for above
* test/rdoc/test_rdoc_servlet.rb:  ditto


git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: remove Proc#== and Proc#eql?.
  Proc objects compared with thier object ids.
* test/ruby/test_proc.rb: remove related test.



git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
add ticket number [Bug #4559]

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c (struct rb_mutex_struct): add allow_trap field.
* internal.h (rb_mutex_allow_trap): added.
* thread.c (rb_mutex_lock, rb_mutex_unlock): check mutex->allow_trap.
* thread.c (mutex_sleep): remove trap check because it uses
  rb_mutex_lock and rb_mutex_unlock internally.
* thread.c (rb_mutex_allow_trap): new helper function for the above.

* io.c (io_binwrite): mark fptr->write_lock as writable in trap.

* test/ruby/test_signal.rb (test_trap_puts): test for the above.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_core.h (enum rb_thread_status): remove THREAD_TO_KILL
* vm_core.h (struct rb_thread_struct): add to_kill field
* thread.c (terminate_i): convert THREAD_TO_KILL to to_kill.
* thread.c (rb_threadptr_to_kill): ditto.
* thread.c (rb_thread_kill): ditto.
* thread.c (rb_thread_wakeup_alive): ditto.
* thread.c (thread_list_i): ditto.
* thread.c (static const char): ditto.
* thread.c (thread_status_name): ditto.
* thread.c (rb_thread_status): ditto.
* thread.c (rb_thread_inspect): ditto.
* vm_backtrace.c (thread_backtrace_to_ary): ditto.

* thread.c (rb_threadptr_execute_interrupts): fix thread status
  overwritten issue. [Bug #7450] [ruby-core:50249]

* test/ruby/test_thread.rb (test_hread_status_raise_after_kill):
  test for the above.
* test/ruby/test_thread.rb (test_thread_status_in_trap): test for
  thread status in trap.
* test/ruby/test_thread.rb (test_status_and_stop_p): remove
  Thread.control_interrupt unsafe test. Thread#kill no longer
  changes thread status. Instead of, Thread#kill receiver changes
  their own status when receiving kill signal.

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@37931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e