bhook 0.1.4 → 0.1.5
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 +4 -4
- data/.rubocop.yml +4 -1
- data/Gemfile.lock +21 -13
- data/Rakefile +12 -1
- data/bin/bhook +11 -6
- data/lib/bhook/args_parser.rb +49 -44
- data/lib/bhook/config.rb +7 -7
- data/lib/bhook/directory.rb +8 -8
- data/lib/bhook/logger.rb +4 -3
- data/lib/bhook/md_file.rb +28 -19
- data/lib/bhook/theme_generator.rb +6 -4
- data/lib/bhook/version.rb +1 -1
- data/lib/bhook/workspace.rb +6 -6
- data/sorbet/rbi/gems/bhook.rbi +2 -1
- data/sorbet/rbi/gems/docile.rbi +36 -0
- data/sorbet/rbi/gems/kramdown.rbi +1 -1
- data/sorbet/rbi/gems/parser.rbi +1 -1
- data/sorbet/rbi/gems/regexp_parser.rbi +2 -1
- data/sorbet/rbi/gems/rubocop-ast.rbi +1 -1
- data/sorbet/rbi/gems/rubocop-rspec.rbi +11 -1
- data/sorbet/rbi/gems/rubocop.rbi +17 -6
- data/sorbet/rbi/gems/simplecov-html.rbi +35 -0
- data/sorbet/rbi/gems/simplecov.rbi +419 -0
- data/sorbet/rbi/gems/simplecov_json_formatter.rbi +47 -0
- data/sorbet/rbi/hidden-definitions/errors.txt +51 -49
- data/sorbet/rbi/hidden-definitions/hidden.rbi +106 -9
- metadata +20 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 39c52c51debcaf48107b16abf83358b72740cd6372229b28d1d8bf40b026990f
|
4
|
+
data.tar.gz: bf55558bfdb2a19282ff64104bf5d909a1d83713af3f8ebf8b1751cf5758ed6e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0a94bfa98e43a47608d0c5caf83b9f70cb710ae759ee7e051aa2043ea36f23b2f81a98b7040902ba178f88132e5129ab3b4c881ab1ac4d190b414bed6020532f
|
7
|
+
data.tar.gz: 2aa3aabcd3e8431f0a296f8264cd486037a13074cea31f64942c8416b7ec2481aad99f2802a11931bbaf3417ad213fa88ee7f478f405f144c816f6a7113c543b
|
data/.rubocop.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
bhook (0.1.
|
4
|
+
bhook (0.1.5)
|
5
5
|
git (~> 1.10)
|
6
6
|
kramdown (~> 2.3)
|
7
7
|
listen (~> 3.7)
|
@@ -12,16 +12,17 @@ GEM
|
|
12
12
|
specs:
|
13
13
|
ast (2.4.2)
|
14
14
|
diff-lcs (1.5.0)
|
15
|
+
docile (1.4.0)
|
15
16
|
ffi (1.15.5)
|
16
17
|
git (1.10.2)
|
17
18
|
rchardet (~> 1.8)
|
18
|
-
kramdown (2.3.
|
19
|
+
kramdown (2.3.2)
|
19
20
|
rexml
|
20
21
|
listen (3.7.1)
|
21
22
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
22
23
|
rb-inotify (~> 0.9, >= 0.9.10)
|
23
24
|
parallel (1.21.0)
|
24
|
-
parser (3.1.
|
25
|
+
parser (3.1.1.0)
|
25
26
|
ast (~> 2.4.1)
|
26
27
|
rainbow (3.1.1)
|
27
28
|
rake (13.0.6)
|
@@ -29,7 +30,7 @@ GEM
|
|
29
30
|
rb-inotify (0.10.1)
|
30
31
|
ffi (~> 1.0)
|
31
32
|
rchardet (1.8.0)
|
32
|
-
regexp_parser (2.2.
|
33
|
+
regexp_parser (2.2.1)
|
33
34
|
rexml (3.2.5)
|
34
35
|
rspec (3.11.0)
|
35
36
|
rspec-core (~> 3.11.0)
|
@@ -44,26 +45,32 @@ GEM
|
|
44
45
|
diff-lcs (>= 1.2.0, < 2.0)
|
45
46
|
rspec-support (~> 3.11.0)
|
46
47
|
rspec-support (3.11.0)
|
47
|
-
rubocop (1.
|
48
|
+
rubocop (1.26.0)
|
48
49
|
parallel (~> 1.10)
|
49
50
|
parser (>= 3.1.0.0)
|
50
51
|
rainbow (>= 2.2.2, < 4.0)
|
51
52
|
regexp_parser (>= 1.8, < 3.0)
|
52
53
|
rexml
|
53
|
-
rubocop-ast (>= 1.
|
54
|
+
rubocop-ast (>= 1.16.0, < 2.0)
|
54
55
|
ruby-progressbar (~> 1.7)
|
55
56
|
unicode-display_width (>= 1.4.0, < 3.0)
|
56
|
-
rubocop-ast (1.
|
57
|
-
parser (>= 3.
|
57
|
+
rubocop-ast (1.16.0)
|
58
|
+
parser (>= 3.1.1.0)
|
58
59
|
rubocop-rake (0.6.0)
|
59
60
|
rubocop (~> 1.0)
|
60
|
-
rubocop-rspec (2.
|
61
|
+
rubocop-rspec (2.9.0)
|
61
62
|
rubocop (~> 1.19)
|
62
63
|
ruby-progressbar (1.11.0)
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
64
|
+
simplecov (0.21.2)
|
65
|
+
docile (~> 1.1)
|
66
|
+
simplecov-html (~> 0.11)
|
67
|
+
simplecov_json_formatter (~> 0.1)
|
68
|
+
simplecov-html (0.12.3)
|
69
|
+
simplecov_json_formatter (0.1.4)
|
70
|
+
sorbet (0.5.9775)
|
71
|
+
sorbet-static (= 0.5.9775)
|
72
|
+
sorbet-runtime (0.5.9775)
|
73
|
+
sorbet-static (0.5.9775-universal-darwin-21)
|
67
74
|
unicode-display_width (2.1.0)
|
68
75
|
|
69
76
|
PLATFORMS
|
@@ -76,6 +83,7 @@ DEPENDENCIES
|
|
76
83
|
rubocop (~> 1.0)
|
77
84
|
rubocop-rake (~> 0.6)
|
78
85
|
rubocop-rspec (~> 2.8)
|
86
|
+
simplecov (~> 0.21)
|
79
87
|
sorbet (~> 0.5)
|
80
88
|
|
81
89
|
BUNDLED WITH
|
data/Rakefile
CHANGED
@@ -10,4 +10,15 @@ task :sorbet do
|
|
10
10
|
sh('bundle exec srb tc')
|
11
11
|
end
|
12
12
|
|
13
|
-
|
13
|
+
cops = %w[
|
14
|
+
Layout/TrailingWhitespace
|
15
|
+
Layout/SpaceInsideBlockBraces
|
16
|
+
Style/StringLiterals
|
17
|
+
]
|
18
|
+
|
19
|
+
desc "Apply #{cops.join(', ')}"
|
20
|
+
task :lint_with_autocorrect do
|
21
|
+
sh("bundle exec rubocop -a --only #{cops.join(',')}")
|
22
|
+
end
|
23
|
+
|
24
|
+
task default: %i[lint_with_autocorrect sorbet spec]
|
data/bin/bhook
CHANGED
@@ -5,18 +5,23 @@ require 'bundler/setup'
|
|
5
5
|
require 'bhook'
|
6
6
|
|
7
7
|
puts "Bhook version #{Bhook::VERSION}"
|
8
|
-
|
8
|
+
parser = Bhook::ArgsParser.new(ARGV)
|
9
|
+
args = parser.parse
|
9
10
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
exit unless args
|
12
|
+
|
13
|
+
if args.help
|
14
|
+
puts parser.help_text
|
15
|
+
exit
|
14
16
|
end
|
15
17
|
|
16
18
|
if args.generate_theme
|
19
|
+
Bhook::L.level = Logger::DEBUG
|
17
20
|
Bhook::ThemeGenerator.new(args.generate_theme).generate!
|
18
21
|
exit
|
19
|
-
end
|
22
|
+
end
|
23
|
+
|
24
|
+
Bhook::L.level = args.verbose ? Logger::DEBUG : Logger::INFO
|
20
25
|
|
21
26
|
workspace = Bhook::Workspace.new(args.source, args.output, args.theme)
|
22
27
|
|
data/lib/bhook/args_parser.rb
CHANGED
@@ -1,95 +1,100 @@
|
|
1
|
-
# typed:
|
1
|
+
# typed: true
|
2
2
|
# frozen_string_literal: true
|
3
3
|
|
4
4
|
module Bhook
|
5
5
|
class ArgsParser
|
6
6
|
extend T::Sig
|
7
|
-
|
8
|
-
Options = Struct.new(:source, :output, :watch, :verbose, :theme, :generate_theme, :benchmark)
|
9
|
-
|
7
|
+
|
8
|
+
Options = Struct.new(:source, :output, :watch, :verbose, :theme, :generate_theme, :benchmark, :help)
|
9
|
+
|
10
10
|
def initialize(argv)
|
11
|
-
@args = Options.new(nil, nil, false, false, Bhook::THEME_DIR_PATH, nil, false)
|
11
|
+
@args = Options.new(nil, nil, false, false, Bhook::THEME_DIR_PATH, nil, false, false)
|
12
12
|
@argv = argv.clone
|
13
13
|
@opt_parser = build_opt_parser
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
def parse
|
17
17
|
begin
|
18
18
|
@opt_parser.parse(@argv)
|
19
|
+
if generate_theme_missing? && help_missing?
|
20
|
+
if source_or_output_paths_missing?
|
21
|
+
raise OptionParser::MissingArgument.new('See --help.')
|
22
|
+
end
|
23
|
+
end
|
19
24
|
rescue OptionParser::ParseError => e
|
20
|
-
puts
|
21
|
-
|
22
|
-
puts
|
23
|
-
puts @opt_parser
|
24
|
-
exit
|
25
|
-
end
|
26
|
-
|
27
|
-
if source_or_output_paths_missing? && generate_theme_missing?
|
28
|
-
puts @opt_parser
|
29
|
-
exit
|
25
|
+
puts "\nError! #{e.message}\n"
|
26
|
+
return nil
|
30
27
|
end
|
28
|
+
|
31
29
|
@args
|
32
30
|
end
|
33
|
-
|
31
|
+
|
32
|
+
def help_text
|
33
|
+
@opt_parser.to_s
|
34
|
+
end
|
35
|
+
|
34
36
|
private
|
35
|
-
|
37
|
+
|
38
|
+
def help_missing?
|
39
|
+
!@args.help
|
40
|
+
end
|
41
|
+
|
36
42
|
def source_or_output_paths_missing?
|
37
43
|
!@args.source || !@args.output
|
38
44
|
end
|
39
|
-
|
45
|
+
|
40
46
|
def generate_theme_missing?
|
41
47
|
!@args.generate_theme
|
42
48
|
end
|
43
|
-
|
44
|
-
def build_opt_parser
|
49
|
+
|
50
|
+
def build_opt_parser
|
45
51
|
OptionParser.new do |opts|
|
46
|
-
opts.banner =
|
52
|
+
opts.banner = 'Usage: bhook --source /source/path --output /output/path'
|
47
53
|
|
48
|
-
opts.on(
|
49
|
-
String,
|
54
|
+
opts.on('-sSOURCE', '--source=SOURCE',
|
55
|
+
String, 'Path to version controlled directory containing source md files') do |source_path|
|
50
56
|
@args.source = source_path
|
51
57
|
end
|
52
58
|
|
53
|
-
opts.on(
|
54
|
-
String,
|
59
|
+
opts.on('-oOUTPUT', '--output=OUTPUT',
|
60
|
+
String, 'Path to directory where output files are to be generated') do |out_path|
|
55
61
|
@args.output = out_path
|
56
62
|
end
|
57
63
|
|
58
|
-
opts.on(
|
59
|
-
FalseClass,
|
60
|
-
|
64
|
+
opts.on('-w', '--watch',
|
65
|
+
FalseClass,
|
66
|
+
'Continuously watch the source directory for changes and generate output') do
|
61
67
|
@args.watch = true
|
62
68
|
end
|
63
69
|
|
64
|
-
opts.on(
|
65
|
-
FalseClass,
|
66
|
-
|
70
|
+
opts.on('-v', '--verbose',
|
71
|
+
FalseClass,
|
72
|
+
'Print detailed information about files as they are processed') do
|
67
73
|
@args.verbose = true
|
68
74
|
end
|
69
75
|
|
70
|
-
opts.on(
|
71
|
-
String,
|
72
|
-
|
76
|
+
opts.on('-tPATH', '--theme=PATH',
|
77
|
+
String,
|
78
|
+
'Path to directory containing theme files to use when generating html') do |path|
|
73
79
|
@args.theme = path
|
74
80
|
end
|
75
81
|
|
76
|
-
opts.on(
|
77
|
-
String,
|
78
|
-
|
82
|
+
opts.on('--generate-theme=PATH',
|
83
|
+
String,
|
84
|
+
'Generate a baseline theme that you can then modify to your needs') do |path|
|
79
85
|
@args.generate_theme = path
|
80
86
|
end
|
81
87
|
|
82
|
-
opts.on(
|
88
|
+
opts.on('--benchmark',
|
83
89
|
FalseClass,
|
84
|
-
|
90
|
+
'Run a performance benchmark for the specified source') do
|
85
91
|
@args.benchmark = true
|
86
92
|
end
|
87
93
|
|
88
|
-
opts.on(
|
89
|
-
|
90
|
-
exit
|
94
|
+
opts.on('-h', '--help', FalseClass, 'Prints this help') do |help|
|
95
|
+
@args.help = true
|
91
96
|
end
|
92
|
-
end
|
97
|
+
end
|
93
98
|
end
|
94
99
|
end
|
95
100
|
end
|
data/lib/bhook/config.rb
CHANGED
@@ -6,24 +6,24 @@ module Bhook
|
|
6
6
|
extend T::Sig
|
7
7
|
BHOOK_CONFIG_FILE = T.let('.bhook', String)
|
8
8
|
WEBSITE_KEY = T.let('website', String)
|
9
|
-
|
10
|
-
sig { params(root_dir_path: Pathname).void }
|
11
|
-
def initialize(root_dir_path)
|
9
|
+
|
10
|
+
sig { params(root_dir_path: Pathname, additional_options: T::Hash[String, String]).void }
|
11
|
+
def initialize(root_dir_path, additional_options = {})
|
12
12
|
config_file_path = root_dir_path.join(BHOOK_CONFIG_FILE)
|
13
13
|
config = if File.exist?(config_file_path)
|
14
|
-
YAML.load(File.read(config_file_path))
|
14
|
+
YAML.load(File.read(config_file_path))
|
15
15
|
else
|
16
|
-
{}
|
16
|
+
{}.merge(additional_options)
|
17
17
|
end
|
18
18
|
@root_dir_path = root_dir_path
|
19
19
|
@website_url = T.let(config[WEBSITE_KEY], T.nilable(String))
|
20
20
|
end
|
21
|
-
|
21
|
+
|
22
22
|
sig { params(src_file_path: Pathname, src_file_sha: T.nilable(String)).returns(T.nilable(String)) }
|
23
23
|
def website_url_for(src_file_path, src_file_sha)
|
24
24
|
if @website_url && src_file_sha
|
25
25
|
relative_file_path = src_file_path.relative_path_from(@root_dir_path)
|
26
|
-
|
26
|
+
File.join(@website_url, src_file_sha, relative_file_path)
|
27
27
|
end
|
28
28
|
end
|
29
29
|
end
|
data/lib/bhook/directory.rb
CHANGED
@@ -4,16 +4,16 @@
|
|
4
4
|
module Bhook
|
5
5
|
class Directory
|
6
6
|
extend T::Sig
|
7
|
-
|
7
|
+
|
8
8
|
GIT_DIR = '.git'
|
9
9
|
MD_EXT = '.md'
|
10
|
-
|
10
|
+
|
11
11
|
sig { params(src_path: Pathname, out_path: Pathname).returns(Bhook::Directory) }
|
12
12
|
def self.new_root_directory(src_path, out_path)
|
13
13
|
self.new(src_path, out_path, Git.open(src_path), Bhook::Config.new(src_path))
|
14
14
|
end
|
15
|
-
|
16
|
-
|
15
|
+
|
16
|
+
|
17
17
|
sig { params(src_path: Pathname, out_path: Pathname, git: Git::Base, config: Bhook::Config).void }
|
18
18
|
def initialize(src_path, out_path, git, config)
|
19
19
|
@src_path = src_path
|
@@ -30,13 +30,13 @@ module Bhook
|
|
30
30
|
FileUtils.mkdir_p(@out_path)
|
31
31
|
L.debug("mkdir: #{@out_path}")
|
32
32
|
@sub_dirs.each { |dir| dir.write!(theme) }
|
33
|
-
@md_files.map do |file|
|
33
|
+
@md_files.map do |file|
|
34
34
|
Thread.new { file.write!(theme) }
|
35
35
|
end.each do |thread|
|
36
36
|
thread.join
|
37
37
|
end
|
38
38
|
end
|
39
|
-
|
39
|
+
|
40
40
|
sig { returns(T::Array[MdFile]) }
|
41
41
|
def all_md_files
|
42
42
|
@md_files + @sub_dirs.map(&:all_md_files).flatten
|
@@ -46,14 +46,14 @@ module Bhook
|
|
46
46
|
def to_s
|
47
47
|
@src_path.to_s
|
48
48
|
end
|
49
|
-
|
49
|
+
|
50
50
|
private
|
51
51
|
|
52
52
|
sig { void }
|
53
53
|
def build_next_level_nodes
|
54
54
|
children = @src_path.children
|
55
55
|
children.delete(@src_path.join(GIT_DIR))
|
56
|
-
|
56
|
+
|
57
57
|
file_threads = []
|
58
58
|
children.each do |child_path|
|
59
59
|
if child_path.directory?
|
data/lib/bhook/logger.rb
CHANGED
@@ -1,8 +1,9 @@
|
|
1
|
-
# typed:
|
1
|
+
# typed: true
|
2
2
|
# frozen_string_literal: true
|
3
3
|
|
4
4
|
module Bhook
|
5
|
-
|
5
|
+
LOG_FORMATTER = proc { |severity, datetime, progname, msg|
|
6
6
|
"#{Thread.current.object_id} #{msg}\n"
|
7
|
-
}
|
7
|
+
}
|
8
|
+
L = Logger.new(STDOUT, formatter: LOG_FORMATTER)
|
8
9
|
end
|
data/lib/bhook/md_file.rb
CHANGED
@@ -4,13 +4,19 @@
|
|
4
4
|
module Bhook
|
5
5
|
class MdFile
|
6
6
|
extend T::Sig
|
7
|
-
|
7
|
+
|
8
8
|
PAGE_TEMPLATE = T.let(File.read(Bhook::PAGE_TEMPLATE_PATH), String)
|
9
9
|
AFTER_H1_TEMPLATE = T.let(File.read(Bhook::AFTER_H1_TEMPLATE_PATH), String)
|
10
|
-
|
10
|
+
|
11
11
|
sig { returns(Pathname) }
|
12
|
-
attr_reader :src_file_path
|
13
|
-
|
12
|
+
attr_reader :src_file_path, :out_file_path
|
13
|
+
|
14
|
+
sig { returns(T.nilable(String)) }
|
15
|
+
attr_reader :src_file_date, :src_file_sha, :src_file_url
|
16
|
+
|
17
|
+
sig { returns(String) }
|
18
|
+
attr_reader :md
|
19
|
+
|
14
20
|
sig { params(src_file_path: Pathname, out_path: Pathname, git: Git::Base, config: Bhook::Config).void }
|
15
21
|
def initialize(src_file_path, out_path, git, config)
|
16
22
|
L.debug "Reading: #{src_file_path}"
|
@@ -19,31 +25,34 @@ module Bhook
|
|
19
25
|
@out_path = out_path
|
20
26
|
@git = git
|
21
27
|
@config = config
|
22
|
-
|
23
|
-
|
24
|
-
@
|
28
|
+
|
29
|
+
file_date, file_sha = load_git_file_metadata
|
30
|
+
@src_file_date = T.let(file_date, T.nilable(String))
|
31
|
+
@src_file_sha = T.let(file_sha, T.nilable(String))
|
32
|
+
@out_file_path = T.let(@out_path.join(out_file_name), Pathname)
|
33
|
+
@src_file_url = T.let(file_url, T.nilable(String))
|
25
34
|
end
|
26
35
|
|
27
36
|
sig { params(theme: Bhook::Theme).void }
|
28
37
|
def write!(theme)
|
29
|
-
out_file_name = @src_file_path.basename.sub(/\.md$/, '.html')
|
30
|
-
out_file_path = @out_path.join(out_file_name)
|
31
|
-
file_url = @config.website_url_for(@src_file_path, @src_file_sha)
|
32
|
-
|
33
38
|
L.debug "Processing: #{@src_file_sha || 'unversioned'} #{@src_file_path}"
|
34
|
-
rendered_page = theme.render_page(@md, @src_file_sha, @src_file_date,
|
39
|
+
rendered_page = theme.render_page(@md, @src_file_sha, @src_file_date, @src_file_url)
|
35
40
|
|
36
41
|
L.debug "Writing: #{@src_file_sha} #{out_file_path}"
|
37
|
-
File.write(out_file_path, rendered_page)
|
42
|
+
File.write(@out_file_path, rendered_page)
|
38
43
|
end
|
39
44
|
|
40
|
-
sig { returns(String) }
|
41
|
-
def to_s
|
42
|
-
@src_file_path.to_s
|
43
|
-
end
|
44
|
-
|
45
45
|
private
|
46
|
-
|
46
|
+
sig { returns(Pathname) }
|
47
|
+
def out_file_name
|
48
|
+
@src_file_path.basename.sub(/\.md$/, '.html')
|
49
|
+
end
|
50
|
+
|
51
|
+
sig { returns(T.nilable(String)) }
|
52
|
+
def file_url
|
53
|
+
@config.website_url_for(@src_file_path, @src_file_sha)
|
54
|
+
end
|
55
|
+
|
47
56
|
sig { returns(T::Array[String]) }
|
48
57
|
def load_git_file_metadata
|
49
58
|
@git.lib.send(:command, 'log',
|
@@ -5,17 +5,19 @@ module Bhook
|
|
5
5
|
class ThemeGenerator
|
6
6
|
extend T::Sig
|
7
7
|
|
8
|
-
sig {params(output_path: String).void}
|
8
|
+
sig { params(output_path: String).void }
|
9
9
|
def initialize(output_path)
|
10
10
|
@output_path = T.let(File.join(output_path, 'theme'), String)
|
11
11
|
@template_files = T.let([Bhook::PAGE_TEMPLATE_PATH,
|
12
12
|
Bhook::AFTER_H1_TEMPLATE_PATH], T::Array[String])
|
13
13
|
end
|
14
14
|
|
15
|
-
sig {void}
|
15
|
+
sig { void }
|
16
16
|
def generate!
|
17
|
-
FileUtils.mkdir_p(@output_path
|
18
|
-
|
17
|
+
FileUtils.mkdir_p(@output_path)
|
18
|
+
L.debug("mkdir: #{@output_path}")
|
19
|
+
FileUtils.cp(@template_files, @output_path)
|
20
|
+
L.debug("cp: #{@template_files.join(' ')} #{@output_path}")
|
19
21
|
end
|
20
22
|
end
|
21
23
|
end
|
data/lib/bhook/version.rb
CHANGED
data/lib/bhook/workspace.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
module Bhook
|
5
5
|
class Workspace
|
6
6
|
extend T::Sig
|
7
|
-
|
7
|
+
|
8
8
|
sig { params(src_path: String, out_path: String, theme_path: String).void }
|
9
9
|
def initialize(src_path, out_path, theme_path)
|
10
10
|
@src_path = T.let(Pathname.new(src_path).expand_path, Pathname)
|
@@ -13,9 +13,9 @@ module Bhook
|
|
13
13
|
end
|
14
14
|
|
15
15
|
sig { void }
|
16
|
-
def process!
|
16
|
+
def process!
|
17
17
|
root_dir.write!(@theme)
|
18
|
-
L.info
|
18
|
+
L.info 'Done!'
|
19
19
|
end
|
20
20
|
|
21
21
|
sig { void }
|
@@ -24,7 +24,7 @@ module Bhook
|
|
24
24
|
|
25
25
|
L.info "Watching: #{@src_path} for changes..."
|
26
26
|
listener = Listen.to(@src_path.to_s, File.join(@src_path.to_s, '.git')) do |_modified, _added, _removed|
|
27
|
-
L.info
|
27
|
+
L.info 'Detected changes...'
|
28
28
|
process!
|
29
29
|
end
|
30
30
|
listener.start
|
@@ -35,8 +35,8 @@ module Bhook
|
|
35
35
|
def all_md_files
|
36
36
|
root_dir.all_md_files
|
37
37
|
end
|
38
|
-
|
39
|
-
private
|
38
|
+
|
39
|
+
private
|
40
40
|
sig { returns(Bhook::Directory) }
|
41
41
|
def root_dir
|
42
42
|
Directory.new_root_directory(@src_path, @out_path)
|
data/sorbet/rbi/gems/bhook.rbi
CHANGED
@@ -0,0 +1,36 @@
|
|
1
|
+
# This file is autogenerated. Do not edit it by hand. Regenerate it with:
|
2
|
+
# srb rbi gems
|
3
|
+
|
4
|
+
# typed: strict
|
5
|
+
#
|
6
|
+
# If you would like to make changes to this file, great! Please create the gem's shim here:
|
7
|
+
#
|
8
|
+
# https://github.com/sorbet/sorbet-typed/new/master?filename=lib/docile/all/docile.rbi
|
9
|
+
#
|
10
|
+
# docile-1.4.0
|
11
|
+
|
12
|
+
module Docile
|
13
|
+
def dsl_eval(dsl, *args, &block); end
|
14
|
+
def dsl_eval_immutable(dsl, *args, &block); end
|
15
|
+
def dsl_eval_with_block_return(dsl, *args, &block); end
|
16
|
+
def self.dsl_eval(dsl, *args, &block); end
|
17
|
+
def self.dsl_eval_immutable(dsl, *args, &block); end
|
18
|
+
def self.dsl_eval_with_block_return(dsl, *args, &block); end
|
19
|
+
extend Docile::Execution
|
20
|
+
end
|
21
|
+
module Docile::Execution
|
22
|
+
def exec_in_proxy_context(dsl, proxy_type, *args, &block); end
|
23
|
+
def self.exec_in_proxy_context(dsl, proxy_type, *args, &block); end
|
24
|
+
end
|
25
|
+
class Docile::FallbackContextProxy
|
26
|
+
def initialize(receiver, fallback); end
|
27
|
+
def instance_variables; end
|
28
|
+
def method_missing(method, *args, &block); end
|
29
|
+
end
|
30
|
+
class Docile::ChainingFallbackContextProxy < Docile::FallbackContextProxy
|
31
|
+
def method_missing(method, *args, &block); end
|
32
|
+
end
|
33
|
+
module Docile::BacktraceFilter
|
34
|
+
def backtrace; end
|
35
|
+
def backtrace_locations; end
|
36
|
+
end
|
data/sorbet/rbi/gems/parser.rbi
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
#
|
8
8
|
# https://github.com/sorbet/sorbet-typed/new/master?filename=lib/regexp_parser/all/regexp_parser.rbi
|
9
9
|
#
|
10
|
-
# regexp_parser-2.2.
|
10
|
+
# regexp_parser-2.2.1
|
11
11
|
|
12
12
|
class Regexp
|
13
13
|
end
|
@@ -123,6 +123,7 @@ class Regexp::Scanner
|
|
123
123
|
def literal=(arg0); end
|
124
124
|
def scan(input_object, options: nil, &block); end
|
125
125
|
def self.long_prop_map; end
|
126
|
+
def self.parse_prop_map(name); end
|
126
127
|
def self.scan(input_object, options: nil, &block); end
|
127
128
|
def self.short_prop_map; end
|
128
129
|
def set_depth; end
|