smolt 0.1.0 → 0.2.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: e7281537f6def9dda873f6a851c645d3d7fcbc4de280f1458fb28b9cbf7f3623
4
- data.tar.gz: 7ce23c6287dfff718bef49e3aca69e25830195f0ca91f68ccddb545f3ae2901c
3
+ metadata.gz: 8a6e10a78809f3ab8ca198b3e7dd045ca9f2b2f642da8d714dd278cc66fd0974
4
+ data.tar.gz: 518dfa013e7d71b5eb39fba52b2779e2bb043a598a02ebe3274490f645d83565
5
5
  SHA512:
6
- metadata.gz: 7354a3917b4442efd98c7261bc02eafc272fff160469aa8a3034cd56871b9def3bcae3025077684987367de54be1a901bf6132571bf2d1116c3f1f7b336db7e1
7
- data.tar.gz: ce91bbbb4f3cfb45fd299d38bc9cd929714fae44f58fff953dba219834727ed3dae18dc3b6153aac0232f13e1ba49c74346a43c3f08bc73806d58e3aa6690f74
6
+ metadata.gz: e6cf55dcae720b46ffa45f6b4ddd46de5f4429a48e079c75ff7b28b39029562aaecb3874968f5554ab7be9a653e534af0a6aa7d9ca5bfcc12becb6a77c8ab7ff
7
+ data.tar.gz: b98721f3a52991f4481f3f331134f8e5447813845799f7539a1088a6a0b24d5712345fcdd455c5dbc2901c5ba7e5775897338072adebf854bb3cd00193debe84
data/.rubocop.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.4
2
+ TargetRubyVersion: 2.6
3
3
 
4
4
  Style/StringLiterals:
5
5
  Enabled: true
@@ -11,3 +11,10 @@ Style/StringLiteralsInInterpolation:
11
11
 
12
12
  Layout/LineLength:
13
13
  Max: 120
14
+
15
+ Metrics/BlockLength:
16
+ Exclude:
17
+ - 'spec/**/*'
18
+
19
+ AllCops:
20
+ NewCops: enable
data/Gemfile CHANGED
@@ -6,5 +6,5 @@ gemspec
6
6
 
7
7
  gem "rake", "~> 13.0"
8
8
  gem "rspec", "~> 3.0"
9
- gem 'rspec-mocks'
10
- gem "rubocop", "~> 1.7"
9
+ gem "rspec-mocks"
10
+ gem "rubocop", require: false
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # Smolt
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/smolt`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ Smolt shows dependencies for homebrew.
6
4
 
7
5
  ## Installation
8
6
 
@@ -21,8 +19,21 @@ Or install it yourself as:
21
19
  $ gem install smolt
22
20
 
23
21
  ## Usage
22
+ ```ruby
23
+ require 'smolt'
24
+ Smolt.full('openssl')
25
+ ```
26
+
27
+ This shows brews installed already and brews you need to install.
28
+ If you installed the brew, Smolt return the message like "{brew} is already installed."
29
+
30
+ ```ruby
31
+ require "smolt"
32
+ Smolt.diff('openssl')
33
+ ```
24
34
 
25
- TODO: Write usage instructions here
35
+ This shows only brews you need to install.
36
+ If you installed the brew, Smolt return the message like "{brew} is already installed."
26
37
 
27
38
  ## Development
28
39
 
data/exe/smolt ADDED
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ #!/usr/bin/env ruby
4
+
5
+ require_relative "../lib/smolt"
6
+
7
+ Smolt.dependency(ARGV[0], ARGV[1])
data/lib/smolt/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Smolt
4
- VERSION = "0.1.0"
4
+ VERSION = "0.2.0"
5
5
  end
data/lib/smolt.rb CHANGED
@@ -2,32 +2,31 @@
2
2
 
3
3
  require_relative "smolt/version"
4
4
 
5
+ # Service to check the dependencies from the formula you want to install by homebrew
5
6
  module Smolt
6
- def self.dependency(brew, opt=nil)
7
- if opt
8
- options = opt.split(' ')
9
- opt_diff = options.any?(/-*d*/)
10
- end
7
+ def self.full(brew)
11
8
  installed_brews = `brew list`.split("\n")
12
9
  dependent_brews = `brew deps #{brew}`.split("\n")
13
10
  diff_brews = dependent_brews - installed_brews
14
- divider = divider('-', 50)
11
+ divider = "-" * 50
15
12
  formatted_installed = "#{divider}\nInstalled brews\n#{divider}\n#{installed_brews}\n"
16
13
  formatted_diff = "#{divider}\nAdditional brews\n#{divider}\n#{diff_brews}"
17
14
  formatted_full = "#{formatted_installed}\n#{formatted_diff}"
18
15
 
19
- if opt_diff
20
- return puts formatted_diff
21
- end
22
-
23
- unless installed_brews.grep(/#{brew}/).empty?
24
- return "#{brew} is already installed."
25
- end
16
+ return "#{brew} is already installed." unless installed_brews.grep(/#{brew}/).empty?
26
17
 
27
18
  puts formatted_full
28
19
  end
29
20
 
30
- def self.divider(letter, length)
31
- letter * length
21
+ def self.diff(brew)
22
+ installed_brews = `brew list`.split("\n")
23
+ dependent_brews = `brew deps #{brew}`.split("\n")
24
+ diff_brews = dependent_brews - installed_brews
25
+ divider = "-" * 50
26
+ formatted_diff = "#{divider}\nAdditional brews\n#{divider}\n#{diff_brews}"
27
+
28
+ return "#{brew} is already installed." unless installed_brews.grep(/#{brew}/).empty?
29
+
30
+ puts formatted_diff
32
31
  end
33
32
  end
data/smolt.gemspec CHANGED
@@ -9,13 +9,12 @@ Gem::Specification.new do |spec|
9
9
  spec.email = ["39.ishida@gmail.com"]
10
10
 
11
11
  spec.summary = "Smolt is dependency checker for the homebrew."
12
- spec.description = "You can check if there are any dependencies with the formula you're going to install before you do."
12
+ spec.description = "You can check if there are any dependencies with the formula you're going to install."
13
13
  spec.homepage = "https://rubygems.org/gems/smolt"
14
14
  spec.license = "MIT"
15
- spec.required_ruby_version = ">= 2.4.0"
15
+ spec.required_ruby_version = ">= 2.6.0"
16
16
 
17
17
  # spec.metadata["allowed_push_host"] = "TODO: Set to 'https://mygemserver.com'"
18
-
19
18
  spec.metadata["homepage_uri"] = spec.homepage
20
19
  spec.metadata["source_code_uri"] = "https://github.com/Naoyuk/smolt"
21
20
  spec.metadata["changelog_uri"] = "https://github.com/Naoyuk/smolt/blob/main/CHANGELOG.md"
metadata CHANGED
@@ -1,20 +1,21 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smolt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Naoyuki Ishida
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-01-02 00:00:00.000000000 Z
11
+ date: 2022-01-03 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: You can check if there are any dependencies with the formula you're going
14
- to install before you do.
14
+ to install.
15
15
  email:
16
16
  - 39.ishida@gmail.com
17
- executables: []
17
+ executables:
18
+ - smolt
18
19
  extensions: []
19
20
  extra_rdoc_files: []
20
21
  files:
@@ -30,6 +31,7 @@ files:
30
31
  - Rakefile
31
32
  - bin/console
32
33
  - bin/setup
34
+ - exe/smolt
33
35
  - lib/smolt.rb
34
36
  - lib/smolt/version.rb
35
37
  - smolt.gemspec
@@ -48,7 +50,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
48
50
  requirements:
49
51
  - - ">="
50
52
  - !ruby/object:Gem::Version
51
- version: 2.4.0
53
+ version: 2.6.0
52
54
  required_rubygems_version: !ruby/object:Gem::Requirement
53
55
  requirements:
54
56
  - - ">="