simultaneous 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -59,8 +59,9 @@ module Simultaneous
59
59
  ## TODO: figure out how to pass a logfile path to this
60
60
  daemonize(cmd, @task.logfile)
61
61
  Process.setpriority(Process::PRIO_PROCESS, 0, niceness) if niceness > 0
62
- ## change to the UID of the originating thread if necessary
62
+ ## change to the UID & GID of the originating thread if necessary
63
63
  Process::UID.change_privilege(task_uid) unless Process.euid == task_uid
64
+ Process::GID.change_privilege(task_gid) unless Process.egid == task_gid
64
65
  File.umask(0022)
65
66
  Dir.chdir(@task.pwd)
66
67
  exec(cmd)
data/lib/simultaneous.rb CHANGED
@@ -4,7 +4,7 @@ require 'socket'
4
4
  require 'eventmachine'
5
5
 
6
6
  module Simultaneous
7
- VERSION = "0.3.1"
7
+ VERSION = "0.3.2"
8
8
 
9
9
  DEFAULT_CONNECTION = "/tmp/simultaneous-server.sock"
10
10
  DEFAULT_PORT = 9999
data/simultaneous.gemspec CHANGED
@@ -13,8 +13,8 @@ Gem::Specification.new do |s|
13
13
  ## If your rubyforge_project name is different, then edit it and comment out
14
14
  ## the sub! line in the Rakefile
15
15
  s.name = 'simultaneous'
16
- s.version = '0.3.1'
17
- s.date = '2012-02-20'
16
+ s.version = '0.3.2'
17
+ s.date = '2012-02-21'
18
18
  s.rubyforge_project = 'simultaneous'
19
19
 
20
20
  ## Make sure your summary is short. The description may be as long
@@ -79,7 +79,7 @@ describe Simultaneous::Connection do
79
79
  socket = "/tmp/socket.sock"
80
80
  gid = "789"
81
81
  FileUtils.rm(socket) if File.exist?(socket)
82
- mock(File).chmod(0770, socket)
82
+ mock(File).chmod(0777, socket)
83
83
  mock(File).chown(nil, gid, socket)
84
84
  handler = Module.new
85
85
  mock(EventMachine).start_server(socket, handler) { FileUtils.touch(socket) }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simultaneous
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-20 00:00:00.000000000Z
12
+ date: 2012-02-21 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: eventmachine
16
- requirement: &70227019722800 !ruby/object:Gem::Requirement
16
+ requirement: &70143343541160 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: '2.0'
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *70227019722800
27
+ version_requirements: *70143343541160
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rack
30
- requirement: &70227019721740 !ruby/object:Gem::Requirement
30
+ requirement: &70143343540120 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -38,10 +38,10 @@ dependencies:
38
38
  version: '2.0'
39
39
  type: :runtime
40
40
  prerelease: false
41
- version_requirements: *70227019721740
41
+ version_requirements: *70143343540120
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rack-async
44
- requirement: &70227019720700 !ruby/object:Gem::Requirement
44
+ requirement: &70143343538960 !ruby/object:Gem::Requirement
45
45
  none: false
46
46
  requirements:
47
47
  - - ! '>='
@@ -52,10 +52,10 @@ dependencies:
52
52
  version: '2.0'
53
53
  type: :runtime
54
54
  prerelease: false
55
- version_requirements: *70227019720700
55
+ version_requirements: *70143343538960
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: rr
58
- requirement: &70227019719700 !ruby/object:Gem::Requirement
58
+ requirement: &70143343537500 !ruby/object:Gem::Requirement
59
59
  none: false
60
60
  requirements:
61
61
  - - ~>
@@ -63,7 +63,7 @@ dependencies:
63
63
  version: 1.0.4
64
64
  type: :development
65
65
  prerelease: false
66
- version_requirements: *70227019719700
66
+ version_requirements: *70143343537500
67
67
  description: Simultaneous is designed for the very specific use case of a small set
68
68
  of users collaborating on editing a single website. Because of that it is optimised
69
69
  for infrequent invocation of very long running publishing tasks and provides an