ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/NEWS
(Generate patch)

Comparing:
ircd-hybrid-7.2/RELNOTES (file contents), Revision 683 by michael, Thu Jun 15 14:28:59 2006 UTC vs.
ircd-hybrid/trunk/NEWS (file contents), Revision 3028 by michael, Tue Feb 25 10:49:10 2014 UTC

# Line 1 | Line 1
1 < -- ircd-hybrid-7.2.2 RELNOTES
2 < o) Added channel::disable_fake_channels config directive
3 < o) Fixed broken FORCEJOIN  (contrib)
4 < o) Added missing documentation for connect::vhost
5 < o) Fixed problem with G-Line voting
6 < o) Fixed "STATS ?" so it doesn't report negative traffic statistics
7 < o) Fixed core in m_mkpasswd.c  (contrib)
8 < o) Reduced memory usage for channel members
9 < o) Added general::stats_e_disabled which simply disables "STATS e"
10 <   for other operators and administrators
11 < o) Ignore signal SIGXFSZ to prevent the daemon from dying on missconfigured
12 <   file size limits
13 < o) Slight optimizations to the block allocator
14 < o) Fixed harmless bug that could result in incorrect bytes sent statistics
15 <   in "STATS t"
16 <
17 <
18 < -- ircd-hybrid-7.2.1 RELNOTES
19 < o) Fixed build on SRV4
20 < o) Fixed problem where ircd would disconnect all SSL connections
21 < o) Added initial CAP support.  Additional documentation can be found
22 <   in doc/technical
23 < o) Speeded up command parsing
24 < o) Fixed occasional core dump on UN*LINE
25 < o) Fixed bug where particular clients would always receive
26 <   "Load is temporarily too heavy" message
27 < o) Improved memory consumption, i.e. memory consumption has
28 <   been reduced for remote clients
29 < o) Fixed possible core in case default_cipher_preference directive isn't set
30 < o) Fixed "CHANSERV INVITE" bug with anope services
31 < o) Updated example configuration files to reflect new topicburst flags
32 <   directive in connect{} blocks
33 < o) Fixed core if using the operator::umodes directive
34 < o) Don't allow shared k-lines to be set without a valid reason
35 < o) Improved channel ban match processing.  This also fixes CIDR bans
36 <
37 <
38 < -- ircd-hybrid-7.2.0 RELNOTES
39 < o) Fixed broken operwall = yes;
40 < o) Added 'umode' directive to oper{}.  List of modes to get on /OPER.
41 <   This behaves exactly like H6's sixth O line field
42 < o) Fixed a WHOIS bug
43 < o) Fixed bug where we would increase Count.invisi even
44 <   if general::invisible_on_connect is turned off
45 < o) Removed invite_ops_only, controlled by paranoid (+p) now
46 < o) Better DDoS protection
47 < o) Fixed va_list bug on amd64
48 < o) Fixed /dev/poll
49 <
50 <
51 < -- ircd-hybrid-7.2rc1 RELNOTES
52 < o) ircd can dynamically change all its client/fd limits at runtime
53 < o) Added epoll as the primary I/O engine under Linux
54 < o) Local channels will not show up in remote /WHOIS
55 < o) Added hidden_name which allows customized hidden server names
56 < o) Added restrict_channels to define a static channel set
57 < o) Added --disable-gline-voting to disable G-Line votes
58 <   for small networks or people who don't want it.
59 < o) Allow accumulating more ip= entries in an exempt{} block
60 < o) Various improvements and bugfixes
61 < o) Make win32 build usable
62 < o) Fixed ban caching bug
63 < o) Cosmetical fixes to TIME
64 < o) Get "KLINE nick" to work with clients that have a spoof
65 < o) Fixed RESV/XLINE bug in conjunction with names that include escaped
66 <   characters such as \*, \?, \#.
67 <
68 <
69 < -- ircd-hybrid-7.2beta1 RELNOTES
70 < o) Usermode +G, like +g, but allow messaging from people on common channels
71 < o) Usermode +D - "deaf", don't receive channel messages
72 < o) RXLINE and RKLINE - commands for setting perl compatible regular expression
73 <   based K and X lines
74 < o) Join flood is now detected and reported to +b opers
75 < o) Re-added REJECT_HOLD - lock clients for a while before throwing away
76 < o) ping_warning, a class{} option to notify opers before "Ping timeout"
77 < o) New hooking system, modularized: usermodes, iauth, message filtering etc.
78 < o) Network I/O speedups
79 < o) Various cleanups and bugfixes
80 < o) Support for client SSL
81 < o) Support for services (contrib/m_services.c)
82 < o) IP cloaking module (contrib/ip_cloaking.c)
83 < o) Native win32 build
84 < o) The password set in auth::password can now be encrypted
85 < o) Introduced new listen::flags directive.  Currently available flags are
86 <   'ssl' and 'hidden'.  Please read example.conf for further details
1 > -- ircd-hybrid-8.1.14 Release Notes
2 > o) WHOWAS now honors serverhide::disable_remote_commands
3 > o) Improved TS6 inter-server communication
4 > o) Minor code cleanups and speed enhancements
5 > o) Added 'unxline' oper flag
6 > o) Added support for "userhost-in-names" client capability
7 > o) ircd now allows private rsa keys larger than 2048 bits
8 > o) Fixed bug where signals stopped from working after restarting
9 >   the ircd via SIGINT
10 > o) Fixed bug where certain irc clients could not reconnect via TLS/SSL
11 > o) Fixed long-standing bug where +p channels have been shown
12 >   in the /whois reply
13 >
14 >
15 > -- ircd-hybrid-8.1.13 Release Notes
16 > o) Fixed EOB not working for remote servers (resulted in fake
17 >   direction notices)
18 > o) Fixed remote client connection notices for servers that are
19 >   more than one hop away
20 > o) Fixed bug where ircd didn't timeout SSL connections that
21 >   haven't finished the SSL handshake
22 > o) Fixed several bugs with server hiding
23 > o) Updated/fixed help files
24 > o) WHOIS no longer sends a notice to +y operators
25 >
26 >
27 > -- ircd-hybrid-8.1.12 Release Notes
28 > o) RPL_WHOISMODES now uses the 379 numeric
29 > o) Serial number is now shown on start up
30 > o) Fixed possible channel mode desynch with services
31 > o) Fixed TS6 support with LOCOPS
32 > o) Minor code cleanups
33 > o) Fixed file descriptor leak with empty help files
34 > o) Fixed issue with WEBIRC where hostnames were
35 >   not validated
36 >
37 >
38 > -- ircd-hybrid-8.1.11 Release Notes
39 > o) Administrators may now see channel modes in /LIST
40 > o) Fixed compile error on BSD systems when building with kqueue()
41 >
42 >
43 > -- ircd-hybrid-8.1.10 Release Notes
44 > o) Fixed bug with kqueue() where it occasionally dropped updates
45 > o) Changed WHOIS to show a client's certificate fingerprint
46 >   to administrators only
47 > o) The WHO reply now shows whether or not a nickname has
48 >   been registered with NickServ. ('r' status flag)
49 > o) Fixed some flaws with server hiding
50 > o) Fixed bug where "STATS P" would leak ip addresses to remotely connected
51 >   administrators, even if serverhide::hide_server_ips was set to 'yes'
52 > o) Services coders: added SVSKILL
53 >
54 >
55 > -- ircd-hybrid-8.1.9 Release Notes
56 > o) Added usermode +W. Users connected via a webirc gateway get this
57 >   mode set by servers.
58 > o) /WHOIS now shows if a client is connected via a webirc
59 >   gateway
60 > o) Administrators may now see +s channels a user is in with /WHOIS.
61 >   Secret channels are prepended with a tilde in the /WHOIS
62 >   reply.
63 > o) Administrators are now able to see all the user modes a user has
64 >   set via /whois
65 >
66 >
67 > -- ircd-hybrid-8.1.8 Release Notes
68 > o) Fixed bug that would lead to a desynchronized nick database
69 >   throughout the entire network if using services enforced
70 >   nick names (SVSNICK)
71 > o) Cleaned up/modernized build system
72 > o) Add -fstack-protector to CFLAGS if available. Basically checks for
73 >   buffer overflows/stack-smashing attacks
74 > o) When using anope 1.9/2.0 services, /WHOIS now shows the account name
75 >   of a registered/identified client (numeric 330)
76 > o) Administrators can now see +s channels in /LIST
77 >
78 >
79 > -- ircd-hybrid-8.1.7 Release Notes
80 > o) Fixed issue with channel mode +n having no functionality at all
81 > o) Fixed SSL certificate fingerprint validation for outgoing server connects
82 > o) Updated several documentation files
83 >
84 >
85 > -- ircd-hybrid-8.1.6 Release Notes
86 > o) Fixed possible core with empty motd files
87 >
88 >
89 > -- ircd-hybrid-8.1.5 Release Notes
90 > o) Fixed bug that would prevent servers from linking together
91 >   if connect::aftype isn't set
92 >
93 >
94 > -- ircd-hybrid-8.1.4 Release Notes
95 > o) Added 'xline' and 'resv' logging types. See doc/reference.conf
96 >   for more information
97 > o) Fixed bug where remote /STATS requests were not rate limited
98 > o) Fixed core with empty auth::spoof entries
99 > o) Increased oper/auth/connect password length limit from 20 to 128
100 > o) Minor fixes to nickflood control code
101 >
102 >
103 > -- ircd-hybrid-8.1.3 Release Notes
104 > o) Fixed possible core on "STATS z"
105 > o) Revised doc/reference.conf
106 > o) Fixed broken --disable-libgeoip switch
107 >
108 >
109 > -- ircd-hybrid-8.1.2 Release Notes
110 > o) Added general::cycle_on_host_change configuration option
111 > o) Added general::stats_u_oper_only configuration option
112 > o) Added support for SHA-256 ssl certificate fingerprint based operator{}
113 >   and connect{} blocks.
114 >   In conjunction with Anope 1.9/2.0 IRC-services, clients are now also able
115 >   to automatically identify for their nick with ssl certificate
116 >   fingerprints
117 > o) Added operator::ssl_connection_required configuration option. See
118 >   doc/reference.conf for more information
119 > o) Added usermode +S (client is connected via SSL/TLS). Allows services
120 >   to keep track of what users are connected via SSL, and allows to see
121 >   ssl-status of remote clients in a /whois
122 > o) Fixed a server name leak with server hiding enabled. Reported by
123 >   Adam <adam@anope.org>
124 >
125 >
126 > -- ircd-hybrid-8.1.1 Release Notes
127 > ########################################################################
128 > o) IMPORTANT: moved disable_remote_command configuration directive from
129 >   general{} block to serverhide{} block
130 > ########################################################################
131 > o) Minor code cleanups/performance improvements
132 > o) Fixed bug where opers could see LOCOPS messages even if they don't have
133 >   the +l mode set
134 > o) Fixed bug where non-SSL clients could join +S channels on non-SSL servers
135 > o) Implemented motd{} configuration blocks. See doc/reference.conf for more
136 >   information
137 > o) "STATS T" shows configured MOTD files
138 >
139 >
140 > -- ircd-hybrid-8.1.0 Release Notes
141 > o) Minor code cleanups/performance improvements
142 >
143 >
144 > -- ircd-hybrid-8.1.0rc1 Release Notes
145 > o) Fixed broken spoofs
146 >
147 >
148 > -- ircd-hybrid-8.1.0beta5 Release Notes
149 > o) Removed 'remote', and 'global_kill' oper flags, and added 'connect',
150 >   'squit', and 'kill' flags for better fine-tuning instead. Whether or
151 >   not a specific action is allowed on a remote server can be controlled
152 >   by appending the ':remote' flag. For example: 'kill' allows only local
153 >   clients to be killed, whereas 'kill:remote' allows to issue a KILL for
154 >   remote clients
155 > o) Added 'locops' and 'wallops' to irc-operator flags
156 > o) Improve/cleanup HELP system
157 >
158 >
159 > -- ircd-hybrid-8.1.0beta4 Release Notes
160 > o) Implemented channel mode +M. Clients that haven't identified their
161 >   name with NickServ may not speak in a channel that has this mode set
162 > o) Fixed weird idletimes shown in /trace
163 > o) Added 'nononreg' (+R) to general::oper_umodes
164 > o) Added user mode +F (can see remote client connect/exit notices)
165 >
166 >
167 > -- ircd-hybrid-8.1.0beta3 Release Notes
168 > o) PCRE support has been dropped
169 > o) "STATS o" now shows how many times an oper{} block has been used.
170 >   Similar to STATS x|q"
171 > o) Implemented channel mode +c. Known from other ircds, this mode basically
172 >   prevents users from sending messages including control codes to a channel
173 >   that has this mode set
174 > o) Fixed bug where bans were not checked against non-channel members when
175 >   sending messages to a channel
176 > o) Removed channel::quiet_on_ban configuration option. This feature is
177 >   now enabled by default
178 >
179 >
180 > -- ircd-hybrid-8.1.0beta2 Release Notes
181 > o) Fixed broken compile with libGeoIP disabled
182 > o) Code cleanups; working towards stabilization and improved performance
183 > o) Removed operflag 'nick_changes'. Operators can now set +n at will
184 > o) Fixed shared{} blocks not working as expected
185 > o) Fixed spoofs not working as expected
186 >
187 >
188 > -- ircd-hybrid-8.1.0beta1 Release Notes
189 > ########################################################################
190 > o) IMPORTANT: name/channel entries can't be stacked any longer within
191 >   a single resv{} block. Each entry now requires its own resv{} block.
192 >   Read doc/reference.conf for more details
193 > #######################################################################
194 > o) Added resv::exempt configuration option. Exempt can be either a
195 >   ISO 3166 alpha-2 two letter country code, or a nick!user@host mask.
196 >   CIDR is supported
197 > o) Removed channel::restrict_channels configuration option
198 > o) Preliminary libGeoIP support. Currently only used for exempt entries
199 >   in resv{} blocks
200 > o) Improved WEBIRC authentication; added 'webirc' to auth::flags.
201 >   A "webirc." spoof is now no longer required
202 > o) Implemented new memory pool allocator which basically is based upon Tor's
203 >   mempool allocator for Tor cells
204 > o) Major code cleanups
205 > o) Implemented new binary database storage for X-,D-,K-,G-Lines and RESVs.
206 >   Temporary bans are now stored as well and will persist after a reboot
207 > o) Channel based resv{} blocks may now contain wildcards
208 > o) NICK/JOIN now shows the actual reason of reserved nick-/channelnames
209 > o) contrib/ and its content has been removed from the tree
210 > o) Added serverhide::hide_services configuration option
211 > o) Added 'nononreg' (+R) to oper::umodes and general::oper_only_modes
212 > o) Added support for "away-notify" client capability
213 >
214 >
215 > -- ircd-hybrid-8.0.9 Release Notes
216 > o) Fixed bug where ircd would sometimes drop a services link because
217 >   of a missing argument to the SVSMODE command
218 > o) Fixed weird idletimes shown in /trace
219 >
220 >
221 > -- ircd-hybrid-8.0.8 Release Notes
222 > o) "STATS s" now shows configured services{} blocks as well
223 > o) Fixed compile warnings, minor code cleanups and optimizations
224 > o) Increased nickname history length to 32768
225 > o) Unidentified/unregistered nicks may not speak in +R channels
226 >
227 >
228 > -- ircd-hybrid-8.0.7 Release Notes
229 > o) Services may now set a channel topic without joining the channel first
230 > o) Fixed bug where /whois would send empty sockhost information on TS5
231 >   servers
232 > o) Remote server connection and split notices now go to new usermode +e.
233 >   These previously used usermode +x.
234 > o) Services may now change the host of a specific user
235 >   via "SVSMODE <timestamp> <target> +x <hostname>"
236 >
237 >
238 > -- ircd-hybrid-8.0.6 Release Notes
239 > o) Fix bug where idle time sometimes is 0 even if the client didn't
240 >   send any private message
241 > o) Fixed possible core in try_parse_v4_netmask()
242 >
243 >
244 > -- ircd-hybrid-8.0.5 Release Notes
245 > ########################################################################
246 > o) IMPORTANT: nick and topic lengths are now configurable via ircd.conf.
247 >   A max_nick_length, as well as a max_topic_length configuration option
248 >   can now be found in the serverinfo{} block
249 > ########################################################################
250 > o) Fixed build on GNU/Hurd as reported by Dominic Hargreaves
251 > o) Fixed log files not getting reopened after /rehash
252 > o) Improved logging of configuration file issues
253 > o) ircd.pid has been accidentally saved in /var instead of /var/run
254 > o) Linux RT signal support for notification of socket events has been dropped
255 > o) Fixed "STATS Y|y" sometimes sending weird sendq/recvq values
256 > o) INFO now also shows configured values of 'disable_fake_channels',
257 >   and 'stats_e_disabled'
258 > o) m_webirc.c is now officially supported, and has been moved from contrib/
259 >   to modules/
260 > o) /whois, /stats p, and /trace may now show fake idle times depending on
261 >   how the new class::min_idle and class::max_idle configuration directives
262 >   have been configured. This feature basically works in the same
263 >   way as it does in csircd
264 > o) The configuration parser now does support 'year' and 'month' units
265 >
266 >
267 > -- ircd-hybrid-8.0.4 Release Notes
268 > o) Fixed possible core on USERHOST/ISON with optimization enabled
269 > o) Fixed bug where can_flood sometimes didn't work as expected
270 >
271 >
272 > -- ircd-hybrid-8.0.3 Release Notes
273 > o) Fixed core on UNDLINE
274 > o) XLINE/KLINE/RESV/DLINE/SQUIT and KILL now have the same default reason
275 >   if a reason hasn't been specified
276 >
277 >
278 > -- ircd-hybrid-8.0.2 Release Notes
279 > o) Minor updates to the build system
280 > o) Fixed broken --enable-assert configure switch
281 > o) Fixed bug where timed events stopped from working if the system's
282 >   clock is running backwards
283 > o) STATS q|Q now shows how many times a resv{} block has been matched
284 > o) Fixed contributed WEBIRC module
285 > o) IRC operators may now again see server generated nick rejection notices
286 >
287 >
288 > -- ircd-hybrid-8.0.1 Release Notes
289 > o) Fixed broken CIDR support for CHALLENGE based irc operator logins
290 > o) Fixed class limits not properly applying to oper{} blocks
291 > o) Fixed possible TBURST desynchronization with services
292 > o) Fixed TBURST sending server's name to clients if it's a hidden server
293 >
294 >
295 > -- ircd-hybrid-8.0.0 Release Notes
296 > o) Fixed an off-by-one with spoofs. Spoofs are now also checked for
297 >   invalid characters
298 > o) Removed general::use_whois_actually configuration directive. This is
299 >   now enabled by default
300 > o) Minor SQUIT handling fixes
301 > o) Fixed bancache not being updated on CHGHOST/CHGIDENT
302 >
303 >
304 > -- ircd-hybrid-8rc1 Release Notes
305 > o) Removed general::client_flood configuration option and added the
306 >   new 'recvq' configuration directive to class{} blocks.
307 >   The max size of a receive queue can be seen in "STATS Y"
308 >   for each class
309 > o) Allow the '[' and ']' characters in server description
310 >
311 >
312 > -- ircd-hybrid-8beta3 Release Notes
313 > o) Fixed wrong syntax in several language files
314 > o) Removed &localchannels
315 > o) PRIVMSG to opers@some.server is no longer supported
316 > o) Fixed bug that could lead to topic desynchronization
317 > o) Removed serverhide::disable_hidden configuration option
318 > o) Dropped ircd-hybrid-6 GLINE compatibility mode
319 > o) Removed use_invex, use_except and use_knock configuration options.
320 >   These features are now enabled by default
321 >
322 >
323 > -- ircd-hybrid-8beta2 Release Notes
324 > o) channel::disable_fake_channels now also disables ascii 29 (mIRC italic)
325 >   when set to yes
326 > o) Added channel::max_chans_per_oper configuration directive. The old way
327 >   was to let operators join three times the amount of max_chans_per_user
328 > o) Replaced MODLOAD, MODUNLOAD, MODRELOAD, MODLIST and MODRESTART commands
329 >   with the new MODULE command which can be fed with the LOAD, UNLOAD, RELOAD
330 >   and LIST parameters.
331 >   MODRESTART has been entirely removed. Use "MODULE RELOAD *" to reload
332 >   all modules
333 > o) Added back server notice when a client tries to obtain a reserved nick name
334 > o) Removed OMOTD module
335 > o) Added 'set' to operator privilege flags. Gives access to the "SET" command
336 > o) Improved TS6 support
337 > o) Channel keys/passwords are now case sensitive
338 >
339 >
340 > -- ircd-hybrid-8beta1 Release Notes
341 > o) Implemented full services support, including but not limited to the
342 >   following changes:
343 >   - Added SVSNICK, and SVSMODE command handlers
344 >   - Added service stamps to NICK/UID messages
345 >   - Added SVS to server capabilities (CAPAB). SVS capable servers can
346 >     deal with extended NICK/UID messages that contain service IDs/stamps.
347 >   - Changed rejected client notices to go to new usermode +j.  These
348 >     previously used usermode +r.
349 >   - Added usermode +r (registered nick) and channelmode +r (registered channel)
350 >   - Added usermode +R (only registered clients may send a private message)
351 >   - Added channelmode +R (only registered clients may join that channel)
352 >   - Various services shortcuts have been added (/NS, /CS, /NICKSERV, /CHANSERV, etc.)
353 >   - Added services{} block to ircd.conf
354 >   - Added services_name directive to general{} block
355 >   - Added GLOBOPS mainly for services compatibility, but can be used by operators, too
356 > o) Removed RKLINE and RXLINE commands. Regular expression based bans should
357 >   only be added via ircd.conf
358 > o) Added 'globops', 'restart', 'dline', 'undline' and 'module' operator
359 >   privilege flags. Read doc/reference.conf for further explanation of what
360 >   these flags control
361 > o) Removed Idle-time klines
362 > o) Cleaned up modules API. Old modules won't work anymore
363 > o) Removed general::burst_away configuration directive. AWAY bursts are now
364 >   controlled via connect::flags explicitly
365 > o) Introduced new logging subsystem including log rotation based on
366 >   file sizes. Log timestamp format is ISO8601 now
367 > o) Added support for remote D-lines
368 > o) Added usermode +H which is basically a replacement for the hidden_admin and
369 >   hidden_oper operator flags. With usermode +H, irc operator status can now
370 >   be hidden even on remote servers
371 > o) Added CIDR support for operator{} blocks
372 > o) Removed the servlink program. ircd-hybrid can now make use of
373 >   SSL/TLS for inter-server communication.
374 >   NOTE: compressed server links are of course still available, but a SSL/TLS
375 >   connection is required, as compression is now handled via OpenSSL
376 > o) Removed 'ssl_server_protocol' configuration directive and
377 >   added 'ssl_client_method' and 'ssl_server_method' instead.
378 >   Both of these options can now be changed at runtime
379 > o) Oper login IDs are no longer limited to NICKLEN*2
380 > o) Removed channel::burst_topicwho configuration option. Topicsetters are
381 >   now sent by default
382 > o) "STATS Y|y" now reports CIDR limits as well
383 > o) Added m_webirc.c to contrib/
384 > o) Overall code cleanup and speed improvements
385  
386   --------------------------------------------------------------------------------
387  
90 BUGS: Major bugs in this release are listed in BUGS
91
388   BUG REPORTS: If you run this code and encounter problems, you must report
389 < the bug in one of the following ways:
390 <  a) By EMAIL to bugs@ircd-hybrid.org
391 <  b) On http://forum.ircd-hybrid.org/
96 < Please include a gdb backtrace and a copy of your setup.h and
97 < ircd.conf with any report  (with passwords and other sensitive
389 > the bug by EMAIL to bugs@ircd-hybrid.org
390 > Please include a gdb backtrace and a copy of your config.h and
391 > ircd.conf with any report (with passwords and other sensitive
392   information masked).
393  
394   DISCUSSION: There is a mailing list for discussion of hybrid issues,
395 < including betas.  To subscribe, use this link:
395 > including betas. To subscribe, use this link:
396      https://lists.ircd-hybrid.org/mailman/listinfo/hybrid
397 < This is the proper place to discuss new features, bugs, etc.  Posting here
104 < is much more likely to get something done than ranting on #TZ.
105 < You can also use Hybrid forums at http://forum.ircd-hybrid.org/
397 > This is the proper place to discuss new features, bugs, etc.
398  
399   Questions/comments directed to bugs@ircd-hybrid.org
400  
401 < Please read doc/whats-new.txt for information about what is in this release
110 <
111 < Other files recommended for reading: BUGS, README.FIRST, INSTALL
401 > Other files recommended for reading: README, INSTALL
402  
403   --------------------------------------------------------------------------------
404   $Id$

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)