everscale-client-ruby 1.1.69 → 1.1.72

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f7e43a4c2728e714f0bbf3cdf5ad60ed200fab8696ae4b770cf7b71bc813f96a
4
- data.tar.gz: 294d90955172604dc290987db58f392a101bf49224af72bc582e5c14ff08ac3c
3
+ metadata.gz: 136fc32e9f45062ce1d5438d556c62edc66e41af2d4af62536a472b40d34a94e
4
+ data.tar.gz: f224f11d2942876ae70e84760db488ec2236ee5066b7512c1c505feefed3e106
5
5
  SHA512:
6
- metadata.gz: f8ce9d3927f5ec00646764ad3e5d2e4a21101079502aec94fb8684b2933b3f519df49dfb6610dedc6ce4567f06635022824a607b236cbaa704d743bc19dd4a24
7
- data.tar.gz: a5da28be4b7ac6a0321166f47d4858107a666b10267980460df41f5ab3ab1e1a83ef255ce65e703e563ae9d98cb41a4cfc1f332380f473da01208cfe2c7166aa
6
+ metadata.gz: 8fc44736ed3251e6a1d1df9bb8a278afe642ffc4c10c8f3912f01b4b73ea7cafb2fc30eaac033c64880db0d2fa411dcca10fe7095e5dd9fca182f252f6a0ec2f
7
+ data.tar.gz: 83867a9d7aaebdff3f8ebe2feccd2e3c19625d901c5d76288c6c95ebf3f6f16c1f6cb41bad07e4c4a4830217b757c0b5c2b4f437361195ddfd97831c19a1bd42
@@ -40,6 +40,7 @@ elsif ARGV[0] == 'setup'
40
40
  unless Dir.exist?("#{GEM_DIR}/TON-SDK")
41
41
  system("cd #{GEM_DIR} && git clone https://github.com/tonlabs/TON-SDK ./TON-SDK")
42
42
  end
43
+ system("cd #{GEM_DIR}/TON-SDK && git reset --hard HEAD")
43
44
  system("cd #{GEM_DIR}/TON-SDK && git pull --ff-only")
44
45
  system("cd #{GEM_DIR}/TON-SDK && cargo update")
45
46
  system("cd #{GEM_DIR}/TON-SDK && cargo build --release")
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.43.0",
2
+ "version": "1.44.0",
3
3
  "modules": [
4
4
  {
5
5
  "name": "client",
@@ -10479,16 +10479,8 @@
10479
10479
  "type": "Struct",
10480
10480
  "struct_fields": [
10481
10481
  {
10482
- "name": "value",
10483
- "type": "Struct",
10484
- "struct_fields": [
10485
- {
10486
- "name": "boc",
10487
- "type": "String",
10488
- "summary": null,
10489
- "description": null
10490
- }
10491
- ],
10482
+ "name": "boc",
10483
+ "type": "String",
10492
10484
  "summary": null,
10493
10485
  "description": null
10494
10486
  }
@@ -10501,23 +10493,15 @@
10501
10493
  "type": "Struct",
10502
10494
  "struct_fields": [
10503
10495
  {
10504
- "name": "value",
10505
- "type": "Struct",
10506
- "struct_fields": [
10507
- {
10508
- "name": "hash",
10509
- "type": "String",
10510
- "summary": "Hash of the message.",
10511
- "description": null
10512
- },
10513
- {
10514
- "name": "address",
10515
- "type": "String",
10516
- "summary": "Destination address of the message.",
10517
- "description": null
10518
- }
10519
- ],
10520
- "summary": null,
10496
+ "name": "hash",
10497
+ "type": "String",
10498
+ "summary": "Hash of the message.",
10499
+ "description": null
10500
+ },
10501
+ {
10502
+ "name": "address",
10503
+ "type": "String",
10504
+ "summary": "Destination address of the message.",
10521
10505
  "description": null
10522
10506
  }
10523
10507
  ],
@@ -67,9 +67,10 @@ gem install everscale-client-ruby
67
67
  ```
68
68
 
69
69
  Install TON-SDK
70
+
71
+ ##### result - path to dylib file for everscale-client-ruby configuration
70
72
  ```bash
71
73
  everscale-client-ruby setup
72
- # result - path to dylib file for everscale-client-ruby configuration
73
74
  ```
74
75
 
75
76
  ### Manual build TVM SDK
@@ -183,12 +183,12 @@ module TonClient
183
183
 
184
184
  request_id = request_id.increment
185
185
  requests[request_id] = block
186
- # p "start #{request_id}"
186
+ # p "start id #{request_id} - requests #{requests.object_id}"
187
187
  tc_request(context, method_name_string, payload_string, request_id) do |request_id, string_data, response_type, finished|
188
- # p "tc_request #{request_id}"
189
- # p "Thread.current #{Thread.current}"
188
+ # p "rust inside id #{request_id} - #{method_name}"
190
189
  begin
191
- monitor.synchronize do
190
+ monitor&.synchronize do
191
+ # p "request_id #{request_id}, monitor #{monitor.object_id} - requests #{requests.object_id}"
192
192
  request = requests[request_id]
193
193
  if request
194
194
  request.call(Response.new(request_id, string_data, response_type, finished))
@@ -15,13 +15,23 @@ module TonClient
15
15
 
16
16
  def self.callLibraryMethodSync(method, *args)
17
17
  responses = []
18
- queue = Queue.new
18
+ mutex = Monitor.new
19
+ condition = mutex.new_cond
20
+
19
21
  method.call(*args) do |response|
20
- responses << response
21
- yield(responses) if block_given?
22
- queue.push 1 if response.finished == true
22
+ mutex.synchronize do
23
+ responses << response
24
+ if response.finished == true
25
+ condition.signal
26
+ end
27
+ end
23
28
  end
24
- queue.pop
29
+
30
+ mutex.synchronize do
31
+ condition.wait
32
+ end
33
+
34
+ yield(responses.map{ |resp| resp if resp.result }.compact) if block_given?
25
35
  end
26
36
 
27
37
  class RequestId
@@ -1,4 +1,4 @@
1
1
  module TonClient
2
- VERSION = "1.1.69"
2
+ VERSION = "1.1.72"
3
3
  end
4
4
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: everscale-client-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.69
4
+ version: 1.1.72
5
5
  platform: ruby
6
6
  authors:
7
7
  - nerzh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-26 00:00:00.000000000 Z
11
+ date: 2023-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -142,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
142
142
  - !ruby/object:Gem::Version
143
143
  version: '0'
144
144
  requirements: []
145
- rubygems_version: 3.4.12
145
+ rubygems_version: 3.4.16
146
146
  signing_key:
147
147
  specification_version: 4
148
148
  summary: This is gem everscale-client-ruby