multiwoven-integrations 0.43.0 → 0.43.2

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
  SHA256:
3
- metadata.gz: 62e0ad2ac6fc880f4b88dd4a511312b240645d5d1134966659a16225a927848d
4
- data.tar.gz: a7368698f3dd5a28894549b635c136b348d43feb25513a1a93f8333a6f9c5ae7
3
+ metadata.gz: ee3d0d0974a94d4b1209840ab232990dc52695e48f57a3416f54124c317b6e65
4
+ data.tar.gz: '0941d61ece52ef976a080ab7466f285c34af234d2509d093889776b813d20759'
5
5
  SHA512:
6
- metadata.gz: f0a58e7df26e7579cf5037d6b6605374695a07c6276279da1bd4b9582d7c9f797a001eb9ab7b52e41f402468c7e43c0958d1d1882f27f66aa92617e9a6bd8058
7
- data.tar.gz: 8867babc43650be6e51e1a40c129089fa1b2ba46b561967b6d58bf251b3c48d3e42ef1d21ac46b5731d3a44012ffbd5edba298d76d621b3422db06f487b8eb5c
6
+ metadata.gz: 2a7f48a14fb40ee92be84016cfcec9eab5123490b4fa73c5fc21501da9d124857c09f3cb374a09328b4730c8a78ef1ebea61c89adf7500d5d480e2a953873023
7
+ data.tar.gz: 012db731b0d503876bbdd0758162b8179bcb34e42d4f5afb2ecdd924dcb790cdba1338e8cd4579eba0a4b934984047d9604d48d44d163b66cf3ddb8fb297d437
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.2.0
1
+ 3.4.11
@@ -9,7 +9,7 @@ module Multiwoven
9
9
  case action.downcase
10
10
  when "destination_insert"
11
11
  columns = record.keys.join(", ")
12
- values = record.values.map { |value| "'#{value}'" }.join(", ")
12
+ values = record.values.map { |value| "'#{Utils.serialize_value(value)}'" }.join(", ")
13
13
  # TODO: support bulk insert
14
14
  "INSERT INTO #{table} (#{columns}) VALUES (#{values});"
15
15
  when "destination_update"
@@ -21,7 +21,7 @@ module Multiwoven
21
21
  end
22
22
 
23
23
  primary_key_value = record.delete(primary_key) # Remove and return the primary key value
24
- set_clause = record.map { |key, value| "#{key} = '#{value}'" }.join(", ")
24
+ set_clause = record.map { |key, value| "#{key} = '#{Utils.serialize_value(value)}'" }.join(", ")
25
25
  where_clause = "#{primary_key} = '#{primary_key_value}'"
26
26
  "UPDATE #{table} SET #{set_clause} WHERE #{where_clause};"
27
27
  else
@@ -3,6 +3,11 @@
3
3
  module Multiwoven
4
4
  module Integrations::Core
5
5
  module Utils
6
+ def serialize_value(value)
7
+ value.is_a?(Hash) || value.is_a?(Array) ? value.to_json : value
8
+ end
9
+ module_function :serialize_value
10
+
6
11
  def keys_to_symbols(hash)
7
12
  if hash.is_a?(Hash)
8
13
  hash.each_with_object({}) do |(key, value), result|
@@ -96,7 +96,9 @@ module Multiwoven::Integrations::Destination
96
96
  CSV.generate do |csv|
97
97
  headers = records.first.keys
98
98
  csv << headers
99
- records.each { |record| csv << record.values_at(*headers) }
99
+ records.each do |record|
100
+ csv << record.values_at(*headers).map { |v| serialize_value(v) }
101
+ end
100
102
  end
101
103
  end
102
104
 
@@ -153,7 +153,7 @@ module Multiwoven::Integrations::Destination
153
153
  def escape_value(db, value)
154
154
  return "NULL" if value.nil?
155
155
 
156
- "'#{db.escape_string(value.to_s)}'"
156
+ "'#{db.escape_string(serialize_value(value).to_s)}'"
157
157
  end
158
158
 
159
159
  def quote_ident(name)
@@ -149,7 +149,9 @@ module Multiwoven::Integrations::Destination
149
149
  CSV.generate do |csv|
150
150
  headers = records.first.keys
151
151
  csv << headers
152
- records.each { |record| csv << record.values_at(*headers) }
152
+ records.each do |record|
153
+ csv << record.values_at(*headers).map { |v| serialize_value(v) }
154
+ end
153
155
  end
154
156
  end
155
157
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Multiwoven
4
4
  module Integrations
5
- VERSION = "0.43.0"
5
+ VERSION = "0.43.2"
6
6
 
7
7
  ENABLED_SOURCES = %w[
8
8
  Snowflake
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "models": [
3
3
  {
4
- "id": "bolt-instruct-32b",
5
- "name": "Bolt-Instruct-32B",
4
+ "id": "aisquared/bolt-instruct-v2",
5
+ "name": "Bolt-Instruct-V2",
6
6
  "model_type": "llm",
7
7
  "type": "completion",
8
8
  "tasks": [
@@ -39,6 +39,8 @@ Gem::Specification.new do |spec|
39
39
  spec.add_runtime_dependency "aws-sdk-s3"
40
40
  spec.add_runtime_dependency "aws-sdk-sts"
41
41
  spec.add_runtime_dependency "aws-sigv4"
42
+ spec.add_runtime_dependency "base64"
43
+ spec.add_runtime_dependency "bigdecimal"
42
44
  spec.add_runtime_dependency "csv"
43
45
  spec.add_runtime_dependency "dry-schema"
44
46
  spec.add_runtime_dependency "dry-struct"
@@ -52,6 +54,7 @@ Gem::Specification.new do |spec|
52
54
  spec.add_runtime_dependency "hubspot-api-client"
53
55
  spec.add_runtime_dependency "iterable-api-client"
54
56
  spec.add_runtime_dependency "jwt"
57
+ spec.add_runtime_dependency "logger"
55
58
  spec.add_runtime_dependency "MailchimpMarketing"
56
59
  spec.add_runtime_dependency "net-sftp"
57
60
  spec.add_runtime_dependency "pg"
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multiwoven-integrations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.43.0
4
+ version: 0.43.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Subin T P
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2026-09-25 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
@@ -94,6 +93,34 @@ dependencies:
94
93
  - - ">="
95
94
  - !ruby/object:Gem::Version
96
95
  version: '0'
96
+ - !ruby/object:Gem::Dependency
97
+ name: base64
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ type: :runtime
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: bigdecimal
112
+ requirement: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ type: :runtime
118
+ prerelease: false
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
97
124
  - !ruby/object:Gem::Dependency
98
125
  name: csv
99
126
  requirement: !ruby/object:Gem::Requirement
@@ -276,6 +303,20 @@ dependencies:
276
303
  - - ">="
277
304
  - !ruby/object:Gem::Version
278
305
  version: '0'
306
+ - !ruby/object:Gem::Dependency
307
+ name: logger
308
+ requirement: !ruby/object:Gem::Requirement
309
+ requirements:
310
+ - - ">="
311
+ - !ruby/object:Gem::Version
312
+ version: '0'
313
+ type: :runtime
314
+ prerelease: false
315
+ version_requirements: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - ">="
318
+ - !ruby/object:Gem::Version
319
+ version: '0'
279
320
  - !ruby/object:Gem::Dependency
280
321
  name: MailchimpMarketing
281
322
  requirement: !ruby/object:Gem::Requirement
@@ -943,7 +984,6 @@ metadata:
943
984
  homepage_uri: https://www.multiwoven.com/
944
985
  source_code_uri: https://github.com/Multiwoven/multiwoven/tree/main/integrations
945
986
  changelog_uri: https://github.com/Multiwoven/multiwoven/blob/main/integrations/CHANGELOG.md
946
- post_install_message:
947
987
  rdoc_options: []
948
988
  require_paths:
949
989
  - lib
@@ -958,8 +998,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
958
998
  - !ruby/object:Gem::Version
959
999
  version: '0'
960
1000
  requirements: []
961
- rubygems_version: 3.4.1
962
- signing_key:
1001
+ rubygems_version: 3.6.9
963
1002
  specification_version: 4
964
1003
  summary: Integration suite for open source reverse ETL platform
965
1004
  test_files: []