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