psych 2.0.3 → 2.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a1a904cdbd6c9e16a3b3857c895342397510bc5a
4
- data.tar.gz: b4c98d184e105fce013d938635273f8e96ec7ce1
3
+ metadata.gz: 19e0438e0f11c78efb5dedbb0f0e8f727d836658
4
+ data.tar.gz: f580bcc3ef9f64d36a7874c4142a3ee93468e83e
5
5
  SHA512:
6
- metadata.gz: 1a1e6b690f408452c7b0f997ec8dc2c0b904ce3741bed5c9c571c0991b656296a7033e291fe37024f4f068807cf2828fe464a9369955666a4bf73f2efe31c67d
7
- data.tar.gz: de45125a31f1e676f80c25cf34be04bb27c0da721baa92a548fbda4154a52d8169722b832f3a656eee8b2fd66435bd2f24634e2542552ce99113658fe4251764
6
+ metadata.gz: cb94e783648d0e138b975ee924630a9142904175add0314cdf0a8f963be80ccdb0cadd6fc540edeb009be04db05b091b7c915427d82af64687cb8660bac03105
7
+ data.tar.gz: 9bd7dbafd37f191394e492c0ad45652085be2577b64c467a997164d6d8424be48cec092768ce74dd2a35c48b320f97d54c7c42afffa81b3c19160c3cfdf097f3
@@ -1,3 +1,7 @@
1
+ Wed Feb 5 10:11:36 2014 Zachary Scott <e@zzak.io>
2
+
3
+ * ext/psych/yaml/config.h: bump libyaml to 0.1.5
4
+
1
5
  Wed Feb 5 04:16:41 2014 Aaron Patterson <aaron@tenderlovemaking.com>
2
6
 
3
7
  * ext/psych/yaml/emitter.c: merge libyaml 0.1.5
@@ -822,6 +822,7 @@ yaml_scalar_event_initialize(yaml_event_t *event,
822
822
  yaml_char_t *anchor_copy = NULL;
823
823
  yaml_char_t *tag_copy = NULL;
824
824
  yaml_char_t *value_copy = NULL;
825
+ size_t value_length;
825
826
 
826
827
  assert(event); /* Non-NULL event object is expected. */
827
828
  assert(value); /* Non-NULL anchor is expected. */
@@ -839,16 +840,19 @@ yaml_scalar_event_initialize(yaml_event_t *event,
839
840
  }
840
841
 
841
842
  if (length < 0) {
842
- length = strlen((char *)value);
843
+ value_length = strlen((char *)value);
844
+ }
845
+ else {
846
+ value_length = (size_t)length;
843
847
  }
844
848
 
845
- if (!yaml_check_utf8(value, length)) goto error;
846
- value_copy = yaml_malloc(length+1);
849
+ if (!yaml_check_utf8(value, value_length)) goto error;
850
+ value_copy = yaml_malloc(value_length+1);
847
851
  if (!value_copy) goto error;
848
- memcpy(value_copy, value, length);
849
- value_copy[length] = '\0';
852
+ memcpy(value_copy, value, value_length);
853
+ value_copy[value_length] = '\0';
850
854
 
851
- SCALAR_EVENT_INIT(*event, anchor_copy, tag_copy, value_copy, length,
855
+ SCALAR_EVENT_INIT(*event, anchor_copy, tag_copy, value_copy, value_length,
852
856
  plain_implicit, quoted_implicit, style, mark, mark);
853
857
 
854
858
  return 1;
@@ -1202,6 +1206,8 @@ yaml_document_add_scalar(yaml_document_t *document,
1202
1206
  yaml_char_t *tag_copy = NULL;
1203
1207
  yaml_char_t *value_copy = NULL;
1204
1208
  yaml_node_t node;
1209
+ size_t value_length;
1210
+ ptrdiff_t ret;
1205
1211
 
1206
1212
  assert(document); /* Non-NULL document object is expected. */
1207
1213
  assert(value); /* Non-NULL value is expected. */
@@ -1215,19 +1221,26 @@ yaml_document_add_scalar(yaml_document_t *document,
1215
1221
  if (!tag_copy) goto error;
1216
1222
 
1217
1223
  if (length < 0) {
1218
- length = strlen((char *)value);
1224
+ value_length = strlen((char *)value);
1225
+ }
1226
+ else {
1227
+ value_length = (size_t)length;
1219
1228
  }
1220
1229
 
1221
- if (!yaml_check_utf8(value, length)) goto error;
1222
- value_copy = yaml_malloc(length+1);
1230
+ if (!yaml_check_utf8(value, value_length)) goto error;
1231
+ value_copy = yaml_malloc(value_length+1);
1223
1232
  if (!value_copy) goto error;
1224
- memcpy(value_copy, value, length);
1225
- value_copy[length] = '\0';
1233
+ memcpy(value_copy, value, value_length);
1234
+ value_copy[value_length] = '\0';
1226
1235
 
1227
- SCALAR_NODE_INIT(node, tag_copy, value_copy, length, style, mark, mark);
1236
+ SCALAR_NODE_INIT(node, tag_copy, value_copy, value_length, style, mark, mark);
1228
1237
  if (!PUSH(&context, document->nodes, node)) goto error;
1229
1238
 
1230
- return document->nodes.top - document->nodes.start;
1239
+ ret = document->nodes.top - document->nodes.start;
1240
+ #if PTRDIFF_MAX > INT_MAX
1241
+ if (ret > INT_MAX) goto error;
1242
+ #endif
1243
+ return (int)ret;
1231
1244
 
1232
1245
  error:
1233
1246
  yaml_free(tag_copy);
@@ -1255,6 +1268,7 @@ yaml_document_add_sequence(yaml_document_t *document,
1255
1268
  yaml_node_item_t *top;
1256
1269
  } items = { NULL, NULL, NULL };
1257
1270
  yaml_node_t node;
1271
+ ptrdiff_t ret;
1258
1272
 
1259
1273
  assert(document); /* Non-NULL document object is expected. */
1260
1274
 
@@ -1272,7 +1286,11 @@ yaml_document_add_sequence(yaml_document_t *document,
1272
1286
  style, mark, mark);
1273
1287
  if (!PUSH(&context, document->nodes, node)) goto error;
1274
1288
 
1275
- return document->nodes.top - document->nodes.start;
1289
+ ret = document->nodes.top - document->nodes.start;
1290
+ #if PTRDIFF_MAX > INT_MAX
1291
+ if (ret > INT_MAX) goto error;
1292
+ #endif
1293
+ return (int)ret;
1276
1294
 
1277
1295
  error:
1278
1296
  STACK_DEL(&context, items);
@@ -1300,6 +1318,7 @@ yaml_document_add_mapping(yaml_document_t *document,
1300
1318
  yaml_node_pair_t *top;
1301
1319
  } pairs = { NULL, NULL, NULL };
1302
1320
  yaml_node_t node;
1321
+ ptrdiff_t ret;
1303
1322
 
1304
1323
  assert(document); /* Non-NULL document object is expected. */
1305
1324
 
@@ -1317,7 +1336,11 @@ yaml_document_add_mapping(yaml_document_t *document,
1317
1336
  style, mark, mark);
1318
1337
  if (!PUSH(&context, document->nodes, node)) goto error;
1319
1338
 
1320
- return document->nodes.top - document->nodes.start;
1339
+ ret = document->nodes.top - document->nodes.start;
1340
+ #if PTRDIFF_MAX > INT_MAX
1341
+ if (ret > INT_MAX) goto error;
1342
+ #endif
1343
+ return (int)ret;
1321
1344
 
1322
1345
  error:
1323
1346
  STACK_DEL(&context, pairs);
@@ -1,11 +1,11 @@
1
1
 
2
2
  #define PACKAGE_NAME "yaml"
3
3
  #define PACKAGE_TARNAME "yaml"
4
- #define PACKAGE_VERSION "0.1.4"
5
- #define PACKAGE_STRING "yaml 0.1.4"
4
+ #define PACKAGE_VERSION "0.1.5"
5
+ #define PACKAGE_STRING "yaml 0.1.5"
6
6
  #define PACKAGE_BUGREPORT "http://pyyaml.org/newticket?component libyaml"
7
7
  #define PACKAGE_URL ""
8
8
  #define YAML_VERSION_MAJOR 0
9
9
  #define YAML_VERSION_MINOR 1
10
- #define YAML_VERSION_PATCH 4
11
- #define YAML_VERSION_STRING "0.1.4"
10
+ #define YAML_VERSION_PATCH 5
11
+ #define YAML_VERSION_STRING "0.1.5"
@@ -221,7 +221,7 @@ yaml_emitter_write_indent(yaml_emitter_t *emitter);
221
221
 
222
222
  static int
223
223
  yaml_emitter_write_indicator(yaml_emitter_t *emitter,
224
- char *indicator, int need_whitespace,
224
+ const char *indicator, int need_whitespace,
225
225
  int is_whitespace, int is_indention);
226
226
 
227
227
  static int
@@ -517,7 +517,7 @@ yaml_emitter_emit_stream_start(yaml_emitter_t *emitter,
517
517
  if (emitter->best_width < 0) {
518
518
  emitter->best_width = INT_MAX;
519
519
  }
520
-
520
+
521
521
  if (!emitter->line_break) {
522
522
  emitter->line_break = YAML_LN_BREAK;
523
523
  }
@@ -607,7 +607,7 @@ yaml_emitter_emit_document_start(yaml_emitter_t *emitter,
607
607
  if (!yaml_emitter_write_indent(emitter))
608
608
  return 0;
609
609
  }
610
-
610
+
611
611
  if (event->data.document_start.tag_directives.start
612
612
  != event->data.document_start.tag_directives.end) {
613
613
  implicit = 0;
@@ -721,7 +721,7 @@ yaml_emitter_emit_document_end(yaml_emitter_t *emitter,
721
721
  }
722
722
 
723
723
  /*
724
- *
724
+ *
725
725
  * Expect a flow item node.
726
726
  */
727
727
 
@@ -1402,7 +1402,7 @@ yaml_emitter_analyze_anchor(yaml_emitter_t *emitter,
1402
1402
  {
1403
1403
  size_t anchor_length;
1404
1404
  yaml_string_t string;
1405
-
1405
+
1406
1406
  anchor_length = strlen((char *)anchor);
1407
1407
  STRING_ASSIGN(string, anchor, anchor_length);
1408
1408
 
@@ -1784,7 +1784,7 @@ yaml_emitter_write_indent(yaml_emitter_t *emitter)
1784
1784
 
1785
1785
  static int
1786
1786
  yaml_emitter_write_indicator(yaml_emitter_t *emitter,
1787
- char *indicator, int need_whitespace,
1787
+ const char *indicator, int need_whitespace,
1788
1788
  int is_whitespace, int is_indention)
1789
1789
  {
1790
1790
  size_t indicator_length;
@@ -2178,7 +2178,7 @@ yaml_emitter_write_block_scalar_hints(yaml_emitter_t *emitter,
2178
2178
  yaml_string_t string)
2179
2179
  {
2180
2180
  char indent_hint[2];
2181
- char *chomp_hint = NULL;
2181
+ const char *chomp_hint = NULL;
2182
2182
 
2183
2183
  if (IS_SPACE(string) || IS_BREAK(string))
2184
2184
  {
@@ -283,6 +283,7 @@ static int
283
283
  yaml_parser_load_scalar(yaml_parser_t *parser, yaml_event_t *first_event)
284
284
  {
285
285
  yaml_node_t node;
286
+ ptrdiff_t node_index;
286
287
  int index;
287
288
  yaml_char_t *tag = first_event->data.scalar.tag;
288
289
 
@@ -300,7 +301,11 @@ yaml_parser_load_scalar(yaml_parser_t *parser, yaml_event_t *first_event)
300
301
 
301
302
  if (!PUSH(parser, parser->document->nodes, node)) goto error;
302
303
 
303
- index = parser->document->nodes.top - parser->document->nodes.start;
304
+ node_index = parser->document->nodes.top - parser->document->nodes.start;
305
+ #if PTRDIFF_MAX > INT_MAX
306
+ if (node_index > INT_MAX) goto error;
307
+ #endif
308
+ index = (int)node_index;
304
309
 
305
310
  if (!yaml_parser_register_anchor(parser, index,
306
311
  first_event->data.scalar.anchor)) return 0;
@@ -329,6 +334,7 @@ yaml_parser_load_sequence(yaml_parser_t *parser, yaml_event_t *first_event)
329
334
  yaml_node_item_t *top;
330
335
  } items = { NULL, NULL, NULL };
331
336
  int index, item_index;
337
+ ptrdiff_t node_index;
332
338
  yaml_char_t *tag = first_event->data.sequence_start.tag;
333
339
 
334
340
  if (!STACK_LIMIT(parser, parser->document->nodes, INT_MAX-1)) goto error;
@@ -347,7 +353,11 @@ yaml_parser_load_sequence(yaml_parser_t *parser, yaml_event_t *first_event)
347
353
 
348
354
  if (!PUSH(parser, parser->document->nodes, node)) goto error;
349
355
 
350
- index = parser->document->nodes.top - parser->document->nodes.start;
356
+ node_index = parser->document->nodes.top - parser->document->nodes.start;
357
+ #if PTRDIFF_MAX > INT_MAX
358
+ if (node_index > INT_MAX) goto error;
359
+ #endif
360
+ index = (int)node_index;
351
361
 
352
362
  if (!yaml_parser_register_anchor(parser, index,
353
363
  first_event->data.sequence_start.anchor)) return 0;
@@ -391,6 +401,7 @@ yaml_parser_load_mapping(yaml_parser_t *parser, yaml_event_t *first_event)
391
401
  yaml_node_pair_t *top;
392
402
  } pairs = { NULL, NULL, NULL };
393
403
  int index;
404
+ ptrdiff_t node_index;
394
405
  yaml_node_pair_t pair;
395
406
  yaml_char_t *tag = first_event->data.mapping_start.tag;
396
407
 
@@ -410,7 +421,11 @@ yaml_parser_load_mapping(yaml_parser_t *parser, yaml_event_t *first_event)
410
421
 
411
422
  if (!PUSH(parser, parser->document->nodes, node)) goto error;
412
423
 
413
- index = parser->document->nodes.top - parser->document->nodes.start;
424
+ node_index = parser->document->nodes.top - parser->document->nodes.start;
425
+ #if PTRDIFF_MAX > INT_MAX
426
+ if (node_index > INT_MAX) goto error;
427
+ #endif
428
+ index = (int)node_index;
414
429
 
415
430
  if (!yaml_parser_register_anchor(parser, index,
416
431
  first_event->data.mapping_start.anchor)) return 0;
@@ -1295,7 +1295,7 @@ yaml_parser_process_directives(yaml_parser_t *parser,
1295
1295
  token = PEEK_TOKEN(parser);
1296
1296
  if (!token) goto error;
1297
1297
  }
1298
-
1298
+
1299
1299
  for (default_tag_directive = default_tag_directives;
1300
1300
  default_tag_directive->handle; default_tag_directive++) {
1301
1301
  if (!yaml_parser_append_tag_directive(parser, *default_tag_directive, 1,
@@ -52,7 +52,7 @@ yaml_parser_determine_encoding(yaml_parser_t *parser)
52
52
  {
53
53
  /* Ensure that we had enough bytes in the raw buffer. */
54
54
 
55
- while (!parser->eof
55
+ while (!parser->eof
56
56
  && parser->raw_buffer.last - parser->raw_buffer.pointer < 3) {
57
57
  if (!yaml_parser_update_raw_buffer(parser)) {
58
58
  return 0;
@@ -295,7 +295,7 @@ yaml_parser_update_buffer(yaml_parser_t *parser, size_t length)
295
295
  parser->offset, value);
296
296
 
297
297
  break;
298
-
298
+
299
299
  case YAML_UTF16LE_ENCODING:
300
300
  case YAML_UTF16BE_ENCODING:
301
301
 
@@ -318,7 +318,7 @@ yaml_parser_update_buffer(yaml_parser_t *parser, size_t length)
318
318
  *
319
319
  * The following formulas are used for decoding
320
320
  * and encoding characters using surrogate pairs:
321
- *
321
+ *
322
322
  * U = U' + 0x10000 (0x01 00 00 <= U <= 0x10 FF FF)
323
323
  * U' = yyyyyyyyyyxxxxxxxxxx (0 <= U' <= 0x0F FF FF)
324
324
  * W1 = 110110yyyyyyyyyy
@@ -762,7 +762,7 @@ yaml_parser_scan(yaml_parser_t *parser, yaml_token_t *token)
762
762
  }
763
763
 
764
764
  /* Fetch the next token from the queue. */
765
-
765
+
766
766
  *token = DEQUEUE(parser, parser->tokens);
767
767
  parser->token_available = 0;
768
768
  parser->tokens_parsed ++;
@@ -1121,7 +1121,7 @@ yaml_parser_save_simple_key(yaml_parser_t *parser)
1121
1121
  yaml_simple_key_t simple_key;
1122
1122
  simple_key.possible = 1;
1123
1123
  simple_key.required = required;
1124
- simple_key.token_number =
1124
+ simple_key.token_number =
1125
1125
  parser->tokens_parsed + (parser->tokens.tail - parser->tokens.head);
1126
1126
  simple_key.mark = parser->mark;
1127
1127
 
@@ -1207,7 +1207,7 @@ yaml_parser_decrease_flow_level(yaml_parser_t *parser)
1207
1207
  * Push the current indentation level to the stack and set the new level
1208
1208
  * the current column is greater than the indentation level. In this case,
1209
1209
  * append or insert the specified token into the token queue.
1210
- *
1210
+ *
1211
1211
  */
1212
1212
 
1213
1213
  static int
@@ -1231,12 +1231,14 @@ yaml_parser_roll_indent(yaml_parser_t *parser, ptrdiff_t column,
1231
1231
  if (!PUSH(parser, parser->indents, parser->indent))
1232
1232
  return 0;
1233
1233
 
1234
+ #if PTRDIFF_MAX > INT_MAX
1234
1235
  if (column > INT_MAX) {
1235
1236
  parser->error = YAML_MEMORY_ERROR;
1236
1237
  return 0;
1237
1238
  }
1239
+ #endif
1238
1240
 
1239
- parser->indent = column;
1241
+ parser->indent = (int)column;
1240
1242
 
1241
1243
  /* Create a token and insert it into the queue. */
1242
1244
 
@@ -1945,7 +1947,7 @@ yaml_parser_scan_to_next_token(yaml_parser_t *parser)
1945
1947
  *
1946
1948
  * - in the flow context;
1947
1949
  * - in the block context, but not at the beginning of the line or
1948
- * after '-', '?', or ':' (complex value).
1950
+ * after '-', '?', or ':' (complex value).
1949
1951
  */
1950
1952
 
1951
1953
  if (!CACHE(parser, 1)) return 0;
@@ -3011,7 +3013,7 @@ yaml_parser_scan_block_scalar_breaks(yaml_parser_t *parser,
3011
3013
  *indent = 1;
3012
3014
  }
3013
3015
 
3014
- return 1;
3016
+ return 1;
3015
3017
  }
3016
3018
 
3017
3019
  /*
@@ -74,7 +74,7 @@ yaml_emitter_flush(yaml_emitter_t *emitter)
74
74
  unsigned int value;
75
75
  size_t k;
76
76
 
77
- /*
77
+ /*
78
78
  * See the "reader.c" code for more details on UTF-8 encoding. Note
79
79
  * that we assume that the buffer contains a valid UTF-8 sequence.
80
80
  */
@@ -1,3 +1,6 @@
1
+ #ifdef RUBY_EXTCONF_H
2
+ #include RUBY_EXTCONF_H
3
+ #endif
1
4
 
2
5
  #if HAVE_CONFIG_H
3
6
  #include <config.h>
@@ -239,9 +242,9 @@ yaml_string_join(
239
242
  (string).pointer[offset] <= (yaml_char_t) 'f') ? \
240
243
  ((string).pointer[offset] - (yaml_char_t) 'a' + 10) : \
241
244
  ((string).pointer[offset] - (yaml_char_t) '0'))
242
-
245
+
243
246
  #define AS_HEX(string) AS_HEX_AT((string),0)
244
-
247
+
245
248
  /*
246
249
  * Check if the character is ASCII.
247
250
  */
@@ -217,7 +217,7 @@ require 'psych/class_loader'
217
217
 
218
218
  module Psych
219
219
  # The version is Psych you're using
220
- VERSION = '2.0.3'
220
+ VERSION = '2.0.4'
221
221
 
222
222
  # The version of libyaml Psych is using
223
223
  LIBYAML_VERSION = Psych.libyaml_version.join '.'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: psych
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aaron Patterson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-04 00:00:00.000000000 Z
11
+ date: 2014-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rdoc