2015-09-13 12:20:12 by Takahiro Kambe | Files touched by this commit (2) |
Log message:
Update ruby-parser to 3.7.1.
=== 3.7.1 / 2015-08-06
* 1 minor enhancement:
* Improved understandability of lexing postfix symbols.
|
2015-06-04 16:35:13 by Takahiro Kambe | Files touched by this commit (3) |
Log message:
Update ruby-parser to 3.7.0.
=== 3.7.0 / 2015-05-28
* 2 major enhancements:
* Added preliminary support for ruby 2.2 syntax.
* Now writing all 2.x parsers from one source, generating racc files.
* 1 minor enhancement:
* Added RubyLexer#process_label and hooked it up to "x": and 'x': \
productions.
* 4 bug fixes:
* Fixed handling of block_args to be consistent across all parse versions.
* Fixed lexing of label assoc args w/ newlines in between k/v. (jeremyf)
* Fixed lexing of x?'':y for ruby22 (not a label). (presidentbeef)
* clear and restore cmdarg stack around def args and body.
=== 3.6.6 / 2015-04-13
* 1 minor enhancement:
* Added expr_labelarg state (eg: a:1)
* 5 bug fixes:
* Fix scan logging backtrace when DEBUG=1
* Fixed kwsplat on 2.0 & 2.1.
* Fixed mandatory keyword block args. (cvortmann)
* Handle #$<x> in expanded strings/regexps where x is NOT a valid gvar name.
* Invalid gvar names raise a compile error.
|
2015-03-13 14:41:27 by Takahiro Kambe | Files touched by this commit (4) |
Log message:
Update ruby-parser to 3.6.5.
pkgsrc change: Add pkg_alternatives support.
=== 3.6.5 / 2015-03-12
* 1 minor enhancement:
* Add line numbers from block comments =begin/=end. (presidentbeef)
|
2015-02-01 17:11:29 by Takahiro Kambe | Files touched by this commit (3) |
Log message:
Update ruby-parser to 3.6.4.
=== 3.6.4 / 2015-01-16
* 1 bug fix:
* Removed shebangs in tests because of bugs (aka 'features') in RPM packaging \
tools.
=== 3.6.3 / 2014-09-26
* 1 bug fix:
* Fixed bug caused by latest version of oedipus_lex not exporting lineno accessor.
=== 3.6.2 / 2014-07-18
* 1 bug fix:
* Handle return/next/break/yield w/ block call (WHY).
=== 3.6.1 / 2014-05-12
* 1 bug fix:
* Strings that don't match the encoding of the file are now returned as ASCII-8BIT.
=== 3.6.0 / 2014-04-23
* 1 minor enhancement:
* Added new_string and switched all parsers to it.
* 1 bug fix:
* Fixed line numbers of nodes following multi-line strings. (presidentbeef)
=== 3.5.0 / 2014-03-24
* 1 major enhancement:
* Added initial support for ruby 2.1 syntax. Doesn't have numeric extensions yet.
* 2 minor enhancements:
* Converted ruby_lexer.rex to use new grouping mechanism. ~15% improvement in \
speed.
* Various lexer cleanup.
* 2 bug fixes:
* 2.0/2.1: Fixed block kw args.
* Fixed env for kwargs and friends.
|
2014-03-14 17:16:52 by Takahiro Kambe | Files touched by this commit (3) |
Log message:
Update ruby-parser to 3.4.1.
=== 3.4.1 / 2014-02-14
* 1 minor enhancement:
* Added StackState#store and #restore.
* 1 bug fix:
* 1.8/1.9/2.0: Fixed tSTRING_DBEG w/ f'd up amounts of nesting + braces + \
do/end. yeah. I'm as confused as you are.
=== 3.4.0 / 2014-02-04
* 1 major enhancement:
* Replaced hand-written/optimized f'd-up lexer with an oedipus_lex
generated lexer. This makes it roughly 40-50% faster.
* 30 minor enhancements:
* 2.0: Added support for a.b c() do d end.e do |f| g end
* 2.0: Added support for a.b c() do d end.e f do |g| h end
* Added -s flag to ruby_parse_extract_error to output timings.
* Added RubyLexer #command_state and #last_state to deal with oedipus_lex \
differences.
* Added String#lineno and #lineno= because I'm a bad bad person.
* Added a bunch of RubyLexer scanning methods: beginning_of_line?, check, \
scan, etc.
* Added a bunch of process_* methods extracted from old yylex. process_amper, etc.
* Added lib/.document to save my laptop's battery from pain and suffering
* Adjust lineno when we lex a bunch of blank lines.
* Attach lineno to tIDENTIFIER values (strings, ugh)
* Cleaned up and re-ordered node_assign to be faster (ordered by actual \
occurrance).
* Extend RubyParserStuff#gettable to set the lineno if it comes in with the id.
* Extended RubyParserStuff#new_case to take line number.
* Finally dropped RPStringScanner's BS #current_line.
* Finally dropped RPStringScanner's BS line number calculation (lineno).
* Implemented Sexp#add_all since we now have a test case for it.
* Removed :call case of node_assign. I don't think it is possible.
* Removed RubyLexer #extra_lines_added. No longer used. Complex heredoc \
lineno's possible screwed up.
* Removed RubyLexer#parse_number. Handled by oedipus_lex.
* Removed RubyLexer#yacc_value now that next_token returns pairs.
* Removed RubyLexer's @src. Now taken care of by oedipus_lex.
* Removed RubyParser#advance. RubyParser#next_token takes care of everything now.
* Removed RubyParserExtras#arg_add. (presidentbeef! YAY!)
* Removed lib/gauntlet_rubyparser.rb. I just don't use it anymore. Too slow.
* RubyLexer#is_label_possible? doesn't need an arg
* RubyLexer#process_token is now a normal oedipal lexer method.
* RubyParser#next_token now expects RubyLexer#next_token to return a pair \
(type, val).
* TRYING a new scheme to figure out encodings... but I'm about to throw in the \
towel. I hate this stuff so much.
* Turned off oedipus_lex's automatic line counting. (pushing to oedipus_lex soon).
* Updated to oedipus_lex 2.1+.
* 7 bug fixes:
* 1.8: Properly parse `a (:b, :c, :d => :e)`. (presidentbeef)
* Fixed lexing symbol!= vs symbol!. Please use your spacebar. Think of the \
children.
* Fixed line for dstr spanning multiple lines via backslash. (presidentbeef)
* Fixed line numbers for odd cases with trailing whitespace. (presidentbeef)
* Fixed line numbers on ambiguous calls w/ gvar/ivar args. (presidentbeef)
* Max out unicode hex values to 2-4 or 2-6 chars or pack will overflow and puke.
* Removed ESC_RE from RubyLexer. Must have slipped through.
=== 3.3.0 / 2014-01-14
* Notes:
39 files failed to parse out of ~834k files makes this 99.9953% or 4.07Ï.
* 15 minor enhancements:
* 2.0: Parse kwarg as lvars. (chastell)
* Added RubyLexer#beginning_of_line?, check(re), end_of_stream?
* Added RubyLexer#process_token_keyword.
* Added RubyLexer#scan, #matched, #beginning_of_line? and others to decouple \
from internals.
* Added lexing of \u### and \u{###}."
* Added optimizations for simple quoted symbols.
* Aliased Lexer#src to ss (since that is what it is).
* Allow for 20 in parser class name.
* Modified parsers line number calculations for defn nodes.
* Removed Env#dynamic, #dynamic?, #use, #used?
* Removed RubyLexer#tern. Introduced and disused during 3.0 alpha. (whitequark)
* Removed unused RubyLexer#warnings.
* Renamed *_RE consts to just * (IDENT_CHAR, ESC, etc).
* new_defn now sets arg node line number directly.
* zero byte is allowed in symbols for 1.9 / 2.0.
* 11 bug fixes:
* 2.0: Fixed paren-less kwargs in defn.
* Don't bother with regexp encoding options on 1.9+ to avoid warnings.
* Fix constant re-build on ruby 2.0 + rake 10.
* Fix lexing of %i with extra whitespace. (flori)
* Fixed RubyParserStuff#new_body to deal with nonsensical code better \
(begin-empty+else). (snatchev)
* Fixed bug lexing h[k]=begin ... end. Use your space bars people!
* Fixed env scoping in new lambdas.
* Fixed handling of single array arg in attrasgn.
* Fixed test to call RubyLexer#reset between assertions.
* No longer assigning ivar/cvars to env. Only locals should be in env.
* Refactored initialize and reset to more properly re-initialize as needed.
|
2013-09-15 12:11:05 by Takahiro Kambe | Files touched by this commit (3) |
Log message:
Update ruby-parser to 3.2.2.
=== 3.2.2 / 2013-07-11
* 5 bug fixes:
* 1.9/2.0: fixed assocs in return args. (presidentbeef)
* Fixed handling of parse error when class is nested in multiple defs. (whitequark)
* Fixed lexing of %w[] w/ funny whitespace separators. (whitequark)
* Fixed more call nodes that have trailing comma syntax. (presidentbeef)
* Fixed more call_args slippage.
=== 3.2.1 / 2013-07-03
* 1 bug fix:
* 1.9/2.0: Trailing assocs were being munged into arrays. (presidentbeef)
=== 3.2.0 / 2013-07-02
* 1 major enhancement:
* Added (rough draft) 2.0 support. Still missing some small / rare things.
* 12 minor enhancements:
* Added %i(symbol-names...) support. (%I too)
* Added 140 more tests, jumping test count from 1376 to 2143. Yay for test reuse!
* Added RubyLexer#brace_nest.
* Added compare20 rake task to diff the grammar architecture against MRI.
* Added lpar_beg and paren_nest to lexer to track state of parens in stabbies
* Added shadow nodes for scoped block args.
* Compound RubyParser now defaults to 2.0.
* Fixed rake to < 10, because 10's file dependency handling is so very broken.
* Made it possible to specify version in bin/ruby_parse_extract_error w/ -v \
18|19|20
* Refactored to RubyParserStuff::ENCODING_ORDER to allow custom tweaking of \
encoding guessing. (samlown)
* Switched `rake debug` to default to 2.0.
* Translated some fixes across 1.8 and 1.9 from 2.0.
* 42 bug fixes:
* 2.0: Fixed a number of block args scenarios w/ kwargs
* 2.0: Fixed args_tail mismatching against lexer.
* 2.0: Fixed assocs to return a hash node.
* 2.0: Fixed f_block_kw production.
* 2.0: Fixed f_block_kwarg production.
* 2.0: Fixed handling of stabby proc args in parens.
* 2.0: Fixed lexing of kwsplat nodes.
* 2.0: Implemented kwsplat nodes.
* Added tUBANG to lexer.
* Apparently ruby doesn't warn for escaped octal that goes above 7. wtf.
* Cleaned up a LOT of arg handling (block and defn, not calls) by using #args.
* ESC_RE is set to unicode. This seems problematic. *shrug*
* Either found a bug in MRI and/or fixed paren_nest count for []=? methods.
* Extended IDENT_CHAR_RE on 1.9+ to top out at \u{10ffff}... because we NEED a \
million unicode chars.
* Fixed % strings with interpolation.
* Fixed BEGIN {} to return a sexp.
* Fixed a[] += b. (stormbrew)
* Fixed arg_blk_pass to allow for sub-args nodes.
* Fixed assignable to allow for sexps to be passed to it.
* Fixed assoc args in 1.9.
* Fixed block_command and block_call (eg a.b c d) to #to_sym their args properly.
* Fixed bug in compound RubyParser so it rescues RubyParser::SyntaxError.
* Fixed env registration of cdecls.
* Fixed lex value for { when expr_endfn.
* Fixed lex_state for close paren/brace/bracket.
* Fixed lex_state transition for 1.9 if we lexed a defn name. Only 1.8 is odd.
* Fixed lexer problem with state mgmt of identifiers that also have registered \
var name.
* Fixed lexing of "1 *\n" to have the correct lex_state.
* Fixed lexing of heredocs vs chevron for some lex_states.
* Fixed op_asgn nodes to #to_sym their args properly.
* Fixed optional value block args.
* Fixed parsing of __ENCODING__ on ruby 1.8 (vcall).
* Fixed some oddity where 1.9 lexing was blowing up on "0o". Seems \
invalid now.
* Fixed strings with escaped octals > 128. Also... wtf.
* Fixed support for empty symbol (wtf?).
* Lexer is now declared UTF-8 internally. Hopefully this will fix the encoding \
mess.
* Made UTF_8 the default guess on encodings when it isn't explicit.
* Parsing of __ENCODING__ on ruby 1.9+ (in ruby 1.9+) is now colon2 sexp. \
(whitequark)
* Renamed RubyLexer#nest to string_nest
* RubyLexer#unescape ignores bad octal/hex and returns unicode strings.
* Switched a number of lexical constructs to use IDENT_CHAR_RE instead of \w. \
I wish there were something cleaner for regexps + unicode.
* Switched ruby_parse_extract_error to use binread.
|
2013-09-09 14:29:26 by Filip Hajny | Files touched by this commit (9) |
Log message:
Resign as maintainer (not really using Ruby at all any more).
|
2013-06-16 17:13:36 by Takahiro Kambe | Files touched by this commit (2) |
Log message:
Update ruby-parser to 3.1.3.
3.1.2 fixes temporary file creation.
=== 3.1.3 / 2013-04-09
* 2 bug fixes:
* Fixed begin w/ else but no rescue. (whitequark)
* Removed literal stripping from block_append. Not its job.
=== 3.1.2 / 2013-03-18
* 1 minor enhancement:
* OMG A SECURITY ISSUE FOR CODE NOBODY USES... EVER
|
2013-02-11 04:06:16 by Takahiro Kambe | Files touched by this commit (2) |
Log message:
Update ruby-parser to 3.1.1.
=== 3.1.1 / 2012-12-19
* 1 minor enhancement:
* Added MOVE_TIMEOUT env var for ruby_parse_extract_error to move slow files \
to a sibling directory
* 4 bug fixes:
* 1.9: Fixed lexing of "0o". (whitequark)
* 1.9: Fixed parsing of unary plus on literals. (whitequark)
* Added timeout arg to RubyParser#process to pass through to the real parser
* Updated Synopsis to reflect new options for running RP. (louismullie)
=== 3.1.0 / 2012-12-06
* 2 minor enhancements:
* Added RubyParser.for_current_ruby to provide a parser that matches your \
runtime. (neilconway)
* Duck-typed IDENT_CHAR_RE instead of using RUBY_VERSION
* 3 bug fixes:
* Cleared out body comments in class/module/defn/defs
* Flipped lexer tests to US-ASCII to avoid encoding hell
* yyerror is now an alias for syntax_error
|
2012-12-16 17:30:07 by Takahiro Kambe | Files touched by this commit (3) |
Log message:
Update ruby-parser to 3.0.4.
Changes are too many to write here, please refer History.txt.
|