j1-template 2022.0.15 → 2022.0.16

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: 9f685ac32a6f950d0d099e62f5f861f01d1d1cf713ee523c1c16cb0a1e674086
4
- data.tar.gz: ab688c3240978c67613afefee7cd54801a6cff7e67257bcf5efdecd3efccbc72
3
+ metadata.gz: 6747e12e42b4cbc106beb6bbef14dbc74b7e43c050d88371bcbd814d62bf76e0
4
+ data.tar.gz: e4d94adc0891fc86bc5f53f702534aeb74caeca9ebf1f51d101271317b244278
5
5
  SHA512:
6
- metadata.gz: 04bbcb189149f9e78e68ef89004f74a43d69c34dd704e5ee1bd1fa492990c3b88512237adc162820fe428a389168be4dc47ce56195e71c31d7203782ed758fc0
7
- data.tar.gz: 59b433b0ef503ba80329e59285de58a52a13b8e4f80872cd1ba3f771adb9a594265cefbc00bf442c1104c7ca4e91d6648dac3e17ac9a2f59c5c798b6e652e528
6
+ metadata.gz: 2743934801254b32fcba41d44183c5f94580f5bcf5460cc816277359fdf81127c1b47e95600b2856e8152e9db0e3c862e9d0cecffa2a7db06b9350467a0db8cc
7
+ data.tar.gz: 752db1543f50ca13e4b1ce9477796b588bf1bb8447ba0e8fb47f0bf1ffba1daa4f39b40536ababd655d7cc4cf529fd615ebbb89931614bcabc4913c03d74fd2c
data/exe/j1 CHANGED
@@ -11,17 +11,37 @@ Mercenary.program(:j1) do |p|
11
11
  p.description 'J1 Template is a gem-based Template made for Jekyll'
12
12
  p.syntax 'j1 <subcommand> [options]'
13
13
 
14
- p.command(:generate) do |c|
15
- c.description 'Generates a starter site scaffold in PATH'
16
- c.syntax 'generate PATH'
17
- c.option 'force', '--force', ' Force a site to be created even the PATH already exists'
18
- c.option 'skip-bundle', '--skip-bundle', ' Skip bundle install'
19
- c.option 'skip-patches', '--skip-patches', ' Skip install any PATCHES buildin with J1'
20
- c.option 'system', '--system', ' Run "bundle install" for the Ruby SYSTEM gem folder'
21
- c.action do |args, options|
22
- J1::Commands::Generate.process(args, options)
14
+ # available options for all subcommands
15
+ #
16
+ # p.option 'force', '--force'
17
+ # p.option 'skip-bundle', '--skip-bundle'
18
+ # p.option 'skip-patches', '--skip-patches'
19
+ # p.option 'system', '--system'
20
+
21
+ # J1::External.require_if_present(J1::External.blessed_gems) do |g, ver_constraint|
22
+ # cmd = g.split("-").last
23
+ # p.command(cmd.to_sym) do |c|
24
+ # c.syntax cmd
25
+ # c.action do
26
+ # J1.logger.abort_with "You must install the '#{g}' gem" \
27
+ # " version #{ver_constraint} to use the 'jekyll #{cmd}' command."
28
+ # end
29
+ # end
30
+ # end
31
+
32
+ J1::Command.subclasses.each { |c| c.init_with_program(p) }
33
+
34
+ p.action do |args, _|
35
+ if args.empty?
36
+ J1.logger.error "A subcommand is required."
37
+ puts p
38
+ abort
39
+ else
40
+ subcommand = args.first
41
+ unless p.has_command? subcommand
42
+ J1.logger.abort_with "fatal: 'j1 #{args.first}' failed." \
43
+ " No subcommand '#{args.first}' available."
44
+ end
23
45
  end
24
46
  end
25
-
26
- p.default_command(:generate)
27
47
  end
@@ -1,36 +1,33 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'erb'
2
- require 'rbconfig'
3
- require 'fileutils'
4
4
 
5
5
  module J1
6
6
  module Commands
7
7
  class Generate < Command
8
8
  class << self
9
9
 
10
- # def init_with_program(prog)
11
- # prog.command(:generate) do |c|
12
- # c.description 'Generates a starter site scaffold in PATH'
13
- # c.syntax 'generate PATH'
14
- # c.option 'force', '--force', 'Force a site to be created even the PATH already exists'
15
- # c.option 'skip-bundle', '--skip-bundle', 'Skip bundle install'
16
- # c.option 'skip-patches', '--skip-patches', 'Skip install any PATCHES buildin with J1'
17
- # c.option 'system', '--system', 'Run "bundle install" for the Ruby SYSTEM gem folder'
18
- # c.action do |args, options|
19
- # J1::Commands::Generate.process(args, options)
20
- # end
21
- # end
22
- # end
23
-
24
- def is_windows?
25
- RbConfig::CONFIG["host_os"] =~ %r!mswin|mingw|cygwin!i
10
+ def init_with_program(prog)
11
+ prog.command(:generate) do |c|
12
+ c.description 'Generates a J1 project scaffold in PATH'
13
+ c.syntax 'generate PATH'
14
+ c.option 'force', '--force', 'Force a site to be created even the PATH already exists'
15
+ c.option 'skip-bundle', '--skip-bundle', 'Skip bundle install'
16
+ c.option 'skip-patches', '--skip-patches', 'Skip install any PATCHES build-in with J1'
17
+ c.option 'system', '--system', 'Run "bundle install" for the Ruby SYSTEM gem folder'
18
+ c.action do |args, options|
19
+ J1::Commands::Generate.process(args, options)
20
+ end
21
+ end
26
22
  end
27
23
 
28
24
  def process(args, options = {})
29
- raise ArgumentError, 'You must specify a path.' if args.empty?
25
+ raise ArgumentError, 'GENERATE: You must specify a path.' if args.empty?
26
+
30
27
  new_blog_path = File.expand_path(args.join(' '), Dir.pwd)
31
28
  FileUtils.mkdir_p new_blog_path
32
29
  if preserve_source_location?(new_blog_path, options)
33
- J1.logger.abort_with 'Conflict:', "#{new_blog_path} exists and is not empty."
30
+ J1.logger.abort_with 'GENERATE: Conflict:', "#{new_blog_path} exists and is not empty."
34
31
  end
35
32
 
36
33
  if options['blank']
@@ -61,6 +58,10 @@ module J1
61
58
 
62
59
  private
63
60
 
61
+ def is_windows?
62
+ RbConfig::CONFIG["host_os"] =~ %r!mswin|mingw|cygwin!i
63
+ end
64
+
64
65
  def create_site(new_blog_path)
65
66
  create_sample_files new_blog_path
66
67
 
@@ -92,33 +93,33 @@ module J1
92
93
  def after_install(path, options = {})
93
94
  unless options['skip-bundle']
94
95
  bundle_install(path, options)
95
- unless options['skip-patches']
96
- patch_install(options)
96
+ if options['skip-patches']
97
+ J1.logger.info "GENERATE: Install build-in patches skipped ..."
97
98
  else
98
- J1.logger.info "Install build-in patches skipped ..."
99
+ patch_install(options)
99
100
  end
100
101
  end
101
- unless options['force']
102
- J1.logger.info "Generated Jekyll site installed in folder #{path}"
102
+ if options['force']
103
+ J1.logger.info "GENERATE: Generated Jekyll site force installed in folder #{path}"
103
104
  else
104
- J1.logger.info "Generated Jekyll site force installed in folder #{path}"
105
+ J1.logger.info "GENERATE: Generated Jekyll site installed in folder #{path}"
105
106
  end
106
- J1.logger.info 'Installation (bundle) of RubyGems skipped' if options['skip-bundle']
107
+ J1.logger.info 'GENERATE: Installation (bundle) of RubyGems skipped' if options['skip-bundle']
107
108
  end
108
109
 
109
110
  def bundle_install(path, options)
110
111
  J1::External.require_with_graceful_fail 'bundler'
111
- J1.logger.info "Running bundle install in #{path} ..."
112
+ J1.logger.info "GENERATE: Running bundle install in #{path} ..."
112
113
  Dir.chdir(path) do
113
114
  if options['system']
114
- J1.logger.info "Install bundle in Ruby gem SYSTEM folder ..."
115
+ J1.logger.info "GENERATE: Install bundle in Ruby gem SYSTEM folder ..."
115
116
  else
116
- J1.logger.info "Install bundle in USER gem folder ~/.gem ..."
117
+ J1.logger.info "GENERATE: Install bundle in USER gem folder ~/.gem ..."
117
118
  process, output = J1::Utils::Exec.run('bundle', 'config', 'set', '--local', 'path', '~/.gem')
118
119
  end
119
120
  process, output = J1::Utils::Exec.run('bundle', 'install')
120
121
  output.to_s.each_line do |line|
121
- J1.logger.info('Bundler:', line.strip) unless line.to_s.empty?
122
+ J1.logger.info('BUNDLE:', line.strip) unless line.to_s.empty?
122
123
  end
123
124
  raise SystemExit unless process.success?
124
125
  end
@@ -142,12 +143,12 @@ module J1
142
143
  system_path = result[1]
143
144
 
144
145
  if options['system']
145
- J1.logger.info "Install patches in SYSTEM folder ..."
146
- J1.logger.info "Install patches on path #{system_path} ..."
146
+ J1.logger.info "GENERATE: Install patches in SYSTEM folder ..."
147
+ J1.logger.info "GENERATE: Install patches on path #{system_path} ..."
147
148
  dest = system_path + '/gems/' + patch_gem_eventmachine + '/lib'
148
149
  else
149
- J1.logger.info "Install patches in USER gem folder ~/.gem ..."
150
- J1.logger.info "Install patches on path #{user_path} ..."
150
+ J1.logger.info "GENERATE: Install patches in USER gem folder ~/.gem ..."
151
+ J1.logger.info "GENERATE: Install patches on path #{user_path} ..."
151
152
  dest = user_path + '/gems/' + patch_gem_eventmachine + '/lib'
152
153
  end
153
154
  src = patch_eventmachine_source_path
@@ -163,7 +164,7 @@ module J1
163
164
  if Dir.exist?(dest)
164
165
  FileUtils.cp(src, dest)
165
166
  else
166
- J1.logger.info "Skipped install patches for execjs-2.7.0 ..."
167
+ J1.logger.info "GENERATE: Skipped install patches for execjs-2.7.0 ..."
167
168
  end
168
169
  end
169
170
 
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module J1
4
+ module Commands
5
+ class Help < Command
6
+ class << self
7
+
8
+ def init_with_program(prog)
9
+ prog.command(:help) do |c|
10
+ c.syntax "help [subcommand]"
11
+ c.description "Show the help message, optionally for a given subcommand"
12
+
13
+ c.action do |args, _|
14
+ cmd = (args.first || "").to_sym
15
+ if args.empty?
16
+ J1.logger.info prog.to_s
17
+ elsif prog.has_command? cmd
18
+ J1.logger.info prog.commands[cmd].to_s
19
+ else
20
+ invalid_command(prog, cmd)
21
+ abort
22
+ end
23
+ end
24
+ end
25
+ end
26
+
27
+ def invalid_command(prog, cmd)
28
+ J1.logger.error "Error:",
29
+ "Hmm... we don't know what the '#{cmd}' command is."
30
+ J1.logger.info "Valid commands:", prog.commands.keys.join(", ")
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+
3
+ module J1
4
+ module Commands
5
+ class Patch < Command
6
+ #noinspection MissingYardParamTag
7
+ class << self
8
+
9
+ def init_with_program(prog)
10
+ prog.command(:patch) do |c|
11
+ c.description 'Install patches available for J1 projects'
12
+ c.syntax 'patch'
13
+ c.option 'force', '--force', 'Force to install patches even already exists'
14
+ c.option 'system', '--system', 'Install patches on the Ruby SYSTEM gem folder'
15
+ c.action do |args, options|
16
+ J1::Commands::Patch.process(args, options)
17
+ end
18
+ end
19
+ end
20
+
21
+ def process(args, options = {})
22
+ patch_install(options)
23
+ @args = args
24
+ end
25
+
26
+ private
27
+
28
+ def is_windows?
29
+ #noinspection RubyResolve
30
+ RbConfig::CONFIG["host_os"] =~ %r!mswin|mingw|cygwin!i
31
+ end
32
+
33
+ def patch_install(options)
34
+ if is_windows?
35
+ major, minor = RUBY_VERSION.split('.')
36
+ lib_version = major + '.' + minor
37
+ curr_path = File.expand_path(File.dirname(File.dirname(__FILE__)))
38
+ patch_gem_eventmachine = 'eventmachine-1.2.7-x64-mingw32'
39
+ patch_gem_execjs = 'execjs-2.7.0'
40
+ patch_eventmachine_source_path = curr_path + '/patches/rubygems' + '/' + patch_gem_eventmachine + '/lib/' + lib_version
41
+ patch_execjs_source_path = curr_path + '/patches/rubygems' + '/' + patch_gem_execjs + '/lib/execjs/external_runtime.rb'
42
+
43
+ process, output = J1::Utils::Exec.run('gem', 'env', 'gempath')
44
+ raise SystemExit unless process.success?
45
+
46
+ result = output.split(';')
47
+ user_path = result[0]
48
+ system_path = result[1]
49
+
50
+ if options['system']
51
+ J1.logger.info "PATCH: Install patches in SYSTEM folder ..."
52
+ J1.logger.info "PATCH: Install patches on path #{system_path} ..."
53
+ dest = system_path + '/gems/' + patch_gem_eventmachine + '/lib'
54
+ else
55
+ J1.logger.info "PATCH: Install patches in USER gem folder ~/.gem ..."
56
+ J1.logger.info "PATCH: Install patches on path #{user_path} ..."
57
+ dest = user_path + '/gems/' + patch_gem_eventmachine + '/lib'
58
+ end
59
+ src = patch_eventmachine_source_path
60
+ FileUtils.cp_r(src, dest)
61
+
62
+ if lib_version === '2.7'
63
+ if options['system']
64
+ dest = system_path + '/gems/' + patch_gem_execjs + '/lib/execjs'
65
+ else
66
+ dest = user_path + '/gems/' + patch_gem_execjs + '/lib/execjs'
67
+ end
68
+ src = patch_execjs_source_path
69
+ if Dir.exist?(dest)
70
+ FileUtils.cp(src, dest)
71
+ else
72
+ J1.logger.info "PATCH: Skipped install patches for execjs-2.7.0 ..."
73
+ end
74
+ end
75
+
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module J1
4
+ module Commands
5
+ class Reset < Command
6
+ #noinspection MissingYardParamTag
7
+ class << self
8
+
9
+ def init_with_program(prog)
10
+ prog.command(:reset) do |c|
11
+ c.description 'Reset a J1 project to factory state'
12
+ c.syntax 'reset'
13
+ c.action do |args, options|
14
+ J1::Commands::Reset.process(args, options)
15
+ end
16
+ end
17
+ end
18
+
19
+ def process(args, options = {})
20
+ J1.logger.info "RESET: Reset the project to factory state ..."
21
+ J1.logger.info "RESET: Be patient, this will take a while ..."
22
+ process, output = J1::Utils::Exec.run('npm', 'run', 'reset')
23
+ output.to_s.each_line do |line|
24
+ J1.logger.info('RESET:', line.strip) unless line.to_s.empty?
25
+ end
26
+ if process.success?
27
+ J1.logger.info "RESET: The project reset finished successfully."
28
+ else
29
+ raise SystemExit
30
+ end
31
+ end
32
+
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,126 @@
1
+ # frozen_string_literal: true
2
+
3
+ module J1
4
+ module Commands
5
+ class Setup < Command
6
+ #noinspection MissingYardParamTag
7
+ class << self
8
+
9
+ def init_with_program(prog)
10
+ prog.command(:setup) do |c|
11
+ c.description 'Initialize a J1 project for first use'
12
+ c.syntax 'setup'
13
+ c.option 'force', '--force', ' Force to install patches even already exists'
14
+ c.option 'system', '--system', ' Install patches on the Ruby SYSTEM gem folder'
15
+ c.option 'skip-patches', '--skip-patches', 'Skip install any PATCHES build-in with J1'
16
+ c.action do |args, options|
17
+ J1::Commands::Setup.process(args, options)
18
+ end
19
+ end
20
+ end
21
+
22
+ def process(args, options = {})
23
+ @args = args
24
+ path = File.expand_path(Dir.getwd)
25
+ if is_project?
26
+ bundle_install(path, options)
27
+ if options['skip-patches']
28
+ J1.logger.info "SETUP: Install build-in patches skipped ..."
29
+ else
30
+ patch_install(options)
31
+ end
32
+ J1.logger.info "SETUP: Initialize the project ..."
33
+ J1.logger.info "SETUP: Be patient, this will take a while ..."
34
+ process, output = J1::Utils::Exec.run('npm', 'run', 'setup')
35
+ output.to_s.each_line do |line|
36
+ J1.logger.info('SETUP:', line.strip) unless line.to_s.empty?
37
+ end
38
+ if process.success?
39
+ J1.logger.info "SETUP: Initializing the project finished successfully."
40
+ J1.logger.info "SETUP: To open your site, run: j1 site"
41
+ else
42
+ raise SystemExit
43
+ end
44
+ end
45
+ end
46
+
47
+ private
48
+
49
+ def is_project?
50
+ path = File.expand_path(File.dirname(File.dirname(__FILE__)))
51
+ J1.logger.info "Check consistency of the project ..."
52
+ return true
53
+ end
54
+
55
+ def is_windows?
56
+ #noinspection RubyResolve
57
+ RbConfig::CONFIG["host_os"] =~ %r!mswin|mingw|cygwin!i
58
+ end
59
+
60
+ def bundle_install(path, options)
61
+ J1::External.require_with_graceful_fail 'bundler'
62
+ J1.logger.info "Running bundle install in #{path} ..."
63
+ Dir.chdir(path) do
64
+ if options['system']
65
+ J1.logger.info "Install bundle in Ruby gem SYSTEM folder ..."
66
+ else
67
+ J1.logger.info "Install bundle in USER gem folder ~/.gem ..."
68
+ process, output = J1::Utils::Exec.run('bundle', 'config', 'set', '--local', 'path', '~/.gem')
69
+ end
70
+ process, output = J1::Utils::Exec.run('bundle', 'install')
71
+ output.to_s.each_line do |line|
72
+ J1.logger.info('Bundler:', line.strip) unless line.to_s.empty?
73
+ end
74
+ raise SystemExit unless process.success?
75
+ end
76
+ end
77
+
78
+ def patch_install(options)
79
+ if is_windows?
80
+ major, minor = RUBY_VERSION.split('.')
81
+ lib_version = major + '.' + minor
82
+ curr_path = File.expand_path(File.dirname(File.dirname(__FILE__)))
83
+ patch_gem_eventmachine = 'eventmachine-1.2.7-x64-mingw32'
84
+ patch_gem_execjs = 'execjs-2.7.0'
85
+ patch_eventmachine_source_path = curr_path + '/patches/rubygems' + '/' + patch_gem_eventmachine + '/lib/' + lib_version
86
+ patch_execjs_source_path = curr_path + '/patches/rubygems' + '/' + patch_gem_execjs + '/lib/execjs/external_runtime.rb'
87
+
88
+ process, output = J1::Utils::Exec.run('gem', 'env', 'gempath')
89
+ raise SystemExit unless process.success?
90
+
91
+ result = output.split(';')
92
+ user_path = result[0]
93
+ system_path = result[1]
94
+
95
+ if options['system']
96
+ J1.logger.info "Install patches in SYSTEM folder ..."
97
+ J1.logger.info "Install patches on path #{system_path} ..."
98
+ dest = system_path + '/gems/' + patch_gem_eventmachine + '/lib'
99
+ else
100
+ J1.logger.info "Install patches in USER gem folder ~/.gem ..."
101
+ J1.logger.info "Install patches on path #{user_path} ..."
102
+ dest = user_path + '/gems/' + patch_gem_eventmachine + '/lib'
103
+ end
104
+ src = patch_eventmachine_source_path
105
+ FileUtils.cp_r(src, dest)
106
+
107
+ if lib_version === '2.7'
108
+ if options['system']
109
+ dest = system_path + '/gems/' + patch_gem_execjs + '/lib/execjs'
110
+ else
111
+ dest = user_path + '/gems/' + patch_gem_execjs + '/lib/execjs'
112
+ end
113
+ src = patch_execjs_source_path
114
+ if Dir.exist?(dest)
115
+ FileUtils.cp(src, dest)
116
+ else
117
+ J1.logger.info "Skipped install patches for execjs-2.7.0 ..."
118
+ end
119
+ end
120
+
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end
126
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module J1
4
+ module Commands
5
+ class Site < Command
6
+ #noinspection MissingYardParamTag
7
+ class << self
8
+
9
+ def init_with_program(prog)
10
+ prog.command(:site) do |c|
11
+ c.description 'Run the website of a J1 project'
12
+ c.syntax 'site'
13
+ c.action do |args, options|
14
+ J1::Commands::Site.process(args, options)
15
+ end
16
+ end
17
+ end
18
+
19
+ def process(args, options = {})
20
+ J1.logger.info "SITE: Starting up your site ..."
21
+ J1::Utils::ExecUntilTrap.run('SITE','npm', 'run', 'j1-site')
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
data/lib/j1/external.rb CHANGED
@@ -50,7 +50,7 @@ The full error message from Ruby is: '#{e.message}'
50
50
 
51
51
  If you run into trouble, you can find helpful resources at https://jekyllrb.com/help/!
52
52
  MSG
53
- raise Jekyll::Errors::MissingDependencyException, name
53
+ raise J1::Errors::MissingDependencyException, name
54
54
  end
55
55
  end
56
56
  end
@@ -0,0 +1,28 @@
1
+ require "open3"
2
+
3
+ module J1
4
+ module Utils
5
+ module ExecUntilTrap
6
+ extend self
7
+
8
+ # Runs a program in a sub-shell and exits on Ctrl+C.
9
+ #
10
+ # title - Trailing line title for the output on stdout
11
+ # *args - a list of strings containing the program name and (followed by) arguments
12
+ #
13
+ def run(title, *args)
14
+ Open3.popen3(*args) do |stdin, stdout, stderr|
15
+ trap('INT') {
16
+ puts "#{title}: Received Ctrl-C to stop"
17
+ raise SystemExit
18
+ }
19
+ stdout.each_line do |line|
20
+ puts "#{title}: #{line}"
21
+ end
22
+ end
23
+ [stdin, stdout, stderr].each(&:close)
24
+ end
25
+
26
+ end
27
+ end
28
+ end
data/lib/j1/utils.rb CHANGED
@@ -1,11 +1,42 @@
1
+ require "singleton"
2
+
1
3
  module J1
2
4
  module Utils
3
5
  extend self
4
6
  autoload :Ansi, "j1/utils/ansi"
5
7
  autoload :Exec, "j1/utils/exec"
8
+ autoload :ExecUntilTrap, "j1/utils/exec_until_trap"
6
9
  autoload :Platforms, "j1/utils/platforms"
7
10
  autoload :WinTZ, "j1/utils/win_tz"
8
11
 
12
+ class GracefulQuit
13
+ include Singleton
14
+
15
+ attr_accessor :breaker
16
+
17
+ def initialize
18
+ self.breaker = false
19
+ end
20
+
21
+ def self.enable
22
+ trap('INT') {
23
+ yield if block_given?
24
+ self.instance.breaker = true
25
+ }
26
+ end
27
+
28
+ def self.check(message = "Quitting")
29
+ if self.instance.breaker
30
+ yield if block_given?
31
+ puts message
32
+ exit
33
+ end
34
+ end
35
+
36
+ end
37
+
38
+
39
+
9
40
  # Constants for use in #slugify
10
41
  SLUGIFY_MODES = %w(raw default pretty ascii).freeze
11
42
  SLUGIFY_RAW_REGEXP = Regexp.new('\\s+').freeze
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2022.0.15'
2
+ VERSION = '2022.0.16'
3
3
  end
@@ -53,7 +53,7 @@ gem 'jekyll', '~> 4.2'
53
53
 
54
54
  # Theme Rubies, default: J1 Template (NOT used for the development system)
55
55
  #
56
- gem 'j1-template', '~> 2022.0.15'
56
+ gem 'j1-template', '~> 2022.0.16'
57
57
 
58
58
  # ------------------------------------------------------------------------------
59
59
  # PRODUCTION: Gem needed for the Jekyll and J1 prod environment
@@ -53,7 +53,7 @@ environment: development
53
53
  # ------------------------------------------------------------------------------
54
54
  # Sets the build version of J1 Template Gem
55
55
  #
56
- version: 2022.0.15
56
+ version: 2022.0.16
57
57
 
58
58
  # version
59
59
  # ------------------------------------------------------------------------------
@@ -437,7 +437,7 @@ end::tables[]
437
437
  // -----------------------------------------------------------------------------
438
438
  tag::products[]
439
439
  :j1--license: MIT License
440
- :j1--version: 2022.0.15
440
+ :j1--version: 2022.0.16
441
441
  :j1--site-name: Jekyll One
442
442
  end::products[]
443
443
 
@@ -364,6 +364,6 @@ end
364
364
 
365
365
  module Jekyll
366
366
  module J1LunrSearch
367
- VERSION = '2022.0.15'
367
+ VERSION = '2022.0.16'
368
368
  end
369
369
  end
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": true,
3
3
  "name": "j1_starter",
4
- "version": "2022.0.15",
4
+ "version": "2022.0.16",
5
5
  "description": "J1 Template Starter Web",
6
6
  "homepage": "https://your.site",
7
7
  "author": {
@@ -129,6 +129,10 @@
129
129
  "site:jekyll": "echo Startup the site .. && cross-env SINATRA_ACTIVESUPPORT_WARNING=false bundle exec jekyll s --incremental --livereload --livereload-port $npm_package_jekyll_opt_livereload_port --open",
130
130
  "site:utilsrv": "npm --prefix ./utilsrv --silent run utilsrv",
131
131
 
132
+ "j1-site": "run-p -s j1-site:*",
133
+ "j1-site:jekyll": "bundle exec jekyll s --incremental --livereload --open",
134
+ "j1-site:utilsrv": "npm --prefix ./utilsrv --silent run utilsrv",
135
+
132
136
  "bump": "run-s -s ver && run-s -s bump:* && run-s -s ver",
133
137
  "ver": "cross-var cross-env echo \"Project version: $npm_package_version\"",
134
138
  "bump:project": "cross-var cross-env npm version $npm_package_config_bumplevel",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": true,
3
3
  "name": "utls",
4
- "version": "2022.0.15",
4
+ "version": "2022.0.16",
5
5
  "description": "J1 Template Utility Server",
6
6
  "homepage": "https://jekyll.one",
7
7
  "author": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": true,
3
3
  "name": "utls",
4
- "version": "2022.0.15",
4
+ "version": "2022.0.16",
5
5
  "description": "J1 Template Utility Server",
6
6
  "homepage": "https://jekyll.one",
7
7
  "author": {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: j1-template
3
3
  version: !ruby/object:Gem::Version
4
- version: 2022.0.15
4
+ version: 2022.0.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - juergen_jekyll_one
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-01-07 00:00:00.000000000 Z
11
+ date: 2022-01-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -1455,6 +1455,11 @@ files:
1455
1455
  - lib/j1.rb
1456
1456
  - lib/j1/command.rb
1457
1457
  - lib/j1/commands/generate.rb
1458
+ - lib/j1/commands/help.rb
1459
+ - lib/j1/commands/patch.rb
1460
+ - lib/j1/commands/reset.rb
1461
+ - lib/j1/commands/setup.rb
1462
+ - lib/j1/commands/site.rb
1458
1463
  - lib/j1/external.rb
1459
1464
  - lib/j1/log_adapter.rb
1460
1465
  - lib/j1/log_helper.rb
@@ -1466,6 +1471,7 @@ files:
1466
1471
  - lib/j1/utils.rb
1467
1472
  - lib/j1/utils/ansi.rb
1468
1473
  - lib/j1/utils/exec.rb
1474
+ - lib/j1/utils/exec_until_trap.rb
1469
1475
  - lib/j1/utils/platforms.rb
1470
1476
  - lib/j1/utils/win_tz.rb
1471
1477
  - lib/j1/version.rb