Merge /AWAY '' fix from Adeodato.
[jelmer/ctrlproxy.git] / NEWS
1  Otherwise indicated differently, all changes made by 
2         Jelmer Vernooij.
3
4 Ctrlproxy 3.0.4 UNRELEASED
5
6   BUG FIXES
7
8     * Check for empty argument to /CTRLPROXY BACKLOG (#132)
9
10         * Integrate some more standard replication backends. 
11
12         * Allow specifying a network in the password, separated by a colon (:).
13
14         * Integrate listeners into the core.
15
16         * Integrate socks support into listener code. Socks connections 
17           can now be accepted at the same port as other connections.
18
19         * Allow configuring a single listener in ~/.ctrlproxy/config.
20
21         * Several simplifications of the configuration file.
22
23         * Recognize NS as command for NickServ (#145)
24
25         * Start checking plugin versions.
26
27         * Open log file if stdout goes away.
28
29         * Make /AWAY with empty argument mark as unaway. (Adeodato Simó)
30
31   INTERNALS
32
33     * Moved some common logging code to the core.
34
35 Ctrlproxy 3.0.3 2007-07-22
36
37   BUG FIXES
38
39     * Handle 470 response correctly.
40
41         * Recognize supported channel / user modes correctly.
42         
43         * Properly store topic_set_time and topic_set_by in the 
44           linestack. (#108)
45
46     * Reset idle time when AWAY is used in auto-away (#121)
47
48         * Fix crash when using /CTRLPROXY without arguments
49
50         * Don't update config when we're disconnecting during shutdown. (#113)
51
52         * Handle 354 response correctly. (#134)
53
54     * Handle responses after forced joins correctly. (#125)
55
56         * Handle 250 response correctly. (#138)
57
58         * Handle 263 response correctly. (#135)
59
60     * Handle 330 response correclty. (#137)
61
62         * Handle 403 response correctly when sent in response to a MODE 
63           query. (#139)
64
65         * Fall back to user name if real name is empty. 
66
67         * Handle 479 responses correctly. (#142)
68
69         * Only send PRIVMSG and NOTICE lines during the BACKLOG command. (#143)
70
71     * Support SILENCE without arguments. 
72
73   INTERNALS
74
75     * Use GIOChannels for reading the motd. 
76                 (patch by Emanuele Giaquinta <e.giaquinta@glauco.it>)
77
78   PORTABILITY
79     
80     * Include netinet/in.h in src/utils.c and src/network.c. Required 
81           for building on FreeBSD. Reported by underlig.
82
83
84 Ctrlproxy 3.0.2 2007-04-15
85
86   BUG FIXES
87
88     * Support redirecting 396, 318, 437 and 330 replies. (#84)
89
90         * Fixed redirect warnings for 251, 252, 253, 254, 265 and 266.
91
92     * Don't abort when trying to send auto-AWAY while network is 
93           disconnected.
94
95         * Handle CTRLPROXY command without any arguments. (#92)
96
97     * Fixed crash when using SSL support. (#83)
98
99         * Add support for storing topic set time and topic set by nick (#97).
100
101         * Fixed CTCP source reply URL. (#86)
102
103         * Hide assertion in g_key_file_free in free_config when a network has no associated file (patch by exg)
104
105         * Fix coredump with --init when the default config cannot be opened (patch by exg)
106
107         * Fix crash when CHARSET command fails (#89, #96)
108
109         * Fall back to default charset if client charset can't be set 
110                 (patch by Emanuele Giaquinta <e.giaquinta@glauco.it>)
111
112         * Fix use of %S segfault in log_custom. (#111)
113
114         * 005-lines are now forwarded to the end-client in a more 
115       structural manner. (#94)
116         
117         * Properly expand target in log_irssi if it is a comma-separated list (#9)
118         (based on patch by Korbinian Rosenegger)
119
120     * Properly expand target in log_custom if it is a comma-separated list (#9)
121         (patch by Emanuele Giaquinta and Korbinian Rosenegger)
122
123         * Don't append extra colon before RPL_TOPICWHOTIME (Korbinian Rosenegger)
124
125         * Adding timed backlog in BACKLOG command without a channel 
126           (Korbinian Rosenegger)
127
128         * Handle disconnects of clients properly (#108)
129
130         * Fix handling of non-UTF8 characters in linestack_file.
131
132         * Don't use CHARSETs by default (#117).
133
134         * Never send origin to the server (#122).
135
136         * Added support for 307 responses. 
137
138   FEATURES
139
140     * More advanced help support
141
142         * Add LOG_LEVEL command (#101)
143
144         * Add 'make uninstall' (#95)
145
146         * Do some more config checking (#102)
147
148         * Show disconnect reason in admin network (#100)
149
150         * Add support for handling additional 005 parameters: MAXCHANNELS,
151                 NICKLEN, MAXBANS, MODES, NICKLEN, MAXBANS, TOPICLEN, KICKLEN, 
152                 AWAYLEN, MAXTARGETS, WALLCHOPS, WALLVOICES, RFC2812, PENALTY,
153                 FNC, SAFELIST, USERIP, CNOTICE, KNOCK, VCHANNELS, WHOX, CALLERID,
154                 ACCEPT, KEYLEN, USERLEN, HOSTLEN, MAXCHANNELLEN, 
155                 MAXNICKLEN, DEAF, ELIST, MAXPARA, NAMESX, SECURELIST, WATCH
156                 REMOVE, MAP, OVERRIDE, VBANLIST and SILENCE
157
158         * Print actual address that a listener bound to.
159
160   INTERNALS
161
162     * Remove is_private from line struct (#12).
163                 (patch by Emanuele Giaquinta <e.giaquinta@glauco.it>)
164
165         * Implement ISON, USERHOST, WHO, WHOIS, JOIN, PART, AWAY for admin networks. (#99)
166
167   PORTABILITY
168
169     * Looks for check using pkg-config now.
170
171     * Fix handling of addresses when listening on FreeBSD. (#87)
172
173   DOCUMENTATION
174         
175         * Added more documentation to the help system. (#106)
176
177
178 Ctrlproxy 3.0.1 2007-01-04
179
180   BUG FIXES
181
182     * Logging for network state information has been simplified and been 
183           made less verbose.
184
185         * 324 and 329 replies are now cached.
186
187         * 352 and 315 replies are now (optionally) cached. The "max_who_age" 
188           setting can be set to the number of seconds that results should be cached.
189           This prevents "Excess Flood" errors when connecting using several xchat clients
190           at once. Can be disabled by setting max_who_age=0 (the default).
191
192     * Fixed bug in administration command (reported by Daniel Poelzleithner)
193
194     * Fix invalid assert in auto-away (reported by Daniel Poelzleithner)
195
196         * Fix rejoining parted channels on restart (#78)
197
198         * Fix erroneus toggling of "report-time" setting (#77)
199         
200         * Fix endless loop in logging system when debug level is 
201           set to 5 (reported by _static_).
202         
203         * listener configuration is no longer truncated at exit.
204
205         * Fix channel information not being replicated for the administration 
206           network.
207
208         * Allow ports different than 6680 in ctrlproxy --init. (#85)
209
210   PORTABILITY
211   
212     * Added replacement functions for g_file_{set,get}_contents, for those 
213       with GLib < 2.8
214     
215   DOCUMENTATION UPDATES
216
217     * Updated command documentation (thanks, Korbinian Rosenegger)
218
219     * Updated requirements
220
221   MINOR CHANGES
222
223     * Fixed several compiler warnings
224
225 Ctrlproxy 3.0   2006-12-08
226
227   This list is not complete. Several subsystems in ctrlproxy have been 
228   rewritten.
229
230   BUG FIXES
231
232     * NetBSD portability fixes. (Adrian Portelli)
233
234     * Properly support strict-rfc1459 comparisons.
235
236         * No longer depend on specific order of USER and NICK commands.
237
238         * Fixed 100% CPU usage bug.
239
240         * Fix large number of memory leaks.
241
242         * Fix crash bug in log_custom (Korbinian Rosenegger)
243
244         * Support 'true' RFC1459 string comparison.
245
246         * Respect CASEMAPPING sent by server.
247
248         * Support different NICK sent by client in replication.
249
250         * Make repl_* work when NICK sent by client differs from current NICK.
251
252         * Support mIRC and ksirc.
253
254         * Fix bug with setting PRIVATE too often.
255
256         * Fix issue with NickServ IDENTIFY'ing when connecting to server.
257         
258         * Fix problems with incorrectly added colons.
259
260   INTERNALS
261
262         * Reduce number of files generated by configure.
263
264         * Moved source control system to Bazaar (http://www.bazaar-vcs.org/)
265
266         * Use separate include files rather than one large one.
267
268         * Get rid of complicated filter class system.
269
270         * Several modules have been integrated into the ControlProxy binary 
271           to avoid (engineering) overhead.
272
273         * There now is a testsuite that tests some of the internal functions.
274
275         * Add 'debug' module for easier debugging.
276
277   NEW FEATURES
278
279         * Removed dependency on popt and libxml.
280
281     * Enhance custom_log (Alexander Wild).
282
283         * Add support for %B, %e and %Y in log_custom (Korbinian Rosenegger)
284
285         * Support CONNECT proxy command as used by irssi and other clients.
286
287         * Use new CtrlProxy-specific logging system. 
288           Logs go to ~/.ctrlproxy/log by default now when in daemon mode.
289
290         * nickserv is now "self-learning".
291
292         * Add socks module to allow connecting using SOCKS.
293
294         * Install default configuration that is used when the user 
295           does not have a local configuration.
296
297         * Support autogenerating a configuration using `ctrlproxy --init'.
298
299         * Uses GNUTLS now rather than OpenSSL.
300
301         * Remove linestack_memory and make linestack_file the default.
302
303         * Admin module can now also work as a seperate ('virtual') network.
304
305         * Make reconnect_timeout changeable (Alexander Wild)
306
307         * Add inetd-style client support.
308
309         * Support non-blocking connects. (Daniel Poelzleithner)
310
311         * Parse 005 line sent by server for PREFIX, CHANTYPES, NETWORK.
312
313         * Add ability to change NICK when away.
314
315         * Add help support in admin module (Daniel Poelzleithner).
316
317         * Allows connecting to networks on ~/.ctrlproxy/socket using 
318           unix domain sockets.
319
320         * Write out PID file.
321
322         * lots of other small improvements