sequel_bitemporal 0.6.5 → 0.6.6

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -39,7 +39,7 @@ Usage
39
39
  Build Status
40
40
  ------------
41
41
 
42
- [![Build Status](http://travis-ci.org/TalentBox/sequel_bitemporal.png)](http://travis-ci.org/TalentBox/sequel_bitemporal)
42
+ [![Build Status](https://travis-ci.org/TalentBox/sequel_bitemporal.png?branch=master)](https://travis-ci.org/TalentBox/sequel_bitemporal)
43
43
 
44
44
  License
45
45
  -------
@@ -52,6 +52,7 @@ module Sequel
52
52
  @audit_class = opts[:audit_class]
53
53
  @audit_updated_by_method = opts.fetch(:audit_updated_by_method){ :updated_by }
54
54
  @propagate_per_column = opts.fetch(:propagate_per_column, false)
55
+ @version_uses_string_nilifier = version.plugins.map(&:to_s).include? "Sequel::Plugins::StringNilifier"
55
56
  end
56
57
  master.one_to_many :versions, class: version, key: :master_id, graph_alias_base: master.versions_alias
57
58
  master.one_to_one :current_version, class: version, key: :master_id, graph_alias_base: master.current_version_alias, :graph_block=>(proc do |j, lj, js|
@@ -109,9 +110,9 @@ module Sequel
109
110
  end
110
111
  end
111
112
  module ClassMethods
112
- attr_reader :version_class, :versions_alias, :current_version_alias
113
- attr_reader :propagate_per_column
114
- attr_reader :audit_class, :audit_updated_by_method
113
+ attr_reader :version_class, :versions_alias, :current_version_alias,
114
+ :propagate_per_column, :audit_class, :audit_updated_by_method,
115
+ :version_uses_string_nilifier
115
116
  end
116
117
  module DatasetMethods
117
118
  end
@@ -386,6 +387,9 @@ module Sequel
386
387
  when :valid_to
387
388
  new_value || new_value!=current_version.valid_to
388
389
  else
390
+ if model.version_uses_string_nilifier
391
+ new_value = nil if current_version.nil_string? new_value
392
+ end
389
393
  current_version.send(key)!=new_value
390
394
  end
391
395
  end
@@ -3,7 +3,7 @@ $:.push File.expand_path("../lib", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "sequel_bitemporal"
6
- s.version = "0.6.5"
6
+ s.version = "0.6.6"
7
7
  s.authors = ["Joseph HALTER", "Jonathan TRON"]
8
8
  s.email = ["joseph.halter@thetalentbox.com", "jonathan.tron@thetalentbox.com"]
9
9
  s.homepage = "https://github.com/TalentBox/sequel_bitemporal"
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel_bitemporal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.5
5
4
  prerelease:
5
+ version: 0.6.6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Joseph HALTER
@@ -10,88 +10,88 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-01-29 00:00:00.000000000 Z
13
+ date: 2013-03-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: sequel
17
17
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
18
  requirements:
20
19
  - - ~>
21
20
  - !ruby/object:Gem::Version
22
21
  version: '3.30'
22
+ none: false
23
23
  type: :runtime
24
- prerelease: false
25
24
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
25
  requirements:
28
26
  - - ~>
29
27
  - !ruby/object:Gem::Version
30
28
  version: '3.30'
29
+ none: false
30
+ prerelease: false
31
31
  - !ruby/object:Gem::Dependency
32
32
  name: sqlite3
33
33
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
34
  requirements:
36
35
  - - ! '>='
37
36
  - !ruby/object:Gem::Version
38
37
  version: '0'
38
+ none: false
39
39
  type: :development
40
- prerelease: false
41
40
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
41
  requirements:
44
42
  - - ! '>='
45
43
  - !ruby/object:Gem::Version
46
44
  version: '0'
45
+ none: false
46
+ prerelease: false
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
49
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
50
  requirements:
52
51
  - - ~>
53
52
  - !ruby/object:Gem::Version
54
53
  version: 2.10.0
54
+ none: false
55
55
  type: :development
56
- prerelease: false
57
56
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
57
  requirements:
60
58
  - - ~>
61
59
  - !ruby/object:Gem::Version
62
60
  version: 2.10.0
61
+ none: false
62
+ prerelease: false
63
63
  - !ruby/object:Gem::Dependency
64
64
  name: timecop
65
65
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
66
  requirements:
68
67
  - - ! '>='
69
68
  - !ruby/object:Gem::Version
70
69
  version: '0'
70
+ none: false
71
71
  type: :development
72
- prerelease: false
73
72
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
73
  requirements:
76
74
  - - ! '>='
77
75
  - !ruby/object:Gem::Version
78
76
  version: '0'
77
+ none: false
78
+ prerelease: false
79
79
  - !ruby/object:Gem::Dependency
80
80
  name: rake
81
81
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
82
  requirements:
84
83
  - - ! '>='
85
84
  - !ruby/object:Gem::Version
86
85
  version: '0'
86
+ none: false
87
87
  type: :development
88
- prerelease: false
89
88
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
89
  requirements:
92
90
  - - ! '>='
93
91
  - !ruby/object:Gem::Version
94
92
  version: '0'
93
+ none: false
94
+ prerelease: false
95
95
  description: Bitemporal versioning for sequel, fully tested.
96
96
  email:
97
97
  - joseph.halter@thetalentbox.com
@@ -120,26 +120,26 @@ rdoc_options: []
120
120
  require_paths:
121
121
  - lib
122
122
  required_ruby_version: !ruby/object:Gem::Requirement
123
- none: false
124
123
  requirements:
125
124
  - - ! '>='
126
125
  - !ruby/object:Gem::Version
127
- version: '0'
128
126
  segments:
129
127
  - 0
130
- hash: -866208935474738740
131
- required_rubygems_version: !ruby/object:Gem::Requirement
128
+ hash: -3880005099675849523
129
+ version: '0'
132
130
  none: false
131
+ required_rubygems_version: !ruby/object:Gem::Requirement
133
132
  requirements:
134
133
  - - ! '>='
135
134
  - !ruby/object:Gem::Version
136
- version: '0'
137
135
  segments:
138
136
  - 0
139
- hash: -866208935474738740
137
+ hash: -3880005099675849523
138
+ version: '0'
139
+ none: false
140
140
  requirements: []
141
141
  rubyforge_project:
142
- rubygems_version: 1.8.23
142
+ rubygems_version: 1.8.25
143
143
  signing_key:
144
144
  specification_version: 3
145
145
  summary: Bitemporal versioning for sequel.