macdiff 0.0.3

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.
@@ -0,0 +1,66 @@
1
+ class DiffFolder
2
+
3
+ attr_accessor :folder1, :folder2
4
+ attr_reader :output, :raw_output
5
+
6
+ def initialize(folder1 ,folder2)
7
+ @folder1 = File.expand_path(folder1, Dir.pwd)
8
+ @folder2 = File.expand_path(folder2, Dir.pwd)
9
+ end
10
+
11
+ def run
12
+ @raw_output = IO.popen(command) do |f|
13
+ f.read # or raise
14
+ end
15
+
16
+ # NOT WORK, need to investigate
17
+ # puts $?.success?
18
+ # puts $?.exitstatus
19
+ # $?.exitstatus == 0 || raise
20
+ end
21
+
22
+ def debug
23
+ puts '-' * 70
24
+ puts command.join(' ')
25
+ puts '-' * 70
26
+ puts @raw_output
27
+ puts '-' * 70
28
+ end
29
+
30
+ private
31
+
32
+ def command
33
+ @command ||= ["diff", "-rq", folder1, folder2]
34
+ end
35
+
36
+
37
+ def sample
38
+ <<-SAMPLE
39
+
40
+ Only in /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/a: b
41
+ Only in /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/b: b1.txt
42
+ Only in /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/b: c
43
+ Files /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/a/c1.txt and /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/b/c1.txt differ
44
+ Files /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/a/x/g.txt and /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/b/x/g.txt differ
45
+ Only in /Users/davidcruwys/dev/cmdlets/macdiff/spec/samples/b/x: h.txt
46
+ false
47
+ false
48
+
49
+ SAMPLE
50
+
51
+ end
52
+
53
+ # # need to use some sort of caching folder for this
54
+ # ext = File.extname(file)
55
+ # fn = File.basename(file, ext)
56
+ # temp_file = Tempfile.new([fn, ext])
57
+
58
+ # temp_file.write(content)
59
+ # temp_file.close
60
+
61
+ # return if File.read(file) == content
62
+
63
+ # system("code -d #{file} #{temp_file.path}")
64
+ # sleep 2
65
+
66
+ end
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Macdiff
4
+ VERSION = '0.0.3'
5
+ end
data/lib/macdiff.rb ADDED
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'macdiff/version'
4
+ require 'macdiff/diff_folder'
5
+
6
+ module Macdiff
7
+ class Error < StandardError; end
8
+ # Your code goes here...
9
+ end
data/macdiff.gemspec ADDED
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'lib/macdiff/version'
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = 'macdiff'
7
+ spec.version = Macdiff::VERSION
8
+ spec.authors = ['David']
9
+ spec.email = ['david@ideasmen.com.au']
10
+
11
+ spec.summary = 'MacDiff is a command line tool for visualizing folder differences using the MAC diff command'
12
+ spec.description = 'MacDiff is a command line tool for visualizing folder differences using the MAC diff command'
13
+ spec.homepage = 'http://appydave.com/XXX/macdiff'
14
+ spec.license = 'MIT'
15
+
16
+ # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
17
+ # to allow pushing to a single host or delete this section to allow pushing to any host.
18
+ raise 'RubyGems 2.0 or newer is required to protect against public gem pushes.' unless spec.respond_to?(:metadata)
19
+
20
+ # spec.metadata['allowed_push_host'] = "Set to 'http://mygemserver.com'"
21
+
22
+ spec.metadata['homepage_uri'] = spec.homepage
23
+ spec.metadata['source_code_uri'] = 'https://github.com/klueless-io/macdiff'
24
+ spec.metadata['changelog_uri'] = 'https://github.com/klueless-io/macdiff/commits/master'
25
+
26
+ # Specify which files should be added to the gem when it is released.
27
+ # The `git ls-files -z` loads the RubyGem files that have been added into git.
28
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
29
+ `git ls-files -z`.split("\x0").reject do |f|
30
+ f.match(%r{^(test|spec|features)/})
31
+ end
32
+ end
33
+ spec.bindir = 'exe'
34
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
35
+ spec.require_paths = ['lib']
36
+ spec.extensions = ['ext/macdiff/extconf.rb']
37
+
38
+ # spec.add_dependency 'tty-box', '~> 0.5.0'
39
+ # spec.add_dependency 'tty-color', '~> 0.5'
40
+ # spec.add_dependency 'tty-command', '~> 0.9.0'
41
+ spec.add_dependency 'tty-config', '~> 0.3.2'
42
+ # spec.add_dependency 'tty-cursor', '~> 0.7'
43
+ # spec.add_dependency 'tty-editor', '~> 0.5'
44
+ # spec.add_dependency 'tty-file', '~> 0.8.0'
45
+ # spec.add_dependency 'tty-font', '~> 0.4.0'
46
+ # spec.add_dependency 'tty-logger', '~> 0.2.0'
47
+ # spec.add_dependency 'tty-markdown', '~> 0.6.0'
48
+ # spec.add_dependency 'tty-pager', '~> 0.12'
49
+ # spec.add_dependency 'tty-pie', '~> 0.3.0'
50
+ # spec.add_dependency 'tty-platform', '~> 0.2'
51
+ # spec.add_dependency 'tty-progressbar', '~> 0.17'
52
+ spec.add_dependency 'tty-prompt', '~> 0.19'
53
+ # spec.add_dependency 'tty-screen', '~> 0.7'
54
+ # spec.add_dependency 'tty-spinner', '~> 0.9'
55
+ # spec.add_dependency 'tty-table', '~> 0.11.0'
56
+ # spec.add_dependency 'tty-tree', '~> 0.3'
57
+ # spec.add_dependency 'tty-which', '~> 0.4'
58
+ # spec.add_dependency 'equatable', '~> 0.5'
59
+ spec.add_dependency 'pastel', '~> 0.7.2'
60
+ end
metadata ADDED
@@ -0,0 +1,129 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: macdiff
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
+ platform: ruby
6
+ authors:
7
+ - David
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2021-09-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tty-config
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.3.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.3.2
27
+ - !ruby/object:Gem::Dependency
28
+ name: tty-prompt
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.19'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.19'
41
+ - !ruby/object:Gem::Dependency
42
+ name: pastel
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 0.7.2
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 0.7.2
55
+ description: MacDiff is a command line tool for visualizing folder differences using
56
+ the MAC diff command
57
+ email:
58
+ - david@ideasmen.com.au
59
+ executables:
60
+ - macdiff
61
+ extensions:
62
+ - ext/macdiff/extconf.rb
63
+ extra_rdoc_files: []
64
+ files:
65
+ - ".github/workflows/main.yml"
66
+ - ".gitignore"
67
+ - ".rspec"
68
+ - ".rubocop.yml"
69
+ - CODE_OF_CONDUCT.md
70
+ - Gemfile
71
+ - Guardfile
72
+ - LICENSE.txt
73
+ - README.md
74
+ - Rakefile
75
+ - b/a1.txt
76
+ - b/b1.txt
77
+ - b/c/e.txt
78
+ - b/c1.txt
79
+ - b/x/e.txt
80
+ - b/x/g.txt
81
+ - b/x/h.txt
82
+ - bin/console
83
+ - bin/k
84
+ - bin/kgitsync
85
+ - bin/khotfix
86
+ - bin/setup
87
+ - exe/macdiff
88
+ - ext/macdiff/extconf.rb
89
+ - ext/macdiff/macdiff.c
90
+ - ext/macdiff/macdiff.h
91
+ - hooks/pre-commit
92
+ - hooks/update-version
93
+ - lib/macdiff.rb
94
+ - lib/macdiff/app.rb
95
+ - lib/macdiff/cli.rb
96
+ - lib/macdiff/command.rb
97
+ - lib/macdiff/commands/.keep
98
+ - lib/macdiff/diff_folder.rb
99
+ - lib/macdiff/templates/.keep
100
+ - lib/macdiff/version.rb
101
+ - macdiff.gemspec
102
+ homepage: http://appydave.com/XXX/macdiff
103
+ licenses:
104
+ - MIT
105
+ metadata:
106
+ homepage_uri: http://appydave.com/XXX/macdiff
107
+ source_code_uri: https://github.com/klueless-io/macdiff
108
+ changelog_uri: https://github.com/klueless-io/macdiff/commits/master
109
+ post_install_message:
110
+ rdoc_options: []
111
+ require_paths:
112
+ - lib
113
+ required_ruby_version: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ required_rubygems_version: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
123
+ requirements: []
124
+ rubygems_version: 3.2.7
125
+ signing_key:
126
+ specification_version: 4
127
+ summary: MacDiff is a command line tool for visualizing folder differences using the
128
+ MAC diff command
129
+ test_files: []