bibtex-ruby 4.0.0 → 4.0.1

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.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ed46f17c426f678a6782c0e226710d4508edc484
4
- data.tar.gz: d70e405f4c1f9783cf3a2a8c515837eab7a7d3b9
3
+ metadata.gz: 2a027f55fbfc21baadb0ed5b95eb858ec0ab5cbc
4
+ data.tar.gz: 891369c64cff100d3cfc2f5ed134b3484512ee93
5
5
  SHA512:
6
- metadata.gz: 24999b5c3f94cd6de3fc4dfc773399421829cac09189cbd5ae2599fa8c99ae195dfb8087a892582117b63b41ed46c782d2ecb925ece19de56b7fea98bc5bada9
7
- data.tar.gz: b867a6b26356e16d650257edf0f27d770f19406729728376ed6ac58bdffdd1637c8fac9292c6623e0efe930f9bc2319b857db5707950aa31c6d361792a961273
6
+ metadata.gz: 3ac72b61e9b34fb3777f4b1e41ece613461496d943c7989393b06944f166eff031f3c63e37add9c51080ab300ae52f7aa51d7ef95ef723fa0a5f4776b5e697d2
7
+ data.tar.gz: 70d6e04c3e33d39a10cf6a9ecf9e8c056a7660c1db047ca81735821caabd3398829ca963e67fbba4aca7f6aa74fc333f03bef14a19ee6a31a138782133e1c8ae
@@ -50,7 +50,7 @@ module BibTeX
50
50
 
51
51
 
52
52
  NAME_FIELDS = [:author,:editor,:translator,:director,:producer,:composer].freeze
53
- DATE_FIELDS = [:year,:month].freeze
53
+ DATE_FIELDS = [:year,:month,:day,:date].freeze
54
54
 
55
55
  MONTHS = [:jan,:feb,:mar,:apr,:may,:jun,:jul,:aug,:sep,:oct,:nov,:dec].freeze
56
56
 
@@ -97,24 +97,35 @@ class BibTeX::Entry::CiteProcConverter
97
97
  end
98
98
 
99
99
  def date
100
- return unless bibtex.field?(:year)
101
-
102
- case bibtex[:year].to_s
103
- when /^\d+$/
104
- parts = [bibtex[:year].to_s]
105
-
106
- if bibtex.field?(:month)
107
- parts.push BibTeX::Entry::MONTHS.find_index(bibtex[:month].to_s.intern)
108
- parts[1] = parts[1] + 1 unless parts[1].nil?
109
-
110
- if bibtex.field?(:day)
111
- parts.push bibtex[:day]
100
+ case
101
+ when bibtex.field?(:date)
102
+ hash['issued'] = {
103
+ 'date-parts' => bibtex.date.to_s.split('/').map { |part|
104
+ part.split('-').map(&:to_i)
105
+ }
106
+ }
107
+
108
+ when bibtex.field?(:year)
109
+ case bibtex[:year].to_s
110
+ when /^\d+$/
111
+ parts = [bibtex[:year].to_s]
112
+
113
+ if bibtex.field?(:month)
114
+ parts.push BibTeX::Entry::MONTHS.find_index(bibtex[:month].to_s.intern)
115
+ parts[1] = parts[1] + 1 unless parts[1].nil?
116
+
117
+ if bibtex.field?(:day)
118
+ parts.push bibtex[:day]
119
+ end
112
120
  end
121
+
122
+ hash['issued'] = { 'date-parts' => [parts.compact.map(&:to_i)] }
123
+ else
124
+ hash['issued'] = { 'literal' => bibtex[:year].to_s }
113
125
  end
114
126
 
115
- hash['issued'] = { 'date-parts' => [parts.compact.map(&:to_i)] }
116
127
  else
117
- hash['issued'] = { 'literal' => bibtex[:year].to_s }
128
+ # no date present
118
129
  end
119
130
  end
120
131
 
@@ -20,7 +20,7 @@ module BibTeX
20
20
  module Version
21
21
  MAJOR = 4
22
22
  MINOR = 0
23
- PATCH = 0
23
+ PATCH = 1
24
24
  BUILD = nil
25
25
 
26
26
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.').freeze
@@ -326,6 +326,23 @@ module BibTeX
326
326
  @entry.update :year => 2005, :month => 5, :day => 31
327
327
  assert_equal [[2005, 5, 31]], @entry.to_citeproc['issued']['date-parts']
328
328
  end
329
+
330
+ it 'prefers biblatex syntax' do
331
+ @entry.date = '2014-07-13'
332
+ assert_equal [[2014,7,13]], @entry.to_citeproc['issued']['date-parts']
333
+ end
334
+
335
+ it 'supports biblatex date ranges' do
336
+ @entry.date = '2014-06-12/2014-07-13'
337
+
338
+ assert_equal [[2014,6,12],[2014,7,13]],
339
+ @entry.to_citeproc['issued']['date-parts']
340
+ end
341
+
342
+ it 'supports biblatex partial dates' do
343
+ @entry.date = '2014-07'
344
+ assert_equal [[2014,7]], @entry.to_citeproc['issued']['date-parts']
345
+ end
329
346
  end
330
347
 
331
348
  describe 'given a filter object or a filter name' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bibtex-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sylvester Keil
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-08 00:00:00.000000000 Z
11
+ date: 2014-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: latex-decode