kdwatch 0.5.3 → 0.5.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/README.md +0 -4
- data/bin/kdwatch +11 -2
- data/lib/kdwatch/version.rb +1 -1
- data/lib/kdwatch-app.rb +25 -6
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6566f3e18e0382e8884beeca9cacc476052a969ca2fdb2b2444776cf5cbd841c
|
|
4
|
+
data.tar.gz: ec6c75ac9f53726c514263bc288862d3406d601e71e7cdc0a263a3a83eac04a9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eb70454412b047f97acb4906b471dcd87e8a56908ed976f7f2094e34422284f38032eea6d1b97a1653cb5d15965400935c9e271a503e52f2077ae2fec61a9e60
|
|
7
|
+
data.tar.gz: ea35944c3d007676c43c009f06a4deb506fbfaebf9ab71521e6f048818fcccaf89967d31076d710f5b1fb09fd4866412f8e4ce9c8e2a1e516a7c48d16292fca9
|
data/README.md
CHANGED
|
@@ -85,10 +85,6 @@ many
|
|
|
85
85
|
kdwatch -r5 weird-draft.md
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
-
(Glitches are to be expected if you *start* more than one server out of
|
|
89
|
-
the same directory at the same instant; TODO; for now, wait 10 seconds
|
|
90
|
-
before starting another from the same directory.)
|
|
91
|
-
|
|
92
88
|
### 7991, haven't I heard that number before?
|
|
93
89
|
|
|
94
90
|
The default port number was chosen after [RFC 7991], the initial (no
|
data/bin/kdwatch
CHANGED
|
@@ -7,6 +7,7 @@ ENV["KRAMDOWN_PERSISTENT"]="yes"
|
|
|
7
7
|
require 'optparse'
|
|
8
8
|
require 'ostruct'
|
|
9
9
|
require 'socket'
|
|
10
|
+
require 'tempfile'
|
|
10
11
|
|
|
11
12
|
require_relative "../lib/kdwatch/version"
|
|
12
13
|
|
|
@@ -153,11 +154,19 @@ ENV["KDWATCH_PORT"] = options.port.to_s
|
|
|
153
154
|
live_reload_port = options.port + 51234 # move up into ephemeral space
|
|
154
155
|
ENV["KDWATCH_LRPORT"] = live_reload_port.to_s
|
|
155
156
|
|
|
156
|
-
|
|
157
|
+
tf = Tempfile.new('kdwatch-config-ru-')
|
|
158
|
+
path = tf.path
|
|
159
|
+
rupath = "#{path}.ru"
|
|
160
|
+
|
|
161
|
+
tf.write(<<HERE)
|
|
157
162
|
require 'rack-livereload'
|
|
158
163
|
use Rack::LiveReload, min_delay: 500, source: :vendored, no_swf: true, port: #{live_reload_port}, live_reload_port: #{live_reload_port}
|
|
159
164
|
require 'kdwatch-app.rb'
|
|
160
165
|
run Sinatra::Application
|
|
166
|
+
File.delete("#{rupath}")
|
|
161
167
|
HERE
|
|
162
168
|
|
|
163
|
-
|
|
169
|
+
tf.close
|
|
170
|
+
File.rename(path, rupath)
|
|
171
|
+
|
|
172
|
+
exec("rackup -E production -s thin -o #{options.host} -p #{options.port} #{rupath}")
|
data/lib/kdwatch/version.rb
CHANGED
data/lib/kdwatch-app.rb
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
require_relative "kdwatch/version"
|
|
2
2
|
require 'bundler'
|
|
3
|
+
require 'tempfile'
|
|
3
4
|
|
|
4
5
|
# Bundler.require
|
|
5
6
|
require "bundler"
|
|
@@ -62,14 +63,17 @@ get "/rfc-local.css" do
|
|
|
62
63
|
# insert local css here
|
|
63
64
|
end
|
|
64
65
|
|
|
65
|
-
|
|
66
|
+
guardfile = Tempfile.new("kdwatch-guard-")
|
|
67
|
+
guardfile.write(<<GF)
|
|
66
68
|
guard :livereload, :port => #{ENV["KDWATCH_LRPORT"]} do
|
|
67
69
|
watch("#{sfn}")
|
|
68
70
|
end
|
|
69
71
|
GF
|
|
72
|
+
guardfile.close
|
|
73
|
+
gfpath = guardfile.path
|
|
70
74
|
|
|
71
75
|
rd, _wr = IO.pipe
|
|
72
|
-
spawn("guard -G
|
|
76
|
+
spawn("guard -G #{gfpath}", in: rd, close_others: true)
|
|
73
77
|
|
|
74
78
|
# wrong: puts settings.port
|
|
75
79
|
|
|
@@ -77,7 +81,22 @@ host = "localhost" if host == "::" # work around macOS peculiarity
|
|
|
77
81
|
host = "[#{host}]" if host =~ /:/
|
|
78
82
|
|
|
79
83
|
url = "http://#{host}:#{port}"
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
command = "open #{url} || xdg-open #{url} || echo @@@ Please open #{url}"
|
|
85
|
+
|
|
86
|
+
if Process.respond_to?(:fork) && fork do
|
|
87
|
+
begin
|
|
88
|
+
# warn "** Making connection to #{host} #{port}"
|
|
89
|
+
TCPSocket.new host, port
|
|
90
|
+
# warn "** Successful connection to #{host} #{port}"
|
|
91
|
+
rescue => _e
|
|
92
|
+
# warn "** #{e.detailed_message}"
|
|
93
|
+
sleep 0.5
|
|
94
|
+
retry
|
|
95
|
+
end
|
|
96
|
+
exec(command)
|
|
97
|
+
warn "** exec didn't work"
|
|
98
|
+
exit!
|
|
99
|
+
end
|
|
100
|
+
else
|
|
101
|
+
spawn("sleep 3; #{command}")
|
|
102
|
+
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kdwatch
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Carsten Bormann
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2023-03-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -159,7 +159,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
159
159
|
- !ruby/object:Gem::Version
|
|
160
160
|
version: '0'
|
|
161
161
|
requirements: []
|
|
162
|
-
rubygems_version: 3.
|
|
162
|
+
rubygems_version: 3.4.6
|
|
163
163
|
signing_key:
|
|
164
164
|
specification_version: 4
|
|
165
165
|
summary: 'kdwatch: open auto-reloaded HTML for kramdown-rfc in a browser.'
|