meteor 0.9.30 → 0.9.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/meteor.rb CHANGED
@@ -1,61 +1,62 @@
1
- # -* coding: UTF-8 -*-
2
- # frozen_string_literal: true
3
-
4
- require "meteor/element"
5
- require "meteor/root_element"
6
- require "meteor/attribute"
7
- require "meteor/attribute_map"
8
- require "meteor/parser"
9
- require "meteor/parsers"
10
- require "meteor/elements"
11
- require "meteor/exception/no_such_element_exception"
12
- require "meteor/core/kernel"
13
- require "meteor/core/util/pattern_cache"
14
- require "meteor/ml/html4/parser_impl"
15
- require "meteor/ml/html/parser_impl"
16
- require "meteor/ml/xhtml4/parser_impl"
17
- require "meteor/ml/xhtml/parser_impl"
18
- require "meteor/ml/xml/parser_impl"
19
-
20
- # Meteor - A lightweight (X)HTML(5) & XML parser
21
- #
22
- # Copyright (C) 2008-present Yasumasa Ashida.
23
- #
24
- # This program is free software; you can redistribute it and/or modify
25
- # it under the terms of the GNU Lesser General Public License as published by
26
- # the Free Software Foundation; either version 2.1 of the License, or
27
- # (at your option) any later version.
28
- #
29
- # This program is distributed in the hope that it will be useful,
30
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
31
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
32
- # GNU Lesser General Public License for more details.
33
- #
34
- # You should have received a copy of the GNU Lesser General Public License
35
- # along with this program; if not, write to the Free Software
36
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
37
- #
38
- # @author Yasumasa Ashida
39
- # @version 0.9.30
40
- #
41
-
42
- module Meteor
43
- VERSION = "0.9.30"
44
-
45
- # require 'fileutils'
46
-
47
- ZERO = 0
48
- ONE = 1
49
- TWO = 2
50
- THREE = 3
51
- FOUR = 4
52
- FIVE = 5
53
- SIX = 6
54
- SEVEN = 7
55
-
56
- HTML = ZERO
57
- XHTML = ONE
58
- HTML4 = TWO
59
- XHTML4 = THREE
60
- XML = FOUR
61
- end
1
+ # -* coding: UTF-8 -*-
2
+ # frozen_string_literal: true
3
+
4
+ require 'meteor/element'
5
+ require 'meteor/root_element'
6
+ require 'meteor/attribute'
7
+ require 'meteor/attribute_map'
8
+ require 'meteor/parser'
9
+ require 'meteor/parsers'
10
+ require 'meteor/elements'
11
+ require 'meteor/exception/no_such_element_exception'
12
+ require 'meteor/core/kernel'
13
+ require 'meteor/core/util/file_reader'
14
+ require 'meteor/core/util/pattern_cache'
15
+ require 'meteor/ml/html4/parser_impl'
16
+ require 'meteor/ml/html/parser_impl'
17
+ require 'meteor/ml/xhtml4/parser_impl'
18
+ require 'meteor/ml/xhtml/parser_impl'
19
+ require 'meteor/ml/xml/parser_impl'
20
+
21
+ # Meteor - A lightweight (X)HTML(5) & XML parser
22
+ #
23
+ # Copyright (C) 2008-present Yasumasa Ashida.
24
+ #
25
+ # This program is free software; you can redistribute it and/or modify
26
+ # it under the terms of the GNU Lesser General Public License as published by
27
+ # the Free Software Foundation; either version 2.1 of the License, or
28
+ # (at your option) any later version.
29
+ #
30
+ # This program is distributed in the hope that it will be useful,
31
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
32
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
33
+ # GNU Lesser General Public License for more details.
34
+ #
35
+ # You should have received a copy of the GNU Lesser General Public License
36
+ # along with this program; if not, write to the Free Software
37
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
38
+ #
39
+ # @author Yasumasa Ashida
40
+ # @version 0.9.31
41
+ #
42
+
43
+ module Meteor
44
+ VERSION = '0.9.31'
45
+
46
+ # require 'fileutils'
47
+
48
+ ZERO = 0
49
+ ONE = 1
50
+ TWO = 2
51
+ THREE = 3
52
+ FOUR = 4
53
+ FIVE = 5
54
+ SIX = 6
55
+ SEVEN = 7
56
+
57
+ HTML = ZERO
58
+ XHTML = ONE
59
+ HTML4 = TWO
60
+ XHTML4 = THREE
61
+ XML = FOUR
62
+ end
data/meteor.gemspec CHANGED
@@ -1,26 +1,27 @@
1
- # -*- encoding: utf-8 -*-
2
- lib = File.expand_path('../lib', __FILE__)
1
+ # frozen_string_literal: true
2
+
3
+ require 'English'
4
+ lib = File.expand_path('lib', __dir__)
3
5
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
6
  require 'meteor'
5
7
 
6
8
  Gem::Specification.new do |spec|
7
- spec.name = %q{meteor}
9
+ spec.name = 'meteor'
8
10
  spec.version = Meteor::VERSION
9
- spec.authors = ["Yasumasa Ashida"]
10
- spec.email = %q{ys.ashida@gmail.com}
11
- spec.description = %q{A lightweight (X)HTML & XML parser}
12
- spec.summary = %q{A lightweight (X)HTML & XML parser}
13
- spec.homepage = %q{https://github.com/asip/meteor}
11
+ spec.authors = ['Yasumasa Ashida']
12
+ spec.email = 'ys.ashida@gmail.com'
13
+ spec.description = 'A lightweight (X)HTML & XML parser'
14
+ spec.summary = 'A lightweight (X)HTML & XML parser'
15
+ spec.homepage = 'https://github.com/asip/meteor'
14
16
  spec.license = 'LGPL-2.1-only'
15
17
 
16
- spec.required_ruby_version = ">=3.0"
18
+ spec.required_ruby_version = '>=3.0'
17
19
 
18
- spec.files = `git ls-files`.split($/)
20
+ spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
19
21
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
20
22
  spec.test_files = spec.files.grep(%r{^(test|spec|features|demo)/})
21
- spec.require_paths = ["lib"]
23
+ spec.require_paths = ['lib']
22
24
 
23
- spec.add_development_dependency "bundler", "~> 4.0.11"
25
+ spec.add_development_dependency 'bundler', '~> 4.0.13'
24
26
  # spec.add_development_dependency "rake"
25
-
26
27
  end
data/test/meteor_test.rb CHANGED
@@ -1,5 +1,7 @@
1
- require File.dirname(__FILE__) + '/test_helper.rb'
1
+ # frozen_string_literal: true
2
2
 
3
- require "test/unit"
3
+ require "#{File.dirname(__FILE__)}/test_helper.rb"
4
+
5
+ require 'test/unit'
4
6
  class MeteorTest < Test::Unit::TestCase
5
7
  end
data/test/test_helper.rb CHANGED
@@ -1,3 +1,4 @@
1
- require 'test/unit'
2
- require File.dirname(__FILE__) + '/../lib/meteor'
1
+ # frozen_string_literal: true
3
2
 
3
+ require 'test/unit'
4
+ require "#{File.dirname(__FILE__)}/../lib/meteor"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meteor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.30
4
+ version: 0.9.31
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yasumasa Ashida
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: 4.0.11
18
+ version: 4.0.13
19
19
  type: :development
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: 4.0.11
25
+ version: 4.0.13
26
26
  description: A lightweight (X)HTML & XML parser
27
27
  email: ys.ashida@gmail.com
28
28
  executables: []
@@ -34,7 +34,6 @@ files:
34
34
  - Gemfile
35
35
  - Gemfile.lock
36
36
  - README.md
37
- - Rakefile
38
37
  - demo/html.rb
39
38
  - demo/html4.rb
40
39
  - demo/ml/sample.xml
@@ -49,6 +48,7 @@ files:
49
48
  - lib/meteor/attribute.rb
50
49
  - lib/meteor/attribute_map.rb
51
50
  - lib/meteor/core/kernel.rb
51
+ - lib/meteor/core/util/file_reader.rb
52
52
  - lib/meteor/core/util/pattern_cache.rb
53
53
  - lib/meteor/element.rb
54
54
  - lib/meteor/elements.rb
data/Rakefile DELETED
@@ -1,144 +0,0 @@
1
- require 'rubygems'
2
- require 'rake'
3
- require 'rake/clean'
4
- require 'rake/testtask'
5
- require 'rake/packagetask'
6
- require 'rake/gempackagetask'
7
- require 'rake/rdoctask'
8
- require 'rake/contrib/rubyforgepublisher'
9
- require 'rake/contrib/sshpublisher'
10
- require 'fileutils'
11
- require 'lib/meteor'
12
- include FileUtils
13
-
14
- NAME = "meteor"
15
- AUTHOR = "asip"
16
- EMAIL = "ys.ashida@gmail.com"
17
- DESCRIPTION = "A lightweight (X)HTML & XML parser"
18
- RUBYFORGE_PROJECT = "meteor"
19
- HOMEPATH = "http://#{RUBYFORGE_PROJECT}.rubyforge.org"
20
- BIN_FILES = %w( )
21
-
22
- VERS = Meteor::VERSION
23
- REV = File.read(".svn/entries")[/committed-rev="(d+)"/, 1] rescue nil
24
- CLEAN.include ['**/.*.sw?', '*.gem', '.config']
25
- RDOC_OPTS = [
26
- '--title', "#{NAME} documentation",
27
- "--charset", "utf-8",
28
- "--opname", "index.html",
29
- "--line-numbers",
30
- "--main", "README.md",
31
- "--inline-source",
32
- ]
33
-
34
- task :default => [:test]
35
- task :package => [:clean]
36
-
37
- Rake::TestTask.new("test") do |t|
38
- t.libs << "test"
39
- t.pattern = "test/**/*_test.rb"
40
- t.verbose = true
41
- end
42
-
43
- spec = Gem::Specification.new do |s|
44
- s.name = NAME
45
- s.version = VERS
46
- s.platform = Gem::Platform::RUBY
47
- s.has_rdoc = false
48
- s.extra_rdoc_files = ["README.md", "ChangeLog"]
49
- s.rdoc_options += RDOC_OPTS + ['--exclude', '^(examples|extras)/']
50
- s.summary = DESCRIPTION
51
- s.description = DESCRIPTION
52
- s.author = AUTHOR
53
- s.email = EMAIL
54
- s.homepage = HOMEPATH
55
- s.executables = BIN_FILES
56
- s.rubyforge_project = RUBYFORGE_PROJECT
57
- s.bindir = "bin"
58
- s.require_path = "lib"
59
- s.autorequire = "meteor"
60
- s.test_files = Dir["test/*_test.rb"]
61
-
62
- #s.add_dependency('activesupport', '>=1.3.1')
63
- #s.required_ruby_version = '>= 3.0.0'
64
-
65
- s.files = %w(README.md ChangeLog Rakefile) +
66
- Dir.glob("{bin,doc,test,lib,templates,generator,extras,website,script}/**/*") +
67
- Dir.glob("ext/**/*.{h,c,rb}") +
68
- Dir.glob("examples/**/*.rb") +
69
- Dir.glob("tools/*.rb") +
70
- Dir.glob("rails/*.rb")
71
-
72
- s.extensions = FileList["ext/**/extconf.rb"].to_a
73
- end
74
-
75
- Rake::GemPackageTask.new(spec) do |p|
76
- p.need_tar = true
77
- p.gem_spec = spec
78
- end
79
-
80
- task :install do
81
- name = "#{NAME}-#{VERS}.gem"
82
- sh %{rake package}
83
- sh %{sudo gem install pkg/#{name}}
84
- end
85
-
86
- task :uninstall => [:clean] do
87
- sh %{sudo gem uninstall #{NAME}}
88
- end
89
-
90
-
91
- Rake::RDocTask.new do |rdoc|
92
- rdoc.rdoc_dir = 'html'
93
- rdoc.options += RDOC_OPTS
94
- rdoc.template = "resh"
95
- #rdoc.template = "#{ENV['template']}.rb" if ENV['template']
96
- if ENV['DOC_FILES']
97
- rdoc.rdoc_files.include(ENV['DOC_FILES'].split(/,\s*/))
98
- else
99
- rdoc.rdoc_files.include('README.md', 'ChangeLog')
100
- rdoc.rdoc_files.include('lib/**/*.rb')
101
- rdoc.rdoc_files.include('ext/**/*.c')
102
- end
103
- end
104
-
105
- desc "Publish to RubyForge"
106
- task :rubyforge => [:rdoc, :package] do
107
- require 'rubyforge'
108
- Rake::RubyForgePublisher.new(RUBYFORGE_PROJECT, 'asip').upload
109
- end
110
-
111
- desc 'Package and upload the release to rubyforge.'
112
- task :release => [:clean, :package] do |t|
113
- v = ENV["VERSION"] or abort "Must supply VERSION=x.y.z"
114
- abort "Versions don't match #{v} vs #{VERS}" unless v == VERS
115
- pkg = "pkg/#{NAME}-#{VERS}"
116
-
117
- require 'rubyforge'
118
- rf = RubyForge.new.configure
119
- puts "Logging in"
120
- rf.login
121
-
122
- c = rf.userconfig
123
- # c["release_notes"] = description if description
124
- # c["release_changes"] = changes if changes
125
- c["preformatted"] = true
126
-
127
- files = [
128
- "#{pkg}.tgz",
129
- "#{pkg}.gem"
130
- ].compact
131
-
132
- puts "Releasing #{NAME} v. #{VERS}"
133
- rf.add_release RUBYFORGE_PROJECT, NAME, VERS, *files
134
- end
135
-
136
- desc 'Show information about the gem.'
137
- task :debug_gem do
138
- puts spec.to_ruby
139
- end
140
-
141
- desc 'Update gem spec'
142
- task :gemspec do
143
- open("#{NAME}.gemspec", 'w').write spec.to_ruby
144
- end