nanoc-live 1.0.0a1 → 1.0.0a2

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: d1362b4ea80415583b3399354722ae766ed61b0199516864b0fe219c7b1af308
4
- data.tar.gz: 1dcd6212ba0b6d60f3e467908b3ae93000c5fe5fc0a1e4dc920f69e11c5ecf6f
3
+ metadata.gz: 412c66134e3f76c210f21c2b074f56d828843ac36f6bde4608226e65a8fa700b
4
+ data.tar.gz: 04e281da49f03ae98a92429a2a528b972573a195facb38431d2f60721585e6cb
5
5
  SHA512:
6
- metadata.gz: 7fad4117f790e729f908f35617a4d924ca3ee00a14d39be26f1f309a40faf10c40ce22fe38f1a6b29e0c6a9195ba8b2d0f8160ee52fed16c6bfc54a3d22e0927
7
- data.tar.gz: 1bc4a7ce7f0bf6b69de1ef2c1e2f7760b0a1586407dbbc2373149b4abab6831b18a2d4c49e3ad77d0708877ca92b684b6c1fc34f595439a8c8b1c05f458d24a5
6
+ metadata.gz: 5fbcefbcb984f6b526ae00b07356332c8f9bcc5c1b44980a6a43c58b22a9c5cdb1d4d7a5c8c79f4ce85f94ca5cfa1aa69812f15de6f7574945b5b89095e5bd49
7
+ data.tar.gz: c5051c3f36441a9b84ce7e56a02219852690d3132bb8415a3282e5db2ac4b250b15ac9b9f1d2a575e36de0615ab54405acd5a93c197c0937021c069950a6c8ba
data/NEWS.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Release notes for nanoc-live
2
2
 
3
+ ## 1.0.0a2 (2017-12-09)
4
+
5
+ Fixes:
6
+
7
+ * Added missing dependency on `adsf-live`
8
+ * Fixed errors not being printed (#1271)
9
+
3
10
  ## 1.0.0a1 (2017-12-03)
4
11
 
5
12
  Initial release.
@@ -1,6 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'adsf/live'
4
+ require 'listen'
5
+ require 'nanoc'
6
+ require 'nanoc/cli'
4
7
 
5
8
  module Nanoc
6
9
  module Live
@@ -9,3 +12,9 @@ end
9
12
 
10
13
  require_relative 'live/version'
11
14
  require_relative 'live/live_recompiler'
15
+
16
+ Nanoc::CLI.after_setup do
17
+ root = File.dirname(__FILE__)
18
+ live_command_path = File.join(root, 'live', 'commands', 'live.rb')
19
+ Nanoc::CLI.add_command(Nanoc::CLI.load_command_at(live_command_path))
20
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ usage 'live'
4
+ summary 'auto-recompile and serve'
5
+ description <<~EOS
6
+ Starts the live recompiler along with the static web server. Unless specified,
7
+ the web server will run on port 3000 and listen on all IP addresses. Running
8
+ this static web server requires `adsf` (not `asdf`!).
9
+ EOS
10
+
11
+ required :H, :handler, 'specify the handler to use (webrick/mongrel/...)'
12
+ required :o, :host, 'specify the host to listen on (default: 127.0.0.1)'
13
+ required :p, :port, 'specify the port to listen on (default: 3000)'
14
+ flag :L, :'live-reload', 'reload on changes'
15
+
16
+ module Nanoc::Live::Commands
17
+ class Live < ::Nanoc::CLI::CommandRunner
18
+ def run
19
+ self.class.enter_site_dir
20
+
21
+ Thread.new do
22
+ Thread.current.abort_on_exception = true
23
+ Nanoc::CLI::Commands::View.new(options, [], self).run
24
+ end
25
+
26
+ Nanoc::Live::LiveRecompiler.new(command_runner: self).run
27
+ end
28
+ end
29
+ end
30
+
31
+ runner Nanoc::Live::Commands::Live
@@ -79,6 +79,12 @@ module Nanoc::Live
79
79
  end
80
80
 
81
81
  def handle_changes(site, command_runner)
82
+ Nanoc::CLI::ErrorHandler.handle_while(exit_on_error: false) do
83
+ unsafe_handle_changes(site, command_runner)
84
+ end
85
+ end
86
+
87
+ def unsafe_handle_changes(site, command_runner)
82
88
  time_before = Time.now
83
89
 
84
90
  puts 'Compiling site…'
@@ -98,8 +104,6 @@ module Nanoc::Live
98
104
  end
99
105
 
100
106
  def gen_lib_changes
101
- require 'listen'
102
-
103
107
  Nanoc::ChangesStream.new do |cl|
104
108
  opts = {
105
109
  latency: 0.0,
@@ -113,8 +117,6 @@ module Nanoc::Live
113
117
  end
114
118
 
115
119
  def gen_config_and_rules_changes
116
- require 'listen'
117
-
118
120
  Nanoc::ChangesStream.new do |cl|
119
121
  opts = {
120
122
  only: /(\/|\A)(nanoc\.yaml|config\.yaml|rules|Rules|rules\.rb|Rules\.rb)\z/,
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Nanoc
4
4
  module Live
5
- VERSION = '1.0.0a1'
5
+ VERSION = '1.0.0a2'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nanoc-live
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0a1
4
+ version: 1.0.0a2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Denis Defreyne
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-03 00:00:00.000000000 Z
11
+ date: 2017-12-09 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: adsf-live
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.4'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: listen
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -31,6 +45,9 @@ dependencies:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
47
  version: '4.8'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 4.8.16
34
51
  type: :runtime
35
52
  prerelease: false
36
53
  version_requirements: !ruby/object:Gem::Requirement
@@ -38,6 +55,9 @@ dependencies:
38
55
  - - "~>"
39
56
  - !ruby/object:Gem::Version
40
57
  version: '4.8'
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 4.8.16
41
61
  description: Provides support for auto-recompiling Nanoc sites.
42
62
  email: denis+rubygems@denis.ws
43
63
  executables: []
@@ -47,6 +67,7 @@ files:
47
67
  - NEWS.md
48
68
  - README.md
49
69
  - lib/nanoc/live.rb
70
+ - lib/nanoc/live/commands/live.rb
50
71
  - lib/nanoc/live/live_recompiler.rb
51
72
  - lib/nanoc/live/version.rb
52
73
  homepage: http://nanoc.ws/