zbatery 0.0.0 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/.document CHANGED
@@ -3,4 +3,5 @@ lib
3
3
  LICENSE
4
4
  NEWS
5
5
  README
6
+ FAQ
6
7
  zbatery.1
data/.manifest CHANGED
@@ -6,6 +6,7 @@ ChangeLog
6
6
  Documentation/.gitignore
7
7
  Documentation/GNUmakefile
8
8
  Documentation/zbatery.1.txt
9
+ FAQ
9
10
  GIT-VERSION-FILE
10
11
  GIT-VERSION-GEN
11
12
  GNUmakefile
data/ChangeLog CHANGED
@@ -1,35 +1,51 @@
1
- ChangeLog from git://git.bogomips.org/zbatery.git ()
1
+ ChangeLog from git://git.bogomips.org/zbatery.git (v0.0.0..v0.1.0)
2
2
 
3
- commit 50187c319bc5dcfe0f6f3ff7c96826f23716b8ae
3
+ commit c2ece58e13107983b726b83c5cfe798ff71034ca
4
4
  Author: Eric Wong <normalperson@yhbt.net>
5
- Date: Thu Dec 10 00:19:35 2009 -0800
5
+ Date: Tue Dec 22 14:56:37 2009 -0800
6
6
 
7
- prep for release
7
+ Zbatery 0.1.0
8
+
9
+ This gem release allows compatibility with newer versions of
10
+ Rainbows! This also fixes a bug when $stdout is not redirected
11
+ to a file.
12
+
13
+ commit c17e73cde38365774bc73dae1a1ece00afde77d3
14
+ Author: Eric Wong <normalperson@yhbt.net>
15
+ Date: Tue Dec 22 12:51:54 2009 -0800
16
+
17
+ ficks speling eror in README
8
18
 
9
- commit a8ef8c7f1156e2624d3cc3a37a72ff82bbc6a159
19
+ commit 35f7422b3c568b677960d2e1c0f6f6fa98882f02
10
20
  Author: Eric Wong <normalperson@yhbt.net>
11
- Date: Wed Dec 9 23:52:26 2009 -0800
21
+ Date: Mon Dec 21 14:14:28 2009 -0800
12
22
 
13
- trap and noop SIGWINCH, too
23
+ GNUmakefile: releases push tgz to Rubyforge
14
24
 
15
- commit 71af3819c0b79ce09e2f8237aca22ce902510bdd
25
+ commit 64d95504ff2f00e5bf6ad1acff53bd7175bb2035
16
26
  Author: Eric Wong <normalperson@yhbt.net>
17
- Date: Sun Nov 29 20:41:38 2009 -0800
27
+ Date: Tue Dec 15 23:54:38 2009 -0800
18
28
 
19
- do not expand paths given by shell
29
+ avoid breaking user switching with a single process
20
30
 
21
- Shells already expand '~' before the executables see it, and
22
- relative paths inside symlinks can get set incorrectly to the
23
- actual directory name, and not the (usually desired) symlink
24
- name for things like Capistrano.
31
+ $stdout may not have been a chown-able file descriptor,
32
+ so throw in a dummy object there that absorbs chown calls.
33
+
34
+ commit b7ade93403021c989bf9258b29a549b0e7f3692e
35
+ Author: Eric Wong <normalperson@yhbt.net>
36
+ Date: Tue Dec 15 00:18:59 2009 -0800
37
+
38
+ doc: update README, add FAQ
25
39
 
26
- Since our paths are now unexpanded, we must now check the
27
- "working_directory" directive and raise an error if the user
28
- specifies the config file in a way that makes the config file
29
- unreloadable.
40
+ * make it clear we depend on Unicorn and Rainbows!
41
+ * point out Sunshowers
42
+ * add FAQ
30
43
 
31
- commit 0e278d23faa3a07bc2fc7e473b29af6429d6aeef
44
+ commit 95c6af7c3adc097622c5958b7c1eb33ca6bbfeac
32
45
  Author: Eric Wong <normalperson@yhbt.net>
33
- Date: Fri Nov 27 15:08:19 2009 -0800
46
+ Date: Sun Dec 13 01:28:29 2009 -0800
34
47
 
35
- initial
48
+ gemspec: relax Rainbows! dependency
49
+
50
+ We do not expect Rainbows! internals we depend on to change
51
+ significantly before Rainbows! 1.0.0.
data/FAQ ADDED
@@ -0,0 +1,42 @@
1
+ = Frequently Asked Questions about Zbatery
2
+
3
+ Be sure to check out the Rainbows!
4
+ {FAQ}[http://rainbows.rubyforge.org/FAQ.html] and the Unicorn
5
+ {FAQ}[http://unicorn.bogomips.org/FAQ.html] as well.
6
+
7
+
8
+ === Mongrel -> Unicorn -> Rainbows! -> Zbatery. Why another server?
9
+
10
+ Not everybody can afford to run a master process or multiple worker
11
+ processes. Nor do they need all the Unix signals support from
12
+ Rainbows!/Unicorn. We hope this is actually a temporary project that
13
+ can eventually be folded back into Mongrel.
14
+
15
+
16
+ === Why not stick to Mongrel?
17
+
18
+ Unfortunately Mongrel 2.x development has stalled and the majority of
19
+ the team is busy with other projects. However, Unicorn and Rainbows!
20
+ development continues with less concern for portability.
21
+
22
+ Rainbows! is the only Ruby web server we know of that supports a wide
23
+ variety of concurrency models, so we decided to take advantage of
24
+ the options Rainbows! provides instead of being tied to one.
25
+
26
+
27
+ === What's Rack? Do you support Rails?
28
+
29
+ {Rack}[http://rack.rubyforge.org/] is a minimal specification between
30
+ Ruby web servers (e.g. Mongrel, Zbatery) and Ruby web frameworks (e.g.
31
+ Rails, Sinatra, Camping). Instead of requiring a new handler for every
32
+ framework a server wants to support, web servers only need to support
33
+ Rack. As of late 2009, all major Ruby web frameworks are built on top
34
+ of Rack, including Rails.
35
+
36
+
37
+ === What platforms are supported?
38
+
39
+ Any platform running matz's Ruby 1.8 or 1.9 should work with Zbatery.
40
+ We have not tested on anything other than GNU/Linux and FreeBSD, so
41
+ please let us know of your success/failure stories. Rubinius 1.0.0rc1
42
+ appears to work, too (if you're using Unicorn 0.95.2 or later).
data/GIT-VERSION-FILE CHANGED
@@ -1 +1 @@
1
- GIT_VERSION = 0.0.0
1
+ GIT_VERSION = 0.1.0
data/GIT-VERSION-GEN CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/bin/sh
2
2
 
3
3
  GVF=GIT-VERSION-FILE
4
- DEF_VER=v0.0.0.GIT
4
+ DEF_VER=v0.1.0.GIT
5
5
 
6
6
  LF='
7
7
  '
data/GNUmakefile CHANGED
@@ -58,7 +58,7 @@ NEWS: GIT-VERSION-FILE
58
58
  $(RAKE) -s news_rdoc > $@+
59
59
  mv $@+ $@
60
60
 
61
- SINCE =
61
+ SINCE = 0.0.0
62
62
  ChangeLog: LOG_VERSION = \
63
63
  $(shell git rev-parse -q "$(GIT_VERSION)" >/dev/null 2>&1 && \
64
64
  echo $(GIT_VERSION) || git describe)
@@ -151,7 +151,7 @@ package: $(pkgtgz) $(pkggem)
151
151
  release: verify package $(release_notes) $(release_changes)
152
152
  # make tgz release on RubyForge
153
153
  rubyforge add_release -f -n $(release_notes) -a $(release_changes) \
154
- $(rfproject) $(rfpackage) $(VERSION) $(pkggem)
154
+ $(rfproject) $(rfpackage) $(VERSION) $(pkgtgz)
155
155
  # push gem to Gemcutter
156
156
  gem push $(pkggem)
157
157
  # in case of gem downloads from RubyForge releases page
data/NEWS CHANGED
@@ -1,3 +1,9 @@
1
+ === 0.1.0 / 2009-12-22 22:59 UTC
2
+
3
+ This gem release allows compatibility with newer versions of
4
+ Rainbows! This also fixes a bug when $stdout is not redirected
5
+ to a file.
6
+
1
7
  === 0.0.0 / 2009-12-10 08:49 UTC
2
8
 
3
9
  Initial release of Rainbows! without fork()
data/README CHANGED
@@ -28,7 +28,9 @@ for basic functionality.
28
28
  pipe and fork(). Unicorn 0.95.2+ has rake-compiler support, so
29
29
  compiling the HTTP parser should be easier at least.
30
30
 
31
- * -Untested- HTML 5 Web Sockets support
31
+ * Web Sockets support (via
32
+ {Sunshowers}[http://rainbows.rubyforge.org/sunshowers/]), requires
33
+ Rainbows! 0.9.0+
32
34
 
33
35
  == License
34
36
 
@@ -44,7 +46,7 @@ Zbatery is 100% Free Software.
44
46
  == Install
45
47
 
46
48
  You may download the tarball from the Rainbows project page on Rubyforge
47
- and run setup.rb after unpacking it:
49
+ and run setup.rb after unpacking it (and installing Unicorn and Rainbows!):
48
50
 
49
51
  http://rubyforge.org/frs/?group_id=8977
50
52
 
@@ -52,6 +54,10 @@ You may also install it via RubyGems on Gemcutter:
52
54
 
53
55
  gem install zbatery
54
56
 
57
+ Zbatery depends on Rainbows!, and in turn, Unicorn. Despite Unicorn and
58
+ Rainbows! being Unix-only, the Unicorn HTTP parser C extension should
59
+ build on non-Unix-like systems (unverified).
60
+
55
61
  == Usage
56
62
 
57
63
  === for Rack applications
@@ -124,7 +130,7 @@ UNIX-specific) test suites.
124
130
 
125
131
  == Contact
126
132
 
127
- All feedback (bug reports, user/development dicussion, patches, pull
133
+ All feedback (bug reports, user/development discussion, patches, pull
128
134
  requests) go to the mailing list/newsgroup. We are currently
129
135
  borrowing the Rainbows! mailing list since most of our code (and
130
136
  problems) are related to Rainbows! mailto:rainbows-talk@rubyforge.org.
data/lib/zbatery.rb CHANGED
@@ -4,7 +4,7 @@ require 'rainbows'
4
4
  module Zbatery
5
5
 
6
6
  # current version of Zbatery
7
- VERSION = "0.0.0"
7
+ VERSION = "0.1.0"
8
8
 
9
9
  class << self
10
10
 
@@ -34,6 +34,11 @@ module Zbatery
34
34
 
35
35
  class HttpServer < Rainbows::HttpServer
36
36
 
37
+ # this class is only used to avoid breaking Unicorn user switching
38
+ class DeadIO
39
+ def chown(*args); end
40
+ end
41
+
37
42
  # only used if no concurrency model is specified
38
43
  def worker_loop(worker)
39
44
  init_worker_process(worker)
@@ -86,7 +91,7 @@ module Zbatery
86
91
  rescue => e # hopefully ignores errors on Win32...
87
92
  logger.error "failed to setup signal handler: #{e.message}"
88
93
  end
89
- worker = Worker.new(0, $stdout)
94
+ worker = Worker.new(0, DeadIO.new)
90
95
  before_fork.call(self, worker)
91
96
  worker_loop(worker) # runs forever
92
97
  end
data/zbatery.gemspec CHANGED
@@ -49,7 +49,7 @@ Gem::Specification.new do |s|
49
49
  # eventmachine
50
50
  # espace-neverblock + eventmachine
51
51
  # async_sinatra + sinatra + eventmachine
52
- s.add_dependency(%q<rainbows>, ["~> 0.8.0"])
52
+ s.add_dependency(%q<rainbows>, [">= 0.8.0", "<= 1.0.0"])
53
53
 
54
54
  # s.licenses = %w(GPLv2 Ruby) # accessor not compatible with older RubyGems
55
55
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zbatery
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zbatery hackers
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-12-10 00:00:00 +00:00
12
+ date: 2009-12-22 00:00:00 +00:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -18,9 +18,12 @@ dependencies:
18
18
  version_requirement:
19
19
  version_requirements: !ruby/object:Gem::Requirement
20
20
  requirements:
21
- - - ~>
21
+ - - ">="
22
22
  - !ruby/object:Gem::Version
23
23
  version: 0.8.0
24
+ - - <=
25
+ - !ruby/object:Gem::Version
26
+ version: 1.0.0
24
27
  version:
25
28
  description: |-
26
29
  Zbatery is an HTTP server for Rack applications on systems that either
@@ -41,6 +44,7 @@ extra_rdoc_files:
41
44
  - LICENSE
42
45
  - NEWS
43
46
  - README
47
+ - FAQ
44
48
  files:
45
49
  - .document
46
50
  - .gitignore
@@ -50,6 +54,7 @@ files:
50
54
  - Documentation/.gitignore
51
55
  - Documentation/GNUmakefile
52
56
  - Documentation/zbatery.1.txt
57
+ - FAQ
53
58
  - GIT-VERSION-FILE
54
59
  - GIT-VERSION-GEN
55
60
  - GNUmakefile