Commit graph

3533 commits

Author SHA1 Message Date
tenderlove
4ed82ae5cb * ext/psych/lib/psych/streaming.rb: refactor streaming methods to a
module.
* ext/psych/lib/psych/stream.rb: extracted streaming specific methods
  to a module.
* ext/psych/lib/psych/json/stream.rb: JSON stream inherits from
  JSONTree and includes streaming methods.
* ext/psych/lib/psych/visitors/json_tree.rb: JSON does not support
  object references, so remove object reference testing when building
  JSON trees.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 18:09:38 +00:00
tenderlove
10ec858f40 should have used anchor, not oid
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 18:09:27 +00:00
tenderlove
846b8118df * ext/psych/lib/psych/visitors/yaml_tree.rb (accept): use Hash#key?
when looking up object references to err on the side of cache
  misses.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 17:42:50 +00:00
tenderlove
8b5a3b7d39 * ext/psych/lib/psych/json/yaml_events.rb: refactoring JSON event
handling methods to a module for reuse.
* ext/psych/lib/psych/json/tree_builder.rb: AST builder uses JSON
  event methods.
* ext/psych/lib/psych/json/stream.rb: stream emitter uses JSON event
  methods.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 02:00:43 +00:00
tenderlove
6f37c467d4 * ext/psych/lib/psych/json/stream.rb: do not emit custom tags in maps
or sequences when emitting JSON.
* ext/psych/lib/psych/json/tree_builder.rb: do not emit custom tags in
  sequences when emitting JSON.
* test/psych/json/test_stream.rb: tests for custom stream emits.
* test/psych/test_json_tree.rb: tests for JSON emits.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 01:56:10 +00:00
tenderlove
816c7900fd moving autoload to require so that the correct files are required
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 01:49:41 +00:00
tenderlove
73af8137d9 * ext/psych/lib/psych/json/ruby_events.rb: DRY up ruby event handling
for JSON.
* ext/psych/lib/psych/visitors/json_tree.rb: use ruby events module
* ext/psych/lib/psych/json/stream.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 01:06:34 +00:00
tenderlove
6673f4e8af * ext/psych/lib/psych/json/stream.rb: fix JSON stream emits to use
double quotes during stream.
* test/psych/json/test_stream.rb: tests to reflect changes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-21 01:02:41 +00:00
akr
408a903c99 * ext/openssl/ossl_cipher.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-20 10:59:48 +00:00
akr
1343f8c536 * ext/openssl/ossl_bn.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-19 15:47:21 +00:00
akr
5206119844 * ext/openssl/ossl.h: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-17 12:33:07 +00:00
akr
7bcc7db83b * ext/openssl/openssl_missing.h: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-16 11:17:39 +00:00
akr
85caed4721 * ext/gdbm/gdbm.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-15 12:38:11 +00:00
akr
8f59ed795d * ext/fiddle/conversions.h: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-14 12:04:28 +00:00
akr
bc2abdcac4 * ext/curses/curses.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-13 22:35:29 +00:00
nobu
58b325366d * thread.c (rb_thread_io_blocking_region): new function to run
blocking region with GIL released, for fd.
* thread.c (rb_thread_fd_close): implement.  [ruby-core:35203]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-12 05:44:23 +00:00
akr
698960439d * ext/dl/cfunc.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-11 14:17:24 +00:00
akr
ac2c1a2968 * ext/dl/dl.h: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-10 14:12:57 +00:00
akr
2cc0240078 * ext/pty/pty.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-09 14:12:02 +00:00
akr
08a4d1af3f * ext/etc/etc.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-08 15:47:52 +00:00
nobu
088474a20d * ext/pty/pty.c (chfunc): suppress a warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-06 05:38:11 +00:00
nobu
b5f628a84a * ext/json/lib/json/common.rb (JSON::MissingUnicodeSupport.iconv):
should not drop rest of the result.  use Iconv.conv instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-06 04:48:49 +00:00
akr
adfcc591a8 * ext/dbm/dbm.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-06 02:29:49 +00:00
nobu
d8ebf3829f * ext/syck/rubyext.c (syck_node_init_copy): SyckNode is not
copiable.  [ruby-core:35094]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 03:05:35 +00:00
nobu
74e6dd4078 * ext/openssl/ossl_cipher.c (ossl_cipher_alloc): leave data ptr
NULL.
* ext/openssl/ossl_cipher.c (ossl_cipher_new, ossl_cipher_initialize):
  allocate internal structure.  [ruby-core:35094]
* ext/openssl/ossl_cipher.c (ossl_cipher_copy): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 02:48:55 +00:00
nobu
1069e5d665 * ext/json/parser/parser.h (GET_PARSER): raise TypeError.
* ext/json/parser/parser.rl (cParser_initialize): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 02:29:18 +00:00
nobu
9cc62abc6b * ext/json/parser/parser.h (GET_PARSER): check if initialized.
[ruby-core:35079]
* ext/json/parser/parser.rl (cParser_initialize): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 01:30:01 +00:00
nobu
bc1e4b4e2a * ext/json/parser/parser.rl: add local variables for emacs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 01:13:41 +00:00
nobu
b6371b55de * ext/zlib/zlib.c (gzfile_reader_get_unused): no need to dup
before rb_str_resurrect.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-03 15:15:04 +00:00
akr
41d0788e40 * ext/curses/curses.c (CHECK): unused macro removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-03 11:05:13 +00:00
naruse
b4940b61e3 e ext/zlib/zlib.c (gzfile_reader_get_unused): use rb_str_resurrect
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-03 09:56:52 +00:00
naruse
d6d24991bd * ext/zlib/zlib.c (gzfile_reader_get_unused): use rb_str_new_shared
because gz->z.input is hidden string. [ruby-core:35057]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-03 09:35:55 +00:00
tenderlove
b93c74c6e8 * ext/psych/lib/psych/visitors/to_ruby.rb: use Regexp::NOENCODING
rather than magic number.
* ext/syck/lib/syck/rubytypes.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-02 22:22:26 +00:00
tenderlove
cc6b1b3c8d * ext/psych/lib/psych/visitors/to_ruby.rb: ARG_ENCODING_NONE regular
expressions can round trip. [ruby-core:34969]
* test/psych/test_yaml.rb: test for ARG_ENCODING_NONE regex
* ext/sych/lib/syck/rubytypes.rb: ARG_ENCODING_NONE regular
  expressions can round trip.
* test/syck/test_yaml.rb: test for ARG_ENCODING_NONE regex

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-02 22:05:15 +00:00
nobu
f4234c9b8f * ext/io/console/console.c (console_set_winsize): new method to set
console size.  [EXPERIMENTAL]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-31 23:01:46 +00:00
nobu
c90d5be882 * ext/io/console/console.c (console_winsize): use GetWriteFD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-31 22:56:07 +00:00
nobu
f989f7c7ea * string.c (rb_str_ellipsize): new function to ellipsize a string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-30 04:01:58 +00:00
naruse
5323407175 * ext/openssl/ossl_bn.c (GetBNPtr): add missing nil case.
patched by Martin Bosslet. [ruby-core:34987]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-29 18:48:24 +00:00
kosaki
cb96213fad * ext/dbm/extconf.rb: Added new header places for Fedora13.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 12:58:15 +00:00
akr
f6de1a3f00 * ext/zlib/zlib.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 12:49:53 +00:00
nahi
0522ffd51f * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): OpenSSL::ASN1.decode
should reject indefinite length primitive encodings as that is
          illegal. Patch by Martin Bosslet. See #4324.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-26 08:17:01 +00:00
nobu
7a6113d6b6 * string.c (rb_string_value_cstr): rb_str_modify can change
RSTRING_PTR.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-24 22:00:55 +00:00
tenderlove
18e3c52bc4 reverting r30628 since this seems like a bug in libyaml
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-22 22:43:41 +00:00
tenderlove
6e5aa6311a * ext/psych/lib/psych/visitors/to_ruby.rb: fixing merge key support
when multiple merge keys are specified.
* test/psych/test_merge_keys.rb: tests for multi-merge key support

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-22 02:51:14 +00:00
tenderlove
5b1c06c74b * ext/psych/lib/psych/visitors/to_ruby.rb: merge keys are actually
part of YAML 1.1, so they should be supported.  Remove warning and
  merge keys to parent.  [ruby-core:34679]
* test/psych/test_merge_keys.rb: test for merge keys

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30629 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-22 02:34:50 +00:00
tenderlove
7b876e65ed * ext/psych/parser.c (parse): fixing off-by-one error on line numbers
in parse exceptions.  [ruby-core:34690]
* test/psych/test_parser.rb: test for error

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-22 02:23:12 +00:00
tenderlove
8dd3a4af66 * ext/psych/parser.c (parse): add the file name to the exception when
parse errors occur.
* test/psych/test_parser.rb: test for parse error file name

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-22 01:26:40 +00:00
tenderlove
0331314d27 * ext/psych/parser.c (parse): fix assertion error when reusing a
parser after an exception has been raised
* test/psych/test_parser.rb: test for assertion error

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-22 01:13:52 +00:00
tenderlove
960720ef4f * ext/psych/lib/psych/nodes/node.rb: Make Psych::Nodes::Node
enumerable.
* ext/psych/lib/psych/visitors/depth_first.rb: Add a depth-first
  visitor to enumerate over a YAML AST in a depth-first fashion
* test/psych/nodes/test_enumerable.rb: test for enumerating nodes
* test/psych/visitors/test_depth_first.rb: test for depth-first
  visitor

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-21 19:11:53 +00:00
tenderlove
74b0a7a06f * ext/psych/lib/psych/visitors/json_tree.rb: Fix JSON emit for
DateTime and Time classes.
* test/psych/test_json_tree.rb: test for JSON emit

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-20 00:20:57 +00:00