k_builder-watch 0.0.8 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cb4057e4e3dafa4e89093235bee27a123304cb94798a809dd164e4b59026671a
4
- data.tar.gz: 40214b13ccb9b134e51ba657ea5b8c3408c6a97174bf9612e7d46855af5f45f3
3
+ metadata.gz: 7e76a86d8343b281e5666d924e104ee5a0bf4e15014fb75aad48d84a9e355ef9
4
+ data.tar.gz: b0b4b03e513eea00ef9c7754f3b2506ebd287daa54a41760ca1a4e799b3ca0dd
5
5
  SHA512:
6
- metadata.gz: a3509847331dd63bca85fb7a23842358989a322ae6eb82576bd090b62938f35ac57f9d45eec5373c9b62b0e5b392a34cebdc45b7ddb01783661cce049ec3b0d2
7
- data.tar.gz: 2cac1ea187ed99005e80980da9c0582e640549db738be0d12fdf3215338ec20eecff116311710122407de411bef73307760724b493a199ed5534c702ab97c16a
6
+ metadata.gz: defff1f756e63a15bf45702614008ea0212ce1e2d9043ea3126942c0f424f70c4d018d204b7e96942b0cab7cf3677dadd64b2866417ceeec6797abd57b5189c2
7
+ data.tar.gz: 0a1a251d0bc95a44482491e830db8b58a172b303d7c67af3d54661fcf382f3bae48ee974d15229baa2fcad4f925591bc7cb07526818a7292c88da250d7fc9fce
@@ -0,0 +1,16 @@
1
+ Handlebars::Helpers.configure do |config|
2
+ config_file = File.join(Gem.loaded_specs['handlebars-helpers'].full_gem_path, '.handlebars_helpers.json')
3
+ config.helper_config_file = config_file
4
+ end
5
+
6
+ KBuilder.reset
7
+ templates_ruby = '~/dev/kgems/k_dsl/_/.template/ruby-cmdlet'
8
+ target_root = '~/dev/kgems/k_builder-watch/'
9
+
10
+ KBuilder.configure do |config|
11
+ config.target_folders.add(:app , target_root)
12
+
13
+ config.template_folders.add(:global , File.join(templates_ruby , '.global_template'))
14
+ # config.template_folders.add(:app , File.join(template_root , '.app_template'))
15
+ end
16
+
@@ -0,0 +1,34 @@
1
+ # require '.builders/_initialize.rb'
2
+
3
+ $LOAD_PATH.unshift(File.join(Dir.pwd, '.builders'))
4
+ load 'x.rb'
5
+ puts 'fucit'
6
+ # load 'x.rb'
7
+ # puts JSON.pretty_generate(KBuilder.configuration.to_h)
8
+
9
+ # builder = KBuilder::BaseBuilder.init
10
+
11
+ # builder
12
+ # .add_file('main.rb', template_file: 'class.rb', name: 'main')
13
+ # .add_file('person.rb',
14
+ # template_file: 'model.rb',
15
+ # name: 'person',
16
+ # fields: %i[first_name last_name])
17
+ # .add_file('address.rb',
18
+ # template_file: 'model.rb',
19
+ # name: 'address',
20
+ # fields: %i[street1 street2 post_code state])
21
+ # .add_file('css/index.css',
22
+ # template: '{{#each colors}} .{{.}} { color: {{.}} } {{/each}}',
23
+ # colors: %w[red blue green],
24
+ # pretty: true)
25
+
26
+ # # /Users/davidcruwys/dev/xxx-watch
27
+ # # /Users/davidcruwys/dev/xxx-watch/basic.rb
28
+
29
+
30
+ # file = builder.target_file('main.rb')
31
+ # puts file
32
+ # puts File.exist?(file)
33
+ # system("code #{file}")
34
+ # puts 'basic'
data/.builders/x.rb ADDED
File without changes
data/.gitignore CHANGED
@@ -23,6 +23,7 @@ k_builder_watch.yml
23
23
  /doc/
24
24
  /pkg/
25
25
  /spec/reports/
26
+ /spec/samples-output/
26
27
  /tmp/
27
28
  !/tmp/.keep
28
29
  *.bundle
File without changes
@@ -34,11 +34,11 @@ Gem::Specification.new do |spec|
34
34
  end
35
35
  end
36
36
  spec.bindir = 'exe'
37
-
37
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
38
38
  spec.require_paths = ['lib']
39
39
  # spec.extensions = ['ext/k_builder/watch/extconf.rb']
40
40
 
41
- spec.add_dependency 'filewatcher', '~> 0.0'
41
+ spec.add_dependency 'filewatcher', '~> 2.0.0.beta3'
42
42
  spec.add_dependency 'k_builder', '~> 0.0'
43
43
  spec.add_dependency 'k_builder-package_json', '~> 0.0'
44
44
  spec.add_dependency 'k_builder-webpack5', '~> 0.0'
@@ -2,6 +2,6 @@
2
2
 
3
3
  module KBuilder
4
4
  module Watch
5
- VERSION = '0.0.8'
5
+ VERSION = '0.0.13'
6
6
  end
7
7
  end
@@ -8,8 +8,9 @@ require 'io/console'
8
8
  # require 'handlebars/helpers/configuration'
9
9
 
10
10
  module KBuilder
11
+ # Watch supports any watch and execute processes for builders
11
12
  module Watch
12
- # Watch fo
13
+ # Watcher does the actual file watching and run the processor
13
14
  class Watcher
14
15
  attr_accessor :directory
15
16
 
@@ -21,33 +22,38 @@ module KBuilder
21
22
  # watch_file = File.join(directory, 'DOMAIN_INSTRUCTIONS.MD')
22
23
 
23
24
  def start
24
- puts 'Watching for file changes'
25
+ clear_screen
26
+ puts "KBuilder-Watch: v#{KBuilder::Watch::VERSION} is watching for file changes"
25
27
  puts "Directory: #{directory}"
26
28
  # puts "Watch File: #{watch_file}"
27
29
 
28
- Filewatcher.new(directory).watch do |filename, event|
29
- if (event == :updated) && filename # .casecmp(watch_file).zero?
30
- # puts "\n" * 70
31
- # $stdout.clear_screen
30
+ Filewatcher.new(directory).watch do |changes|
31
+ changes.each do |filename, event|
32
+ puts "File #{event}: #{filename}"
32
33
 
33
- process_updated_file(filename)
34
+ process_updated_file(filename) if event == :updated
34
35
  end
35
-
36
- puts "File deleted: #{filename}" if event == :delete
37
- puts "Added file: #{filename}" if event == :new
38
36
  end
39
37
  end
40
38
 
39
+ # rubocop:disable Lint/RescueException
41
40
  def process_updated_file(filename)
42
- puts "\n" * 70
43
- $stdout.clear_screen
41
+ $LOAD_PATH.unshift(File.join(Dir.pwd, '.builders'))
42
+ # Can I set __FILE__ during class_eval
43
+
44
44
  puts "File updated: #{filename}"
45
45
 
46
46
  content = File.read(filename)
47
- Object.class_eval content
48
- rescue StandardError => e
47
+ Object.class_eval(content, __FILE__, __LINE__)
48
+ rescue Exception => e
49
49
  puts e.message
50
- puts e.backtrace.join("\n")
50
+ puts e.backtrace.select { |ex| ex.start_with?(filename) }.join("\n")
51
+ end
52
+ # rubocop:enable Lint/RescueException
53
+
54
+ def clear_screen
55
+ puts "\n" * 70
56
+ $stdout.clear_screen
51
57
  end
52
58
  end
53
59
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: k_builder-watch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.0'
19
+ version: 2.0.0.beta3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.0'
26
+ version: 2.0.0.beta3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: k_builder
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -70,10 +70,14 @@ description: " K-Builder-Watch will watch k_builder files and when they chang
70
70
  execute them\n"
71
71
  email:
72
72
  - david@ideasmen.com.au
73
- executables: []
73
+ executables:
74
+ - k_builder-watch
74
75
  extensions: []
75
76
  extra_rdoc_files: []
76
77
  files:
78
+ - ".builders/_initialize.rb"
79
+ - ".builders/basic.rb"
80
+ - ".builders/x.rb"
77
81
  - ".github/workflows/main.yml"
78
82
  - ".gitignore"
79
83
  - ".rspec"
@@ -93,7 +97,7 @@ files:
93
97
  - bin/khotfix
94
98
  - bin/run
95
99
  - bin/setup
96
- - exe/kw
100
+ - exe/k_builder-watch
97
101
  - hooks/pre-commit
98
102
  - hooks/update-version
99
103
  - k_builder-watch.gemspec