gem-diff 0.2
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 +7 -0
- data/.gitignore +2 -0
- data/Rakefile +2 -0
- data/gem-diff.gemspec +22 -0
- data/lib/gem-diff/diff_command.rb +28 -0
- data/lib/gem-diff/version.rb +5 -0
- data/lib/rubygems_plugin.rb +7 -0
- metadata +77 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: b2d64eeb5ee41bf0d6542c3344fb8e03e7ff7a7895144556aa2493b9047bfc12
|
4
|
+
data.tar.gz: 79fe15208d3e3710c2d8bf1fe7eb4ad01a104c1fd79f65e1f7e0165f35dfa761
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: e6a84a2d0bb60a14c01b5211dd455c56e8e66b437212eb0581fa7361e3faa8af8d59061a97f417e7c18d7abacc2b213ff6c3eb34f86a4fd42ef6b460aab72a11
|
7
|
+
data.tar.gz: 48e73f20febcec7fb5ff1bc21648a2e2fb0cbccc4cbe66d7952988f2d21d07b608ed79e996e26b3b0ed3f07ea72b8d728647b0077320b4fbac4b503871ae2d83
|
data/.gitignore
ADDED
data/Rakefile
ADDED
data/gem-diff.gemspec
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
#encoding: utf-8
|
2
|
+
|
3
|
+
require 'rubygems/command'
|
4
|
+
require_relative 'lib/gem-diff/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = 'gem-diff'
|
8
|
+
s.version = Gem::Commands::DiffCommand::VERSION
|
9
|
+
s.summary = %q{Show differences between gems}
|
10
|
+
s.description = %q{A Ruby gem which acts as a 'gem' plugin to show differences between gems.}
|
11
|
+
s.author = 'John Labovitz'
|
12
|
+
s.email = 'johnl@johnlabovitz.com'
|
13
|
+
s.homepage = 'https://github.com/jslabovitz/gem-diff.git'
|
14
|
+
s.license = 'MIT'
|
15
|
+
s.files = `git ls-files`.split($/)
|
16
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
17
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
|
18
|
+
s.require_path = 'lib'
|
19
|
+
|
20
|
+
s.add_development_dependency 'rake', '~> 12.3'
|
21
|
+
s.add_development_dependency 'rubygems-tasks', '~> 0.2'
|
22
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class Gem::Commands::DiffCommand < Gem::Command
|
2
|
+
|
3
|
+
def initialize
|
4
|
+
super 'diff', %q{Show differences between versions of gem}
|
5
|
+
end
|
6
|
+
|
7
|
+
def execute
|
8
|
+
if options[:args].empty?
|
9
|
+
gems = Gem::Specification
|
10
|
+
else
|
11
|
+
gems = options[:args].map { |n| Gem::Specification.find_all_by_name(n) }.flatten
|
12
|
+
end
|
13
|
+
tree = {}
|
14
|
+
gems.each do |gem|
|
15
|
+
unless gem.default_gem?
|
16
|
+
tree[gem.name] ||= []
|
17
|
+
tree[gem.name] << gem
|
18
|
+
end
|
19
|
+
end
|
20
|
+
tree.reject { |n, v| v.length < 2 }.each do |name, versions|
|
21
|
+
versions.sort_by!(&:version)
|
22
|
+
warn "#{name} has more than one version -- only comparing last two" if versions.length > 2
|
23
|
+
paths = versions[-2..-1].map(&:gem_dir)
|
24
|
+
system 'git', 'diff', *paths
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
metadata
ADDED
@@ -0,0 +1,77 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: gem-diff
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: '0.2'
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- John Labovitz
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2018-01-08 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '12.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '12.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rubygems-tasks
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0.2'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0.2'
|
41
|
+
description: A Ruby gem which acts as a 'gem' plugin to show differences between gems.
|
42
|
+
email: johnl@johnlabovitz.com
|
43
|
+
executables: []
|
44
|
+
extensions: []
|
45
|
+
extra_rdoc_files: []
|
46
|
+
files:
|
47
|
+
- ".gitignore"
|
48
|
+
- Rakefile
|
49
|
+
- gem-diff.gemspec
|
50
|
+
- lib/gem-diff/diff_command.rb
|
51
|
+
- lib/gem-diff/version.rb
|
52
|
+
- lib/rubygems_plugin.rb
|
53
|
+
homepage: https://github.com/jslabovitz/gem-diff.git
|
54
|
+
licenses:
|
55
|
+
- MIT
|
56
|
+
metadata: {}
|
57
|
+
post_install_message:
|
58
|
+
rdoc_options: []
|
59
|
+
require_paths:
|
60
|
+
- lib
|
61
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
62
|
+
requirements:
|
63
|
+
- - ">="
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
71
|
+
requirements: []
|
72
|
+
rubyforge_project:
|
73
|
+
rubygems_version: 2.7.4
|
74
|
+
signing_key:
|
75
|
+
specification_version: 4
|
76
|
+
summary: Show differences between gems
|
77
|
+
test_files: []
|