aboutsummaryrefslogtreecommitdiffstats
path: root/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
...
* * thread_pthread.c (rb_reserved_fd_p): fix typo in macro checkkosaki2012-11-051-0/+6
| | | | | | | | | that prevented the ifdef ever being true. [Bug #7281] [ruby-core:48940] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix compatibility of cached expanded load pathshirosaki2012-11-051-0/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * file.c (rb_get_path_check_to_string): extract from rb_get_path_check(). We change the spec not to call to_path of String object. * file.c (rb_get_path_check_convert): extract from rb_get_path_check(). * file.c (rb_get_path_check): follow the above change. * file.c (rb_file_expand_path_fast): remove check_expand_path_args(). Instead we call it in load.c. * file.c (rb_find_file_ext_safe): use rb_get_expanded_load_path() to reduce expand cost. * file.c (rb_find_file_safe): ditto. * internal.h (rb_get_expanded_load_path): add a declaration. * internal.h (rb_get_path_check_to_string, rb_get_path_check_convert): add declarations. * load.c (rb_construct_expanded_load_path): fix for compatibility. Same checks in rb_get_path_check() are added. We don't replace $LOAD_PATH and ensure that String object of $LOAD_PATH are frozen. We don't freeze non String object and expand it every times. We add arguments for expanding load path partially and checking if load path have relative paths or non String objects. * load.c (load_path_getcwd): get current working directory for checking if it's changed when getting load path. * load.c (rb_get_expanded_load_path): fix for rebuilding cache properly. We check if current working directory is changed and rebuild expanded load path cache. We expand paths which start with ~ (User HOME) and non String objects every times for compatibility. We make this accessible from other source files. * load.c (rb_feature_provided): call rb_get_path() since we changed rb_file_expand_path_fast() not to call it. * load.c (Init_load): initialize vm->load_path_check_cache. * vm.c (rb_vm_mark): mark vm->load_path_check_cache for GC. * vm_core.h (rb_vm_struct): add vm->load_path_check_cache to store data to check load path cache validity. * test/ruby/test_require.rb (TestRequire): add tests for require compatibility related to cached expanded load path. [ruby-core:47970] [Bug #7158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Cache the expanded load pathshirosaki2012-11-051-0/+20
| | | | | | | | | | | | | | | | | | | | | | * load.c (rb_get_expanded_load_path): cache the expanded load path. This saves 4KB of allocation and some stats for every element of the load path (so nearly a MB in my Rails app) on every require. * load.c (rb_construct_expanded_load_path): ensure that $LOAD_PATH entries are frozen strings. The user must mutate $LOAD_PATH itself rather than its individual entries. * vm_core.h (rb_vm_struct): add fields. * vm.c (rb_vm_mark): mark new fields. * ruby.c (process_options): modify $LOAD_PATH directly rather than its elements. Patch by Greg Price. [ruby-core:47970] [Bug #7158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Index $LOADED_FEATURES so that require isn't so slowshirosaki2012-11-051-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * load.c (rb_feature_p, rb_provide_feature): index $LOADED_FEATURES so that require isn't so slow. * load.c (rb_provide_feature, get_loaded_features_index): ensure that $LOADED_FEATURES entries are frozen strings. The user must mutate $LOADED_FEATURES itself rather than its individual entries. * load.c (reset_loaded_features_snapshot): add a new function to reset vm->loaded_features_snapshot. * load.c (get_loaded_features_index_raw): add a new function to get the loaded-features index. * load.c (features_index_add_single): add a new function to add to the loaded-features index a single feature. * load.c (features_index_add): add a new function to add to the loaded-features index all the required entries for `feature`. * vm_core.h (rb_vm_struct): add fields. * vm.c (rb_vm_mark): mark new fields. * include/ruby/intern.h (rb_hash_clear): declare function. * hash.c (rb_hash_clear): make function non-static. Patch by Greg Price. [ruby-core:47970] [Bug #7158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Expose whether two arrays are sharedshirosaki2012-11-051-0/+9
| | | | | | | | | | | * array.c (rb_ary_shared_with_p): new function. Expose whether two arrays are shared (read-only, C only). * include/ruby/intern.h (rb_ary_shared_with_p): declare. Patch by Greg Price. [ruby-core:47970] [Bug #7158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Clarify and explain loaded_feature_path and rb_feature_pshirosaki2012-11-051-0/+12
| | | | | | | | | | | | | | * load.c (loaded_feature_path): clarify and briefly comment function. These clarifications have no effect on the behavior of the function. * load.c (rb_feature_p): explain the search loop. Especially useful because the logic is complicated as described in the second paragraph. Patch by Greg Price. [ruby-core:47970] [Bug #7158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/win32/lib/Win32API.rb (Win32API#call): use 64bit pointer for x64shirosaki2012-11-051-0/+7
| | | | | | | | Windows. This would fix TestSecureRandom#test_s_random_bytes_without_openssl error. [ruby-core:47451] [Bug #6990] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * cygwin/GNUmakefile.in (uncommon.mk): link *.res.o.shirosaki2012-11-051-0/+7
| | | | | | | | EXTOBJES is defined in uncommon.mk. *.res.o setting should be below uncommon.mk. [ruby-core:48858] [Bug #7277] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_pthread.c (native_thread_init, native_thread_destroy):kosaki2012-11-051-0/+8
| | | | | | | | | | | removed HAVE_PTHREAD_CONDATTR_INIT check because this silly #ifdef makes use-uninitialized-var issue and (2) native_cond_initialize() already have a right platform and caller don't need any additional care. [Bug #6825] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/cgi/core.rb: check if Tempfile is defined before use it.naruse2012-11-051-0/+10
| | | | | | * lib/cgi/core.rb: remove tempfiles only if tempfiles exist git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/uri/http.rb (URI::HTTP.build): Fix examplezzak2012-11-051-0/+6
| | | | | | | | Patch by Carina C. Zona [Fixes #209 Github] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: Remove garbages.kou2012-11-041-3/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Sun Nov 4 20:41:28 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org>xibbar2012-11-041-0/+9
| | | | | | | | | * lib/cgi.rb, lib/cgi/*/rb: rename CGI#header to CGI#http_header, add and update HTML5 tag generater. [Bug #7110] Patch provided by Marcus Stollsteimer, thank you ! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/fileutils.rb (module FileUtils): repatch [ruby-core:39622]glass2012-11-041-0/+6
| | | | | | | [Feature #5337]. improve performance of FileUtils.compare_stream. [ruby-core:47545] [Feature #7028] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c (recursive_equal): fix to return true when self and otherglass2012-11-041-0/+8
| | | | | | | | | are resized to same size and the current index become out of range. * test/ruby/test_array.rb: add a test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dir.c: FNM_EXTGLOBnobu2012-11-041-0/+5
| | | | | | | | * dir.c (file_s_fnmatch): match with expanding braces if FNM_EXTGLOB is set. [ruby-core:40037] [Feature #5422] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: fix ML link for r37444 and r37447.nagachika2012-11-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * complex.c: modified doc.tadf2012-11-031-0/+5
| | | | | | | * rational.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/date/date_core.c: modified doc.tadf2012-11-031-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm.c (rb_vm_rewrite_ep_in_errinfo, vm_rewrite_ep_in_errinfo):ktsj2012-11-031-0/+5
| | | | | | merge code and remove `rb_vm_rewrite_ep_in_errinfo'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm.c, proc.c: avoid unnecessary `rb_vm_rewrite_ep_in_errinfo'ktsj2012-11-031-0/+5
| | | | | | calls. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: fix.ktsj2012-11-031-2/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bin/testrb: Use only Test::Unit::AutoRunner in test-unit gemkou2012-11-031-0/+9
| | | | | | | | | compatible API to be available by both test/unit bundled in Ruby and test-unit gem. * lib/test/unit.rb (Test::Unit::AutoRunner): Move codes from testrb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/date/date_parse.c (parse_eu): should capture apostrophe too.tadf2012-11-031-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/date/date_parse.c (date__parse): revised the tight parser.tadf2012-11-031-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rexml/xmldecl.rb (REXML::XMLDecl#content): Add missing \Akou2012-11-031-0/+5
| | | | | | | and \z. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rexml/output.rb (REXML::Output#initialize): Use normalizedkou2012-11-031-0/+5
| | | | | | | encoding name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rexml/output.rb (REXML::Output): Don't output BOM in middlekou2012-11-031-0/+6
| | | | | | | | of the output string. * test/rexml/test_document.rb: Add a test for the above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * NEWS: Add an item about REXML::Document#write.kou2012-11-031-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/rexml/test_document.rb: Fix tests that expect encoding namekou2012-11-031-0/+5
| | | | | | | isn't normalized. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * dir.c (Dir#glob):zzak2012-11-031-0/+7
| | | | | | | | | Documentation for pattern section, backslash subsection Patch by Eric Bouchut [ruby-core#48528] [Bug #7230] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert r37439 and r37441kou2012-11-031-14/+0
| | | | | | | | | | | | | | | | | r37439: * lib/rexml/xmldecl.rb (REXML::XMLDecl): Stop using REXML::Encoding module because XMLDecl doesn't convert encoding. This causes removing XML encoding name normalization (encoding.upcase). Encoding name in XML declaration is what user specifies. I think this is reasonable change. * test/rexml/test_xml_declaration.rb: Add tests for the above change. r37441: * test/rexml/test_core.rb (Tester#test_ticket_88): Follow the change that encoding name in XML declaration isn't normalized. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typoskazu2012-11-031-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (IO#new):zzak2012-11-031-0/+6
| | | | | | | | Documentation for IO#open modes and formatting [ruby-core#48052] [Bug #7179] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/rexml/test_encoding.rb (EncodingTester#test_in_different_out):kou2012-11-031-0/+6
| | | | | | | | Fix a test that expects encoding in XML declaration is changed by Output's encoding. It is dropped feature. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/rexml/test_core.rb (Tester#test_ticket_88): Follow thekou2012-11-031-0/+5
| | | | | | | change that encoding name in XML declaration isn't normalized. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rexml/document.rb (REXML::Document#write): Document encodingkou2012-11-031-0/+10
| | | | | | | | | | | | option. Now different encoding between XML file's encoding and XML declaration's encodiong is support. [Feature #4872] (work in progress) * lib/rexml/xmldecl.rb (REXML::XMLDecl#write): Always use XMLDecl's encoding. * test/rexml/test_document.rb: Update tests for the above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rexml/xmldecl.rb (REXML::XMLDecl): Stop using REXML::Encodingkou2012-11-031-0/+9
| | | | | | | | | | | module because XMLDecl doesn't convert encoding. This causes removing XML encoding name normalization (encoding.upcase). Encoding name in XML declaration is what user specifies. I think this is reasonable change. * test/rexml/test_xml_declaration.rb: Add tests for the above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c (recursive_equal): fix not to make invalid pointers whenglass2012-11-031-0/+6
| | | | | | | self and other are resized to same size in #== of their elements. [ruby-dev:46373] [Feature #6177] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/rexml/test_xml_declaration.rb (TestXmlDeclaration#test_*):kou2012-11-031-0/+5
| | | | | | | Remove needless prefix from test names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/rexml/test_xml_declaration_parent_child.rb: Rename to ...kou2012-11-031-0/+5
| | | | | | | * test/rexml/test_xml_declaration.rb: ... this. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * hash.c (rb_hash_delete): Correct grammarzzak2012-11-031-0/+6
| | | | | | | | Patch by Glenn Oppegard [Fixes #208 Github] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * NEWS: add a news about GC::Profiler.raw_data.nari2012-11-031-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * NEWS: add a news about rb_newobj_of() and NEWOBJ_OF().nari2012-11-031-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (f_current_dirname): add the new method for Kernel.nari2012-11-031-0/+11
| | | | | | | | | | | | This method almotst same as File.dirname(__FILE__). One different behavior is it returns nil when __FILE__ returns nil. [Feature #3346] * NEWS: ditto * test/ruby/test_method.rb: related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_refinement.rb (test_new_method_by_send,shugo2012-11-031-0/+10
| | | | | | | | | | | test_new_method_by_method_object): add tests for Kernel#send and Kernel#method with refinements. * test/ruby/test_refinement.rb (test_symbol_to_proc): add a test calling a proc created by Symbol#to_proc outside the scope where a refinement is closed over. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm.c: rewrite all catch pointsnobu2012-11-021-0/+6
| | | | | | | | | * vm.c (rb_vm_rewrite_ep_in_errinfo): rewrite all catch points in errinfo, not only the topmost frame. based on the patch by ktsj (Kazuki Tsujimoto) in [ruby-dev:45656]. [Bug #6460] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: add explanation about how performace is improved in r37420.glass2012-11-021-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: timestamp_filenobu2012-11-021-2/+5
| | | | | | | | * lib/mkmf.rb (MakeMakefile#timestamp_file): remove @ which looks like configure variables. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: timestamp_filenobu2012-11-021-0/+5
| | | | | | | | * lib/mkmf.rb (MakeMakefile#timestamp_file): use .-. instead of !, a special character of NMAKE and BSD make. [Bug #7265] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e