1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test
luislavena 86df08dac6 Improve require/File.expand_path performance on Windows
* configure.in (mingw): add shlwapi to the list of dependency
  libs for Windows.
* win32/Makefile.sub (EXTSOLIBS): ditto.

* internal.h: declare internal functions rb_w32_init_file,
  rb_file_expand_path_internal and rb_file_expand_path_fast.

* file.c (Init_File): invoke Windows initialization rb_w32_init_file

* win32/file.c (rb_file_load_path_internal): new function.
  Windows-specific implementation that replaces file_expand_path.
  [Bug ][ruby-core:46996]

* win32/file.c (rb_w32_init_file): new function. Initialize codepage
  cache for faster conversion encodings lookup.

* file.c (file_expand_path): rename to rb_file_expand_path_internal.
  Conditionally exclude from Windows.

* file.c (rb_file_expand_path_fast): new function. delegates to
  rb_file_expand_path_internal without performing a hit to the
  filesystem.

* file.c (file_expand_path_1): use rb_file_expand_path_internal without
  path expansion (used by require).
* file.c (rb_find_file_ext_safe): ditto.
* file.c (rb_find_file_safe): ditto.

* load.c (rb_get_expanded_load_path): use rb_file_expand_path_fast.
* load.c (rb_feature_provided): ditto.

* file.c (rb_file_expand_path): use rb_file_expand_path_internal with
  path expansion.
* file.c (rb_file_absolute_path): ditto.

* test/ruby/test_file_exhaustive.rb: new tests to exercise
  rb_file_expand_path_internal implementation and compliance with
  existing behaviors.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-24 03:44:56 +00:00
..
-ext- test_printf.rb: need to be infected 2012-08-16 02:52:09 +00:00
base64
benchmark * lib/benchmark.rb: Fix Benchmark.benchmark output with an empty 2012-07-18 03:56:58 +00:00
bigdecimal
cgi * lib/cgi/util.rb (CGI.escapeHTML): use ' 2012-08-21 22:30:47 +00:00
coverage
csv remove trainling spaces. 2012-08-21 04:50:18 +00:00
date * ext/date/date_core.c: [ruby-core:47226]. 2012-08-22 10:42:15 +00:00
dbm
digest ext/digest/digest.c (hexencode_str_new): return an ASCII string 2012-08-01 13:30:51 +00:00
dl
drb remove trainling spaces. 2012-08-21 04:50:18 +00:00
erb * lib/cgi/util.rb (CGI.escapeHTML): use ' 2012-08-21 22:30:47 +00:00
etc * test/etc/test_etc.rb (TestEtc#test_getpwuid): `s' is never set to nil. 2012-08-06 02:20:47 +00:00
fiddle
fileutils make FileUtils tests safe when interrupting in setup 2012-08-21 11:32:18 +00:00
gdbm Suppress warnings. 2012-07-25 06:49:35 +00:00
io
irb
json
logger
matrix
minitest Imported minitest 3.3.0 (r7676) 2012-08-21 00:39:57 +00:00
misc
mkmf test_framework.rb: show mkmf.log on failure 2012-08-01 22:29:58 +00:00
monitor
net Refix r36678: switch with zlib and check content-encoding. 2012-08-10 10:53:18 +00:00
nkf
objspace
open-uri * test/open-uri/test_open-uri.rb (TestOpenURI#test_read_timeout): this 2012-08-23 02:35:01 +00:00
openssl remove trainling spaces. 2012-08-21 04:50:18 +00:00
optparse
ostruct
pathname
psych * ext/syck: removed. Fixes [ruby-core:43360] 2012-08-22 17:43:16 +00:00
rake remove trainling spaces. 2012-08-21 04:50:18 +00:00
rdoc
readline
resolv
rexml Suppress warnings. 2012-07-23 21:37:39 +00:00
rinda
ripper remove trainling spaces. 2012-08-21 04:50:18 +00:00
rss Suppress warnings. 2012-07-23 21:37:39 +00:00
ruby Improve require/File.expand_path performance on Windows 2012-08-24 03:44:56 +00:00
rubygems * lib/rubygems/test_case.rb: run test with psych if exist. 2012-08-22 02:22:03 +00:00
scanf
sdbm
socket Show nd6 options and whether the packet is reached to the server or not. 2012-07-24 03:09:32 +00:00
stringio
strscan
syslog * syslog/test_syslog_logger.rb: miss. 2012-08-06 02:11:58 +00:00
testunit * test/testunit/tests_for_parallel/ptest_forth.rb: added a test case 2012-08-21 00:07:32 +00:00
thread
uri * test/uri/test_generic.rb (URI#test_find_proxy): add tests with empty *_proxy env variables. 2012-07-22 16:55:55 +00:00
webrick
win32ole * test/win32ole/test_win32ole_variant.rb: setting WIN32OLE.locale 2012-08-06 10:21:12 +00:00
xmlrpc
zlib * ext/zlib/zlib.c: Added streaming support to inflate processing. 2012-07-10 18:28:40 +00:00
inlinetest.rb
profile_test_all.rb
runner.rb runner.rb: no installed gems 2012-08-03 08:21:55 +00:00
test_cmath.rb
test_curses.rb
test_delegate.rb
test_find.rb
test_ipaddr.rb
test_mathn.rb
test_mutex_m.rb
test_open3.rb
test_pp.rb Kernel#inspect: improve consistency and do not call #to_s. 2012-08-15 11:50:01 +00:00
test_prettyprint.rb
test_prime.rb
test_pstore.rb
test_pty.rb
test_securerandom.rb Suppress warnings. 2012-07-25 06:49:35 +00:00
test_set.rb
test_shellwords.rb
test_singleton.rb
test_syslog.rb
test_tempfile.rb
test_time.rb
test_timeout.rb
test_tmpdir.rb
test_tracer.rb
test_tsort.rb
test_weakref.rb
with_different_ofs.rb