nimbu 0.13.1 → 0.13.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/nimbu/auth.rb +1 -1
- data/lib/nimbu/command/server.rb +31 -14
- data/lib/nimbu/server/base.rb +7 -3
- data/lib/nimbu/version.rb +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: acf58907df8ef86e997d2694f21ecc4239fa45e9530a4f3b108518939c218ed5
|
4
|
+
data.tar.gz: d4e92c37600d974a88f7add9d705981d3a44ac58c36d5294fedaf8839859bb6e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 53b91cb9662cf50224bf77273c4ddd44006bede74661cebeacb4327e3611df69fb7c765873d1f371cf8ffb2d262f83b5b91958bf113be6e6d8e9e357cbd9405c
|
7
|
+
data.tar.gz: c88ec2b024acdc576b5a3185d4b24c0200140d41d2b768a6c06bd4fb37f470792f0859bbc4529267e207df352f262ba79c7ed21f21adaa816e751021eb959ff1
|
data/lib/nimbu/auth.rb
CHANGED
data/lib/nimbu/command/server.rb
CHANGED
@@ -17,6 +17,7 @@ class Nimbu::Command::Server < Nimbu::Command::Base
|
|
17
17
|
# --webpack RES # comma separated list of webpack resources (relative to /javascripts)
|
18
18
|
# --webpackurl URL # proxy requests for webpack resources to the given URL prefix (default: http://localhost:8080)
|
19
19
|
# --nocookies # disable session refresh cookie check
|
20
|
+
# --dir DIR # root of your project (default: current directory)
|
20
21
|
#
|
21
22
|
def index
|
22
23
|
require 'rubygems'
|
@@ -26,6 +27,9 @@ class Nimbu::Command::Server < Nimbu::Command::Base
|
|
26
27
|
require 'filewatcher'
|
27
28
|
require 'pathname'
|
28
29
|
require 'lolcat'
|
30
|
+
require 'socket'
|
31
|
+
|
32
|
+
Nimbu.cli_options[:dir] = options[:dir] if options[:dir]
|
29
33
|
|
30
34
|
# Check if config file is present?
|
31
35
|
if !Nimbu::Auth.read_configuration
|
@@ -81,17 +85,6 @@ class Nimbu::Command::Server < Nimbu::Command::Base
|
|
81
85
|
end
|
82
86
|
end
|
83
87
|
|
84
|
-
def bare
|
85
|
-
puts "Starting server..."
|
86
|
-
server_options = {
|
87
|
-
:Port => options[:port] || 4567,
|
88
|
-
:DocumentRoot => Dir.pwd
|
89
|
-
}
|
90
|
-
Rack::Handler::Thin.run Nimbu::Server::Base, server_options do |server|
|
91
|
-
[:INT, :TERM].each { |sig| trap(sig) { server.respond_to?(:stop!) ? server.stop! : server.stop } }
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
88
|
def haml
|
96
89
|
require 'haml'
|
97
90
|
puts "Starting..."
|
@@ -107,13 +100,36 @@ class Nimbu::Command::Server < Nimbu::Command::Base
|
|
107
100
|
|
108
101
|
protected
|
109
102
|
|
103
|
+
def ipv6_supported?
|
104
|
+
begin
|
105
|
+
socket = Socket.new(Socket::AF_INET6, Socket::SOCK_STREAM)
|
106
|
+
socket.close
|
107
|
+
true
|
108
|
+
rescue Errno::EAFNOSUPPORT
|
109
|
+
false
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
def project_root
|
114
|
+
Nimbu.cli_options[:dir] || Dir.pwd
|
115
|
+
end
|
116
|
+
|
117
|
+
def default_host
|
118
|
+
if ipv6_supported?
|
119
|
+
"::"
|
120
|
+
else
|
121
|
+
"127.0.0.1"
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
110
125
|
def run_on_windows!
|
111
126
|
server_thread = Thread.new do
|
112
127
|
Thread.current[:stdout] = StringIO.new
|
113
128
|
puts "Starting server..."
|
114
129
|
server_options = {
|
115
130
|
:Port => options[:port] || 4567,
|
116
|
-
:DocumentRoot =>
|
131
|
+
:DocumentRoot => project_root,
|
132
|
+
:Host => default_host
|
117
133
|
}
|
118
134
|
server_options.merge!({:Host => options[:host]}) if options[:host]
|
119
135
|
Rack::Handler::Thin.run Nimbu::Server::Base, server_options do |server|
|
@@ -172,7 +188,8 @@ class Nimbu::Command::Server < Nimbu::Command::Base
|
|
172
188
|
puts "Starting server..."
|
173
189
|
server_options = {
|
174
190
|
:Port => options[:port] || 4567,
|
175
|
-
:DocumentRoot => Dir.pwd
|
191
|
+
:DocumentRoot => options[:dir] || Dir.pwd,
|
192
|
+
:Host => default_host,
|
176
193
|
}
|
177
194
|
server_options.merge!({:Host => options[:host]}) if options[:host]
|
178
195
|
Rack::Handler::Thin.run Nimbu::Server::Base, **server_options do |server|
|
@@ -309,7 +326,7 @@ class HamlWatcher
|
|
309
326
|
|
310
327
|
def watch
|
311
328
|
refresh
|
312
|
-
current_dir = File.join(Dir.pwd, 'haml/')
|
329
|
+
current_dir = File.join(Nimbu.cli_options[:dir] || Dir.pwd, 'haml/')
|
313
330
|
puts ">>> Haml is polling for changes. Press Ctrl-C to Stop."
|
314
331
|
Filewatcher.new('haml/**/*.haml', every: true).watch do |filename, event|
|
315
332
|
begin
|
data/lib/nimbu/server/base.rb
CHANGED
@@ -22,7 +22,7 @@ module Nimbu
|
|
22
22
|
|
23
23
|
set :method_override, true
|
24
24
|
set :static, true # set up static file routing
|
25
|
-
set :public_folder, Dir.pwd # set up the static dir (with images/js/css inside)
|
25
|
+
set :public_folder, Nimbu.cli_options[:dir] || Dir.pwd # set up the static dir (with images/js/css inside)
|
26
26
|
|
27
27
|
set :views, File.expand_path('../views', __FILE__) # set up the views dir
|
28
28
|
set :haml, { format: :html5 } # if you use haml
|
@@ -229,8 +229,8 @@ module Nimbu
|
|
229
229
|
end
|
230
230
|
|
231
231
|
def load_files(type)
|
232
|
-
glob = Dir["#{
|
233
|
-
directory = "#{
|
232
|
+
glob = Dir["#{project_root}/#{type}/**/*.liquid","#{project_root}/#{type}/**/*.liquid.haml"]
|
233
|
+
directory = "#{project_root}/#{type}/"
|
234
234
|
glob.each do |file|
|
235
235
|
name = file.gsub(/#{directory}/i,"")
|
236
236
|
code = IO.read(file).force_encoding('UTF-8')
|
@@ -247,6 +247,10 @@ module Nimbu
|
|
247
247
|
request.path =~ /^\/downloads\// && request.query_string =~ /key=/
|
248
248
|
end
|
249
249
|
|
250
|
+
def project_root
|
251
|
+
Nimbu.cli_options[:dir] || Dir.pwd
|
252
|
+
end
|
253
|
+
|
250
254
|
end
|
251
255
|
end
|
252
256
|
end
|
data/lib/nimbu/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nimbu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.13.
|
4
|
+
version: 0.13.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Zenjoy BVBA
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: term-ansicolor
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 2.
|
61
|
+
version: 2.2.3
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 2.
|
68
|
+
version: 2.2.3
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: sinatra-contrib
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -353,7 +353,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
353
353
|
- !ruby/object:Gem::Version
|
354
354
|
version: '0'
|
355
355
|
requirements: []
|
356
|
-
rubygems_version: 3.
|
356
|
+
rubygems_version: 3.1.6
|
357
357
|
signing_key:
|
358
358
|
specification_version: 4
|
359
359
|
summary: Client library and CLI to design websites on the Nimbu platform.
|