Hello community,
here is the log from the commit of package rubygem-treetop for openSUSE:Factory
checked in at 2020-10-05 19:34:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-treetop (Old)
and /work/SRC/openSUSE:Factory/.rubygem-treetop.new.4249 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-treetop"
Mon Oct 5 19:34:18 2020 rev:20 rq:838090 version:1.6.11
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-treetop/rubygem-treetop.changes
2018-07-18 22:52:29.883247780 +0200
+++
/work/SRC/openSUSE:Factory/.rubygem-treetop.new.4249/rubygem-treetop.changes
2020-10-05 19:34:39.281289848 +0200
@@ -1,0 +2,7 @@
+Fri Sep 25 15:03:11 UTC 2020 - Stephan Kulow <[email protected]>
+
+updated to version 1.6.11
+ see installed History.txt
+
+
+-------------------------------------------------------------------
Old:
----
treetop-1.6.10.gem
New:
----
treetop-1.6.11.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-treetop.spec ++++++
--- /var/tmp/diff_new_pack.EtaoIf/_old 2020-10-05 19:34:47.721298094 +0200
+++ /var/tmp/diff_new_pack.EtaoIf/_new 2020-10-05 19:34:47.725298097 +0200
@@ -1,7 +1,7 @@
#
# spec file for package rubygem-treetop
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -24,7 +24,7 @@
#
Name: rubygem-treetop
-Version: 1.6.10
+Version: 1.6.11
Release: 0
%define mod_name treetop
%define mod_full_name %{mod_name}-%{version}
@@ -33,7 +33,7 @@
BuildRequires: %{ruby}
BuildRequires: ruby-macros >= 5
BuildRequires: update-alternatives
-Url: https://github.com/cjheath/treetop
+URL: https://github.com/cjheath/treetop
Source: https://rubygems.org/gems/%{mod_full_name}.gem
Source1: gem2rpm.yml
Summary: A Ruby-based text parsing and interpretation DSL
++++++ treetop-1.6.10.gem -> treetop-1.6.11.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Rakefile new/Rakefile
--- old/Rakefile 2018-03-20 12:57:13.000000000 +0100
+++ new/Rakefile 2020-09-03 05:10:54.000000000 +0200
@@ -29,23 +29,15 @@
puts 'Treetop is '+Treetop::VERSION::STRING
end
-desc 'Generate website files'
-task :website_generate do
- `cd doc; ruby ./site.rb`
-end
-
-desc 'Upload website files'
-task :website_upload do
- # The website is now done using gh-pages
+desc 'Generate and upload website files'
+task :website do
system <<-END
+ rm -rf .doc-tmp
+ cp -r doc .doc-tmp
git checkout gh-pages
- cp website/*.html .
- git add *.html
- git commit -m"Website update `date`"
- git push
+ rm -r doc
+ mv .doc-tmp doc
+ rake website upload
git checkout master
END
end
-
-desc 'Generate and upload website files'
-task :website => [:website_generate, :website_upload]
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/doc/pitfalls_and_advanced_techniques.markdown
new/doc/pitfalls_and_advanced_techniques.markdown
--- old/doc/pitfalls_and_advanced_techniques.markdown 2018-03-20
12:57:13.000000000 +0100
+++ new/doc/pitfalls_and_advanced_techniques.markdown 2020-09-03
05:10:54.000000000 +0200
@@ -49,3 +49,9 @@
end
In general, when the syntax gets tough, it helps to focus on what you really
mean. A keyword is a character not followed by another character that isn't a
space.
+
+## Poor Performance with Large Unicode Strings
+
+Treetop may perform poorly when parsing very large (more than 100KB) unicode
strings. This is due to the fact that substring lookups on Ruby unicode strings
are linear-time operations, and not constant-time operations like they are on
ASCII encoded strings. This means that parse times for larger strings can be
exponentially worse than for smaller strings.
+
+If your input and grammar only expect ASCII strings, you can achieve
significant performance improvements for large strings by re-encoding them to
ASCII using `input.encode(Encoding::US_ASCII)`. See [this issue on
GitHub](https://github.com/cjheath/treetop/issues/31) for more information and
other possible workarounds for unicode strings.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/doc/site.rb new/doc/site.rb
--- old/doc/site.rb 2018-03-20 12:57:13.000000000 +0100
+++ new/doc/site.rb 1970-01-01 01:00:00.000000000 +0100
@@ -1,112 +0,0 @@
-require 'rubygems'
-require 'erector'
-require "#{File.dirname(__FILE__)}/sitegen"
-require 'fileutils'
-require 'bluecloth'
-
-class Layout < Erector::Widget
- def content
- html do
- head do
- link :rel => "stylesheet",
- :type => "text/css",
- :href => "./screen.css"
-
- rawtext %(
- <script src="http://www.google-analytics.com/urchin.js"
type="text/javascript">
- </script>
- <script type="text/javascript">
- _uacct = "UA-3418876-1";
- urchinTracker();
- </script>
- )
- end
-
- body do
- div :id => 'top' do
- div :id => 'main_navigation' do
- main_navigation
- end
- end
- div :id => 'middle' do
- div :id => 'main_content' do
- main_content
- end
- end
- div :id => 'bottom' do
-
- end
- end
- end
- end
-
- def main_navigation
- ul do
- li { link_to "Documentation", SyntacticRecognition, Documentation }
- li { link_to "Contribute", Contribute }
- li { link_to "Home", Index }
- end
- end
-
- def main_content
- end
-end
-
-class Index < Layout
- def main_content
- bluecloth "index.markdown"
- end
-end
-
-class Documentation < Layout
- abstract
-
- def main_content
- div :id => 'secondary_navigation' do
- ul do
- li { link_to 'Syntax', SyntacticRecognition }
- li { link_to 'Semantics', SemanticInterpretation }
- li { link_to 'Using In Ruby', UsingInRuby }
- li { link_to 'Advanced Techniques', PitfallsAndAdvancedTechniques }
- end
- end
-
- div :id => 'documentation_content' do
- documentation_content
- end
- end
-end
-
-class SyntacticRecognition < Documentation
- def documentation_content
- bluecloth "syntactic_recognition.markdown"
- end
-end
-
-class SemanticInterpretation < Documentation
- def documentation_content
- bluecloth "semantic_interpretation.markdown"
- end
-end
-
-class UsingInRuby < Documentation
- def documentation_content
- bluecloth "using_in_ruby.markdown"
- end
-end
-
-class PitfallsAndAdvancedTechniques < Documentation
- def documentation_content
- bluecloth "pitfalls_and_advanced_techniques.markdown"
- end
-end
-
-
-class Contribute < Layout
- def main_content
- bluecloth "contributing_and_planned_features.markdown"
- end
-end
-
-
-Layout.generate_site
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/doc/sitegen.rb new/doc/sitegen.rb
--- old/doc/sitegen.rb 2018-03-20 12:57:13.000000000 +0100
+++ new/doc/sitegen.rb 1970-01-01 01:00:00.000000000 +0100
@@ -1,78 +0,0 @@
-class Layout < Erector::Widget
-
- class << self
- def inherited(page_class)
- puts page_class
- (@@page_classes ||= []) << page_class
- end
-
- def generate_site
- FileUtils.mkdir_p(site_dir)
- @@page_classes.each do |page_class|
- page_class.generate_html unless page_class.abstract?
- puts page_class
- end
- end
-
- def generate_html
- File.open(absolute_path, 'w') do |file|
- file.write(new.to_html)
- end
- end
-
- def absolute_path
- absolutize(relative_path)
- end
-
- def relative_path
- "#{name.gsub('::', '_').underscore}.html"
- end
-
- def absolutize(relative_path)
- File.join(site_dir, relative_path)
- end
-
- def abstract
- @abstract = true
- end
-
- def abstract?
- @abstract
- end
-
- def site_dir
- File.join(File.dirname(__FILE__), "../website")
- end
- end
-
- def bluecloth(relative_path)
- File.open(File.join(File.dirname(__FILE__), relative_path)) do |file|
- rawtext BlueCloth.new(file.read).to_html
- end
- end
-
- def absolutize(relative_path)
- self.class.absolutize(relative_path)
- end
-
- def link_to(link_text, page_class, section_class=nil)
- if instance_of?(page_class) || section_class && is_a?(section_class)
- text link_text
- else
- a link_text, :href => page_class.relative_path
- end
- end
-end
-
-class String
- def underscore
- camel_cased_word = self
- return camel_cased_word unless camel_cased_word =~ /[A-Z-]|::/
- word = camel_cased_word.to_s.gsub('::'.freeze, '/'.freeze)
- word.gsub!(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2'.freeze)
- word.gsub!(/([a-z\d])([A-Z])/, '\1_\2'.freeze)
- word.tr!("-".freeze, "_".freeze)
- word.downcase!
- word
- end
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/treetop/compiler/ruby_builder.rb
new/lib/treetop/compiler/ruby_builder.rb
--- old/lib/treetop/compiler/ruby_builder.rb 2018-03-20 12:57:13.000000000
+0100
+++ new/lib/treetop/compiler/ruby_builder.rb 2020-09-03 05:10:54.000000000
+0200
@@ -9,11 +9,11 @@
def initialize
@level = 0
@address_space = LexicalAddressSpace.new
- @ruby = ""
+ @ruby = String.new("")
end
def <<(ruby_line)
- return if ruby_line.blank?
+ return if ruby_line == ''
ruby << ruby_line.tabto(level) << "\n"
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/treetop/ruby_extensions/string.rb
new/lib/treetop/ruby_extensions/string.rb
--- old/lib/treetop/ruby_extensions/string.rb 2018-03-20 12:57:13.000000000
+0100
+++ new/lib/treetop/ruby_extensions/string.rb 2020-09-03 05:10:54.000000000
+0200
@@ -13,12 +13,6 @@
self[0...index].count("\n") + 1
end
- unless method_defined?(:blank?)
- def blank?
- self == ""
- end
- end
-
# The following methods are lifted from Facets 2.0.2
def tabto(n)
if self =~ /^( *)\S/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/treetop/version.rb new/lib/treetop/version.rb
--- old/lib/treetop/version.rb 2018-03-20 12:57:13.000000000 +0100
+++ new/lib/treetop/version.rb 2020-09-03 05:10:54.000000000 +0200
@@ -2,7 +2,7 @@
module VERSION #:nodoc:
MAJOR = 1
MINOR = 6
- TINY = 10
+ TINY = 11
STRING = [MAJOR, MINOR, TINY].join('.')
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2018-03-20 12:57:13.000000000 +0100
+++ new/metadata 2020-09-03 05:10:54.000000000 +0200
@@ -1,7 +1,7 @@
--- !ruby/object:Gem::Specification
name: treetop
version: !ruby/object:Gem::Version
- version: 1.6.10
+ version: 1.6.11
platform: ruby
authors:
- Nathan Sobo
@@ -9,7 +9,7 @@
autorequire:
bindir: bin
cert_chain: []
-date: 2018-03-20 00:00:00.000000000 Z
+date: 2020-09-03 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: polyglot
@@ -123,8 +123,6 @@
- doc/index.markdown
- doc/pitfalls_and_advanced_techniques.markdown
- doc/semantic_interpretation.markdown
-- doc/site.rb
-- doc/sitegen.rb
- doc/syntactic_recognition.markdown
- doc/tt.1
- doc/using_in_ruby.markdown
@@ -201,7 +199,7 @@
version: '0'
requirements: []
rubyforge_project:
-rubygems_version: 2.4.5
+rubygems_version: 2.7.6.2
signing_key:
specification_version: 4
summary: A Ruby-based text parsing and interpretation DSL