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

26 Коммитов

Автор SHA1 Сообщение Дата
matz d37f45cef9 * ext/syck/rubyext.c (rb_syck_mktime): return DateTime for a value
out of range of Time.   [ruby-core:19919]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-19 08:49:51 +00:00
matz 1343680398 * lib/yaml/rubytypes.rb: support Rational and Complex as 1.8
does.  a patch from Hiroshi Moriyama in [ruby-dev:36899].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-06 22:36:07 +00:00
matz 3f03878309 * lib/yaml/store.rb (YAML::load): modified to support empty
database.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-11 07:43:31 +00:00
akr bd741ee16a (test_time_now_cycle): cut off under micro second.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-01 17:24:13 +00:00
ko1 0d4761fb1a * bootstraptest/test_knownbug.rb: move fixed bugs.
* test/ruby/test_sprintf.rb: ditto.
* test/yaml/test_yaml.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-01 05:43:06 +00:00
akr a070c4fbe3 * configure.in: check struct timespec, clock_gettime, utimensat,
struct stat.st_atim,
  struct stat.st_atimespec,
  struct stat.st_atimensec,
  struct stat.st_mtim,
  struct stat.st_mtimespec,
  struct stat.st_mtimensec,
  struct stat.st_ctim,
  struct stat.st_ctimespec,
  struct stat.st_ctimensec.

* include/ruby/missing.h: provide struct timespec if not available.

* time.c: support nanosecond-resolution using struct timespec.

* include/ruby/intern.h: provide rb_time_nano_new.

* file.c (utime_internal): use utimensat if available.
  (rb_file_s_utime): refactored.
  (rb_f_test): use stat_atime, stat_mtime, stat_ctime.
  (rb_stat_cmp): check tv_nsec.
  (stat_atimespec): new function.
  (stat_atime): ditto.
  (stat_mtimespec): ditto.
  (stat_mtime): ditto.
  (stat_ctimespec): ditto.
  (stat_ctime): ditto.
  (rb_stat_atime): use stat_atime.
  (rb_file_s_atime): ditto.
  (rb_file_atime): ditto.
  (rb_stat_mtime): use stat_mtime.
  (rb_file_s_mtime): ditto.
  (rb_file_mtime): ditto.
  (rb_file_ctime): use stat_ctime.
  (rb_file_s_ctime): ditto.
  (rb_stat_ctime): ditto.

* variable.c (rb_copy_generic_ivar): clear clone's instance variables
  if obj has no instance variable.

* marshal.c (w_object): dump instance variables of generated string
  for TYPE_USERDEF, even if original object has instance variables.

* lib/time.rb (Time#xmlschema): use nsec instead of usec.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-19 09:09:38 +00:00
why 2fb73a8b0a * lib/yaml.rb (quick_emit): use combination of object_id and hash to
identify repeated object references, since GC will reuse memory of
	objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 17:54:32 +00:00
why 69c1181a9f * test/yaml/test_yaml.rb: fixed the failing YAML Struct test
at ko1's request.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 05:45:52 +00:00
ocean d54f7b05e8 * ext/syck/emitter.c (syck_emit_seq, syck_emit_map, syck_emit_item):
should output complex key mark even if map's key is empty seq/map.
  [ruby-core:7129]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-16 01:29:58 +00:00
ocean 12d3325346 * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in
ruby 1.8.3/1.8.4. [ruby-core:6115]

* lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not
  be dumped properly. [ruby-core:7047]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-10 03:50:28 +00:00
ocean 163224f639 * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted
Symbols broken. [ruby-Bugs:2535] (written by Aaron Schrab)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-10 03:05:40 +00:00
why f3d9f34537 * lib/yaml/rubytypes.rb: remove comments that are bungling up
the rdoc and ri output.  output symbols as plain scalars.

* ext/syck/rubyext.c (syck_emitter_reset): emit headless
  documents always.

* ext/syck/emitter.c (syck_scan_scalar): quote scalars with any
  kind of surrounding line space, tabs or spaces alike.

* ext/syck/token.c: accept tabs as whitespace, not for indentation,
  but strip from plain scalars.

* test/yaml/test_yaml.rb: remove outdated tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 17:22:49 +00:00
nobu 79133371e8 * ext/syck/MANIFEST, ext/syck/depend: new file.
* lib/yaml/rubytypes.rb: range of exponential floats.  [ruby-core:02824]

* test/yaml/test_yaml.rb: tests for strings start with colon and some
  round trip.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-15 04:38:39 +00:00
why c474911e5b * lib/yaml.rb: removed fallback to pure Ruby parser.
* lib/yaml/baseemitter.rb (node_text): rewriting folded scalars.

* ext/syck/syck.h: reports style of scalars now, be they plain, block
  single-, or double-quoted.

* ext/syck/syck.c: ditto.

* ext/syck/gram.c: ditto.

* ext/syck/node.c: ditto.

* ext/syck/token.c: ditto.

* ext/syck/rubyext.c (yaml_org_handler): symbols loaded only
  if scalar style is plain.

* test/yaml/test_yaml.rb (test_perl_regexp): updated test to
  match new regexp serialization.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-15 03:11:28 +00:00
nahi dd03a2ff20 * lib/csv.rb: document reduction. [ruby-core:02429]
* test/yaml/test_yaml.rb: added 0..1 test with "0".."1" on display.
          it should be defined that the specification about what kind of Range
          is supported in ruby's custom type in YAML.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-16 14:41:49 +00:00
akira ebb7ed1864 * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
added tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-08 07:21:03 +00:00
akira 54d612c27f * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
added tests. [ruby-core:02306] [ruby-core:02311]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-08 06:43:53 +00:00
nahi a84fc19203 * test/rss/test_*: do $: trick while searching a module in the current
directory.

        * test/xsd/test_xmlschemaparser.rb, test/wsdl/test_emptycomplextype.rb,
          test/soap/helloworld/test_helloworld.rb,
          test/soap/calc/{test_calc.rb,test_calc2.rb}: do File.expand_path
          before using __FILE__.

        * test/yaml/test_yaml.rb: assert_equals -> assert_equal.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-29 02:54:21 +00:00
why 877408163a * ext/syck/rubyext.c: usec round-tripping skew. [ruby-core:2305]
* lib/yaml/rubytypes.rb: character Range now round-trips. [ruby-core:2306]

* test/yaml/test_yaml.rb: add Time and Range tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-28 16:59:00 +00:00
nobu b847262c8f * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_spec_type_{int,float}):
fix syntax error.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-13 02:39:03 +00:00
why 52e0ab245a * ext/syck/bytecode.c: turn off default implicit typing.
* ext/syck/implicit.c: detect base60 integers.

* ext/syck/rubyext.c: handle base60, as well as hex and octal
  with commas.  implicit typing of ruby symbols.

* test/yaml/test_yaml.rb: add test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-12 22:55:09 +00:00
why b75b9455ac * lib/yaml/rubytypes.rb: comments in strings. [ruby-talk:88012]
* test/yaml/test_yaml.rb: add test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-15 18:17:43 +00:00
nobu acf4da163a * test/yaml/test_yaml.rb (test_ruby_struct): struct name din not match.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-13 00:02:30 +00:00
why ff2a47eb99 * lib/yaml/rubytypes.rb: anonymous struct fix. [ruby-core:01946]
* test/yaml/test_yaml.rb: add test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-12 18:08:58 +00:00
matz 6212cfb9c5 * gc.c (Init_stack): stack region is far smaller than usual if
pthread is used.

* marshal.c (w_extended): singleton methods should not be checked
  when dumping via marshal_dump() or _dump(). [ruby-talk:85909]

* file.c (getcwdofdrv): avoid using getcwd() directly, use
  my_getcwd() instead.

* merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
  <sunshine@sunshineco.com>.  [ruby-core:01596]

* marshal.c (w_object): LINK check earlier than anything else,
  i.e. do not dump TYPE_IVAR for already dumped objects.
  (ruby-bugs PR#1220)

* eval.c (rb_eval): call "inherited" only when a new class is
  generated; not on reopening.

* eval.c (eval): prepend error position in evaluating string to

* configure.in: revived NextStep, OpenStep, and Rhapsody ports which
  had become unbuildable; enhanced --enable-fat-binary option so that
  it accepts a list of desired architectures (rather than assuming a
  fixed list), or defaults to a platform-appropriate list if user does
  not provide an explicit list; made the default list of architectures
  for MAB (fat binary) more comprehensive; now uses -fno-common even
  when building the interpreter (in addition to using it for
  extensions), thus allowing the interpreter to be embedded into a
  plugin module of an external project (in addition to allowing
  embedding directly into an application); added checks for
  <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
  ensures that -I/usr/local/include is employed when extensions'
  extconf.rb scripts invoke have_header() since extension checks on
  NextStep and OpenStep will fail without it if the desired resource
  resides in the /usr/local tree; fixed formatting of --help message.

* Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
  invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
  (see configure's --enable-fat-binary option); added rule for new
  missing/getcwd.c.

* defines.h: fixed endian handling during MAB build (see configure's
  --enable-fat-binary option) to ensure that all portions of the
  project see the correct WORDS_BIGENDIAN value (some extension modules
  were getting the wrong endian setting); added missing constants
  GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
  and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
  define in NeXT section.

* dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
  NextStep since, on some installations, this value always resolves
  uselessly to zero.

* dln.c: added error reporting to NextStep extension loader since the
  previous behavior of failing silently was not useful; now ensures
  that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
  for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
  on Rhapsody since this header lacks multiple-include protection,
  which resulted in "redefinition" compilation errors.

* main.c: also create hard reference to objc_msgSend() on NeXT
  platforms (in addition to Apple platforms).

* lib/mkmf.rb: now exports XCFLAGS from configure script to extension
  makefiles so that extensions can be built MAB (see configure's
  --enable-fat-binary option); also utilize XCFLAGS in cc_command()
  (but not cpp_command() because MAB flags are incompatible with
  direct invocation of `cpp').

* ext/curses/extconf.rb: now additionally checks for presence of these
  curses functions which are not present on NextStep or Openstep:
  bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
  setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
  wscrl(), wsetscrreg()

* ext/curses/curses.c: added appropriate #ifdef's for additional set of
  curses functions now checked by extconf.rb; fixed curses_bkgd() and
  window_bkgd() to correctly return boolean result rather than numeric
  result; fixed window_getbkgd() to correctly signal an error by
  returning nil rather than -1.

* ext/etc/etc.c: setup_passwd() and setup_group() now check for null
  pointers before invoking rb_tainted_str_new2() upon fields extracted
  from `struct passwd' and `struct group' since null pointers in some
  fields are common on NextStep/OpenStep (especially so for the
  `pw_comment' field) and rb_tainted_str_new2() throws an exception
  when it receives a null pointer.

* ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup().

* ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
  gethostbyaddr(), and gethostbyname() from (const char*) to non-const
  (char*) for older platforms such as NextStep and OpenStep.

* ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup(); include
  <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
  argument of gethostbyaddr() and getservbyname() from (const char*) to
  non-const (char*) for older platforms.

* ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-22 04:00:03 +00:00
why df0e9dbe97 * ext/syck/rubyext.c: default keys handled.
* ext/syck/syck.h: lowered default buffer size to 16k for increased
  performance.

* test/yaml: checkin of basic unit tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-03 19:51:25 +00:00