sibit 0.12.3 → 0.12.4

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: e92473e6d17b5f3637ed0a4b6bed2656dd3870b303eb919b5c11985d0386d7ef
4
- data.tar.gz: 9ec5520569097129607ee3ccda35254648e34a1f82d21bd686cba9c0f05c47ce
3
+ metadata.gz: ce8e0305c4ab80483d15d3067af9e6f14098b9374b5bf52952e90ba4c21e5fe5
4
+ data.tar.gz: 3de5750cc4144b1d68dd2241bf8d0153cc34c99a91015a3cefc16c8b3c468e32
5
5
  SHA512:
6
- metadata.gz: 35cd500e75068c388f95b0ebf5de8610ad0d4c4baaa6ebfa1b598ca3c475e38c6c4659a217d7e76a3e8a28dea61f9c99120509c94f5587222f3d0c5c4ea0d5a8
7
- data.tar.gz: d8f6af610bbc485159e126b1e2cd235a4a99b035f1e8e378fc37551d437aa26e01b8e38f7c6e0381b993a16627e147206f3421022d4edf2297a35cedbd08696c
6
+ metadata.gz: 5116ed2893173b83379f9f040d55aca1182d9253b0c6beacd99c4b89cb45d7fb20cd85db01c68815ca5bfad6446a0ef2e74a9dc04f9d4e77f443c184a7bac587
7
+ data.tar.gz: 544d308336b5616e72c3f3058dabb79efb94b05eba2b8f90825cd421c23afba475c79bcf3d282d42e00bdffb2f06df68590a295e35787d2f80e998b5f043c664
data/.rubocop.yml CHANGED
@@ -1,6 +1,5 @@
1
1
  AllCops:
2
2
  Exclude:
3
- - 'bin/**/*'
4
3
  - 'assets/**/*'
5
4
  DisplayCopNames: true
6
5
  TargetRubyVersion: 2.3
data/.rultor.yml CHANGED
@@ -1,15 +1,14 @@
1
1
  assets:
2
2
  rubygems.yml: yegor256/home#assets/rubygems.yml
3
- s3cfg: yegor256/home#assets/s3cfg
4
3
  install: |
5
4
  export GEM_HOME=~/.ruby
6
5
  export GEM_PATH=$GEM_HOME:$GEM_PATH
7
6
  sudo apt-get -y update
8
- sudo gem install pdd
7
+ sudo gem install pdd -v 0.20.5
8
+ bundle install
9
9
  release:
10
10
  script: |-
11
- bundle install
12
- rake
11
+ bundle exec rake
13
12
  rm -rf *.gem
14
13
  sed -i "s/1\.0\.snapshot/${tag}/g" lib/sibit/version.rb
15
14
  git add lib/sibit/version.rb
@@ -17,15 +16,10 @@ release:
17
16
  gem build sibit.gemspec
18
17
  chmod 0600 ../rubygems.yml
19
18
  gem push *.gem --config-file ../rubygems.yml
20
- commanders:
21
- - yegor256
22
- architect:
23
- - yegor256
24
19
  merge:
25
20
  script: |-
26
- bundle install
27
- rake
28
- pdd
21
+ bundle exec rake
22
+ pdd -f /dev/null
29
23
  deploy:
30
24
  script: |-
31
25
  echo "There is nothing to deploy"
data/README.md CHANGED
@@ -11,6 +11,7 @@
11
11
  [![Gem Version](https://badge.fury.io/rb/sibit.svg)](http://badge.fury.io/rb/sibit)
12
12
  [![Maintainability](https://api.codeclimate.com/v1/badges/74c909f06d4afa0d8001/maintainability)](https://codeclimate.com/github/yegor256/sibit/maintainability)
13
13
 
14
+ [![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/takes/sibit/master/LICENSE.txt)
14
15
  [![Test Coverage](https://img.shields.io/codecov/c/github/yegor256/sibit.svg)](https://codecov.io/github/yegor256/sibit?branch=master)
15
16
  [![Hits-of-Code](https://hitsofcode.com/github/yegor256/sibit)](https://hitsofcode.com/view/github/yegor256/sibit)
16
17
 
data/appveyor.yml CHANGED
@@ -8,7 +8,8 @@ branches:
8
8
  - gh-pages
9
9
  os: Windows Server 2012
10
10
  install:
11
- - cmd: SET PATH=C:\Ruby23-x64\bin;%PATH%
11
+ - cmd: set SSL_CERT_FILE=C:/ruby24-x64/ssl/cert.pem
12
+ - cmd: SET PATH=C:\Ruby24-x64\bin;%PATH%
12
13
  - cmd: ruby --version
13
14
  - cmd: git --version
14
15
  build_script:
data/bin/sibit CHANGED
@@ -1,4 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
2
4
  # Copyright (c) 2019 Yegor Bugayenko
3
5
  #
4
6
  # Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -40,8 +42,11 @@ Commands are:
40
42
  pay: Send a new Bitcoin transaction
41
43
  Options are:"
42
44
  o.string '--proxy', 'HTTPS proxy for all requests, e.g. "localhost:3128"'
43
- o.integer '--attempts',
44
- 'How many times should we try before failing', default: 1
45
+ o.integer(
46
+ '--attempts',
47
+ 'How many times should we try before failing',
48
+ default: 1
49
+ )
45
50
  o.bool '--dry', 'Don\'t send a real payment, run in a read-only mode'
46
51
  o.bool '--help', 'Read this: https://github.com/yegor256/sibit' do
47
52
  puts o
@@ -50,7 +55,7 @@ Options are:"
50
55
  o.bool '--verbose', 'Print all possible debug messages'
51
56
  end
52
57
  rescue Slop::Error => ex
53
- raise "#{ex.message}"
58
+ raise ex.message
54
59
  end
55
60
  raise 'Try --help' if opts.arguments.empty?
56
61
  sibit = Sibit.new(
data/features/cli.feature CHANGED
@@ -29,7 +29,3 @@ Feature: Command Line Processing
29
29
  Scenario: Bitcoin fees can be printed
30
30
  When I run bin/sibit with "fees --verbose"
31
31
  Then Exit code is zero
32
-
33
- Scenario: Bitcoin transaction can be sent
34
- When I run bin/sibit with "--verbose --dry pay 100000 S 1JvCsJtLmCxEk7ddZFnVkGXpr9uhxZPmJi:fd2333686f49d8647e1ce8d5ef39c304520b08f3c756b67068b30a3db217dcb2 1JvCsJtLmCxEk7ddZFnVkGXpr9uhxZPmJi 1JvCsJtLmCxEk7ddZFnVkGXpr9uhxZPmJi"
35
- Then Exit code is zero
data/lib/sibit/version.rb CHANGED
@@ -26,5 +26,5 @@
26
26
  # License:: MIT
27
27
  class Sibit
28
28
  # Current version of the library.
29
- VERSION = '0.12.3'
29
+ VERSION = '0.12.4'
30
30
  end
data/lib/sibit.rb CHANGED
@@ -111,7 +111,9 @@ class Sibit
111
111
 
112
112
  # Generates new Bitcon private key and returns in Hash160 format.
113
113
  def generate
114
- Bitcoin::Key.generate.priv
114
+ key = Bitcoin::Key.generate.priv
115
+ info("Bitcoin private key generated: #{key[0..8]}...")
116
+ key
115
117
  end
116
118
 
117
119
  # Creates Bitcon address using the private key in Hash160 format.
@@ -198,7 +200,7 @@ class Sibit
198
200
  tx = builder.tx(
199
201
  input_value: unspent,
200
202
  leave_fee: true,
201
- extra_fee: f.abs - Bitcoin.network[:min_tx_fee],
203
+ extra_fee: [f.abs - Bitcoin.network[:min_tx_fee], 0].max,
202
204
  change_address: change
203
205
  )
204
206
  left = unspent - tx.outputs.map(&:value).inject(&:+)
@@ -208,6 +210,7 @@ class Sibit
208
210
  #{tx.out.count} output#{tx.out.count > 1 ? 's' : ''}:
209
211
  #{tx.outputs.map { |o| "out: #{o.script.bth} / #{num(o.value, p)}" }.join("\n ")}
210
212
  Min tx fee: #{num(Bitcoin.network[:min_tx_fee], p)}
213
+ Fee requested: #{num(f, p)} as \"#{fee}\"
211
214
  Fee left: #{num(left, p)}
212
215
  Tx size: #{size} bytes
213
216
  Unspent: #{num(unspent, p)}
data/test/test_sibit.rb CHANGED
@@ -59,6 +59,17 @@ class TestSibit < Minitest::Test
59
59
  assert(/^[0-9a-f]{64}$/.match?(pkey))
60
60
  end
61
61
 
62
+ def test_generate_key_and_prints
63
+ require 'stringio'
64
+ require 'logger'
65
+ strio = StringIO.new
66
+ sibit = Sibit.new(log: Logger.new(strio))
67
+ key = sibit.generate
68
+ assert(strio.string.include?('private key generated'))
69
+ assert(strio.string.include?(key[0..4]))
70
+ assert(!strio.string.include?(key))
71
+ end
72
+
62
73
  def test_create_address
63
74
  sibit = Sibit.new
64
75
  pkey = sibit.generate
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sibit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.3
4
+ version: 0.12.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-29 00:00:00.000000000 Z
11
+ date: 2019-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: backtrace