-
Notifications
You must be signed in to change notification settings - Fork 86
/
Changelog
213 lines (126 loc) · 5.65 KB
/
Changelog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
2024-10-22 version 2.4.0
* Add missing base64 and logger gem as dependency for Ruby 3.4 and 3.5.
* socket_manager: add feature to share sockets with another server.
2023-03-14 version 2.3.2
* Accept `nil` for `ServerEngine::SocketManager::Server.open` to select path automatically
* Care excluded port ranges of Windows in `ServerEngine::SocketManager.generate_path`
* Update to Rake 13 and RSpec 3 to support running tests on Ruby 3.2
2022-12-22 version 2.3.1
* Don't treat as error when worker shuts down with exit status 0
2022-06-13 version 2.3.0
* Add restart_worker_interval option to prevent workers restart immediately
after kill
* Reopen log file when rotation done by external tool is detected
* Fix unexpected behavior of start_worker_delay option
* Remove windows-pr dependency
* Fix a potential crash that command_sender_pipe of ProcessManager::Monitor
raises error on shutdown
* Allow to load serverengine/socket_manager without servernegine/utils
* Fix unstable tests
2022-01-13 version 2.2.5:
* Fix DLL load error on Ruby 3.1 on Windows
* Treat as error when worker shuts down unexpectedly
2021-05-24 version 2.2.4:
* Ensure to get correct Win32 socket error on Ruby 3.0
2021-02-17 version 2.2.3:
* Change SocketManager's port assignment strategy on Windows
2020-11-02 version 2.2.2:
* Fix incomplete Windows support in spawn based multi worker
2020-01-24 version 2.2.1:
* Fix IPv6 dual-stack mode issue for UDP
* experimental: Add SERVERENGINE_USE_SOCKET_REUSEPORT envvar to enable SO_REUSEPORT
2019-11-16 version 2.2.0:
* Fix IPv6 dual-stack mode issue for TCP
2019-04-22 version 2.1.1:
* Fix bug to ignore SIGDUMP_SIGNAL
2018-11-14 version 2.1.0:
* Improve socket manager security
2018-07-09 version 2.0.7:
* Add disable_sigdump option
2018-02-09 version 2.0.6:
* Avoid thread error log in ruby 2.5
2017-03-01 version 2.0.5:
* Support SERVERENGINE_SOCKETMANAGER_SOCK_DIR environment variable to change
base directory of SocketManager's socket path
2016-11-24 version 2.0.4:
* Fix bug to crash Ruby VM when SocketManager fails to bind IPv6 addresses on Windows
2016-11-22 version 2.0.3:
* Fix bug about IPv6 handling on Windows
2016-11-17 version 2.0.2:
* Fix bug to make busy loop on Windows
* Fix bug to execute unexpected "find" command on Windows
2016-10-18 version 2.0.1:
* Fix to set GID before UID, to make it sure to set GID with superuser privilege
2016-08-23 version 2.0.0:
* Add windows-pr gem dependency to get ruby_bin_path correctly
* Add command sender feature to use pipe to control workers for Windows
* Delete MultiprocessLogDevice implementation to use Ruby's one always. This
means removal of backward workaround code for Ruby < 2.1.
* Refactor modules and methods to clean internal file dependency Internal
symbol `ServerEngine::Daemon::Signals` is moved to `ServerEngine::Signals`
* Add example script to run servers
* Fix required Ruby version to 2.1 or later
2016-05-19 version 1.6.4:
* Refactor to delete some warnings
* Fix infinite self call bug in SignalTread
* Add ruby 2.1 support for TravisCI
2016-04-27 version 1.6.3:
* Fix Socket Manager for UDP to adapt to ipv6
* Fix Socket Manager not to join thread in Ruby 2.1
* Fix Socket Manager to identify all localhost address
* Fix ruby dll path on Ruby x64
2016-04-14 version 1.6.2:
* Fix to use Etc instead of id command in change_privilege for windows
* Fix signal handler on Server class to be configurable
* Fix to use spawn when damonize on windows
2016-03-04 version 1.6.1:
* Fix CloseHandle definition in winsock
2015-01-07 version 1.6.0:
* Added SocketManager, a utility class for multiprocess servers to listen on
the same TCP or UDP port dynamically.
* Added a new attr_reader accessor at Daemon#server and Supervisor#server
* Added ServerEngine.windows? method to check Windows platform
* ProcessManager now considers Windows platform
2015-09-28 version 1.5.11:
* Fix unexpected logger option handling [#22]
* Fix gem homepage link
2014-10-27 version 1.5.10:
* Added worker_type=spawn (experimental)
* Fixed Worker#config to reference Server#config so that Worker#reload reads
the new config reloaded by Server#reload (=ConfigLoader#reload_config) in
worker_type=thread and embedded
* Server#stop, #restart and #reload show a debug log message
2014-07-24 version 1.5.9:
* Fixed DaemonLogger#reoepen! on Ruby >= 2.1.0
2014-06-27 version 1.5.8:
* Use standard LogDevice on Ruby >= 2.1.0 imporoved at https://github.com/ruby/ruby/pull/428
2013-10-31 version 1.5.7:
* Fixed :log parameter handling
2013-10-20 version 1.5.6:
* Fixed log rotation in worker_type=process mode [#9]
* DaemonLogger supports 'trace' level
2013-09-17 version 1.5.5:
* worker_type=thread and embedded show uncaught errors caused in Worker#stop
and Worker#reload interface
* ProcessManager: enables child process heartbeat only if enable_heartbeat
option is true
* ProcessManager: doesn't call fcntl on pipe pairs if F_SETFD or FD_CLOEXEC
is not defined
* ProcessManager: added #spawn(*args) method
2013-09-10 version 1.5.4:
* SignalThread: fixed "Unexpected error can't be called from trap context"
error in Ruby 2.0 (Thanks to @jondot and @sonots)
2013-06-30 version 1.5.3:
* Daemon: uses Process::UID.from_name and Process::GID.from_name
instead of running id command
* worker_type=thread calls before_fork
* Added MultiWorkerServer#join_workers
* DaemonLogger: fixed #initialize to use config[:log_level]
2013-06-11 version 1.5.2:
* Updated default parameters of ProcessManager to be more conservative
* Daemon: added :daemonize_error_exit_code option
* Fixed ServerEngine.create
2013-06-04 version 1.5.1:
* Changed #close callback to #after_start
2013-06-01 version 1.5.0:
* First release