rbsecp256k1 5.0.1 → 5.1.1

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: be2bc20e0b586daab65589d06c00e4bece13e864878d40000c0beea58b7664e7
4
- data.tar.gz: cf3d966929ee5735a8aa3515e4e749233bab01e8d797804fbe4bfba33c1e8d7e
3
+ metadata.gz: 3f0c0d659103f52aa0a9762d464bfacd9a656d90dfd38815b7b954c863aa5bb2
4
+ data.tar.gz: 7e74a91710993a87a4a931be6091e16af32960e91ebe67a731ffb0ee498593ba
5
5
  SHA512:
6
- metadata.gz: 5ca5dc9a5dde1c173be0b9dcf43beeaaab96bda3942284f2ee33184c10df18633906c9ff243337cff0b7e19e9f62b790d712ffee7a91180da61e405210e446be
7
- data.tar.gz: b211a0431338b7d8a1f4b96a2f18006b779f5abd23daa92ba698043b120dbe71ff89b2c9ecef73d86fb34c58a8ef6f5ee320ef2febdf8c072803214b8cbf8270
6
+ metadata.gz: 69cdae2b446230a9908aa0b799b4c36d09bf5486c118468a43be4ffa128f304e7cf608bab222bebb8acdbb1bf7848619dd2a55e583ce07b14a851d3657cc0d6b
7
+ data.tar.gz: 52b48f20f66ac1635358e924fcc9a1c47bf53962610ecbaca099611d69c42d994f4c8c886a172ed1e3402c241be86e6977edd9b674960b1f5acedc30c5d8326a
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # rbsecp256k1
2
2
 
3
- [![Build Status](https://travis-ci.com/etscrivner/rbsecp256k1.svg?branch=master)](https://travis-ci.com/etscrivner/rbsecp256k1) [![Gem Version](https://badge.fury.io/rb/rbsecp256k1.svg)](https://badge.fury.io/rb/rbsecp256k1) [![Maintainability](https://api.codeclimate.com/v1/badges/d4b6e27bfa00030ca412/maintainability)](https://codeclimate.com/github/etscrivner/rbsecp256k1/maintainability)
3
+ [![Spec](https://github.com/etscrivner/rbsecp256k1/actions/workflows/spec.yml/badge.svg?branch=master)](https://github.com/etscrivner/rbsecp256k1/actions/workflows/spec.yml) [![Gem Version](https://badge.fury.io/rb/rbsecp256k1.svg)](https://badge.fury.io/rb/rbsecp256k1) [![Maintainability](https://api.codeclimate.com/v1/badges/d4b6e27bfa00030ca412/maintainability)](https://codeclimate.com/github/etscrivner/rbsecp256k1/maintainability)
4
4
 
5
5
  Native extension gem for secp256k1 ECDSA. Wraps [libsecp256k1](https://github.com/bitcoin-core/secp256k1). In
6
6
  rbsecp256k1 3.0.0 and later libsecp256k1 is bundled with the gem.
@@ -43,7 +43,7 @@ Install the dependencies for building libsecp256k1 and this library:
43
43
 
44
44
  ```
45
45
  sudo apt-get install build-essential automake pkg-config libtool \
46
- libffi-dev libssl-dev libgmp-dev python-dev
46
+ libffi-dev libssl-dev libgmp-dev python3-dev
47
47
  ```
48
48
 
49
49
  **NOTE:** If you have installed libsecp256k1 but the gem cannot find it. Ensure
@@ -54,7 +54,7 @@ you have run `ldconfig` so that your library load paths have been updated.
54
54
  Dependencies for building libsecp256k1 and this library:
55
55
 
56
56
  ```
57
- brew install openssl libtool pkg-config gmp libffi
57
+ brew install automake openssl libtool pkg-config gmp libffi
58
58
  ```
59
59
 
60
60
  ## Features
data/Rakefile CHANGED
@@ -1,7 +1,18 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "rake/extensiontask"
4
+ require "ruby_memcheck"
5
+ require "rspec/core/rake_task"
6
+ require 'ruby_memcheck/rspec/rake_task'
4
7
 
8
+ RubyMemcheck.config(binary_name: "rbsecp256k1")
9
+
10
+ # See: https://guides.rubygems.org/gems-with-extensions/
5
11
  Rake::ExtensionTask.new "rbsecp256k1" do |ext|
6
- ext.lib_dir = "lib/rbsecp256k1"
12
+ ext.lib_dir = 'lib/rbsecp256k1'
13
+ end
14
+
15
+ RSpec::Core::RakeTask.new(:spec)
16
+ namespace :spec do
17
+ RubyMemcheck::RSpec::RakeTask.new(valgrind: :spec)
7
18
  end
@@ -6,11 +6,11 @@ require 'zip'
6
6
 
7
7
  # Recipe for downloading and building libsecp256k1 as part of installation
8
8
  class Secp256k1Recipe < MiniPortile
9
- # Hard-coded URL for libsecp256k1 zipfile (HEAD of master as of 26-11-2018)
10
- LIBSECP256K1_ZIP_URL = 'https://github.com/bitcoin-core/secp256k1/archive/e34ceb333b1c0e6f4115ecbb80c632ac1042fa49.zip'
9
+ # Hard-coded URL for libsecp256k1 zipfile (HEAD of master as of 24-11-2021)
10
+ LIBSECP256K1_ZIP_URL = 'https://github.com/bitcoin-core/secp256k1/archive/fecf436d5327717801da84beb3066f5a9b80ea8e.zip'
11
11
 
12
12
  # Expected SHA-256 of the zipfile above (computed using sha256sum)
13
- LIBSECP256K1_SHA256 = 'd87d3ca7ebc42edbabb0f38e79205040b24b09b3e6d1c9ac89585de9bf302143'
13
+ LIBSECP256K1_SHA256 = '188c6252ab9e829da02c962fe59a329f798c615577ac128ae1f0697126ebb2fc'
14
14
 
15
15
  WITH_RECOVERY = ENV.fetch('WITH_RECOVERY', '1') == '1'
16
16
  WITH_ECDH = ENV.fetch('WITH_ECDH', '1') == '1'
@@ -112,4 +112,5 @@ have_header('secp256k1_recovery.h')
112
112
  # Check if we have EC Diffie-Hellman functionality
113
113
  have_header('secp256k1_ecdh.h')
114
114
 
115
- create_makefile('rbsecp256k1')
115
+ # See: https://guides.rubygems.org/gems-with-extensions/
116
+ create_makefile('rbsecp256k1/rbsecp256k1')
@@ -1525,7 +1525,7 @@ Secp256k1_have_ecdh(VALUE module)
1525
1525
  // Library initialization
1526
1526
  //
1527
1527
 
1528
- void Init_rbsecp256k1()
1528
+ void Init_rbsecp256k1(void)
1529
1529
  {
1530
1530
  // Secp256k1
1531
1531
  Secp256k1_module = rb_define_module("Secp256k1");
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Secp256k1
4
- VERSION = '5.0.1'
4
+ VERSION = '5.1.1'
5
5
  end
data/lib/rbsecp256k1.rb CHANGED
@@ -7,4 +7,8 @@ end
7
7
  require 'rbsecp256k1/context'
8
8
  require 'rbsecp256k1/util'
9
9
  require 'rbsecp256k1/version'
10
+
11
+ # The ext directory is where the compiled shared object files go for native
12
+ # extension gems. Rubygems adds this to the LOAD_PATH so we should just need to
13
+ # explicitly require the shared object
10
14
  require 'rbsecp256k1/rbsecp256k1'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbsecp256k1
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.1
4
+ version: 5.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Scrivner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-12 00:00:00.000000000 Z
11
+ date: 2022-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mini_portile2
@@ -16,70 +16,70 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.4'
19
+ version: '2.8'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.4'
26
+ version: '2.8'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: pkg-config
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.3'
33
+ version: '1.5'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.3'
40
+ version: '1.5'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rubyzip
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '2.0'
47
+ version: '2.3'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '2.0'
54
+ version: '2.3'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '12.3'
61
+ version: '13.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '12.3'
68
+ version: '13.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake-compiler
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '1.0'
75
+ version: '1.2'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '1.0'
82
+ version: '1.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rspec
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -108,6 +108,20 @@ dependencies:
108
108
  - - '='
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0.78'
111
+ - !ruby/object:Gem::Dependency
112
+ name: ruby_memcheck
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.2'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.2'
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: yard
113
127
  requirement: !ruby/object:Gem::Requirement
@@ -167,7 +181,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
167
181
  - !ruby/object:Gem::Version
168
182
  version: '0'
169
183
  requirements: []
170
- rubygems_version: 3.0.1
184
+ rubygems_version: 3.4.1
171
185
  signing_key:
172
186
  specification_version: 4
173
187
  summary: Native extension gem for secp256k1 ECDSA. Wraps libsecp256k1. In rbsecp256k1