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