ruby_parser 3.0.0 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ruby_parser might be problematic. Click here for more details.

data/History.txt CHANGED
@@ -1,3 +1,10 @@
1
+ === 3.0.1 / 2012-11-02
2
+
3
+ * 2 bug fixes -- both based on MRI bugs... Yay?:
4
+
5
+ * 1.9.2 doesn't have String#byteslice... so I have to do the *HORRIBLE*.
6
+ * Lexing regexps w/ bad character encodings and no declared options will fall back to /.../n.
7
+
1
8
  === 3.0.0 / 2012-11-02
2
9
 
3
10
  I've hit 99.967% success rate against 558k files! 3.6σ!! 182 files
@@ -36,8 +36,14 @@ class RPStringScanner < StringScanner
36
36
  # end
37
37
 
38
38
  if "".respond_to? :encoding then
39
- def string_to_pos
40
- string.byteslice(0, pos)
39
+ if "".respond_to? :byteslice then
40
+ def string_to_pos
41
+ string.byteslice(0, pos)
42
+ end
43
+ else
44
+ def string_to_pos
45
+ string.bytes.first(pos).pack("c*").force_encoding(string.encoding)
46
+ end
41
47
  end
42
48
 
43
49
  def charpos
@@ -102,7 +108,7 @@ class RPStringScanner < StringScanner
102
108
  end
103
109
 
104
110
  module RubyParserStuff
105
- VERSION = '3.0.0' unless constants.include? "VERSION" # SIGH
111
+ VERSION = '3.0.1' unless constants.include? "VERSION" # SIGH
106
112
 
107
113
  attr_accessor :lexer, :in_def, :in_single, :file
108
114
  attr_reader :env, :comments
@@ -713,8 +719,13 @@ module RubyParserStuff
713
719
  node[1] = if k then
714
720
  Regexp.new(node[1], o, k)
715
721
  else
716
- Regexp.new(node[1], o)
717
- end rescue node[1] # HACK - drops options
722
+ begin
723
+ Regexp.new(node[1], o)
724
+ rescue RegexpError => e
725
+ warn "Ignoring: #{e.message}"
726
+ Regexp.new(node[1], Regexp::ENC_NONE)
727
+ end
728
+ end
718
729
  when :dstr then
719
730
  if options =~ /o/ then
720
731
  node[0] = :dregx_once
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_parser
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
4
+ hash: 5
5
5
  prerelease:
6
6
  segments:
7
7
  - 3
8
8
  - 0
9
- - 0
10
- version: 3.0.0
9
+ - 1
10
+ version: 3.0.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Ryan Davis
@@ -36,7 +36,7 @@ cert_chain:
36
36
  FBHgymkyj/AOSqKRIpXPhjC6
37
37
  -----END CERTIFICATE-----
38
38
 
39
- date: 2012-11-02 00:00:00 Z
39
+ date: 2012-11-03 00:00:00 Z
40
40
  dependencies:
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: sexp_processor
metadata.gz.sig CHANGED
Binary file