bibtex-ruby 2.0.6 → 2.0.7

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bibtex-ruby might be problematic. Click here for more details.

data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bibtex-ruby (2.0.5)
4
+ bibtex-ruby (2.0.6)
5
5
  latex-decode (>= 0.0.6)
6
6
  multi_json (~> 1.3)
7
7
 
data/History.txt CHANGED
@@ -1,3 +1,8 @@
1
+ 2.0.7 / 2012-04-30
2
+ ==================
3
+
4
+ * Added support for <=, >= numeric queries
5
+
1
6
  2.0.6 / 2012-04-30
2
7
  ==================
3
8
 
data/README.md CHANGED
@@ -204,6 +204,8 @@ query functionality with the exception of yielding to a block. For instance:
204
204
  => Same as above
205
205
  bib.q('@book[keywords^=ruby]')
206
206
  => Returns all books whose keywords attribute matches /ruby/
207
+ bib.q('@article[year<=2007]')
208
+ => Returns all articles published in 2007 or earlier
207
209
  bib.query('@book') { |e| e.keywords.split(/,/).length > 1 }
208
210
  => Returns all book entries with two or more keywords or []
209
211
 
@@ -105,7 +105,7 @@ module BibTeX
105
105
  # Returns true if the element meets all of the given conditions.
106
106
  def meets?(*conditions)
107
107
  conditions.flatten.all? do |condition|
108
- property, operator, value = condition.split(/\s*([!~\/\^]?=)\s*/)
108
+ property, operator, value = condition.split(/\s*([!~\/\^<>]?=)\s*/)
109
109
 
110
110
  if property.nil?
111
111
  true
@@ -117,6 +117,10 @@ module BibTeX
117
117
  respond_to?(property) && send(property).to_s.match("^#{value}")
118
118
  when '~='
119
119
  respond_to?(property) && send(property).to_s.match(value)
120
+ when '<='
121
+ respond_to?(property) && send(property).to_i <= value.to_i
122
+ when '>='
123
+ respond_to?(property) && send(property).to_i >= value.to_i
120
124
  else
121
125
  respond_to?(property) && send(property).to_s == value
122
126
  end
@@ -18,6 +18,6 @@
18
18
 
19
19
  module BibTeX
20
20
  module Version
21
- STRING = '2.0.6'.freeze
21
+ STRING = '2.0.7'.freeze
22
22
  end
23
23
  end
@@ -136,6 +136,13 @@ module BibTeX
136
136
  assert_equal 2, @bib['@*[keywords^=ruby]'].length
137
137
  end
138
138
 
139
+ it 'supports queries with numeric conditions' do
140
+ assert_equal 3, @bib['@*[year<=2010]'].length
141
+ assert_equal 3, @bib['@*[year<=2009]'].length
142
+ assert_equal 2, @bib['@*[year>=2008]'].length
143
+ assert_equal 0, @bib['@*[year>=2010]'].length
144
+ end
145
+
139
146
 
140
147
  it 'supports queries by bibtex element' do
141
148
  entry = Entry.parse(<<-END).first
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bibtex-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.6
4
+ version: 2.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-04-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: latex-decode
16
- requirement: &70204962101620 !ruby/object:Gem::Requirement
16
+ requirement: &70149186709340 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.0.6
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70204962101620
24
+ version_requirements: *70149186709340
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: multi_json
27
- requirement: &70204962100860 !ruby/object:Gem::Requirement
27
+ requirement: &70149186708580 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.3'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70204962100860
35
+ version_requirements: *70149186708580
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70204962100340 !ruby/object:Gem::Requirement
38
+ requirement: &70149186708040 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0.9'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70204962100340
46
+ version_requirements: *70149186708040
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: racc
49
- requirement: &70204962099640 !ruby/object:Gem::Requirement
49
+ requirement: &70149186707340 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '1.4'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70204962099640
57
+ version_requirements: *70149186707340
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rdoc
60
- requirement: &70204962098520 !ruby/object:Gem::Requirement
60
+ requirement: &70149186706200 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '3.9'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70204962098520
68
+ version_requirements: *70149186706200
69
69
  description: ! "\t\tBibTeX-Ruby is the Rubyist's swiss-army-knife for all things BibTeX.
70
70
  It\n includes a parser for all common BibTeX objects (@string, @preamble,\n @comment
71
71
  and regular entries) and a sophisticated name parser that\n tokenizes correctly