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