bauk-core 0.0.4 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -3
- data/Gemfile.lock +51 -0
- data/lib/bauk/utils/array_utils.rb +3 -1
- data/lib/bauk/utils/base_parser.rb +2 -3
- data/lib/bauk/utils/log.rb +18 -3
- data/lib/bauk/utils/symbolize.rb +23 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f9309ceca9c857c2f60512848824377d811b1495b8102fb8c641ea36d296f001
|
4
|
+
data.tar.gz: 2ddbc0cb688f587216a91138b0ee1b0edfb8ce9cea160ca385ea0e89e952e2f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cf8fac1f2f4c1b6146f7e3d4a20287d3d80ffb1a8b2db91f65c6ec9dab9366409d3b8e6458d7807561c9a51318ab07ff272f7dece96c138dbd686845b8ebc180
|
7
|
+
data.tar.gz: a9828e67695d0fa053abcb7e737cb1ad18cd355f4971265769c6f7b338969430acfe4abeb6e17827ed0f9f4ccfbc2080a93b169b392ed921f7a51790fa0ea2ca
|
data/.gitignore
CHANGED
data/Gemfile.lock
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
bauk-core (0.0.6)
|
5
|
+
|
6
|
+
GEM
|
7
|
+
remote: https://rubygems.org/
|
8
|
+
specs:
|
9
|
+
ast (2.4.0)
|
10
|
+
diff-lcs (1.3)
|
11
|
+
jaro_winkler (1.5.3)
|
12
|
+
parallel (1.17.0)
|
13
|
+
parser (2.6.3.0)
|
14
|
+
ast (~> 2.4.0)
|
15
|
+
rainbow (3.0.0)
|
16
|
+
rake (10.5.0)
|
17
|
+
rspec (3.8.0)
|
18
|
+
rspec-core (~> 3.8.0)
|
19
|
+
rspec-expectations (~> 3.8.0)
|
20
|
+
rspec-mocks (~> 3.8.0)
|
21
|
+
rspec-core (3.8.2)
|
22
|
+
rspec-support (~> 3.8.0)
|
23
|
+
rspec-expectations (3.8.4)
|
24
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
25
|
+
rspec-support (~> 3.8.0)
|
26
|
+
rspec-mocks (3.8.1)
|
27
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
28
|
+
rspec-support (~> 3.8.0)
|
29
|
+
rspec-support (3.8.2)
|
30
|
+
rubocop (0.74.0)
|
31
|
+
jaro_winkler (~> 1.5.1)
|
32
|
+
parallel (~> 1.10)
|
33
|
+
parser (>= 2.6)
|
34
|
+
rainbow (>= 2.2.2, < 4.0)
|
35
|
+
ruby-progressbar (~> 1.7)
|
36
|
+
unicode-display_width (>= 1.4.0, < 1.7)
|
37
|
+
ruby-progressbar (1.10.1)
|
38
|
+
unicode-display_width (1.6.0)
|
39
|
+
|
40
|
+
PLATFORMS
|
41
|
+
ruby
|
42
|
+
|
43
|
+
DEPENDENCIES
|
44
|
+
bauk-core!
|
45
|
+
bundler (~> 2.0)
|
46
|
+
rake (~> 10.0)
|
47
|
+
rspec (~> 3.0)
|
48
|
+
rubocop (~> 0.74)
|
49
|
+
|
50
|
+
BUNDLED WITH
|
51
|
+
2.1.4
|
@@ -19,7 +19,6 @@ module Bauk
|
|
19
19
|
class BaseParser
|
20
20
|
require 'optparse'
|
21
21
|
require 'bauk/utils/log'
|
22
|
-
require 'bauk/utils/hash_utils'
|
23
22
|
include Log
|
24
23
|
# Accepts a hash of actions. E.g:
|
25
24
|
# BaseParser.new({
|
@@ -27,7 +26,7 @@ module Bauk
|
|
27
26
|
# # opts.on ...
|
28
27
|
# end,
|
29
28
|
# sub_action_a: {
|
30
|
-
# aliases: %
|
29
|
+
# aliases: %i[a action_a],
|
31
30
|
# info: 'Please choose me!',
|
32
31
|
# opts: lambda do |opts|
|
33
32
|
# # Only accesible if 'sub_action_a' chosen
|
@@ -112,7 +111,7 @@ module Bauk
|
|
112
111
|
# Lists available child actions based on the current @action_chain
|
113
112
|
def available_actions
|
114
113
|
# Put *'s if this has an action
|
115
|
-
ret = "#{program_name} - Available actions (--help for more info):\n"
|
114
|
+
ret = "#{program_name} - Available actions (--help for more info):\n".dup
|
116
115
|
max = 0
|
117
116
|
ca = current_action only_child_actions: true
|
118
117
|
ca.each_key { |key| max = key.length if key.length > max }
|
data/lib/bauk/utils/log.rb
CHANGED
@@ -15,16 +15,27 @@ module Bauk
|
|
15
15
|
def self.create(name)
|
16
16
|
log = loggers[name][:instance]
|
17
17
|
if log.nil?
|
18
|
-
log = Log4r::Logger.new(name)
|
18
|
+
log = Log4r::Logger.new(logger_name name)
|
19
19
|
log.level = Log.loggers[name][:level]
|
20
20
|
Log.loggers[name][:outputters].each { |o| log.add o }
|
21
|
-
log.debug("Initialized loger #{name} to: #{log.level}")
|
21
|
+
log.debug("Initialized loger #{name} to log level: #{log.level}")
|
22
22
|
loggers[name] = loggers[name].clone # Take default values
|
23
23
|
loggers[name][:instance] = log
|
24
24
|
end
|
25
25
|
log
|
26
26
|
end
|
27
27
|
|
28
|
+
# Function to turn a name into a more valid logger name
|
29
|
+
# e.g. The::Best::Class -> TB.class
|
30
|
+
def self.logger_name(name)
|
31
|
+
logger_parts = name.split '::'
|
32
|
+
logger_name = logger_parts.pop
|
33
|
+
unless logger_parts.empty?
|
34
|
+
logger_name = [logger_parts.map {|p| p[0]}.join(''), logger_name].join('.')
|
35
|
+
end
|
36
|
+
logger_name
|
37
|
+
end
|
38
|
+
|
28
39
|
# Increases logging from all loggers, unless a name is specified
|
29
40
|
# (See set_log_level for runes on name provided).
|
30
41
|
# Due to the inverse of log4r, more logging means a lower log level
|
@@ -93,7 +104,11 @@ module Bauk
|
|
93
104
|
|
94
105
|
# Used to access log4r inside a class which includes this class
|
95
106
|
def log
|
96
|
-
|
107
|
+
if @log.nil?
|
108
|
+
logger_name = self.class.name
|
109
|
+
logger_name = "#{self.name}@" if self.respond_to? "name"
|
110
|
+
@log = Log.create(logger_name || 'anonymous') if @log.nil?
|
111
|
+
end
|
97
112
|
@log
|
98
113
|
end
|
99
114
|
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class Object
|
4
|
+
def symbolize
|
5
|
+
self
|
6
|
+
end
|
7
|
+
end
|
8
|
+
class Hash
|
9
|
+
def symbolize
|
10
|
+
reduce({}) do |memo, (k, v)|
|
11
|
+
memo.tap do |m|
|
12
|
+
m[k.to_sym] = v.respond_to?(:symbolize) ? v.symbolize() : v
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
class Array
|
18
|
+
def symbolize
|
19
|
+
each_with_object([]) do |v, memo|
|
20
|
+
memo.push v.respond_to?(:symbolize) ? v.symbolize() : v
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bauk-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kuba Jasko
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-10-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -79,6 +79,7 @@ files:
|
|
79
79
|
- ".travis.yml"
|
80
80
|
- CODE_OF_CONDUCT.md
|
81
81
|
- Gemfile
|
82
|
+
- Gemfile.lock
|
82
83
|
- LICENSE.txt
|
83
84
|
- README.md
|
84
85
|
- Rakefile
|
@@ -90,6 +91,7 @@ files:
|
|
90
91
|
- lib/bauk/utils/array_utils.rb
|
91
92
|
- lib/bauk/utils/base_parser.rb
|
92
93
|
- lib/bauk/utils/log.rb
|
94
|
+
- lib/bauk/utils/symbolize.rb
|
93
95
|
- lib/bauk/utils/user_input.rb
|
94
96
|
homepage: https://gitlab.com/BAUK/bauk-core
|
95
97
|
licenses:
|