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