swizzle 1.0.0 → 1.0.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 +5 -5
- data/.github/workflows/rubocop.yml +43 -0
- data/.github/workflows/test.yml +66 -0
- data/.rubocop.yml +5 -7
- data/bin/console +1 -0
- data/lib/swizzle.rb +6 -3
- data/lib/swizzle/version.rb +3 -1
- data/swizzle.gemspec +4 -6
- metadata +15 -15
- data/.travis.yml +0 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 9338aaaee27581743677d45e49a863537fbb79a2cc6fcba2dde01e9d164ba622
|
|
4
|
+
data.tar.gz: 4b1b86b604625883e71453202aade82f96afc85a6ffe20a26b8f9b45467fddf0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: dd5a52e5d45ac864a1d5cb562b818a7a854627c5d8a7c0daaa38bd20b4ffd2fc4523a63aa0cbd1afc06f958db845176cbec6ddf429c5a907fb9653656941c5b5
|
|
7
|
+
data.tar.gz: 5da65b40db0c3ddb0d9e86f2eaee47b420032ae777bf0eb3d2f155be4c6456b72e2b30f0f988b99d6fc31f0e1c75992348557be86fe3813f12ed879ad5cf19f1
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
name: rubocop
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- master
|
|
7
|
+
schedule:
|
|
8
|
+
- cron: "0 10 * * 5" # JST 19:00 (Fri)
|
|
9
|
+
|
|
10
|
+
env:
|
|
11
|
+
CI: "true"
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
rubocop:
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
|
|
17
|
+
container:
|
|
18
|
+
image: ruby:2.7.0
|
|
19
|
+
|
|
20
|
+
steps:
|
|
21
|
+
- uses: actions/checkout@v2
|
|
22
|
+
|
|
23
|
+
- name: Cache vendor/bundle
|
|
24
|
+
uses: actions/cache@v1
|
|
25
|
+
id: cache_gem
|
|
26
|
+
with:
|
|
27
|
+
path: vendor/bundle
|
|
28
|
+
key: v1-gem-${{ runner.os }}-${{ github.sha }}
|
|
29
|
+
restore-keys: |
|
|
30
|
+
v1-gem-${{ runner.os }}-
|
|
31
|
+
|
|
32
|
+
- name: bundle install
|
|
33
|
+
run: |
|
|
34
|
+
gem install bundler --no-document
|
|
35
|
+
|
|
36
|
+
- name: bundle update
|
|
37
|
+
run: |
|
|
38
|
+
bundle config path vendor/bundle
|
|
39
|
+
bundle update --jobs $(nproc) --retry 3
|
|
40
|
+
|
|
41
|
+
- name: Run rubocop
|
|
42
|
+
run: |
|
|
43
|
+
bundle exec rubocop
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
name: test
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- master
|
|
7
|
+
schedule:
|
|
8
|
+
- cron: "0 10 * * 5" # JST 19:00 (Fri)
|
|
9
|
+
|
|
10
|
+
env:
|
|
11
|
+
CI: "true"
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
test:
|
|
15
|
+
runs-on: ${{ matrix.runner }}
|
|
16
|
+
|
|
17
|
+
strategy:
|
|
18
|
+
fail-fast: false
|
|
19
|
+
|
|
20
|
+
matrix:
|
|
21
|
+
ruby:
|
|
22
|
+
- 2.4.0
|
|
23
|
+
- 2.5.0
|
|
24
|
+
- 2.6.0
|
|
25
|
+
- 2.7.0
|
|
26
|
+
- 3.0.0
|
|
27
|
+
include:
|
|
28
|
+
- ruby: 2.4.0
|
|
29
|
+
runner: ubuntu-latest
|
|
30
|
+
- ruby: 2.5.0
|
|
31
|
+
runner: ubuntu-latest
|
|
32
|
+
- ruby: 2.6.0
|
|
33
|
+
runner: ubuntu-latest
|
|
34
|
+
- ruby: 2.7.0
|
|
35
|
+
runner: ubuntu-latest
|
|
36
|
+
- ruby: 3.0.0
|
|
37
|
+
runner: ubuntu-latest
|
|
38
|
+
|
|
39
|
+
steps:
|
|
40
|
+
- uses: actions/checkout@v2
|
|
41
|
+
|
|
42
|
+
- uses: ruby/setup-ruby@v1
|
|
43
|
+
with:
|
|
44
|
+
ruby-version: ${{ matrix.ruby }}
|
|
45
|
+
|
|
46
|
+
- name: Cache vendor/bundle
|
|
47
|
+
uses: actions/cache@v1
|
|
48
|
+
id: cache_gem
|
|
49
|
+
with:
|
|
50
|
+
path: vendor/bundle
|
|
51
|
+
key: v1-gem-${{ runner.os }}-${{ matrix.ruby }}-${{ matrix.gemfile }}-${{ github.sha }}
|
|
52
|
+
restore-keys: |
|
|
53
|
+
v1-gem-${{ runner.os }}-${{ matrix.ruby }}-${{ matrix.gemfile }}-
|
|
54
|
+
|
|
55
|
+
- name: bundle install
|
|
56
|
+
run: |
|
|
57
|
+
gem install bundler --no-document
|
|
58
|
+
|
|
59
|
+
- name: bundle update
|
|
60
|
+
run: |
|
|
61
|
+
bundle config path vendor/bundle
|
|
62
|
+
bundle update --jobs $(nproc) --retry 3
|
|
63
|
+
|
|
64
|
+
- name: Run test
|
|
65
|
+
run: |
|
|
66
|
+
bundle exec rake test
|
data/.rubocop.yml
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
# This is the configuration used to check the rubocop source code.
|
|
2
2
|
|
|
3
3
|
AllCops:
|
|
4
|
-
TargetRubyVersion: 2.
|
|
4
|
+
TargetRubyVersion: 2.7
|
|
5
|
+
NewCops: enable
|
|
6
|
+
Include:
|
|
7
|
+
- lib
|
|
8
|
+
- test
|
|
5
9
|
|
|
6
10
|
Style/StringLiterals:
|
|
7
11
|
EnforcedStyle: double_quotes
|
|
8
12
|
|
|
9
|
-
LineLength:
|
|
10
|
-
Max: 110
|
|
11
|
-
|
|
12
|
-
Documentation:
|
|
13
|
-
Enabled: false
|
|
14
|
-
|
|
15
13
|
Metrics/MethodLength:
|
|
16
14
|
Max: 20
|
|
17
15
|
|
data/bin/console
CHANGED
data/lib/swizzle.rb
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require "swizzle/version"
|
|
2
4
|
|
|
3
5
|
module Swizzle
|
|
4
6
|
module ClassMethods
|
|
5
|
-
DEFAULT_SWIZZLE_PREFIX = "swizzle_"
|
|
7
|
+
DEFAULT_SWIZZLE_PREFIX = "swizzle_"
|
|
6
8
|
|
|
7
9
|
def swizzled_class_methods
|
|
8
10
|
@swizzled_class_methods ||= {}
|
|
@@ -48,8 +50,9 @@ module Swizzle
|
|
|
48
50
|
|
|
49
51
|
swizzle_method = method(swizzle_method_name)
|
|
50
52
|
next unless singleton_class.method_defined?(method_name)
|
|
51
|
-
|
|
52
|
-
singleton_class.
|
|
53
|
+
|
|
54
|
+
singleton_class.__send__(:remove_method, method_name)
|
|
55
|
+
singleton_class.__send__(:define_method, method_name, swizzle_method)
|
|
53
56
|
@swizzled_class_methods[method_name] = swizzle_method_name
|
|
54
57
|
end
|
|
55
58
|
end
|
data/lib/swizzle/version.rb
CHANGED
data/swizzle.gemspec
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
lib = File.expand_path("../lib", __FILE__)
|
|
1
|
+
lib = File.expand_path("lib", __dir__)
|
|
4
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
5
3
|
require "swizzle/version"
|
|
6
4
|
|
|
@@ -22,8 +20,8 @@ Gem::Specification.new do |spec|
|
|
|
22
20
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
23
21
|
spec.require_paths = ["lib"]
|
|
24
22
|
|
|
25
|
-
spec.add_development_dependency "bundler", "~>
|
|
26
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
|
23
|
+
spec.add_development_dependency "bundler", "~> 2.0"
|
|
27
24
|
spec.add_development_dependency "minitest", "~> 5.0"
|
|
28
|
-
spec.add_development_dependency "
|
|
25
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
|
26
|
+
spec.add_development_dependency "rubocop", "~> 1.7.0"
|
|
29
27
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: swizzle
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- masato
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2020-12-30 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -16,56 +16,56 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '2.0'
|
|
20
20
|
type: :development
|
|
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: '
|
|
26
|
+
version: '2.0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
28
|
+
name: minitest
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
33
|
+
version: '5.0'
|
|
34
34
|
type: :development
|
|
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: '
|
|
40
|
+
version: '5.0'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
42
|
+
name: rake
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
45
|
- - "~>"
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
47
|
+
version: '13.0'
|
|
48
48
|
type: :development
|
|
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: '
|
|
54
|
+
version: '13.0'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: rubocop
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
58
58
|
requirements:
|
|
59
59
|
- - "~>"
|
|
60
60
|
- !ruby/object:Gem::Version
|
|
61
|
-
version:
|
|
61
|
+
version: 1.7.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:
|
|
68
|
+
version: 1.7.0
|
|
69
69
|
description: swizzle is a gem for easy to do method swizzling to class methods, instance
|
|
70
70
|
methods.
|
|
71
71
|
email:
|
|
@@ -74,9 +74,10 @@ executables: []
|
|
|
74
74
|
extensions: []
|
|
75
75
|
extra_rdoc_files: []
|
|
76
76
|
files:
|
|
77
|
+
- ".github/workflows/rubocop.yml"
|
|
78
|
+
- ".github/workflows/test.yml"
|
|
77
79
|
- ".gitignore"
|
|
78
80
|
- ".rubocop.yml"
|
|
79
|
-
- ".travis.yml"
|
|
80
81
|
- Gemfile
|
|
81
82
|
- LICENSE
|
|
82
83
|
- README.md
|
|
@@ -105,8 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
105
106
|
- !ruby/object:Gem::Version
|
|
106
107
|
version: '0'
|
|
107
108
|
requirements: []
|
|
108
|
-
|
|
109
|
-
rubygems_version: 2.6.11
|
|
109
|
+
rubygems_version: 3.1.2
|
|
110
110
|
signing_key:
|
|
111
111
|
specification_version: 4
|
|
112
112
|
summary: swizzle is a gem for easy to do method swizzling.
|
data/.travis.yml
DELETED