salesforce_id 1.3.4 → 1.4.0

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: 2652a2a26b19cd2a46fb7eaa116e56849d4d5486
4
- data.tar.gz: 94cd79bfeeb777a27a1b9630c50f852c32cd7350
3
+ metadata.gz: e4610637d3c2f52c74f3f6ea50a7fda75c71a796
4
+ data.tar.gz: 245caa5424c451f1b5c02dd1205c7c2ebe8a8212
5
5
  SHA512:
6
- metadata.gz: 6a37a08eaa949ce432ac394f3b6ff3a7f0b5a3c8f7dcc495adc5f258e7d4deb601c2ba91c48b1dd8661e50328d8d4b41aabc541b9034ad65b1f7e918bb70eb5c
7
- data.tar.gz: dfd9efd4de03f7d241153de0525d479944acb740ac67cbeaffdae364f62d88a82bb5d4a28158090f5968a0b8cba1e3aee750072b773254facccc5a41677b03d6
6
+ metadata.gz: ff90182696c2038f736d40fe9f7e179cf6b1f91f4bc904b3ba926d9956facfabd8802a8d4e065cf36144bb596ef70c6bbe92e161ad1396bcf9b240327b9d7a61
7
+ data.tar.gz: bc9687896ece15769ae3f59f4a65b967d974147407c5d40c696c0836e8cac12705acdee935f80f3ef85d6904c9771aa2c85631168ca0c31618197be23d825c92
data/README.md CHANGED
@@ -90,7 +90,13 @@ id.to_insensitive # => "003G000001SUbc4IAD"
90
90
  SalesforceId("003G000001SUbc4") == SalesforceId.id("003G000001SUbc4") # => true
91
91
  ```
92
92
 
93
- Notice that `SalesforceId::Safe` can be used with Rails [serialize](http://api.rubyonrails.org/classes/ActiveRecord/Base.html#class-ActiveRecord::Base-label-Saving+arrays-2C+hashes-2C+and+other+non-mappable+objects+in+text+columns)
93
+ ### ActiveRecord integration
94
+
95
+ `SalesforceId::Safe` can be used with Rails [serialize](http://api.rubyonrails.org/classes/ActiveRecord/Base.html#class-ActiveRecord::Base-label-Saving+arrays-2C+hashes-2C+and+other+non-mappable+objects+in+text+columns).
96
+
97
+ To achieve full integration, `Arel` requires to inject a _visitor_ by directly
98
+ adding a method to `Arel::Visitors::ToSql`, this is currently performed by the
99
+ `arel.rb` file, which checks if arel gem is present and version is `~> 5.0`
94
100
 
95
101
  ### Test utilities
96
102
 
@@ -0,0 +1,13 @@
1
+ require 'rubygems'
2
+
3
+ if defined?(::Arel) && Gem::Dependency.new('arel', '~> 5.0').match?('arel', ::Arel::VERSION)
4
+
5
+ class ::Arel::Visitors::ToSql
6
+
7
+ def visit_SalesforceId_Safe(o, collector)
8
+ quoted(o.to_s, collector)
9
+ end
10
+
11
+ end
12
+
13
+ end
@@ -1,5 +1,6 @@
1
1
  require 'salesforce_id'
2
2
  require 'salesforce_id/safe'
3
+ require 'salesforce_id/arel'
3
4
 
4
5
  module SalesforceId
5
6
 
@@ -1,3 +1,3 @@
1
1
  module SalesforceId
2
- VERSION = "1.3.4"
2
+ VERSION = "1.4.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: salesforce_id
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.4
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fire-Dragon-DoL
@@ -151,6 +151,7 @@ files:
151
151
  - ext/salesforce_id/validate_id.c
152
152
  - ext/salesforce_id/validate_id.h
153
153
  - lib/salesforce_id.rb
154
+ - lib/salesforce_id/arel.rb
154
155
  - lib/salesforce_id/random.rb
155
156
  - lib/salesforce_id/rspec.rb
156
157
  - lib/salesforce_id/rspec/be_insensitive_salesforce_id_matcher.rb