Missing semicolon
[catagits/FCGI-ProcManager.git] / ChangeLog
1     * Notice errors writing out the PID file and abort.
2
3 0.24 2011-10-04 Tomas Doran  <bobtfish@bobtfish.net>
4     * Further fix to pm_wait routine to find the correct PID and remove it
5       (fixing logical error introduced in the last release), noted by Vadim
6       Dashkevich
7     * Document (somewhat) FCGI::ProcManager::Constrainted
8
9 0.23 2011-09-27 Tomas Doran  <bobtfish@bobtfish.net>
10     * Fix pm_wait routine to exit without a warning
11     * Fix pm_wait to correctly detect child processes which have died.
12     * Fix to return SIGCHLD handler to it's default state in the
13       pm_manage loop so that loading code which sets SIGCHLD to ignore
14       won't interfere with normal operation.
15     * Add repository metadata.
16
17 0.22 2011-08-04 Tomas Doran  <bobtfish@bobtfish.net>
18     * Ship a version of FCGI::ProcManager::Constrainted which actually
19       works as advertised.
20
21 0.21 2011-08-02 Tomas Doran  <bobtfish@bobtfish.net>
22     * Ship a working dist.
23
24 0.20 2011-08-02 Gareth Kirwan  <gbjk@cpan.org>
25     * ProcManager::Constrained: Add a new FCGI::ProcManager::Constrainted
26       subclass which will restart workers safely after a certain number of
27       requests, or at certain memory thresholds.
28     * ProcManager: Fix start_delay causing a permanent hang.
29
30 0.19 2009-07-22 Gareth Kirwan  <gbjk@cpan.org>
31
32     * ProcManager.pm: Add a pm_title option to configure the process title
33       assigned to $0
34
35 0.18 2007-12-18 James Jurach  <muaddib@erf.net>
36
37      * ProcManager.pm: Remove constraint that parent process cannot die.
38
39 0.17
40
41         * ProcManager.pm: Remove constraint that process can't change pid.
42           This resolves the daemon exiting after first child dies
43           if the process id of the daemon has changed since starting.
44           This commonly happens when a script waits to check for the
45           socket being available and working before forking and exitting.
46           It can also happen in a race condition of fork && exit when
47           the exit is delayed until after the forked child has already
48           spawned the fastcgi handlers.
49
50 2001-04-23 18:12  James Jurach  <muaddib@erf.net>
51
52         * ProcManager.pm: SIGHUP handler now issues SIGTERM to children but
53         then proceeds normally. added documentation blurb about signal
54         handling. we now use POSIX::sigaction() to avoid SA_RESTART during
55         certain regions. added re-usable POSIX::SigAction members to toggle
56         SA_RESTART. added sig_sub() -- necessary to pass name to
57         POSIX::SigAction creation. 
58
59         * README: added small blurb to consult FCGI::ProcManager
60         documentation. 
61
62         * t/exporter.t:
63         * t/procmanager.t: fixed pm_manage() test.
64
65 2001-03-13 18:12  James Jurach  <muaddib@erf.net>
66
67         * ProcManager.pm: removed check for FCGI_ROLE.  now more
68         transparent when undesired.
69
70         * ProcManager.pm: detect when no FastCGI environment exists.
71
72         * ProcManager.pm: only warn and sleep -- do not abort on fork
73         failure.
74
75         * ProcManager.pm: now, we give notification to which processes we
76         send a TERM signal.
77
78 2001-02-09 10:16  James Jurach  <muaddib@erf.net>
79
80         * t/: exporter.t, procmanager.t: made it easier to manage
81         sample_request_loop() for testing.
82
83         * ProcManager.pm: modified some error messages.  added immediate
84         notify of manager signal.
85
86         * ProcManager.pm: added more documentation.  renamed
87         pm_reap_server() to pm_wait().  fixed problem when ! MANAGER_PID
88         that caused server to die immediately we now delete list of child
89         PIDs from each child.  added mechanism to pm_exit() to send a
90         SIGKILL to any remaining children.
91
92 2001-01-31 01:13  James Jurach  <muaddib@erf.net>
93
94         * README: more documentation
95
96         * ProcManager.pm: re-organized method layout.  separated manager
97         vs. server vs. common moved more intialization into managing_init()
98         and handling_init() created pm_die() to be called when manager
99         should die.  cleaned up error messages and notifications.
100
101         * t/: exporter.t, procmanager.t: revised test messages
102
103 2001-01-30 16:35  James Jurach  <muaddib@erf.net>
104
105         * t/: exporter.t, procmanager.t: removed call to pm_state()
106
107         * ProcManager.pm: removed sleep() call after testing
108         signal-during-fork-loop
109
110 2001-01-30 12:49  James Jurach  <muaddib@erf.net>
111
112         * ProcManager.pm: Cleaned up pm_manage().  removed signal
113         registration routines.  replaced by direct %SIG access.  there is
114         now a manager signal handler and a handler signal handler.  added
115         checks to die when getppid() changes.
116
117 2001-01-20 02:06  James Jurach  <muaddib@erf.net>
118
119         * MANIFEST: removed Changes from MANIFEST
120
121 2001-01-13 00:44  James Jurach  <muaddib@erf.net>
122
123         * t/procmanager.t: corrected various recent method name changes. 
124         removed calls to want_to_die().  added request loop hooks to
125         pm_pre_dispatch(), pm_post_dispatch().  renamed sample_handler() to
126         sample_request_loop().
127
128         * ProcManager.pm: renamed request loop hooks to pm_pre_dispatch(),
129         pm_post_dispatch().  when pm_manage() is called with
130         n_processes==0, return through goto.  renamed pre_manage_init() to
131         managing_init().  renamed post_manage_init() to handling_init(). 
132         added received_signal() to remember that a signal was received. 
133         signal handler simpler: now only notes signal and propagates
134         signal.
135
136         * t/exporter.t: this uses non-OO calling mode.
137
138         * MANIFEST: added t/exporter.t.
139
140         * Changes: ChangeLog is where per-file changes are listed.
141
142 2000-12-22 05:58  James Jurach  <muaddib@erf.net>
143
144         * ProcManager.pm: corrected logic error in self_or_default(). 
145         changed all occurances of write_pid_file() to pm_write_pid_file(). 
146         changed all occurances of remove_pid_file() to
147         pm_remove_pid_file().
148
149 2000-12-14 17:54  James Jurach  <muaddib@erf.net>
150
151         * ProcManager.pm: corrected state() -> pm_state() method call.
152
153 2000-12-10 17:25  James Jurach  <muaddib@erf.net>
154
155         * ProcManager.pm: corrected some method renaming issues.
156
157 2000-12-09 19:48  James Jurach  <muaddib@erf.net>
158
159         * t/procmanager.t: effected the changes to these subroutine names.
160
161         * ProcManager.pm: made this module OO/Exporter hybrid.  removed
162         treatment of $ENV{PROCMANAGER_PROCESSES} from constructor.  changed
163         several subroutine names.
164
165 2000-12-05 22:23  James Jurach  <muaddib@erf.net>
166
167         * ProcManager.pm: made SIGHUP's do what SIGTERM's do
168
169 2000-11-20  James Jurach  <muaddib@erf.net>
170
171         * Released first public version.