argon2id 0.8.0 → 0.9.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: 5cc09675c06311083113abdaf6682c6096b7a0c465f803a95e14005421f43ccf
4
- data.tar.gz: cd357c083ca7c2d2b21b92ab23098532342284b578b957ad56b05c97eb9cfe77
3
+ metadata.gz: d4a600a6e10a83d05296ef55962148bd5d1ca114e345c8a88e720b59edeaa2e7
4
+ data.tar.gz: 6e4edc5518a6726eb1d6478f9114d0ac5c3a6d7d495bb3066e5d49bc91334ec0
5
5
  SHA512:
6
- metadata.gz: 52edf8f69ef92b3eff033c256c406ae6f7e89b8195669329d8517a851a9bdf56f8d518f37eb87bdbf35eb750cf7963b059d0c5533283d4a66173b0203a1761ba
7
- data.tar.gz: d5c7b643c790197a06386cbf0920f96eeeed6653de46bc676ed286356d8a3fdc77daa2f5acead7db77db50458d178b6a5c5a6acc29831db01617d2ddc7bfe7ae
6
+ metadata.gz: c6c61266aff2bc205e0ab743e25240c03d51ef3aa29205a0d16a1ce23aec500c1edd9c8f336520454baedcf8ea5855d2f3d03996953e3c32cd4a2491a46ea7ea
7
+ data.tar.gz: 8fc306431023691458c24e9ca98d957f4d1cf6ad3a1cba551e03457795705cb1908b44a2afca3ae31d73b7edabfd9be29950eef245e482c7f3c097c825d212ba
data/CHANGELOG.md CHANGED
@@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.9.0] - 2025-12-30
9
+
10
+ ### Added
11
+ - Add support for Ruby 4.0 in precompiled, native gems.
12
+
13
+ ### Removed
14
+ - Remove support and native gems for Ruby 2.6, 2.7, and 3.0.
15
+ - Remove native gems for 32-bit platforms, specifically x86-linux-gnu,
16
+ x86-linux-musl, and x86-mingw32
17
+
8
18
  ## [0.8.0] - 2024-12-29
9
19
 
10
20
  ### Added
@@ -141,6 +151,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
141
151
  reference C implementation of Argon2, the password-hashing function that won
142
152
  the Password Hashing Competition.
143
153
 
154
+ [0.9.0]: https://github.com/mudge/argon2id/releases/tag/v0.9.0
144
155
  [0.8.0]: https://github.com/mudge/argon2id/releases/tag/v0.8.0
145
156
  [0.8.0.rc1]: https://github.com/mudge/argon2id/releases/tag/v0.8.0.rc1
146
157
  [0.7.0]: https://github.com/mudge/argon2id/releases/tag/v0.7.0
data/README.md CHANGED
@@ -5,7 +5,7 @@ Ruby bindings to [Argon2][], the password-hashing function that won the 2015
5
5
 
6
6
  [![Build Status](https://github.com/mudge/argon2id/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/mudge/argon2id/actions)
7
7
 
8
- **Current version:** 0.8.0
8
+ **Current version:** 0.9.0
9
9
  **Bundled Argon2 version:** libargon2.1 (20190702)
10
10
 
11
11
  ```ruby
@@ -257,8 +257,8 @@ User.find_by(name: "alice")&.authenticate("password") #=> user
257
257
 
258
258
  This gem requires any of the following to run:
259
259
 
260
- * [Ruby](https://www.ruby-lang.org/en/) 2.6 to 3.4
261
- * [JRuby](https://www.jruby.org) 9.4
260
+ * [Ruby](https://www.ruby-lang.org/en/) 3.1 to 4.0
261
+ * [JRuby](https://www.jruby.org) 9.4 to 10.0
262
262
  * [TruffleRuby](https://www.graalvm.org/ruby/) 24.1
263
263
 
264
264
  > [!NOTE]
@@ -271,10 +271,10 @@ This gem requires any of the following to run:
271
271
  Where possible, a pre-compiled native gem will be provided for the following platforms:
272
272
 
273
273
  * Linux
274
- * `aarch64-linux`, `arm-linux`, `x86-linux`, `x86_64-linux` (requires [glibc](https://www.gnu.org/software/libc/) 2.29+, RubyGems 3.3.22+ and Bundler 2.3.21+)
274
+ * `aarch64-linux`, `arm-linux`, `x86_64-linux` (requires [glibc](https://www.gnu.org/software/libc/) 2.29+, RubyGems 3.3.22+ and Bundler 2.3.21+)
275
275
  * [musl](https://musl.libc.org/)-based systems such as [Alpine](https://alpinelinux.org) are supported with Bundler 2.5.6+
276
276
  * macOS `x86_64-darwin` and `arm64-darwin`
277
- * Windows `x64-mingw32` and `x64-mingw-ucrt`
277
+ * Windows 2022+ `x64-mingw-ucrt`
278
278
  * Java: any platform running JRuby 9.4 or higher
279
279
 
280
280
  ### Verifying the gems
data/Rakefile CHANGED
@@ -11,16 +11,12 @@ cross_platforms = %w[
11
11
  arm-linux-musl
12
12
  arm64-darwin
13
13
  x64-mingw-ucrt
14
- x64-mingw32
15
- x86-linux-gnu
16
- x86-linux-musl
17
- x86-mingw32
18
14
  x86_64-darwin
19
15
  x86_64-linux-gnu
20
16
  x86_64-linux-musl
21
17
  ].freeze
22
18
 
23
- ENV["RUBY_CC_VERSION"] = %w[3.4.0 3.3.5 3.2.0 3.1.0 3.0.0 2.7.0 2.6.0].join(":")
19
+ RakeCompilerDock.set_ruby_cc_version("~> 3.1", "~> 4.0")
24
20
 
25
21
  gemspec = Gem::Specification.load("argon2id.gemspec")
26
22
 
@@ -31,7 +27,6 @@ namespace :java do
31
27
  java_gemspec.files.reject! { |path| File.fnmatch?("ext/*", path) }
32
28
  java_gemspec.extensions.clear
33
29
  java_gemspec.platform = Gem::Platform.new("java")
34
- java_gemspec.required_ruby_version = ">= 3.1.0"
35
30
 
36
31
  Gem::PackageTask.new(java_gemspec).define
37
32
  end
@@ -60,7 +55,7 @@ namespace :gem do
60
55
  task platform do
61
56
  RakeCompilerDock.sh <<~SCRIPT, platform: platform, verbose: true
62
57
  gem install bundler --no-document &&
63
- bundle &&
58
+ bundle install &&
64
59
  bundle exec rake native:#{platform} pkg/#{gemspec.full_name}-#{Gem::Platform.new(platform)}.gem PATH="/usr/local/bin:$PATH"
65
60
  SCRIPT
66
61
  end
data/argon2id.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
  "source_code_uri" => "https://github.com/mudge/argon2id",
19
19
  "rubygems_mfa_required" => "true"
20
20
  }
21
- s.required_ruby_version = ">= 2.6.0"
21
+ s.required_ruby_version = ">= 3.1.0"
22
22
  s.extensions = ["ext/argon2id/extconf.rb"]
23
23
  s.files = [
24
24
  "CHANGELOG.md",
@@ -53,7 +53,7 @@ Gem::Specification.new do |s|
53
53
  ]
54
54
  s.rdoc_options = ["--main", "README.md"]
55
55
 
56
- s.add_development_dependency("rake-compiler", "~> 1.2")
57
- s.add_development_dependency("rake-compiler-dock", "~> 1.7")
56
+ s.add_development_dependency("rake-compiler", "~> 1.3")
57
+ s.add_development_dependency("rake-compiler-dock", "~> 1.11")
58
58
  s.add_development_dependency("minitest", "~> 5.25")
59
59
  end
@@ -10,6 +10,7 @@ if RUBY_PLATFORM == "java"
10
10
  class Password
11
11
  def self.hash_encoded(t_cost, m_cost, parallelism, pwd, salt, hashlen)
12
12
  raise Error, "Salt is too short" if salt.empty?
13
+ raise Error, "Memory cost is too small" if m_cost < 8
13
14
 
14
15
  salt_bytes = salt.to_java_bytes
15
16
  output = Java::byte[hashlen].new
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Argon2id
4
- VERSION = "0.8.0"
4
+ VERSION = "0.9.0"
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: argon2id
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul Mucur
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2024-12-29 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: rake-compiler
@@ -15,28 +15,28 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: '1.2'
18
+ version: '1.3'
19
19
  type: :development
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: '1.2'
25
+ version: '1.3'
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rake-compiler-dock
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: '1.7'
32
+ version: '1.11'
33
33
  type: :development
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '1.7'
39
+ version: '1.11'
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: minitest
42
42
  requirement: !ruby/object:Gem::Requirement
@@ -106,14 +106,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - ">="
108
108
  - !ruby/object:Gem::Version
109
- version: 2.6.0
109
+ version: 3.1.0
110
110
  required_rubygems_version: !ruby/object:Gem::Requirement
111
111
  requirements:
112
112
  - - ">="
113
113
  - !ruby/object:Gem::Version
114
114
  version: '0'
115
115
  requirements: []
116
- rubygems_version: 3.6.2
116
+ rubygems_version: 4.0.3
117
117
  specification_version: 4
118
118
  summary: Ruby bindings to Argon2
119
119
  test_files: []