plezi 0.12.0 → 0.12.1
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/CHANGELOG.md +11 -1
- data/README.md +13 -3
- data/lib/plezi.rb +10 -0
- data/lib/plezi/common/api.rb +5 -6
- data/lib/plezi/common/dsl.rb +0 -3
- data/lib/plezi/common/settings.rb +1 -2
- data/lib/plezi/handlers/http_router.rb +2 -1
- data/lib/plezi/version.rb +1 -1
- data/plezi.gemspec +1 -1
- data/resources/environment.rb +5 -5
- data/resources/mini_app.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bb98dd3b32e4204480007a592bdd9e7d7b55fa08
|
4
|
+
data.tar.gz: b5b670f66538b2a98d7306176528ddfd45e6a878
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 78e46c96f20cc3955000f0cb32a2ebf7c5cd1d472176bdba6990b3f4f840271a6cb3426bd0774eb96d9493e90e44ad22c68164ce4fa7bf2a4be4ef869ef12fe0
|
7
|
+
data.tar.gz: 90fe75d999ab81c05ea98249907c368858eaf0c4bab5145630e23428cf3549a5c96eef0fc78abb53ae7b3341ddd34818723da8fd4b20fd28803da005bf25d5f6
|
data/CHANGELOG.md
CHANGED
@@ -2,7 +2,17 @@
|
|
2
2
|
|
3
3
|
***
|
4
4
|
|
5
|
-
Change log v.0.12.
|
5
|
+
Change log v.0.12.1
|
6
|
+
|
7
|
+
**Fix**: fixed an issue with the app template, where a typo (an extra comma sign ',') caused the `host` command to fail.
|
8
|
+
|
9
|
+
**API**: The `host` method can now be used without a host name (only passing a Hash), automatically falling back to the default host.
|
10
|
+
|
11
|
+
**Update**: Plezi version number now displays as the server starts running.
|
12
|
+
|
13
|
+
***
|
14
|
+
|
15
|
+
Change log v.0.12.0 - API changes (throwing out dead code and many more changes)
|
6
16
|
|
7
17
|
**Feature** The `Controller.failed_unicast(target, method, arguments_array)` callback is here, allowing you to write a class level callback that will be called if `unicast` fails to find it's target (i.e. if the Websocket connection was already closed or the hosting server shutdown).
|
8
18
|
|
data/README.md
CHANGED
@@ -330,18 +330,26 @@ Plezi can be used to create virtual hosts for the same service, allowing you to
|
|
330
330
|
|
331
331
|
require 'plezi'
|
332
332
|
|
333
|
+
# define a named host.
|
333
334
|
host 'localhost', alias: 'localhost2', public: File.join('my', 'public', 'folder')
|
334
335
|
|
335
|
-
shared_route '/
|
336
|
-
res << "
|
336
|
+
shared_route '/shared' do |req, res|
|
337
|
+
res << "shared by all existing hosts.... but the default host doesn't exist yet, so we're only on localhost and localhost2."
|
337
338
|
end
|
338
339
|
|
340
|
+
# define a default (catch-all) host.
|
339
341
|
host
|
340
342
|
|
343
|
+
shared_route '/humans.txt' do |req, res|
|
344
|
+
res << "we are people - we're in every existing hosts."
|
345
|
+
end
|
346
|
+
|
347
|
+
|
341
348
|
route('*') do |req, res|
|
342
349
|
res << "this is a 'catch-all' host. you got here by putting in the IP adderess."
|
343
350
|
end
|
344
351
|
|
352
|
+
# get's the existing named host
|
345
353
|
host 'localhost'
|
346
354
|
|
347
355
|
route('*') do |req, res|
|
@@ -352,6 +360,8 @@ Now visit:
|
|
352
360
|
|
353
361
|
* [http://127.0.0.1:3000/]( http://127.0.0.1:3000/ )
|
354
362
|
* [http://localhost:3000/]( http://localhost:3000/ )
|
363
|
+
* [http://127.0.0.1:3000/shared]( http://127.0.0.1:3000/shared ) - won't show, becuse this host was created AFTER the route was declered.
|
364
|
+
* [http://localhost:3000/shared]( http://localhost:3000/shared )
|
355
365
|
* [http://127.0.0.1:3000/humans.txt]( http://127.0.0.1:3000/humans.txt )
|
356
366
|
* [http://localhost:3000/humans.txt]( http://localhost:3000/humans.txt )
|
357
367
|
* notice: `localhost2` will only work if it was defined in your OS's `hosts` file.
|
@@ -460,7 +470,7 @@ try:
|
|
460
470
|
* [http://localhost:3000/](http://localhost:3000/)
|
461
471
|
* [http://localhost:3000/fr](http://localhost:3000/fr)
|
462
472
|
* [http://localhost:3000/users/hello](http://localhost:3000/users/hello)
|
463
|
-
* [http://localhost:3000/users/(5+5*20-15)/9.0](http://localhost:3000/users/(5+5*20-15)/9.0)
|
473
|
+
* [http://localhost:3000/users/(5+5*20-15)/9.0](http://localhost:3000/users/(5+5*20-15)/9.0) - should return a 404 not found message.
|
464
474
|
* [http://localhost:3000/(5+5*20-15)/9.0](http://localhost:3000/(5+5*20-15)/9)
|
465
475
|
* [http://localhost:3000/fr/(5+5*20-15)/9.0](http://localhost:3000/fr/(5+5*20-15)/9)
|
466
476
|
* [http://localhost:3000/users/hello?_method=delete](http://localhost:3000/users/hello?_method=delete)
|
data/lib/plezi.rb
CHANGED
@@ -141,3 +141,13 @@ require 'plezi/handlers/session.rb'
|
|
141
141
|
##############################################################################
|
142
142
|
module Plezi
|
143
143
|
end
|
144
|
+
|
145
|
+
Encoding.default_internal = 'utf-8'
|
146
|
+
Encoding.default_external = 'utf-8'
|
147
|
+
Iodine.threads = 30
|
148
|
+
Iodine.run { puts "Plezi is feeling optimistic running version #{::Plezi::VERSION}.\n\n"}
|
149
|
+
# PL is a shortcut for the Plezi module, so that `PL == Plezi`.
|
150
|
+
PL = Plezi
|
151
|
+
|
152
|
+
|
153
|
+
|
data/lib/plezi/common/api.rb
CHANGED
@@ -27,10 +27,12 @@ module Plezi
|
|
27
27
|
# A default host can be created or accessed by using `:default` of false for the host name.
|
28
28
|
#
|
29
29
|
# Accepts:
|
30
|
-
# host_name:: the name (domain name) of the host as a String object. Use the Symbol `:default` for the catch-all domain name.
|
30
|
+
# host_name:: (optional, can be omitted) the name (domain name) of the host as a String object. Use the Symbol `:default` for the catch-all domain name.
|
31
|
+
# options_hash:: see further detail.
|
31
32
|
#
|
32
33
|
#
|
33
34
|
# The options is a Hash object with any of the following options (Hash keys):
|
35
|
+
# host:: the ost name to be used if one isn't supplied as a direct argument. Defaults to the `:default` host.
|
34
36
|
# alias:: a String or an Array of Strings which represent alternative host names (i.e. `alias: ["admin.google.com", "admin.gmail.com"]`).
|
35
37
|
# public:: the public root folder. if this is defined, static files will be served from this folder and all it's sub-folders. Plezi does NOT support file indexing.
|
36
38
|
# assets:: the assets root folder. defaults to nil (no assets support). if the path is defined, assets will be served from `/assets/...` (or the public_asset path defined) before any static files. assets will not be served if the file in the /public/assets folder if up to date (a rendering attempt will be made for systems that allow file writing).
|
@@ -52,7 +54,7 @@ module Plezi
|
|
52
54
|
#
|
53
55
|
# @return [::Plezi::Base::HTTPRouter]
|
54
56
|
#
|
55
|
-
def host(host_name, params)
|
57
|
+
def host(host_name, params = {})
|
56
58
|
::Plezi::Base::HTTPRouter.add_host host_name, params
|
57
59
|
end
|
58
60
|
|
@@ -80,7 +82,4 @@ module Plezi
|
|
80
82
|
def start_rack
|
81
83
|
Iodine.warn "`start_rack` is deprecated. There is no need to call this method."
|
82
84
|
end
|
83
|
-
end
|
84
|
-
|
85
|
-
Encoding.default_internal = 'utf-8'
|
86
|
-
Encoding.default_external = 'utf-8'
|
85
|
+
end
|
data/lib/plezi/common/dsl.rb
CHANGED
@@ -40,6 +40,7 @@ module Plezi
|
|
40
40
|
|
41
41
|
# adds a host to the router (or activates an existing host to add new routes). accepts a host name and any parameters not related to the actual connection (ssl etc') (see {Plezi.host})
|
42
42
|
def add_host host_name, params = {}
|
43
|
+
(params = host_name) && (host_name = params.delete(:host)) if host_name.is_a?(Hash)
|
43
44
|
params[:index_file] ||= 'index.html'
|
44
45
|
params[:assets_public] ||= '/assets'
|
45
46
|
params[:assets_public].chomp! '/'
|
@@ -52,7 +53,7 @@ module Plezi
|
|
52
53
|
# adds an alias to an existing host name (normally through the :alias parameter in the `add_host` method).
|
53
54
|
def add_alias host_name, *aliases
|
54
55
|
host = get_host host_name
|
55
|
-
host
|
56
|
+
raise "Couldn't find requested host to add alias." unless host.
|
56
57
|
aliases.each {|a| @hosts[a.to_s.downcase] = host}
|
57
58
|
true
|
58
59
|
end
|
data/lib/plezi/version.rb
CHANGED
data/plezi.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_dependency "iodine", "~> 0.1.
|
21
|
+
spec.add_dependency "iodine", "~> 0.1.2"
|
22
22
|
spec.add_development_dependency "bundler", "~> 1.7"
|
23
23
|
spec.add_development_dependency "rake", "~> 10.0"
|
24
24
|
|
data/resources/environment.rb
CHANGED
@@ -42,8 +42,8 @@ Dir[File.join "{lib}", "**" , "*.rb"].each {|file| load File.expand_path(file)}
|
|
42
42
|
Dir[File.join "{app}", "**" , "*.rb"].each {|file| load File.expand_path(file)}
|
43
43
|
|
44
44
|
# change some of the default settings here.
|
45
|
-
host :default,
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
45
|
+
host host: :default,
|
46
|
+
public: Root.join('public').to_s,
|
47
|
+
assets: Root.join('assets').to_s,
|
48
|
+
assets_public: '/assets',
|
49
|
+
templates: Root.join('app','views').to_s
|
data/resources/mini_app.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: plezi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.12.
|
4
|
+
version: 0.12.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Boaz Segev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-10-
|
11
|
+
date: 2015-10-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: iodine
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.1.
|
19
|
+
version: 0.1.2
|
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.1.
|
26
|
+
version: 0.1.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|