solana-ruby-kit 7.1.1 → 7.1.1.1
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/version.rb +1 -1
- data/solana-ruby-kit.gemspec +6 -0
- metadata +21 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fa006377351feaf52ae4b75a9979f21065d0ac039f0c5dd4d18a6dc9a916921b
|
|
4
|
+
data.tar.gz: 4802bb1454ed72fdca55b226f9fef75f4e766b183be91d69480a5ceddc6d3d66
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 345cfd37b9188dde96eb86dced69885c8de18290e97126ff4e8d328842d44a044d19a5c5e9e9d63124ad792b85b81b892f106b31fccc091dade697f298c91b0e
|
|
7
|
+
data.tar.gz: 1b8591236759f984c22122b810ee92796ff9542e6d4c1cba30837a5696e057fb0c065486463223812c0f8c41331389b4604833ebbcef69b53a377229dd5ce153
|
|
@@ -8,7 +8,11 @@ module Solana::Ruby::Kit
|
|
|
8
8
|
module Bytes
|
|
9
9
|
extend T::Sig
|
|
10
10
|
|
|
11
|
-
module_function
|
|
11
|
+
# `extend self`, not `module_function`: both expose these as module
|
|
12
|
+
# methods, but module_function also marks the instance methods PRIVATE,
|
|
13
|
+
# and `Codecs extend Bytes` then inherits that privacy - which silently
|
|
14
|
+
# defeated the "directly available as Codecs.x" intent in codecs.rb.
|
|
15
|
+
extend self
|
|
12
16
|
|
|
13
17
|
# Concatenate multiple binary strings into one.
|
|
14
18
|
sig { params(byte_strings: String).returns(String) }
|
|
@@ -7,7 +7,11 @@ module Solana::Ruby::Kit
|
|
|
7
7
|
module DataStructures
|
|
8
8
|
extend T::Sig
|
|
9
9
|
|
|
10
|
-
module_function
|
|
10
|
+
# `extend self`, not `module_function`: both expose these as module
|
|
11
|
+
# methods, but module_function also marks the instance methods PRIVATE,
|
|
12
|
+
# and `Codecs extend DataStructures` then inherits that privacy - which silently
|
|
13
|
+
# defeated the "directly available as Codecs.x" intent in codecs.rb.
|
|
14
|
+
extend self
|
|
11
15
|
|
|
12
16
|
# Encode/decode a fixed ordered list of named fields.
|
|
13
17
|
# +fields+ is an Array of [name, codec] pairs (name can be String or Symbol).
|
|
@@ -13,7 +13,11 @@ module Solana::Ruby::Kit
|
|
|
13
13
|
module Numbers
|
|
14
14
|
extend T::Sig
|
|
15
15
|
|
|
16
|
-
module_function
|
|
16
|
+
# `extend self`, not `module_function`: both expose these as module
|
|
17
|
+
# methods, but module_function also marks the instance methods PRIVATE,
|
|
18
|
+
# and `Codecs extend Numbers` then inherits that privacy - which silently
|
|
19
|
+
# defeated the "directly available as Codecs.x" intent in codecs.rb.
|
|
20
|
+
extend self
|
|
17
21
|
|
|
18
22
|
# ── Unsigned integers ────────────────────────────────────────────────────
|
|
19
23
|
|
|
@@ -9,7 +9,11 @@ module Solana::Ruby::Kit
|
|
|
9
9
|
module Strings
|
|
10
10
|
extend T::Sig
|
|
11
11
|
|
|
12
|
-
module_function
|
|
12
|
+
# `extend self`, not `module_function`: both expose these as module
|
|
13
|
+
# methods, but module_function also marks the instance methods PRIVATE,
|
|
14
|
+
# and `Codecs extend Strings` then inherits that privacy - which silently
|
|
15
|
+
# defeated the "directly available as Codecs.x" intent in codecs.rb.
|
|
16
|
+
extend self
|
|
13
17
|
|
|
14
18
|
# UTF-8 string codec.
|
|
15
19
|
# When +size+ is given the encoded bytes are fixed to that length
|
|
@@ -16,7 +16,9 @@ require_relative 'codecs/data_structures'
|
|
|
16
16
|
|
|
17
17
|
module Solana::Ruby::Kit
|
|
18
18
|
module Codecs
|
|
19
|
-
#
|
|
19
|
+
# Makes the whole helper surface available as Codecs.u8_codec etc. This
|
|
20
|
+
# relies on each module using `extend self` rather than `module_function`
|
|
21
|
+
# - see the note in numbers.rb for why the distinction matters here.
|
|
20
22
|
extend Numbers
|
|
21
23
|
extend Strings
|
|
22
24
|
extend DataStructures
|
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.1
|
|
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
|