Add support for remote MODUNLOADs and MODRELOADs
[seven-1.x.git] / doc / whats-new-2.0.txt
blobb71e2420a487df6f5ccc8da4409f475e437b6dd1
1 $Id: whats-new-2.0.txt 26 2006-09-20 18:02:06Z spb $
3 The following is a list of major changes between ircd-ratbox-1.x and
4 ircd-ratbox-2.0
6 Config File
7 -----------
8 - name="foo"; is no longer supported in connect {}; operator {}; and
9   class {};.  You must now use connect "irc.foo.com" { ... }; etc.
10 - operator {}; no longer contains a class
11 - kline_with_connection_closed is gone, replaced with 
12   kline_reason = "Connection closed";
13 - logging {}; is gone, replaced with more advanced log system - see
14   example.conf log {}; for more info.  Note, by default only very basic
15   information will be logged.
16 - support for a specific opers initial umodes on /oper, by umodes = ...;
17   in operator {};
18 - added stats_e_disabled = yes|no; to general {};, controlling whether stats
19   e (which can contain server ips) is never shown to anyone
20 - support for compressed|encrypted|topicburst|autoconn = yes|no; is gone,
21   replaced with flags = compressed, encrypted, topicburst, autoconn;
22 - support for individual auth flags "kline_exempt = yes"; etc removed, now
23   must use flags = ...; method
24 - support for individual oper flags "kline = yes;" etc removed, now must use
25   flags = ...; method.
26 - extended flags = ...; method to allow negation, so you may prefix a flag
27   with '~' to negate it.  Default oper flags are operwall, remoteban and
28   encrypted (indicates password is encrypted with mkpasswd)
29 - new flags in shared {};, tkline, txline and tresv, allowing temp only of
30   kline, xline and resv respectively.
31 - new flags in cluster {}; tkline, txline and tresv which will cluster
32   only the temp of each type.  kline, xline and resv will now only
33   cluster the permanent ones of each type.
34 - cluster {}; no longer allows a server to place klines etc locally, it
35   simply dictates who we send to.
36 - shared {}; is now ordered top-down and the first one that matches the
37   user@host and server will be used, and the flags taken from this.  This
38   means if a remote oper matches a shared block without kline privs, even
39   though there is a shared {}; block they match under it with kline privs 
40   they will not be able to place klines.
41 - added invite_ops_only to channel {}; which will restrict the use of INVITE
42   to chanops on that channel always, rather than just to +i chans.
44 Client
45 ------
46 - /help is now available for all users, as its now cached in memory.
47   removes config option use_help from general {};
48 - default CHANNELLEN for local clients is now 50
49 - AWAYLEN added to 005, default is 90
50 - kick/part/quit now use REASONLEN (120) rather than TOPICLEN
51 - umode +g now exempts users messaging themselves
53 Oper
54 ----
55 - kline/dline <nick> is no longer supported
56 - oper reasons are now more fully supported
57 - opers can now be hidden from stats p, by flag "invisible"
58 - XLINEs no longer contain a type field, theyll now all just silently reject
59 - xlines are now 'tracked' - stats X shows how many times each xline has
60   rejected a client
61 - temp xlines and resvs
62 - klines set against spoofed users will now take effect when the user
63   connects as well, if the user is not kline_exempt
64 - trace spy now contains target param if its against a single user
65 - the old "you need xline=yes;" notices have been replaced by ERR_NOPRIVS
66   (numeric 723)
67 - umode +C, machine parsable client connect/exit notices which includes the
68   two unused fields sent in the USER command
70 Channels
71 --------
72 - persistent channels have been removed
73 - quiet_on_ban now uses a cache, which should speed it up
75 Server <-> Server Protocol
76 --------------------------
77 - support for bursting away messages on connect, controlled by
78   burst_away = yes|no; in general {};
79 - TS6, the new server <-> server protocol.  As part of this you *must*
80   specify a "sid" in serverinfo {}; that is three alphanumeric characters,
81   and must start with a digit.  use_ts6 = yes|no; in general controls
82   whether it is actually used or not.  For more information, see:
83   http://www.ircd-ratbox.org/TS6.txt 
84 - fakename in connect {}; is gone, you can no longer mask servers.
85 - support for encrypted links are gone
86 - global capabilities.  The server will now inform the rest of the network
87   over ENCAP about the capabilities of other servers.
89 Misc
90 ----
91 - support for message translation has been removed.  If you want these,
92   modify messages.tab and distribute that.
93 - most of server hiding is gone, only thing that is left is flattened links
94 - flattened links cache is now stored in memory instead of a file
95 - nick delay.  any client which splits will have their nick 'locked', until
96   a remote client uses this nick, or until it expires after the time nick_delay 
97   in general {}.  This prevents the masses of kills from clients 'regaining'
98   nicknames on a short split.
99 - support for disabling bold chars etc in channel names for local users, to
100   prevent faking channels.  disable_fake_channels = <yes|no>; in general {};
102 Code cleanups
103 -------------
104 - remove mapped ipv4 in ipv6 sockets, the correct native socket will now be
105   used for each.
106 - module API has been rewritten, 1.x modules will no longer work.
107 - hook API has been rewritten
108 - proper handlers for ENCAP commands
109 - support for vms ast i/o
110 - connect {}; and operator {}; are now in their own structs, saving memory
111   in ConfItem
112 - shared/cluster now use the same struct and flags
113 - various other code cleanups thatd take all year to list ;)