solace 0.0.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.
Files changed (45) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG +0 -0
  3. data/LICENSE +0 -0
  4. data/README.md +661 -0
  5. data/lib/solace/address_lookup_table.rb +50 -0
  6. data/lib/solace/concerns/binary_serializable.rb +30 -0
  7. data/lib/solace/connection.rb +187 -0
  8. data/lib/solace/constants.rb +52 -0
  9. data/lib/solace/instruction.rb +38 -0
  10. data/lib/solace/instructions/associated_token_account/create_associated_token_account_instruction.rb +68 -0
  11. data/lib/solace/instructions/spl_token/initialize_account_instruction.rb +46 -0
  12. data/lib/solace/instructions/spl_token/initialize_mint_instruction.rb +68 -0
  13. data/lib/solace/instructions/spl_token/mint_to_instruction.rb +48 -0
  14. data/lib/solace/instructions/spl_token/transfer_instruction.rb +48 -0
  15. data/lib/solace/instructions/system_program/create_account_instruction.rb +58 -0
  16. data/lib/solace/instructions/transfer_checked_instruction.rb +58 -0
  17. data/lib/solace/instructions/transfer_instruction.rb +48 -0
  18. data/lib/solace/keypair.rb +121 -0
  19. data/lib/solace/message.rb +95 -0
  20. data/lib/solace/programs/associated_token_account.rb +96 -0
  21. data/lib/solace/programs/base.rb +22 -0
  22. data/lib/solace/programs/spl_token.rb +187 -0
  23. data/lib/solace/public_key.rb +74 -0
  24. data/lib/solace/serializable_record.rb +26 -0
  25. data/lib/solace/serializers/address_lookup_table_deserializer.rb +62 -0
  26. data/lib/solace/serializers/address_lookup_table_serializer.rb +54 -0
  27. data/lib/solace/serializers/base.rb +31 -0
  28. data/lib/solace/serializers/base_deserializer.rb +56 -0
  29. data/lib/solace/serializers/base_serializer.rb +52 -0
  30. data/lib/solace/serializers/instruction_deserializer.rb +62 -0
  31. data/lib/solace/serializers/instruction_serializer.rb +54 -0
  32. data/lib/solace/serializers/message_deserializer.rb +116 -0
  33. data/lib/solace/serializers/message_serializer.rb +95 -0
  34. data/lib/solace/serializers/transaction_deserializer.rb +49 -0
  35. data/lib/solace/serializers/transaction_serializer.rb +60 -0
  36. data/lib/solace/transaction.rb +98 -0
  37. data/lib/solace/utils/codecs.rb +220 -0
  38. data/lib/solace/utils/curve25519_dalek.rb +59 -0
  39. data/lib/solace/utils/libcurve25519_dalek-linux/libcurve25519_dalek.so +0 -0
  40. data/lib/solace/utils/libcurve25519_dalek-macos/libcurve25519_dalek.dylib +0 -0
  41. data/lib/solace/utils/libcurve25519_dalek-windows/curve25519_dalek.dll +0 -0
  42. data/lib/solace/utils/pda.rb +100 -0
  43. data/lib/solace/version.rb +5 -0
  44. data/lib/solace.rb +39 -0
  45. metadata +165 -0
metadata ADDED
@@ -0,0 +1,165 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: solace
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Sebastian Scholl
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: base58
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '0.2'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '0.2'
26
+ - !ruby/object:Gem::Dependency
27
+ name: ffi
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.15'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.15'
40
+ - !ruby/object:Gem::Dependency
41
+ name: rbnacl
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '7.0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '7.0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: rake
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '13.0'
61
+ type: :development
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '13.0'
68
+ - !ruby/object:Gem::Dependency
69
+ name: minitest
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '5.0'
75
+ type: :development
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '5.0'
82
+ description: A Ruby library for working with Solana blockchain. Provides both low-level
83
+ instruction builders and high-level program clients for interacting with Solana
84
+ programs.
85
+ email:
86
+ - sebastian@scholl.io
87
+ executables: []
88
+ extensions: []
89
+ extra_rdoc_files: []
90
+ files:
91
+ - CHANGELOG
92
+ - LICENSE
93
+ - README.md
94
+ - lib/solace.rb
95
+ - lib/solace/address_lookup_table.rb
96
+ - lib/solace/concerns/binary_serializable.rb
97
+ - lib/solace/connection.rb
98
+ - lib/solace/constants.rb
99
+ - lib/solace/instruction.rb
100
+ - lib/solace/instructions/associated_token_account/create_associated_token_account_instruction.rb
101
+ - lib/solace/instructions/spl_token/initialize_account_instruction.rb
102
+ - lib/solace/instructions/spl_token/initialize_mint_instruction.rb
103
+ - lib/solace/instructions/spl_token/mint_to_instruction.rb
104
+ - lib/solace/instructions/spl_token/transfer_instruction.rb
105
+ - lib/solace/instructions/system_program/create_account_instruction.rb
106
+ - lib/solace/instructions/transfer_checked_instruction.rb
107
+ - lib/solace/instructions/transfer_instruction.rb
108
+ - lib/solace/keypair.rb
109
+ - lib/solace/message.rb
110
+ - lib/solace/programs/associated_token_account.rb
111
+ - lib/solace/programs/base.rb
112
+ - lib/solace/programs/spl_token.rb
113
+ - lib/solace/public_key.rb
114
+ - lib/solace/serializable_record.rb
115
+ - lib/solace/serializers/address_lookup_table_deserializer.rb
116
+ - lib/solace/serializers/address_lookup_table_serializer.rb
117
+ - lib/solace/serializers/base.rb
118
+ - lib/solace/serializers/base_deserializer.rb
119
+ - lib/solace/serializers/base_serializer.rb
120
+ - lib/solace/serializers/instruction_deserializer.rb
121
+ - lib/solace/serializers/instruction_serializer.rb
122
+ - lib/solace/serializers/message_deserializer.rb
123
+ - lib/solace/serializers/message_serializer.rb
124
+ - lib/solace/serializers/transaction_deserializer.rb
125
+ - lib/solace/serializers/transaction_serializer.rb
126
+ - lib/solace/transaction.rb
127
+ - lib/solace/utils/codecs.rb
128
+ - lib/solace/utils/curve25519_dalek.rb
129
+ - lib/solace/utils/libcurve25519_dalek-linux/libcurve25519_dalek.so
130
+ - lib/solace/utils/libcurve25519_dalek-macos/libcurve25519_dalek.dylib
131
+ - lib/solace/utils/libcurve25519_dalek-windows/curve25519_dalek.dll
132
+ - lib/solace/utils/pda.rb
133
+ - lib/solace/version.rb
134
+ homepage: https://github.com/sebscholl/solace
135
+ licenses:
136
+ - MIT
137
+ metadata: {}
138
+ post_install_message: |2+
139
+
140
+ Thank you for installing Solace!
141
+
142
+ This gem includes native binaries for curve25519 operations.
143
+ If you encounter any issues with native library loading,
144
+ please check that your platform is supported or file an issue at:
145
+ https://github.com/sebscholl/solace/issues
146
+
147
+ rdoc_options: []
148
+ require_paths:
149
+ - lib
150
+ required_ruby_version: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: '3.0'
155
+ required_rubygems_version: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ requirements: []
161
+ rubygems_version: 3.6.7
162
+ specification_version: 4
163
+ summary: Solana ruby library
164
+ test_files: []
165
+ ...