rbsecp256k1 5.0.1 → 5.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 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