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