Hello community, here is the log from the commit of package rubygem-ruby_parser for openSUSE:Factory checked in at 2014-10-18 09:09:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-ruby_parser (Old) and /work/SRC/openSUSE:Factory/.rubygem-ruby_parser.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-ruby_parser" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-ruby_parser/rubygem-ruby_parser.changes 2014-10-14 07:12:36.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-ruby_parser.new/rubygem-ruby_parser.changes 2014-10-18 09:09:56.000000000 +0200 @@ -1,0 +2,8 @@ +Wed Oct 15 11:09:53 UTC 2014 - co...@suse.com + +- updated to version 3.6.3 + * 1 bug fix: + * Fixed bug caused by latest version of oedipus_lex not exporting lineno accessor. + * Handle return/next/break/yield w/ block call (WHY). + +------------------------------------------------------------------- Old: ---- ruby_parser-3.6.1.gem New: ---- ruby_parser-3.6.3.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-ruby_parser.spec ++++++ --- /var/tmp/diff_new_pack.dQ4RPx/_old 2014-10-18 09:09:57.000000000 +0200 +++ /var/tmp/diff_new_pack.dQ4RPx/_new 2014-10-18 09:09:57.000000000 +0200 @@ -16,18 +16,24 @@ # +# +# This file was generated with a gem2rpm.yml and not just plain gem2rpm. +# All sections marked as MANUAL, license headers, summaries and descriptions +# can be maintained in that file. Please consult this file before editing any +# of those fields +# + Name: rubygem-ruby_parser -Version: 3.6.1 +Version: 3.6.3 Release: 0 %define mod_name ruby_parser %define mod_full_name %{mod_name}-%{version} -%define mod_branch -%{version} -%define mod_weight 30601 - BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: %{rubygem gem2rpm} +BuildRequires: %{rubygem rdoc > 3.10} +BuildRequires: %{ruby} BuildRequires: ruby-macros >= 5 BuildRequires: update-alternatives -BuildRequires: rubygem(rdoc) > 3.10 Url: https://github.com/seattlerb/ruby_parser Source: http://rubygems.org/gems/%{mod_full_name}.gem Source1: gem2rpm.yml @@ -56,8 +62,7 @@ Tested against 801,039 files from the latest of all rubygems (as of 2013-05): * 1.8 parser is at 99.9739% accuracy, 3.651 sigma * 1.9 parser is at 99.9940% accuracy, 4.013 sigma -* 2.0 parser is at 99.9939% accuracy, 4.008 sigma - +* 2.0 parser is at 99.9939% accuracy, 4.008 sigma. %prep @@ -68,7 +73,6 @@ --symlink-binaries \ --doc-files="History.txt README.txt" \ -f - # MANUAL perl -p -i -e 's|#!\S+|#!/usr/bin/ruby|g' %{buildroot}%{_libdir}/*/gems/*/gems/%{mod_full_name}/test/* # /MANUAL ++++++ ruby_parser-3.6.1.gem -> ruby_parser-3.6.3.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.autotest new/.autotest --- old/.autotest 2014-05-13 01:23:25.000000000 +0200 +++ new/.autotest 2014-09-27 03:53:53.000000000 +0200 @@ -1,7 +1,7 @@ # -*- ruby -*- require 'autotest/restart' -require 'autotest/isolate' +# require 'autotest/isolate' require 'autotest/rcov' if ENV['RCOV'] Autotest.add_hook :initialize do |at| diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/History.txt new/History.txt --- old/History.txt 2014-05-13 01:23:25.000000000 +0200 +++ new/History.txt 2014-09-27 03:53:53.000000000 +0200 @@ -1,4 +1,16 @@ -=== 3.6.1 / YYYY-MM-DD +=== 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: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Rakefile new/Rakefile --- old/Rakefile 2014-05-13 01:23:25.000000000 +0200 +++ new/Rakefile 2014-09-27 03:53:53.000000000 +0200 @@ -86,7 +86,7 @@ end task :debug => :isolate do - ENV["V"] ||= "20" + ENV["V"] ||= "21" Rake.application[:parser].invoke # this way we can have DEBUG set Rake.application[:lexer].invoke # this way we can have DEBUG set Files old/checksums.yaml.gz and new/checksums.yaml.gz differ Files old/checksums.yaml.gz.sig and new/checksums.yaml.gz.sig differ Files old/data.tar.gz.sig and new/data.tar.gz.sig differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby18_parser.rb new/lib/ruby18_parser.rb --- old/lib/ruby18_parser.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby18_parser.rb 2014-09-27 03:53:53.000000000 +0200 @@ -1,6 +1,6 @@ # # DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.4.11 +# This file is automatically generated by Racc 1.4.12 # from Racc grammer file "". # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby19_parser.rb new/lib/ruby19_parser.rb --- old/lib/ruby19_parser.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby19_parser.rb 2014-09-27 03:53:53.000000000 +0200 @@ -1,6 +1,6 @@ # # DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.4.11 +# This file is automatically generated by Racc 1.4.12 # from Racc grammer file "". # @@ -5202,6 +5202,8 @@ syntax_error "Both block arg and actual block given." if val[0].block_pass? + val = invert_block_call val if inverted? val + result = val[1] result.insert 1, val[0] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby19_parser.y new/lib/ruby19_parser.y --- old/lib/ruby19_parser.y 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby19_parser.y 2014-09-27 03:53:53.000000000 +0200 @@ -1432,6 +1432,8 @@ syntax_error "Both block arg and actual block given." if val[0].block_pass? + val = invert_block_call val if inverted? val + result = val[1] result.insert 1, val[0] } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby20_parser.rb new/lib/ruby20_parser.rb --- old/lib/ruby20_parser.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby20_parser.rb 2014-09-27 03:53:53.000000000 +0200 @@ -1,6 +1,6 @@ # # DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.4.11 +# This file is automatically generated by Racc 1.4.12 # from Racc grammer file "". # @@ -5503,6 +5503,8 @@ syntax_error "Both block arg and actual block given." if val[0].block_pass? + val = invert_block_call val if inverted? val + result = val[1] result.insert 1, val[0] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby20_parser.y new/lib/ruby20_parser.y --- old/lib/ruby20_parser.y 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby20_parser.y 2014-09-27 03:53:53.000000000 +0200 @@ -1494,6 +1494,8 @@ syntax_error "Both block arg and actual block given." if val[0].block_pass? + val = invert_block_call val if inverted? val + result = val[1] result.insert 1, val[0] } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby21_parser.rb new/lib/ruby21_parser.rb --- old/lib/ruby21_parser.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby21_parser.rb 2014-09-27 03:53:53.000000000 +0200 @@ -1,6 +1,6 @@ # # DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.4.11 +# This file is automatically generated by Racc 1.4.12 # from Racc grammer file "". # @@ -5556,6 +5556,8 @@ syntax_error "Both block arg and actual block given." if val[0].block_pass? + val = invert_block_call val if inverted? val + result = val[1] result.insert 1, val[0] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby21_parser.y new/lib/ruby21_parser.y --- old/lib/ruby21_parser.y 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby21_parser.y 2014-09-27 03:53:54.000000000 +0200 @@ -1495,6 +1495,8 @@ syntax_error "Both block arg and actual block given." if val[0].block_pass? + val = invert_block_call val if inverted? val + result = val[1] result.insert 1, val[0] } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby_lexer.rb new/lib/ruby_lexer.rb --- old/lib/ruby_lexer.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby_lexer.rb 2014-09-27 03:53:54.000000000 +0200 @@ -67,6 +67,7 @@ # :startdoc: + attr_accessor :lineno # we're bypassing oedipus' lineno handling. attr_accessor :brace_nest attr_accessor :cmdarg attr_accessor :command_start diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby_lexer.rex new/lib/ruby_lexer.rex --- old/lib/ruby_lexer.rex 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby_lexer.rex 2014-09-27 03:53:54.000000000 +0200 @@ -1,7 +1,5 @@ # encoding: UTF-8 -# TODO: this needs to be put on the first line # -# new_ruby_parser.rex # lexical scanner definition for ruby class RubyLexer diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby_lexer.rex.rb new/lib/ruby_lexer.rex.rb --- old/lib/ruby_lexer.rex.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby_lexer.rex.rb 2014-09-27 03:53:54.000000000 +0200 @@ -1,13 +1,11 @@ +# encoding: UTF-8 #-- # This file is automatically generated. Do not modify it. -# Generated by: oedipus_lex version 2.2.1. +# Generated by: oedipus_lex version 2.4.0. # Source: lib/ruby_lexer.rex #++ -# encoding: UTF-8 -# TODO: this needs to be put on the first line # -# new_ruby_parser.rex # lexical scanner definition for ruby class RubyLexer @@ -29,7 +27,6 @@ class ScanError < StandardError ; end - attr_accessor :lineno attr_accessor :filename attr_accessor :ss attr_accessor :state @@ -46,13 +43,13 @@ yield end + def scanner_class StringScanner end unless instance_methods(false).map(&:to_s).include?("scanner_class") def parse str self.ss = scanner_class.new str - self.lineno = 1 self.state ||= nil do_parse diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/ruby_parser_extras.rb new/lib/ruby_parser_extras.rb --- old/lib/ruby_parser_extras.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/lib/ruby_parser_extras.rb 2014-09-27 03:53:54.000000000 +0200 @@ -91,7 +91,7 @@ end module RubyParserStuff - VERSION = "3.6.1" unless constants.include? "VERSION" # SIGH + VERSION = "3.6.3" unless constants.include? "VERSION" # SIGH attr_accessor :lexer, :in_def, :in_single, :file attr_reader :env, :comments @@ -1061,6 +1061,18 @@ block and call_or_args.block_pass? end + def inverted? val + [:return, :next, :break, :yield].include? val[0].sexp_type + end + + def invert_block_call val + (type, call), iter = val + + iter.insert 1, call + + [iter, s(type)] + end + def ret_args node if node then raise "write a test 5" if node[0] == :block_pass diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2014-05-13 01:23:25.000000000 +0200 +++ new/metadata 2014-09-27 03:53:53.000000000 +0200 @@ -1,7 +1,7 @@ --- !ruby/object:Gem::Specification name: ruby_parser version: !ruby/object:Gem::Version - version: 3.6.1 + version: 3.6.3 platform: ruby authors: - Ryan Davis @@ -10,9 +10,9 @@ cert_chain: - | -----BEGIN CERTIFICATE----- - MIIDPjCCAiagAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMRMwEQYDVQQDDApyeWFu + MIIDPjCCAiagAwIBAgIBAjANBgkqhkiG9w0BAQUFADBFMRMwEQYDVQQDDApyeWFu ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB - GRYDY29tMB4XDTEzMDkxNjIzMDQxMloXDTE0MDkxNjIzMDQxMlowRTETMBEGA1UE + GRYDY29tMB4XDTE0MDkxNzIzMDcwN1oXDTE1MDkxNzIzMDcwN1owRTETMBEGA1UE AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx @@ -22,14 +22,14 @@ qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBBQUAA4IB - AQCFZ7JTzoy1gcG4d8A6dmOJy7ygtO5MFpRIz8HuKCF5566nOvpy7aHhDDzFmQuu - FX3zDU6ghx5cQIueDhf2SGOncyBmmJRRYawm3wI0o1MeN6LZJ/3cRaOTjSFy6+S6 - zqDmHBp8fVA2TGJtO0BLNkbGVrBJjh0UPmSoGzWlRhEVnYC33TpDAbNA+u39UrQI - ynwhNN7YbnmSR7+JU2cUjBFv2iPBO+TGuWC+9L2zn3NHjuc6tnmSYipA9y8Hv+As - Y4evBVezr3SjXz08vPqRO5YRdO3zfeMT8gBjRqZjWJGMZ2lD4XNfrs7eky74CyZw - xx3n58i0lQkBE1EpKE0lFu/y + AQAFoDJRokCQdxFfOrmsKX41KOFlU/zjrbDVM9hgB/Ur999M6OXGSi8FitXNtMwY + FVjsiAPeU7HaWVVcZkj6IhINelTkXsxgGz/qCzjHy3iUMuZWw36cS0fiWJ5rvH+e + hD7uXxJSFuyf1riDGI1aeWbQ74WMwvNstOxLUMiV5a1fzBhlxPqb537ubDjq/M/h + zPUFPVYeL5KjDHLCqI2FwIk2sEMOQgjpXHzl+3NlD2LUgUhHDMevmgVua0e2GT1B + xJcC6UN6NHMOVMyAXsr2HR0gRRx4ofN1LoP2KhXzSr8UMvQYlwPmE0N5GQv1b5AO + VpzF30vNaJK6ZT7xlIsIlwmH -----END CERTIFICATE----- -date: 2014-05-12 00:00:00.000000000 Z +date: 2014-09-27 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: sexp_processor @@ -51,14 +51,14 @@ requirements: - - ~> - !ruby/object:Gem::Version - version: '5.3' + version: '5.4' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version - version: '5.3' + version: '5.4' - !ruby/object:Gem::Dependency name: rdoc requirement: !ruby/object:Gem::Requirement @@ -121,14 +121,14 @@ requirements: - - ~> - !ruby/object:Gem::Version - version: '3.12' + version: '3.13' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version - version: '3.12' + version: '3.13' description: |- ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which does by default use a C extension). RP's output is @@ -214,7 +214,7 @@ version: '0' requirements: [] rubyforge_project: -rubygems_version: 2.2.1 +rubygems_version: 2.4.1 signing_key: specification_version: 4 summary: ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which Files old/metadata.gz.sig and new/metadata.gz.sig differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/test_ruby_parser.rb new/test/test_ruby_parser.rb --- old/test/test_ruby_parser.rb 2014-05-13 01:23:25.000000000 +0200 +++ new/test/test_ruby_parser.rb 2014-09-27 03:53:54.000000000 +0200 @@ -1643,6 +1643,46 @@ assert_parse rb, pt end + def test_block_return + rb = "return foo arg do |bar| end" + pt = s(:return, + s(:iter, + s(:call, nil, :foo, s(:call, nil, :arg)), + s(:args, :bar))) + + assert_parse rb, pt + end + + def test_block_next + rb = "next foo arg do |bar| end" + pt = s(:next, + s(:iter, + s(:call, nil, :foo, s(:call, nil, :arg)), + s(:args, :bar))) + + assert_parse rb, pt + end + + def test_block_yield + rb = "yield foo arg do |bar| end" + pt = s(:yield, + s(:iter, + s(:call, nil, :foo, s(:call, nil, :arg)), + s(:args, :bar))) + + assert_parse rb, pt + end + + def test_block_break + rb = "break foo arg do |bar| end" + pt = s(:break, + s(:iter, + s(:call, nil, :foo, s(:call, nil, :arg)), + s(:args, :bar))) + + assert_parse rb, pt + end + def test_block_splat_reg rb = "a { |*b, c| }" pt = s(:iter, s(:call, nil, :a), s(:args, :"*b", :c)) -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org