solana-ruby-kit 7.1.1 → 7.1.1.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 +4 -4
- data/lib/solana/ruby/kit/codecs/bytes.rb +5 -1
- data/lib/solana/ruby/kit/codecs/data_structures.rb +5 -1
- data/lib/solana/ruby/kit/codecs/numbers.rb +5 -1
- data/lib/solana/ruby/kit/codecs/strings.rb +5 -1
- data/lib/solana/ruby/kit/codecs.rb +3 -1
- data/lib/solana/ruby/kit/errors.rb +2 -0
- data/lib/solana/ruby/kit/functional.rb +1 -1
- data/lib/solana/ruby/kit/instruction_plans/instruction_plan.rb +13 -1
- data/lib/solana/ruby/kit/instruction_plans/transaction_plan.rb +9 -0
- data/lib/solana/ruby/kit/instruction_plans/transaction_plan_executor.rb +13 -3
- data/lib/solana/ruby/kit/instruction_plans/transaction_plan_result.rb +18 -0
- data/lib/solana/ruby/kit/instruction_plans/transaction_planner.rb +24 -2
- data/lib/solana/ruby/kit/rpc/api/get_account_info.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_balance.rb +4 -0
- data/lib/solana/ruby/kit/rpc/api/get_block_height.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_block_time.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_epoch_info.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_epoch_schedule.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_inflation_reward.rb +6 -1
- data/lib/solana/ruby/kit/rpc/api/get_latest_blockhash.rb +4 -0
- data/lib/solana/ruby/kit/rpc/api/get_minimum_balance_for_rent_exemption.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_multiple_accounts.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_program_accounts.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_signature_statuses.rb +4 -0
- data/lib/solana/ruby/kit/rpc/api/get_signatures_for_address.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_slot.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_token_account_balance.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_token_accounts_by_owner.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_token_supply.rb +43 -0
- data/lib/solana/ruby/kit/rpc/api/get_transaction.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_transactions_for_address.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/get_vote_accounts.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/has_transport.rb +25 -0
- data/lib/solana/ruby/kit/rpc/api/is_blockhash_valid.rb +4 -0
- data/lib/solana/ruby/kit/rpc/api/request_airdrop.rb +4 -0
- data/lib/solana/ruby/kit/rpc/api/send_transaction.rb +5 -0
- data/lib/solana/ruby/kit/rpc/api/simulate_transaction.rb +5 -0
- data/lib/solana/ruby/kit/rpc/client.rb +6 -1
- data/lib/solana/ruby/kit/rpc_subscriptions/api/account_notifications.rb +5 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/api/has_transport.rb +35 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/api/logs_notifications.rb +5 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/api/program_notifications.rb +5 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/api/root_notifications.rb +5 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/api/signature_notifications.rb +5 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/api/slot_notifications.rb +5 -0
- data/lib/solana/ruby/kit/rpc_subscriptions/client.rb +5 -2
- data/lib/solana/ruby/kit/rpc_types/sol.rb +8 -6
- data/lib/solana/ruby/kit/subscribable/reactive_action_store.rb +6 -6
- data/lib/solana/ruby/kit/subscribable/reactive_stream_store.rb +4 -4
- data/lib/solana/ruby/kit/transaction_messages/compute_budget.rb +4 -4
- data/lib/solana/ruby/kit/version.rb +1 -1
- data/lib/solana/ruby/kit/wallet_standard.rb +4 -4
- data/solana-ruby-kit.gemspec +6 -0
- metadata +24 -3
- data/lib/core_extensions/tapioca/name_patch.rb +0 -32
- data/lib/core_extensions/tapioca/required_ancestors.rb +0 -13
data/solana-ruby-kit.gemspec
CHANGED
|
@@ -23,6 +23,12 @@ Gem::Specification.new do |spec|
|
|
|
23
23
|
spec.files = Dir['lib/**/*.rb', 'lib/**/*.tt'] + ['LICENSE', 'README.md', 'solana-ruby-kit.gemspec']
|
|
24
24
|
spec.extra_rdoc_files = ['LICENSE', 'README.md']
|
|
25
25
|
|
|
26
|
+
# `rpc_types/sol.rb` requires bigdecimal, which stopped being a default gem
|
|
27
|
+
# in Ruby 3.4. Without this the gem does not load at all on 3.4+; it went
|
|
28
|
+
# unnoticed because webmock -> crack pulls bigdecimal into development.
|
|
29
|
+
# Bounded rather than `~> 3.1` because 4.x is current and the only API used
|
|
30
|
+
# here is the Kernel#BigDecimal conversion, unchanged across both majors.
|
|
31
|
+
spec.add_dependency 'bigdecimal', '>= 3.1', '< 5'
|
|
26
32
|
spec.add_dependency 'openssl', '~> 3.3'
|
|
27
33
|
# Sorbet does not follow semver — the patch component is a build number, and the
|
|
28
34
|
# runtime must track the compiler's series — so these are bounded at the minor level.
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: solana-ruby-kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 7.1.1
|
|
4
|
+
version: 7.1.1.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Paul Zupan, Idhra Inc.
|
|
@@ -9,6 +9,26 @@ bindir: bin
|
|
|
9
9
|
cert_chain: []
|
|
10
10
|
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
|
+
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: bigdecimal
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - ">="
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '3.1'
|
|
19
|
+
- - "<"
|
|
20
|
+
- !ruby/object:Gem::Version
|
|
21
|
+
version: '5'
|
|
22
|
+
type: :runtime
|
|
23
|
+
prerelease: false
|
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
+
requirements:
|
|
26
|
+
- - ">="
|
|
27
|
+
- !ruby/object:Gem::Version
|
|
28
|
+
version: '3.1'
|
|
29
|
+
- - "<"
|
|
30
|
+
- !ruby/object:Gem::Version
|
|
31
|
+
version: '5'
|
|
12
32
|
- !ruby/object:Gem::Dependency
|
|
13
33
|
name: openssl
|
|
14
34
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -185,8 +205,6 @@ extra_rdoc_files:
|
|
|
185
205
|
files:
|
|
186
206
|
- LICENSE
|
|
187
207
|
- README.md
|
|
188
|
-
- lib/core_extensions/tapioca/name_patch.rb
|
|
189
|
-
- lib/core_extensions/tapioca/required_ancestors.rb
|
|
190
208
|
- lib/generators/solana/ruby/kit/install/install_generator.rb
|
|
191
209
|
- lib/generators/solana/ruby/kit/install/templates/solana_ruby_kit.rb.tt
|
|
192
210
|
- lib/solana/ruby/kit.rb
|
|
@@ -259,9 +277,11 @@ files:
|
|
|
259
277
|
- lib/solana/ruby/kit/rpc/api/get_slot.rb
|
|
260
278
|
- lib/solana/ruby/kit/rpc/api/get_token_account_balance.rb
|
|
261
279
|
- lib/solana/ruby/kit/rpc/api/get_token_accounts_by_owner.rb
|
|
280
|
+
- lib/solana/ruby/kit/rpc/api/get_token_supply.rb
|
|
262
281
|
- lib/solana/ruby/kit/rpc/api/get_transaction.rb
|
|
263
282
|
- lib/solana/ruby/kit/rpc/api/get_transactions_for_address.rb
|
|
264
283
|
- lib/solana/ruby/kit/rpc/api/get_vote_accounts.rb
|
|
284
|
+
- lib/solana/ruby/kit/rpc/api/has_transport.rb
|
|
265
285
|
- lib/solana/ruby/kit/rpc/api/is_blockhash_valid.rb
|
|
266
286
|
- lib/solana/ruby/kit/rpc/api/request_airdrop.rb
|
|
267
287
|
- lib/solana/ruby/kit/rpc/api/send_transaction.rb
|
|
@@ -276,6 +296,7 @@ files:
|
|
|
276
296
|
- lib/solana/ruby/kit/rpc_parsed_types/vote_account.rb
|
|
277
297
|
- lib/solana/ruby/kit/rpc_subscriptions.rb
|
|
278
298
|
- lib/solana/ruby/kit/rpc_subscriptions/api/account_notifications.rb
|
|
299
|
+
- lib/solana/ruby/kit/rpc_subscriptions/api/has_transport.rb
|
|
279
300
|
- lib/solana/ruby/kit/rpc_subscriptions/api/logs_notifications.rb
|
|
280
301
|
- lib/solana/ruby/kit/rpc_subscriptions/api/program_notifications.rb
|
|
281
302
|
- lib/solana/ruby/kit/rpc_subscriptions/api/root_notifications.rb
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# typed: true
|
|
2
|
-
# frozen_string_literal: true
|
|
3
|
-
|
|
4
|
-
module T
|
|
5
|
-
module Types
|
|
6
|
-
class Simple
|
|
7
|
-
module NamePatch
|
|
8
|
-
NAME_METHOD = T.let(::Module.instance_method(:name), UnboundMethod)
|
|
9
|
-
|
|
10
|
-
def name
|
|
11
|
-
# Sorbet memoizes this method into the `@name` instance variable but
|
|
12
|
-
# doing so means that types get memoized before this patch is applied
|
|
13
|
-
qualified_name_of(@raw_type)
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def qualified_name_of(constant)
|
|
17
|
-
name = NAME_METHOD.bind_call(constant)
|
|
18
|
-
name = nil if name&.start_with?("#<")
|
|
19
|
-
return if name.nil?
|
|
20
|
-
|
|
21
|
-
if name.start_with?("::")
|
|
22
|
-
name
|
|
23
|
-
else
|
|
24
|
-
"::#{name}"
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
prepend NamePatch
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
module T
|
|
2
|
-
module Helpers
|
|
3
|
-
prepend(::Module.new do
|
|
4
|
-
def requires_ancestor(&block)
|
|
5
|
-
# We can't directly call the block since the ancestor might not be loaded yet.
|
|
6
|
-
# We save the block in the map and will resolve it later.
|
|
7
|
-
Tapioca::Runtime::Trackers::RequiredAncestor.register(self, block)
|
|
8
|
-
|
|
9
|
-
super
|
|
10
|
-
end
|
|
11
|
-
end)
|
|
12
|
-
end
|
|
13
|
-
end
|