reapack-index 1.1beta1 → 1.1beta3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 74ff4d70819b98251948bbe5a7e7767e7b9e3b0c
4
- data.tar.gz: 1887659545c7d20019c17e740a1aaa48f078ae6f
3
+ metadata.gz: 8fe0c0ad52b4938c414bacfff63b2981614c2df2
4
+ data.tar.gz: 4c799d2fd3f4d7823bad7ac142cc08146c029c60
5
5
  SHA512:
6
- metadata.gz: 1f47b75ad09e4f08962a52b6ea2ac13e94778086fd7107d9fe550d48516e19553417ddbf281796143c83d64a78c5afa198375abba74419fd30ecf749b638c341
7
- data.tar.gz: 11f2b3596583affdc178428867a03a8bf094ae2701c84f2db4cca1d96d6bad479dda5adc6a368df7d1e31b8841efced68cfa16fa420524616951e89bcdea5e82
6
+ metadata.gz: 8c0f24e952b9c836e5db6172928bcd5366f60dba50388fee7d54bd6159b9b3afcbf8c954af8613235a99b463a339a7d561fca7928930dbcab2d7b8649eb7eb53
7
+ data.tar.gz: 84acc8f432d45f95d51053c05e2a0233ea4b961e933c2c849cdb471e11f8b93c60d68ebbc86b0624d80547beefaccc85a34941cdddb0e52964c7ea24a63d1afa
data/README.md CHANGED
@@ -29,7 +29,7 @@ reapack-index [options] [path-to-your-repository]
29
29
  ```
30
30
  Modes:
31
31
  -c, --check Test every package including uncommited changes and exit
32
- -s, --scan [COMMIT] Scan new commits (default) or specific commits
32
+ -s, --scan [FILE|COMMIT] Scan new commits (default), a file or a commit
33
33
  --rebuild Clear the index and rescan the whole git history
34
34
  Indexer options:
35
35
  -a, --[no-]amend Reindex existing versions
data/lib/reapack/index.rb CHANGED
@@ -43,6 +43,7 @@ class ReaPack::Index
43
43
 
44
44
  attr_reader :path, :url_template, :cdetector
45
45
  attr_accessor :amend, :commit, :files, :time, :strict
46
+ attr_accessor :auto_bump_commit
46
47
 
47
48
  class << self
48
49
  def is_type?(input)
@@ -73,6 +74,7 @@ class ReaPack::Index
73
74
  @changed_nodes = []
74
75
  @files = []
75
76
  @path = path
77
+ @auto_bump_commit = true
76
78
 
77
79
  @cdetector = ConflictDetector.new
78
80
 
@@ -146,7 +148,7 @@ class ReaPack::Index
146
148
  end
147
149
  }
148
150
 
149
- bump_commit
151
+ bump_commit if @auto_bump_commit
150
152
  end
151
153
 
152
154
  def remove(path)
@@ -158,7 +160,7 @@ class ReaPack::Index
158
160
  pkg.remove
159
161
  cat.remove if cat.empty?
160
162
 
161
- bump_commit
163
+ bump_commit if @auto_bump_commit
162
164
  log_change 'removed package'
163
165
  end
164
166
 
@@ -84,9 +84,15 @@ private
84
84
  elsif @opts[:scan].empty?
85
85
  @git.commits_since @index.last_commit
86
86
  else
87
+ @index.auto_bump_commit = false
88
+
87
89
  @opts[:scan].map {|hash|
88
- @git.get_commit hash or begin
89
- $stderr.puts '--scan: bad revision: %s' % @opts[:scan]
90
+ if c = @git.last_commit_for(hash)
91
+ [c, hash]
92
+ elsif c = @git.get_commit(hash)
93
+ c
94
+ else
95
+ $stderr.puts "--scan: bad file or revision: '%s'" % @opts[:scan]
90
96
  @exit = false
91
97
  nil
92
98
  end
@@ -95,12 +101,12 @@ private
95
101
 
96
102
  unless commits.empty?
97
103
  progress_wrapper commits.size do
98
- commits.each {|commit| process_commit commit }
104
+ commits.each {|args| process_commit *args }
99
105
  end
100
106
  end
101
107
  end
102
108
 
103
- def process_commit(commit)
109
+ def process_commit(commit, file = nil)
104
110
  if @opts[:verbose]
105
111
  log 'processing %s: %s' % [commit.short_id, commit.summary]
106
112
  end
@@ -111,7 +117,8 @@ private
111
117
 
112
118
  commit.each_diff
113
119
  .select {|diff|
114
- (not ignored? expand_path(diff.file)) &&
120
+ (file.nil? || diff.file == file) &&
121
+ (not ignored? expand_path(diff.file)) &&
115
122
  ReaPack::Index.type_of(diff.file)
116
123
  }
117
124
  .sort_by {|diff|
@@ -54,7 +54,7 @@ class ReaPack::Index::CLI
54
54
  opts[:check] = true
55
55
  end
56
56
 
57
- op.on '-s', '--scan [COMMIT]', 'Scan new commits (default) or specific commits' do |commit|
57
+ op.on '-s', '--scan [FILE|COMMIT]', 'Scan new commits (default), a file or a commit' do |commit|
58
58
  opts[:check] = opts[:rebuild] = false
59
59
  opts[:scan] ||= []
60
60
 
@@ -1,5 +1,5 @@
1
1
  module ReaPack
2
2
  class Index
3
- VERSION = '1.1beta1'
3
+ VERSION = '1.1beta3'
4
4
  end
5
5
  end
@@ -13,7 +13,7 @@ class ReaPack::Index
13
13
  end
14
14
 
15
15
  def commits
16
- commits_since nil
16
+ @commits ||= commits_since nil
17
17
  end
18
18
 
19
19
  def commits_since(sha)
@@ -38,6 +38,12 @@ class ReaPack::Index
38
38
  Commit.new c, @repo if c
39
39
  end
40
40
 
41
+ def last_commit_for(file)
42
+ commits.reverse_each.find {|c|
43
+ c.each_diff.any? {|d| d.file == file }
44
+ }
45
+ end
46
+
41
47
  def guess_url_template
42
48
  remote = @repo.remotes['origin']
43
49
  return unless remote
@@ -77,7 +83,7 @@ class ReaPack::Index
77
83
  end
78
84
  }
79
85
 
80
- c = Rugged::Commit.create @repo, \
86
+ hash = Rugged::Commit.create @repo, \
81
87
  tree: new_index.write_tree(@repo),
82
88
  message: message,
83
89
  parents: [target].compact,
@@ -88,7 +94,9 @@ class ReaPack::Index
88
94
  # force-reload the repository
89
95
  @repo = Rugged::Repository.discover path
90
96
 
91
- get_commit c
97
+ commit = get_commit hash
98
+ @commits << commit if @commits
99
+ commit
92
100
  end
93
101
 
94
102
  private
@@ -108,8 +116,8 @@ class ReaPack::Index
108
116
  @parent = commit.parents.first
109
117
  end
110
118
 
111
- def each_diff
112
- return enum_for :each_diff unless block_given?
119
+ def each_diff(&block)
120
+ return @diffs.each &block if @diffs
113
121
 
114
122
  if @parent
115
123
  diff = @parent.diff id
@@ -117,7 +125,8 @@ class ReaPack::Index
117
125
  diff = @commit.diff
118
126
  end
119
127
 
120
- diff.each_delta {|delta| yield Git::Diff.new(delta, @parent.nil?, @repo) }
128
+ @diffs ||= diff.each_delta.map {|delta| Git::Diff.new(delta, @parent.nil?, @repo) }
129
+ @diffs.each &block
121
130
  end
122
131
 
123
132
  def id
@@ -145,7 +154,11 @@ class ReaPack::Index
145
154
  end
146
155
 
147
156
  def ==(o)
148
- id == o.id
157
+ o && id == o.id
158
+ end
159
+
160
+ def inspect
161
+ "#<#{self.class} #{id} #{message}>"
149
162
  end
150
163
 
151
164
  private
@@ -165,7 +165,7 @@ class ReaPack::Index
165
165
  # the first type will be the default one
166
166
  VALID_TYPES = [:website, :screenshot, :donation].freeze
167
167
 
168
- LINK_REGEX = /\A(.+?)(?:\s|=)(\w+?:\/\/.+)\Z/.freeze
168
+ LINK_REGEX = /\A(.+?)(?:\s+|=)(\w+?:\/\/.+)\Z/.freeze
169
169
 
170
170
  def self.split(input)
171
171
  if input =~ LINK_REGEX
@@ -73,6 +73,17 @@ class ReaPack::Index
73
73
  if has_version? name
74
74
  ver = @versions[name]
75
75
  else
76
+ @versions.each_key {|other|
77
+ normalized = [other.dup, name.dup].each {|ver|
78
+ ver.gsub! /(?<![\d\w])0+/, ''
79
+ ver.gsub! /[^\d\w]+/, '.'
80
+ }
81
+
82
+ if normalized.uniq.size < 2
83
+ raise Error, "version #{name} is a duplicate of version #{other}"
84
+ end
85
+ }
86
+
76
87
  ver = @versions[name] = Version.create name, @node
77
88
  end
78
89
 
@@ -8,6 +8,7 @@ class WordpressChangelog < MetaHeader::Parser
8
8
  VERSION = /\A[\s\*]*v([\d\.]+)(?:\s+(.+))?\Z/.freeze
9
9
 
10
10
  def parse(input)
11
+ input = input.read
11
12
  input.encode! Encoding::UTF_8, invalid: :replace
12
13
 
13
14
  ver, changes = header[:version], header[:changelog]
@@ -14,7 +14,7 @@ class ReaPack::Index
14
14
  class << self
15
15
  def parse_each(input)
16
16
  if block_given?
17
- input.to_s.lines.map {|line| yield parse(line) }
17
+ input.to_s.lines.map {|line| i = parse(line) and yield i }
18
18
  else
19
19
  enum_for :parse_each, input
20
20
  end
@@ -22,6 +22,8 @@ class ReaPack::Index
22
22
 
23
23
  def parse(line)
24
24
  m = line.strip.match PROVIDES_REGEX
25
+ return unless m
26
+
25
27
  options, pattern, url_tpl = m[:options], m[:file], m[:url]
26
28
 
27
29
  instance = self.new pattern, url_tpl
@@ -21,22 +21,25 @@ class ReaPack::Index
21
21
  'segment overflow (%d > %d)' % [s, VERSION_SEGMENT_MAX] if s
22
22
  }
23
23
  ],
24
- description: SIMPLE_TAG,
25
24
  about: MetaHeader::VALUE,
26
- website: MetaHeader::VALUE,
27
- screenshot: MetaHeader::VALUE,
25
+ description: SIMPLE_TAG,
28
26
  donation: MetaHeader::VALUE,
27
+ link: MetaHeader::VALUE,
28
+ noindex: MetaHeader::BOOLEAN,
29
+ screenshot: MetaHeader::VALUE,
29
30
 
30
31
  # version-specific tags
31
32
  author: SIMPLE_TAG,
32
33
  changelog: MetaHeader::VALUE,
33
- provides: [MetaHeader::VALUE, PROVIDES_VALIDATOR],
34
- noindex: MetaHeader::BOOLEAN,
35
34
  metapackage: MetaHeader::BOOLEAN,
35
+ provides: [MetaHeader::VALUE, PROVIDES_VALIDATOR],
36
36
  }.freeze
37
37
 
38
38
  HEADER_ALIASES = {
39
- [:reascript_name, :desc] => :description,
39
+ [:reascript_name, :jsfx_name, :theme_name,
40
+ :extension_name, :desc] => :description,
41
+ :links => :link,
42
+ :screenshots => :screenshot,
40
43
  }.freeze
41
44
 
42
45
  META_TYPES = [:extension, :data, :theme].freeze
@@ -56,7 +59,7 @@ class ReaPack::Index
56
59
  @pkg.description = @mh[:description]
57
60
  @pkg.metadata.about = @mh[:about]
58
61
 
59
- eval_links :website
62
+ eval_links :website, tag: :link
60
63
  eval_links :screenshot
61
64
  eval_links :donation
62
65
 
@@ -152,11 +155,13 @@ class ReaPack::Index
152
155
  }.flatten
153
156
  end
154
157
 
155
- def eval_links(type)
158
+ def eval_links(type, tag: nil)
159
+ tag ||= type
160
+
156
161
  @pkg.metadata.replace_links type do
157
- @mh[type].to_s.lines {|l|
158
- l.chomp!
159
- @pkg.metadata.push_link type, *Link.split(l)
162
+ @mh[tag].to_s.lines {|line|
163
+ line.strip!
164
+ @pkg.metadata.push_link type, *Link.split(line) unless line.empty?
160
165
  }
161
166
  end
162
167
  end
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
  spec.add_runtime_dependency 'addressable', '~> 2.4'
30
30
  spec.add_runtime_dependency 'colorize', '~> 0.7'
31
31
  spec.add_runtime_dependency 'gitable', '~> 0.3'
32
- spec.add_runtime_dependency 'metaheader', '~> 1.3beta1'
32
+ spec.add_runtime_dependency 'metaheader', '~> 1.3beta2'
33
33
  spec.add_runtime_dependency 'nokogiri', '~> 1.6.8'
34
34
  spec.add_runtime_dependency 'pandoc-ruby', '~> 2.0'
35
35
  spec.add_runtime_dependency 'rugged', '~> 0.24'
@@ -2,11 +2,11 @@
2
2
  !include Sections.nsh
3
3
  !include StrRep.nsh
4
4
 
5
- !define VERSION "1.1beta1"
5
+ !define VERSION "1.1beta3"
6
6
  !define NAME "ReaPack Index ${VERSION}"
7
7
  !define LONG_VERSION "0.1.0.0"
8
8
 
9
- !define RUBY_VERSION "2.3.0"
9
+ !define RUBY_VERSION "2.3.1"
10
10
  !define RUBYINSTALLER_FILE "rubyinstaller-${RUBY_VERSION}.exe"
11
11
  !define RUBYINSTALLER_URL \
12
12
  "http://dl.bintray.com/oneclick/rubyinstaller/${RUBYINSTALLER_FILE}"
@@ -316,6 +316,50 @@ processing [a-f0-9]{7}: third commit
316
316
  refute_match 'test1.lua', read_index, 'The initial commit was scanned'
317
317
  assert_match 'test2.lua', read_index
318
318
  assert_match 'test3.lua', read_index
319
+ assert_match @git.last_commit.id, read_index
320
+ end
321
+ end
322
+
323
+ def test_manual_disable_commit_bump
324
+ options = ['--scan', nil]
325
+
326
+ setup = proc {
327
+ @git.create_commit 'initial commit',
328
+ [mkfile('cat/test1.lua', '@version 2.0')]
329
+ options[1] = @git.last_commit.id
330
+ }
331
+
332
+ wrapper options, setup: setup do
333
+ capture_io { assert_equal true, @cli.run }
334
+
335
+ assert_equal false, @cli.index.auto_bump_commit
336
+ refute_match %Q[commit="#{options[1]}"], read_index
337
+ end
338
+ end
339
+
340
+ def test_scan_file
341
+ options = [ '--scan', 'cat/test1.lua']
342
+
343
+ setup = proc {
344
+ @git.create_commit 'initial commit',
345
+ [mkfile('cat/test1.lua', '@version 1')]
346
+
347
+ @git.create_commit 'second commit', [
348
+ mkfile('cat/test1.lua', '@version 2'),
349
+ mkfile('cat/test2.lua', '@version 2.2'),
350
+ ]
351
+
352
+ @git.create_commit 'third commit',
353
+ [mkfile('cat/test3.lua', '@version 3')]
354
+ }
355
+
356
+ wrapper options, setup: setup do
357
+ capture_io { assert_equal true, @cli.run }
358
+
359
+ refute_match 'version name="1"', read_index, 'The initial commit was scanned'
360
+ assert_match 'version name="2"', read_index
361
+ refute_match 'test2.lua', read_index, 'test2.lua was indexed'
362
+ refute_match 'test3.lua', read_index, 'The third commit was scanned'
319
363
  end
320
364
  end
321
365
 
@@ -358,7 +402,7 @@ processing [a-f0-9]{7}: third commit
358
402
  wrapper ['--scan', hash] do
359
403
  @git.create_commit 'initial commit', [mkfile('README.md')]
360
404
 
361
- assert_output nil, /--scan: bad revision: #{Regexp.escape hash}/i do
405
+ assert_output nil, /--scan: bad file or revision: '#{Regexp.escape hash}'/i do
362
406
  assert_equal false, @cli.run
363
407
  end
364
408
  end
@@ -92,6 +92,26 @@ class TestIndex::Scan < MiniTest::Test
92
92
  refute_match '<category', contents
93
93
  end
94
94
 
95
+ def test_auto_bump_commit_enabled
96
+ index = ReaPack::Index.new @real_path
97
+ index.commit = @commit
98
+
99
+ assert_equal true, index.auto_bump_commit
100
+ refute_equal @commit, index.last_commit
101
+
102
+ index.scan 'Category Name/Hello World.lua', '@version 1.0'
103
+ assert_equal @commit, index.last_commit
104
+ end
105
+
106
+ def test_auto_bump_commit_disabled
107
+ index = ReaPack::Index.new @real_path
108
+ index.commit = @commit
109
+ index.auto_bump_commit = false
110
+
111
+ index.scan 'Category Name/Hello World.lua', '@version 1.0'
112
+ refute_equal @commit, index.last_commit
113
+ end
114
+
95
115
  def test_strict_mode
96
116
  index = ReaPack::Index.new @dummy_path
97
117
  index.strict = true
@@ -112,6 +112,12 @@ class TestScanner::TestValidation < MiniTest::Test
112
112
  assert_equal "missing value for tag 'about'", error.message
113
113
  end
114
114
 
115
+ def test_links
116
+ @mh[:links] = true
117
+ error = assert_raises(ReaPack::Index::Error) { @scanner.run }
118
+ assert_equal "missing value for tag 'links'", error.message
119
+ end
120
+
115
121
  def test_screenshot
116
122
  @mh[:screenshot] = true
117
123
  error = assert_raises(ReaPack::Index::Error) { @scanner.run }
data/test/test_git.rb CHANGED
@@ -129,6 +129,16 @@ class TestGit < MiniTest::Test
129
129
  }
130
130
  end
131
131
 
132
+ def test_last_commit_for_file
133
+ c1 = @git.create_commit 'first commit', [mkfile('hello/world')]
134
+ c2 = @git.create_commit 'second commit', [mkfile('hello/world', 'modified')]
135
+ c3 = @git.create_commit 'third commit', [mkfile('chunky/bacon')]
136
+
137
+ assert_equal c2, @git.last_commit_for('hello/world')
138
+ assert_equal c3, @git.last_commit_for('chunky/bacon')
139
+ assert_nil @git.last_commit_for('foo/bar')
140
+ end
141
+
132
142
  def test_multibyte_filename
133
143
  filename = "\342\200\224.lua"
134
144
 
@@ -152,4 +162,11 @@ class TestGit < MiniTest::Test
152
162
  git = ReaPack::Index::Git.new path # should not throw
153
163
  assert_equal @git.path, git.path
154
164
  end
165
+
166
+ def test_inspect_commit
167
+ c = @git.create_commit 'message', []
168
+ assert_match c.class.name, c.inspect
169
+ assert_match c.id, c.inspect
170
+ assert_match c.message, c.inspect
171
+ end
155
172
  end
data/test/test_index.rb CHANGED
@@ -175,6 +175,7 @@ class TestIndex < MiniTest::Test
175
175
  index.write @dummy_path
176
176
  contents = File.read @dummy_path
177
177
 
178
+ assert_equal @commit, index.last_commit
178
179
  assert_match @commit, contents
179
180
  refute_match '<category', contents
180
181
  end
@@ -157,6 +157,9 @@ class TestMetadata < MiniTest::Test
157
157
 
158
158
  assert_equal ['Hello World', 'http://perdu.com/a=b'],
159
159
  ReaPack::Index::Link.split('Hello World http://perdu.com/a=b')
160
+
161
+ assert_equal ['Hello World', 'http://perdu.com/a=b'],
162
+ ReaPack::Index::Link.split('Hello World http://perdu.com/a=b')
160
163
  end
161
164
 
162
165
  def test_invalid_link
data/test/test_package.rb CHANGED
@@ -95,7 +95,7 @@ class TestPackage < MiniTest::Test
95
95
  assert_equal '1.0', versions.first.name
96
96
  end
97
97
 
98
- def test_get_or_create_version
98
+ def test_new_version
99
99
  before = make_node <<-XML
100
100
  <reapack name="pkg" type="script">
101
101
  <version name="1.0" />
@@ -120,6 +120,23 @@ class TestPackage < MiniTest::Test
120
120
  assert pkg.has_version?('1.1'), 'version 1.1 not found'
121
121
  end
122
122
 
123
+ def test_new_version_similar
124
+ before = make_node '<reapack name="pkg" type="script"/>'
125
+
126
+ pkg = ReaPack::Index::Package.new before
127
+ pkg.version '1.01'
128
+
129
+ error = assert_raises ReaPack::Index::Error do
130
+ pkg.version '1.1'
131
+ end
132
+ assert_equal 'version 1.1 is a duplicate of version 1.01', error.message
133
+
134
+ error = assert_raises ReaPack::Index::Error do
135
+ pkg.version '1//1'
136
+ end
137
+ assert_equal 'version 1//1 is a duplicate of version 1.01', error.message
138
+ end
139
+
123
140
  def test_category_and_path
124
141
  pkg1 = ReaPack::Index::Package.new make_node('<reapack/>')
125
142
  assert_nil pkg1.category
data/test/test_parsers.rb CHANGED
@@ -23,13 +23,34 @@ class TestParsers < MiniTest::Test
23
23
  Test\x97
24
24
  IN
25
25
 
26
- changelog = <<-LOG
27
- + Line 3
28
- + Line 4
29
- LOG
26
+ assert_equal '1.1', mh[:version]
27
+ assert_equal "+ Line 3\n+ Line 4", mh[:changelog]
28
+ end
29
+
30
+ def test_wordpress_no_date
31
+ mh = MetaHeader.new <<-IN
32
+ /**
33
+ * Version: 1.1
34
+ */
35
+
36
+ /**
37
+ * Changelog:
38
+ * v1.2
39
+ \t+ Line 1
40
+ \t+ Line 2
41
+ * v1.1
42
+ \t+ Line 3
43
+ \t+ Line 4
44
+ * v1.0
45
+ \t+ Line 5
46
+ \t+ Line 6
47
+ */
48
+
49
+ Test\x97
50
+ IN
30
51
 
31
52
  assert_equal '1.1', mh[:version]
32
- assert_equal changelog.chomp, mh[:changelog]
53
+ assert_equal "+ Line 3\n+ Line 4", mh[:changelog]
33
54
  end
34
55
 
35
56
  def test_wordpress_noprefix
@@ -55,12 +76,7 @@ v1.0 (2012-01-01)
55
76
  Test\x97
56
77
  IN
57
78
 
58
- changelog = <<-LOG
59
- + Line 3
60
- + Line 4
61
- LOG
62
-
63
79
  assert_equal '1.1', mh[:version]
64
- assert_equal changelog.chomp, mh[:changelog]
80
+ assert_equal "+ Line 3\n+ Line 4", mh[:changelog]
65
81
  end
66
82
  end
@@ -76,4 +76,9 @@ class TestProvides < MiniTest::Test
76
76
  end.message
77
77
  }
78
78
  end
79
+
80
+ def test_empty_line
81
+ assert_nil ReaPack::Index::Provides.parse(String.new)
82
+ assert_equal 2, ReaPack::Index::Provides.parse_each("a\n\nb").to_a.size
83
+ end
79
84
  end
data/test/test_scanner.rb CHANGED
@@ -124,7 +124,7 @@ class TestScanner < MiniTest::Test
124
124
  end
125
125
 
126
126
  def test_website_links
127
- @mh[:website] = [
127
+ @mh[:links] = [
128
128
  'http://cfillion.tk',
129
129
  'Label http://cfillion.tk',
130
130
  ].join "\n"
@@ -140,6 +140,7 @@ class TestScanner < MiniTest::Test
140
140
  def test_screenshot_links
141
141
  @mh[:screenshot] = [
142
142
  'http://i.imgur.com/1.png',
143
+ '',
143
144
  'Label http://i.imgur.com/2.png',
144
145
  ].join "\n"
145
146
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reapack-index
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1beta1
4
+ version: 1.1beta3
5
5
  platform: ruby
6
6
  authors:
7
7
  - cfillion
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-12 00:00:00.000000000 Z
11
+ date: 2016-07-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 1.3beta1
131
+ version: 1.3beta2
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 1.3beta1
138
+ version: 1.3beta2
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: nokogiri
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -296,4 +296,3 @@ test_files:
296
296
  - test/test_scanner.rb
297
297
  - test/test_source.rb
298
298
  - test/test_version.rb
299
- has_rdoc: