digest-xxhash 0.2.2 → 0.2.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,6 +2,6 @@ require 'digest'
2
2
 
3
3
  module Digest
4
4
  class XXHash < Digest::Class
5
- VERSION = "0.2.2"
5
+ VERSION = "0.2.5"
6
6
  end
7
7
  end
@@ -0,0 +1,58 @@
1
+ require 'singleton'
2
+
3
+ # Provides an alternate implementation of 'install' and 'install:local'.
4
+ #
5
+ # This mainly allows options to be forwarded to `gem install`.
6
+ #
7
+ class AltInstallTask < Rake::TaskLib
8
+ module GemName
9
+ def gem_name
10
+ gemspec = Bundler::GemHelper.gemspec
11
+ "#{gemspec.name}-#{gemspec.version}.gem"
12
+ end
13
+ end
14
+
15
+ module TaskComment
16
+ include GemName
17
+
18
+ def comment
19
+ comment = "Build and install #{gem_name} into system gems"
20
+ comment += " without network access" if name.to_s == "install:local"
21
+ comment
22
+ end
23
+
24
+ def full_comment
25
+ comment + "."
26
+ end
27
+ end
28
+
29
+ include Singleton
30
+ include GemName
31
+
32
+ def initialize
33
+ define
34
+ end
35
+
36
+ def define
37
+ [:install, :"install:local"].each do |name|
38
+ task(name).clear.enhance([:build]){ |task| execute_task(task) }
39
+ .singleton_class.prepend(TaskComment)
40
+ end
41
+ end
42
+
43
+ private
44
+ def pkg_dir
45
+ @pkg_dir ||= File.join(Bundler::GemHelper.instance.base, "pkg")
46
+ end
47
+
48
+ def execute_task(task)
49
+ built_gem = File.join(pkg_dir, gem_name)
50
+ raise "Gem '#{built_gem}' unexpectedly doesn't exist." unless File.exist? built_gem
51
+ gem_command = (ENV["GEM_COMMAND"].shellsplit rescue nil) || ["gem"]
52
+ opts = ARGV.select{ |e| e =~ /\A--?/ }
53
+ opts.unshift "--local" if task.name.to_s == "install:local"
54
+ Process.wait spawn(*gem_command, "install", built_gem, *opts)
55
+ end
56
+ end
57
+
58
+ AltInstallTask.instance
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: digest-xxhash
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - konsolebox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-12 00:00:00.000000000 Z
11
+ date: 2022-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -92,6 +92,7 @@ files:
92
92
  - ext/digest/xxhash/utils.h
93
93
  - ext/digest/xxhash/xxhash.h
94
94
  - lib/digest/xxhash/version.rb
95
+ - rakelib/alt-install-task.rake
95
96
  - test/produce-vectors-with-ruby-xxhash.rb
96
97
  - test/produce-vectors-with-xxhsum.rb
97
98
  - test/test.rb
@@ -116,7 +117,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
116
117
  - !ruby/object:Gem::Version
117
118
  version: '0'
118
119
  requirements: []
119
- rubygems_version: 3.2.22
120
+ rubygems_version: 3.3.8
120
121
  signing_key:
121
122
  specification_version: 4
122
123
  summary: A Digest framework based XXHash library for Ruby