blockstream_satellite 0.1.1 → 0.2.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 280fa5945dce4d9b6661132d5f9e48ad790982af5a7ba3e517285417fd97b3cf
4
- data.tar.gz: be8be0603aa918030ada9aad3e6c7000681bbd3380c79d8a3581e20fdcebfde7
3
+ metadata.gz: 41b8b2bad983625b55eafad895392edac7e013df9d9baaa38d446e962debcba8
4
+ data.tar.gz: 2fb2ff56beb68f23e00070f9bc3544f6d3fbe845d26f938b8f554c154e9e0495
5
5
  SHA512:
6
- metadata.gz: 3e80d0b4fd404dfbf24792e37776fb4145548c8e6464f91982e8864ecd9184e391681c5efdcb4daf2659bc59c346d8ea18310bd01c825e51735f43ff08b4bb55
7
- data.tar.gz: 2bdc33ad96157b3fe851eb284b9658c36ba57727530fdc478d432657295f4802eee4a21457e7a9ecc4ed404de90372d6a3bfd2cfb062a7eb14939cce11b3f175
6
+ metadata.gz: b94d293f3b3494dc365614673c45259a872febd76929cccb5f3d0b8f112e834ddcbdd8f369f25790e7e84533fa99666f942ddd67092185e58d6f7af5c7d118f2
7
+ data.tar.gz: fa85a0a2705508c51f95206c5ab1416fc84ca63663944deca69d346c440335099aeb9af0d791cee346e1f1c6d2e86aaf82431d31830ca0f2118acedef799e0bc
@@ -1,36 +1,37 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- blockstream_satellite (0.1.0)
4
+ blockstream_satellite (0.1.1)
5
5
  activesupport (>= 5.0.1)
6
6
  faraday (> 0.8)
7
7
  faraday_middleware (> 0.12)
8
- lnrpc (>= 0.1.0)
8
+ lnrpc (>= 0.5.2)
9
9
 
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (5.2.2)
13
+ activesupport (5.2.2.1)
14
14
  concurrent-ruby (~> 1.0, >= 1.0.2)
15
15
  i18n (>= 0.7, < 2)
16
16
  minitest (~> 5.1)
17
17
  tzinfo (~> 1.1)
18
- concurrent-ruby (1.1.4)
18
+ concurrent-ruby (1.1.5)
19
19
  diff-lcs (1.3)
20
20
  faraday (0.15.4)
21
21
  multipart-post (>= 1.2, < 3)
22
22
  faraday_middleware (0.13.1)
23
23
  faraday (>= 0.7.4, < 1.0)
24
- google-protobuf (3.6.1)
24
+ google-protobuf (3.7.0)
25
25
  googleapis-common-protos-types (1.0.3)
26
26
  google-protobuf (~> 3.0)
27
- grpc (1.18.0)
27
+ grpc (1.19.0)
28
28
  google-protobuf (~> 3.1)
29
29
  googleapis-common-protos-types (~> 1.0.0)
30
- i18n (1.5.3)
30
+ i18n (1.6.0)
31
31
  concurrent-ruby (~> 1.0)
32
- lnrpc (0.1.0)
33
- grpc (>= 1.16.0)
32
+ lnrpc (0.5.2)
33
+ google-protobuf (>= 3.7)
34
+ grpc (>= 1.19.0)
34
35
  minitest (5.11.3)
35
36
  multipart-post (2.0.0)
36
37
  rake (10.5.0)
@@ -61,4 +62,4 @@ DEPENDENCIES
61
62
  rspec (~> 3.0)
62
63
 
63
64
  BUNDLED WITH
64
- 1.17.2
65
+ 1.17.3
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # BlockstreamSatellite
1
+ # Blockstream Satellite - with ruby to space and back
2
2
 
3
3
  Ruby gem to interact with the [Blockstream Satellite](https://blockstream.com/satellite/) API.
4
4
 
@@ -16,12 +16,16 @@ Or install it yourself as:
16
16
 
17
17
  $ gem install blockstream_satellite
18
18
 
19
+ **Because of an [protobuf issue with Ruby 2.6](https://github.com/protocolbuffers/protobuf/issues/5161) a ruby version < 2.6 is required**
20
+
19
21
 
20
22
  ## Usage
21
23
 
22
24
  ### Quick example
23
25
 
24
26
  ```ruby
27
+ require "blockstream_satellite"
28
+
25
29
  order = BlockstreamSatellite::Order.create(path: '/path/to/file')
26
30
  puts order.status # pending
27
31
  order.pay # sends the lightning payment using the configured lnd client; request is synchronous
@@ -81,10 +85,17 @@ order.pay
81
85
  puts order.status
82
86
  ```
83
87
 
88
+ ### Missing endpoints:
89
+
90
+ * DELETE /order/:uuid
91
+ * GET /orders/queued
92
+ * GET /orders/sent
93
+ * GET /subscribe/:channels
84
94
 
85
95
  ## Status
86
96
 
87
- Currently I consider this gem experimental and it is missing tests current.
97
+ Currently I consider this gem **experimental** and the codes needs cleanup and tests and docs are missing at this moment.
98
+ Will try to get is stable soon!
88
99
 
89
100
 
90
101
  ## Contributing
@@ -39,6 +39,6 @@ Gem::Specification.new do |spec|
39
39
  spec.add_development_dependency "rspec", "~> 3.0"
40
40
  spec.add_dependency "faraday", "> 0.8"
41
41
  spec.add_dependency "faraday_middleware", ">0.12"
42
- spec.add_dependency "lnrpc", ">= 0.1.0"
42
+ spec.add_dependency "lnrpc", ">= 0.5.2"
43
43
  spec.add_dependency "activesupport", ">= 5.0.1"
44
44
  end
@@ -9,7 +9,7 @@ module BlockstreamSatellite
9
9
  autoload :Configuration, 'blockstream_satellite/configuration'
10
10
  autoload :Response, 'blockstream_satellite/response'
11
11
 
12
- API_HOST = 'https://satellite.blockstream.com'
12
+ API_HOST = 'https://api.blockstream.space'
13
13
 
14
14
  def self.lnd_client=(value)
15
15
  @lnd_client = value
@@ -19,12 +19,12 @@ module BlockstreamSatellite
19
19
  end
20
20
 
21
21
  def pay(payreq)
22
- self.lnd_client.send_payment_sync(Lnrpc::SendRequest.new(payment_request: payreq))
22
+ self.lnd_client.send_payment_sync(payment_request: payreq)
23
23
  end
24
24
 
25
25
  def request(http_method, path, params=nil, body=nil)
26
26
  response = http_client.send(http_method) do |req|
27
- req.url "/api/#{path}"
27
+ req.url "/#{path}"
28
28
  req.params = params if params
29
29
  req.body = body if body
30
30
  yield req if block_given?
@@ -25,16 +25,11 @@ module BlockstreamSatellite
25
25
  end
26
26
 
27
27
  def self.create(options)
28
- if data = options.delete(:data)
29
- file = Tempfile.new(SecureRandom.hex(5))
30
- file.write(data)
31
- file.rewind
32
- options[:file] = file
33
- elsif path = options.delete(:path)
28
+ if path = options.delete(:path)
29
+ options[:file] = UploadIO.new(options[:file], 'text/plain') # TODO: get rid of this content type here
34
30
  options[:file] = File.open(path)
35
31
  end
36
- options[:bid] ||= options[:file].size * 51 # default price
37
- options[:file] = UploadIO.new(options[:file], 'text/plain')
32
+ options[:bid] ||= (options[:file] || options[:message]).size * 51 # default price
38
33
  response = BlockstreamSatellite.client.post('order', options)
39
34
  if response.success?
40
35
  Order.new(response.body).tap { |o| o.file = options[:file] }
@@ -1,3 +1,3 @@
1
1
  module BlockstreamSatellite
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blockstream_satellite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Bumann
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-08 00:00:00.000000000 Z
11
+ date: 2019-03-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: 0.1.0
89
+ version: 0.5.2
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: 0.1.0
96
+ version: 0.5.2
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: activesupport
99
99
  requirement: !ruby/object:Gem::Requirement