ree_lib 1.0.87 → 1.0.89

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +22 -22
  3. data/lib/ree_lib/packages/ree_actions/package/ree_actions/dsl.rb +0 -12
  4. data/lib/ree_lib/packages/ree_actions/spec/ree_actions/dsl_spec.rb +0 -90
  5. data/lib/ree_lib/packages/ree_dao/Package.schema.json +0 -28
  6. data/lib/ree_lib/packages/ree_dao/package/ree_dao/dataset_extensions.rb +29 -21
  7. data/lib/ree_lib/packages/ree_dao/spec/ree_dao/functions/build_pg_connection_spec.rb +10 -3
  8. data/lib/ree_lib/packages/ree_dao/spec/ree_dao/functions/build_sqlite_connection_spec.rb +0 -37
  9. data/lib/ree_lib/packages/ree_http/package/ree_http/functions/execute_request.rb +27 -20
  10. data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/execute_request.schema.json +8 -0
  11. data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_delete_spec.rb +10 -8
  12. data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_get_spec.rb +79 -18
  13. data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_options_spec.rb +6 -5
  14. data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_patch_spec.rb +8 -4
  15. data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_post_spec.rb +5 -10
  16. data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_put_spec.rb +5 -3
  17. data/lib/ree_lib/packages/ree_i18n/spec/ree_i18n/functions/t_spec.rb +4 -4
  18. data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/mapper.rb +22 -6
  19. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/benchmarks/mapper_benchmark_spec.rb +31 -0
  20. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/bool_spec.rb +8 -8
  21. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/date_spec.rb +10 -10
  22. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/date_time_spec.rb +16 -16
  23. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/float_spec.rb +13 -13
  24. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/hash_spec.rb +2 -2
  25. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/integer_spec.rb +14 -14
  26. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/rational_spec.rb +12 -12
  27. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/string_spec.rb +12 -12
  28. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/time_spec.rb +16 -16
  29. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/type_options_spec.rb +4 -4
  30. data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/wrappers/array_spec.rb +6 -6
  31. data/lib/ree_lib/version.rb +1 -1
  32. metadata +17 -24
  33. data/lib/ree_lib/packages/ree_dao/package/ree_dao/beans/dao_cache.rb +0 -81
  34. data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/drop_cache.rb +0 -15
  35. data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/extract_changes.rb +0 -26
  36. data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/init_cache.rb +0 -15
  37. data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/beans/dao_cache.schema.json +0 -22
  38. data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/drop_cache.schema.json +0 -31
  39. data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/extract_changes.schema.json +0 -45
  40. data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/init_cache.schema.json +0 -31
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ree_lib
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.87
4
+ version: 1.0.89
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ruslan Gatiyatov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-01-18 00:00:00.000000000 Z
11
+ date: 2024-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ree
@@ -44,56 +44,56 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 2.18.0
47
+ version: 2.22.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 2.18.0
54
+ version: 2.22.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: oj
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 3.13.17
61
+ version: 3.16.3
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 3.13.17
68
+ version: 3.16.3
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: i18n
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.12.0
75
+ version: 1.14.1
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 1.12.0
82
+ version: 1.14.1
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: sequel
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 5.58.0
89
+ version: 5.76.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 5.58.0
96
+ version: 5.76.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: binding_of_caller
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +156,14 @@ dependencies:
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 3.58.0
159
+ version: 3.76.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 3.58.0
166
+ version: 3.76.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: sqlite3
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -184,14 +184,14 @@ dependencies:
184
184
  requirements:
185
185
  - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: 1.4.1
187
+ version: 1.5.4
188
188
  type: :development
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
192
  - - "~>"
193
193
  - !ruby/object:Gem::Version
194
- version: 1.4.1
194
+ version: 1.5.4
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: warden
197
197
  requirement: !ruby/object:Gem::Requirement
@@ -226,14 +226,14 @@ dependencies:
226
226
  requirements:
227
227
  - - "~>"
228
228
  - !ruby/object:Gem::Version
229
- version: 3.3.1
229
+ version: 3.5.1
230
230
  type: :development
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - "~>"
235
235
  - !ruby/object:Gem::Version
236
- version: 3.3.1
236
+ version: 3.5.1
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: faker
239
239
  requirement: !ruby/object:Gem::Requirement
@@ -326,7 +326,6 @@ files:
326
326
  - lib/ree_lib/packages/ree_dao/package/ree_dao/association_methods.rb
327
327
  - lib/ree_lib/packages/ree_dao/package/ree_dao/associations.rb
328
328
  - lib/ree_lib/packages/ree_dao/package/ree_dao/beans/connections.rb
329
- - lib/ree_lib/packages/ree_dao/package/ree_dao/beans/dao_cache.rb
330
329
  - lib/ree_lib/packages/ree_dao/package/ree_dao/contract/dao_dataset_contract.rb
331
330
  - lib/ree_lib/packages/ree_dao/package/ree_dao/contract/entity_contract.rb
332
331
  - lib/ree_lib/packages/ree_dao/package/ree_dao/dataset_extensions.rb
@@ -336,9 +335,6 @@ files:
336
335
  - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_dao.rb
337
336
  - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_pg_connection.rb
338
337
  - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_sqlite_connection.rb
339
- - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/drop_cache.rb
340
- - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/extract_changes.rb
341
- - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/init_cache.rb
342
338
  - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/one_to_many.rb
343
339
  - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/one_to_one.rb
344
340
  - lib/ree_lib/packages/ree_dao/package/ree_dao/functions/persist_assoc.rb
@@ -346,15 +342,11 @@ files:
346
342
  - lib/ree_lib/packages/ree_dao/package/ree_dao/wrappers/pg_array.rb
347
343
  - lib/ree_lib/packages/ree_dao/package/ree_dao/wrappers/pg_jsonb.rb
348
344
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/beans/connections.schema.json
349
- - lib/ree_lib/packages/ree_dao/schemas/ree_dao/beans/dao_cache.schema.json
350
345
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/agg.schema.json
351
346
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_connection.schema.json
352
347
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_dao.schema.json
353
348
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_pg_connection.schema.json
354
349
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_sqlite_connection.schema.json
355
- - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/drop_cache.schema.json
356
- - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/extract_changes.schema.json
357
- - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/init_cache.schema.json
358
350
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/one_to_many.schema.json
359
351
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/one_to_one.schema.json
360
352
  - lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/persist_assoc.schema.json
@@ -1050,6 +1042,7 @@ files:
1050
1042
  - lib/ree_lib/packages/ree_mapper/schemas/ree_mapper/functions/build_mapper_factory.schema.json
1051
1043
  - lib/ree_lib/packages/ree_mapper/schemas/ree_mapper/functions/build_mapper_strategy.schema.json
1052
1044
  - lib/ree_lib/packages/ree_mapper/spec/package_schema_spec.rb
1045
+ - lib/ree_lib/packages/ree_mapper/spec/ree_mapper/benchmarks/mapper_benchmark_spec.rb
1053
1046
  - lib/ree_lib/packages/ree_mapper/spec/ree_mapper/dsl/dsl_spec.rb
1054
1047
  - lib/ree_lib/packages/ree_mapper/spec/ree_mapper/functions/build_mapper_factory_spec.rb
1055
1048
  - lib/ree_lib/packages/ree_mapper/spec/ree_mapper/functions/build_mapper_strategy_spec.rb
@@ -1,81 +0,0 @@
1
- class ReeDao::DaoCache
2
- include Ree::BeanDSL
3
-
4
- bean :dao_cache do
5
- link :deep_dup, from: :ree_object
6
-
7
- singleton
8
- after_init :setup
9
- end
10
-
11
- def setup
12
- @threads = {}
13
- end
14
-
15
- def add_thread_cache(thread)
16
- @threads[get_thread_object_id(thread)] ||= {}
17
- end
18
-
19
- def drop_thread_cache(thread)
20
- @threads.delete(get_thread_object_id(thread))
21
- end
22
-
23
- def get(table_name, primary_key)
24
- add_thread_cache(current_thread)
25
- add_table_name(table_name)
26
-
27
- @threads[current_thread_object_id][table_name][primary_key]
28
- end
29
-
30
- def set(table_name, primary_key, data)
31
- add_thread_cache(current_thread)
32
- add_table_name(table_name)
33
- add_primary_key(table_name, primary_key)
34
-
35
- @threads[current_thread_object_id][table_name][primary_key] = deep_dup(data)
36
- end
37
-
38
- private
39
-
40
- def get_thread_object_id(thread)
41
- thread == Thread.main ? thread.object_id : get_parent_thread(thread)
42
- end
43
-
44
- def get_parent_thread(thread)
45
- return thread.object_id if thread == Thread.main
46
-
47
- get_parent_thread(thread.parent)
48
- end
49
-
50
- def current_thread
51
- Thread.current
52
- end
53
-
54
- def current_thread_object_id
55
- get_thread_object_id(current_thread)
56
- end
57
-
58
- def add_table_name(table_name)
59
- current_thr_obj_id = current_thread_object_id
60
-
61
- if !@threads[current_thr_obj_id]
62
- @threads[current_thr_obj_id] ||= {}
63
- end
64
-
65
- @threads[current_thr_obj_id][table_name] ||= {}
66
- end
67
-
68
- def add_primary_key(table_name, primary_key)
69
- current_thr_obj_id = current_thread_object_id
70
-
71
- if !@threads[current_thr_obj_id]
72
- @threads[current_thr_obj_id] ||= {}
73
- end
74
-
75
- if !@threads[current_thr_obj_id][table_name]
76
- @threads[current_thr_obj_id][table_name] ||= {}
77
- end
78
-
79
- @threads[current_thr_obj_id][table_name][primary_key] ||= {}
80
- end
81
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class ReeDao::DropCache
4
- include Ree::FnDSL
5
-
6
- fn :drop_cache do
7
- link :dao_cache
8
- end
9
-
10
- contract(None => nil)
11
- def call
12
- dao_cache.drop_thread_cache(Thread.current)
13
- nil
14
- end
15
- end
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class ReeDao::ExtractChanges
4
- include Ree::FnDSL
5
-
6
- fn :extract_changes do
7
- link :dao_cache, as: :__ree_dao_cache
8
- end
9
-
10
- contract(Symbol, Any, Hash => Hash)
11
- def call(table_name, primary_key, hash)
12
- cached = __ree_dao_cache.get(table_name, primary_key)
13
- return hash unless cached
14
- changes = {}
15
-
16
- hash.each do |column, value|
17
- previous_column_value = cached[column]
18
-
19
- if cached.has_key?(column) && previous_column_value != value
20
- changes[column] = value
21
- end
22
- end
23
-
24
- changes
25
- end
26
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class ReeDao::InitCache
4
- include Ree::FnDSL
5
-
6
- fn :init_cache do
7
- link :dao_cache
8
- end
9
-
10
- contract(None => nil)
11
- def call
12
- dao_cache.add_thread_cache(Thread.current)
13
- nil
14
- end
15
- end
@@ -1,22 +0,0 @@
1
- {
2
- "schema_type": "object",
3
- "schema_version": "1.1",
4
- "name": "dao_cache",
5
- "path": "packages/ree_dao/package/ree_dao/beans/dao_cache.rb",
6
- "mount_as": "object",
7
- "class": "ReeDao::DaoCache",
8
- "factory": null,
9
- "methods": [
10
-
11
- ],
12
- "links": [
13
- {
14
- "target": "deep_dup",
15
- "package_name": "ree_object",
16
- "as": "deep_dup",
17
- "imports": [
18
-
19
- ]
20
- }
21
- ]
22
- }
@@ -1,31 +0,0 @@
1
- {
2
- "schema_type": "object",
3
- "schema_version": "1.1",
4
- "name": "drop_cache",
5
- "path": "packages/ree_dao/package/ree_dao/functions/drop_cache.rb",
6
- "mount_as": "fn",
7
- "class": "ReeDao::DropCache",
8
- "factory": null,
9
- "methods": [
10
- {
11
- "doc": "",
12
- "throws": [
13
-
14
- ],
15
- "return": "Any",
16
- "args": [
17
-
18
- ]
19
- }
20
- ],
21
- "links": [
22
- {
23
- "target": "dao_cache",
24
- "package_name": "ree_dao",
25
- "as": "dao_cache",
26
- "imports": [
27
-
28
- ]
29
- }
30
- ]
31
- }
@@ -1,45 +0,0 @@
1
- {
2
- "schema_type": "object",
3
- "schema_version": "1.1",
4
- "name": "extract_changes",
5
- "path": "packages/ree_dao/package/ree_dao/functions/extract_changes.rb",
6
- "mount_as": "fn",
7
- "class": "ReeDao::ExtractChanges",
8
- "factory": null,
9
- "methods": [
10
- {
11
- "doc": "",
12
- "throws": [
13
-
14
- ],
15
- "return": "Hash",
16
- "args": [
17
- {
18
- "arg": "table_name",
19
- "arg_type": "req",
20
- "type": "Symbol"
21
- },
22
- {
23
- "arg": "primary_key",
24
- "arg_type": "req",
25
- "type": "Any"
26
- },
27
- {
28
- "arg": "hash",
29
- "arg_type": "req",
30
- "type": "Hash"
31
- }
32
- ]
33
- }
34
- ],
35
- "links": [
36
- {
37
- "target": "dao_cache",
38
- "package_name": "ree_dao",
39
- "as": "__ree_dao_cache",
40
- "imports": [
41
-
42
- ]
43
- }
44
- ]
45
- }
@@ -1,31 +0,0 @@
1
- {
2
- "schema_type": "object",
3
- "schema_version": "1.1",
4
- "name": "init_cache",
5
- "path": "packages/ree_dao/package/ree_dao/functions/init_cache.rb",
6
- "mount_as": "fn",
7
- "class": "ReeDao::InitCache",
8
- "factory": null,
9
- "methods": [
10
- {
11
- "doc": "",
12
- "throws": [
13
-
14
- ],
15
- "return": "Any",
16
- "args": [
17
-
18
- ]
19
- }
20
- ],
21
- "links": [
22
- {
23
- "target": "dao_cache",
24
- "package_name": "ree_dao",
25
- "as": "dao_cache",
26
- "imports": [
27
-
28
- ]
29
- }
30
- ]
31
- }