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