sequel_bitemporal 0.6.5 → 0.6.6

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/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.