tdlib-ruby 3.0.2 → 3.1.0

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: 612a00067010b79a241845d781fb4421660bbf1cbd8b4f336e84b1d46ef003ab
4
- data.tar.gz: 21b2834e4534fbd947cb3c598e89052dd11a4d271a32cdfd13ad78da79c7fd79
3
+ metadata.gz: 3eb88ee0c6fafc92210e78a2d038cbbec3c09db2ba001574ff1af21436fc41d6
4
+ data.tar.gz: 590a4c52abcaf3b775d2f8b1e32a91a06e1911a3d46e282d8fc2a3700dfa4364
5
5
  SHA512:
6
- metadata.gz: 024de439f9df9bf161b411401c59cca2bd2772b179cd09b15337189280d55d1ec65dae6d8ce55bf07cc58e83870968be02ab726de9ef7fc14f8d66be2e51ae91
7
- data.tar.gz: e45fd9dbc5bb849f4a349cd8842db8d8b2a1b83d1c8d822712a8931a5b329941eeb4af43637b572e5dfda3bef196d4f02475356a52429aefecb5a681fcece6f6
6
+ metadata.gz: fb2ab9095d979bc32bd4ad15927e723cb77e30a4ecdc10d53485f3c153eab5afdc3cec3f831a5d1cfafadf19cbea170169bc9a813921fd3930a5d47339de786e
7
+ data.tar.gz: b1b85a70c2a08aa1d1894bf96eb8bd7dfd10e80624537b916812e0b2b0c949ed1ae7cc2bdaafbf9a0f3d689ea4def7c0cd66ab6abc0ca5934cece6f8b4b2080b
data/ChangeLog.md CHANGED
@@ -1,3 +1,11 @@
1
+ ### 3.0.4 / 2024-09-05
2
+
3
+ * Change ffi gem version to '~> 1.15.0'
4
+
5
+ ### 3.0.3 / 2024-08-29
6
+
7
+ * Remove the verification encryption key and unnecessary configurations
8
+
1
9
  ### 3.0.2 / 2020-06-29
2
10
 
3
11
  * Rescue exceptions in update manager thread
data/README.md CHANGED
@@ -32,6 +32,13 @@ http://rpms.southbridge.ru/rhel6/stable/SRPMS/
32
32
  | 2.1 | → | 1.5 |
33
33
  | 2.2 | → | 1.6 |
34
34
 
35
+ IMPORTANT: From version 3.0 types schema is extracted to a separate gem: https://github.com/southbridgeio/tdlib-schema
36
+ If you want to support specific tdlib version, just set a dependency in your Gemfile:
37
+
38
+ ```ruby
39
+ gem 'tdlib-schema', '~> 1.7.0'
40
+ ```
41
+
35
42
  ## Install
36
43
 
37
44
  Add to your gemfile:
@@ -85,15 +92,15 @@ begin
85
92
  when :wait_phone_number
86
93
  puts 'Please, enter your phone number:'
87
94
  phone = STDIN.gets.strip
88
- client.set_authentication_phone_number(phone, nil).wait
95
+ client.set_authentication_phone_number(phone_number: phone, settings: nil).wait
89
96
  when :wait_code
90
97
  puts 'Please, enter code from SMS:'
91
98
  code = STDIN.gets.strip
92
- client.check_authentication_code(code).wait
99
+ client.check_authentication_code(code: code).wait
93
100
  when :wait_password
94
101
  puts 'Please, enter 2FA password:'
95
102
  password = STDIN.gets.strip
96
- client.check_authentication_password(password).wait
103
+ client.check_authentication_password(password: password).wait
97
104
  when :ready
98
105
  client.get_me.then { |user| @me = user }.rescue { |err| puts "error: #{err}" }.wait
99
106
  break
@@ -114,7 +121,7 @@ Client methods are being executed asynchronously and return Concurrent::Promises
114
121
 
115
122
  ```ruby
116
123
  TD.configure do |config|
117
- config.lib_path = 'path/to/dir_containing_libtdjson' # libtdson will be searched in this directory (*.so, *.dylib, *.dll are valid extensions). For Rails projects, if not set, will be considered as project_root_path/vendor. If not set and file doesn't exist in vendor, it will try to find lib by ldconfig (only on Linux).
124
+ config.lib_path = 'path/to/dir_containing_libtdjson' # libtdjson will be searched in this directory (*.so, *.dylib, *.dll are valid extensions). For Rails projects, if not set, will be considered as project_root_path/vendor. If not set and file doesn't exist in vendor, it will try to find lib by ldconfig (only on Linux).
118
125
  config.encryption_key = 'your_encryption_key' # it's not required
119
126
 
120
127
  config.client.api_id = 12345
data/lib/tdlib/client.rb CHANGED
@@ -36,13 +36,10 @@ class TD::Client
36
36
  on TD::Types::Update::AuthorizationState do |update|
37
37
  case update.authorization_state
38
38
  when TD::Types::AuthorizationState::WaitTdlibParameters
39
- set_tdlib_parameters(parameters: TD::Types::TdlibParameters.new(**@config))
40
- when TD::Types::AuthorizationState::WaitEncryptionKey
41
- check_database_encryption_key(encryption_key: TD.config.encryption_key).then do
42
- @ready_condition_mutex.synchronize do
43
- @ready = true
44
- @ready_condition.broadcast
45
- end
39
+ set_tdlib_parameters(**@config)
40
+ @ready_condition_mutex.synchronize do
41
+ @ready = true
42
+ @ready_condition.broadcast
46
43
  end
47
44
  else
48
45
  # do nothing
data/lib/tdlib/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module TD
2
2
  # tdlib-ruby version
3
- VERSION = "3.0.2"
3
+ VERSION = "3.1.0"
4
4
  end
data/lib/tdlib-ruby.rb CHANGED
@@ -16,21 +16,19 @@ module TD
16
16
  setting :encryption_key
17
17
 
18
18
  setting :client do
19
- setting :api_id, &:to_i
19
+ setting :api_id, constructor: ->(id) { id&.to_i }
20
20
  setting :api_hash
21
- setting :use_test_dc, false
22
- setting :database_directory, "#{Dir.home}/.tdlib-ruby/db"
23
- setting :files_directory, "#{Dir.home}/.tdlib-ruby/data"
24
- setting :use_file_database, true
25
- setting :use_chat_info_database, true
26
- setting :use_secret_chats, true
27
- setting :use_message_database, true
28
- setting :system_language_code, 'en'
29
- setting :device_model, 'Ruby TD client'
30
- setting :system_version, 'Unknown'
31
- setting :application_version, '1.0'
32
- setting :enable_storage_optimizer, true
33
- setting :ignore_file_names, false
21
+ setting :use_test_dc, default: false
22
+ setting :database_directory, default: "#{Dir.home}/.tdlib-ruby/db"
23
+ setting :files_directory, default: "#{Dir.home}/.tdlib-ruby/data"
24
+ setting :use_file_database, default: true
25
+ setting :use_chat_info_database, default: true
26
+ setting :use_secret_chats, default: true
27
+ setting :use_message_database, default: true
28
+ setting :system_language_code, default: 'en'
29
+ setting :device_model, default: 'Ruby TD client'
30
+ setting :system_version, default: 'Unknown'
31
+ setting :application_version, default: '1.0'
34
32
  end
35
33
  end
36
34
 
data/tdlib-ruby.gemspec CHANGED
@@ -20,9 +20,9 @@ Gem::Specification.new do |gem|
20
20
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
21
21
  gem.require_paths = ['lib']
22
22
 
23
- gem.add_runtime_dependency 'dry-configurable', '~> 0.9'
23
+ gem.add_runtime_dependency 'dry-configurable', '~> 0.13'
24
24
  gem.add_runtime_dependency 'concurrent-ruby', '~> 1.1'
25
- gem.add_runtime_dependency 'ffi', '~> 1.0'
25
+ gem.add_runtime_dependency 'ffi', '~> 1.15.0'
26
26
  gem.add_runtime_dependency 'tdlib-schema'
27
27
 
28
28
  gem.add_development_dependency 'bundler', '~> 2.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tdlib-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Southbridge
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-29 00:00:00.000000000 Z
11
+ date: 2024-12-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-configurable
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.9'
19
+ version: '0.13'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.9'
26
+ version: '0.13'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: concurrent-ruby
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.0'
47
+ version: 1.15.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: '1.0'
54
+ version: 1.15.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: tdlib-schema
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -201,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
201
201
  - !ruby/object:Gem::Version
202
202
  version: '0'
203
203
  requirements: []
204
- rubygems_version: 3.1.4
204
+ rubygems_version: 3.5.23
205
205
  signing_key:
206
206
  specification_version: 4
207
207
  summary: Ruby bindings and client for TDlib