source: doc/CHANGES @ 2945c6f

Last change on this file since 2945c6f was 262bc7e, checked in by Wilmer van der Gaast <wilmer@…>, at 2010-07-21T00:39:47Z

1.3dev changelog. Should release that soon, sticking a version# on it makes
more people use it.

  • Property mode set to 100644
File size: 43.4 KB
RevLine 
[fb4e9a3f]1This ChangeLog mostly lists changes relevant to users. A full log can be
2found in the bzr commit logs, for example you can try:
3
4http://bugs.bitlbee.org/bitlbee/timeline?daysback=90&changeset=on
5
[262bc7e]6Version 1.3dev:
7- Loads of new stuff, mostly ready for a new major release, but starting with
8  a dev snapshot. A few changes that were planned for a long time already:
9- Rewrote the IRC core, which brings:
10  * Support for multiple (control) channels, so you can have one channel per
11    buddy group, per IM account/protocol, or for example a &offline with all
12    offline contacts. See "help channels" for information on how to use this.
13  * You can also leave and rejoin all channels. Being in &bitlbee is no
14    longer required.
15  * Now you can start groupchats by just joining a new channel and inviting
16    contacts. (The "chat with" command still works as well.)
17  * You can change your nickname, whenever you want.
18  * Root commands:
19    + To hopefully resolve confusion about the "account set" syntax, the
20      ordering was changed slightly: "account set acc/setting value"
21      becomes "account acc set setting value". Obviously the same order
22      should now be used for other account subcommands.
23    + Shortcuts: Instead of "account list" you can say "acc li".
24  * /whois shows idle/login times of your contacts when available.
25  * paste_buffer (previously known as buddy_sendbuffer) now works for chats
26    as well.
27  * The nick_source setting was replaced with a nick_format setting, which
28    looks more or less like a format string, and lets you tweak how nicknames
29    for contacts are generated in more detail.
30  * A per-channel show_users setting lets you configure exactly which kinds
31    of contacts (online/away/offline) should show up in a channel and what
32    modes (none/voice/etc) they should have.
33  * If you connect (and identify) to a BitlBee server you're already
34    connected to, you can take over the existing session instead of starting
35    a new one.
36  * More correct validation of channel names: They can contain pretty much
37    any character, unlike nicknames.
38- Support for using libpurple instead of BitlBee's built-in IM protocol
39  modules. This can be enabled by passing --purple=1 to the configure script.
40  * This adds support for many more IM protocols to BitlBee.
41  * And new functionality to existing protocols.
42  * This is and will always be optional and using it on public servers is
43    *not* recommended. It should be pretty stable, but costs more RAM/etc.
44  * When using this variant, type "help purple" to get a list of supported
45    protocols.
46- Support for file transfers, in and out. /DCC SEND a file to a contact and
47  it becomes a file transfer, and incoming file transfers become /DCC SENDs
48  to you. Note that this is mostly useful when combined with libpurple, as
49  only the Jabber native protocol module currently supports file transfers.
50
51Finished ... 2010
52
[00540d4]53Version 1.2.8:
54- Now always using the AIM-style authentication method for OSCAR connections,
55  even when connecting to ICQ. This solves login issues some people were
56  having. (If you have problems, try changing the old_icq_auth setting.)
57- Twitter:
58  * Allow changing the Twitter API base URL so the module can also be used
59    for identi.ca or any other compatible network.
60  * Fetch the full list of Twitter contacts instead of slowly adding all
61    contacts as they post a message.
62  * Fixed message length counting.
63  * Allow following/unfollowing people using the usual add/remove commands.
64  * Better error reporting.
65- Added a user_agent setting to the Jabber module to get around artificial
66  client restrictions.
67- Allow nick changes (although only before register/identify).
68- Some more minor bugfixes/etc.
69
70Finished 4 Jul 2010
71
[df1ae622]72Version 1.2.7:
73- Fixed problems with MSN Messenger authentication. ("Could not parse
74  Passport server response")
75- Fixed broken typing notifications when talking to GTalk contacts.
76- Fixed an issue with non-anonymous Jabber chatrooms polluting the nick
77  namespace, sometimes generating odd warning messages.
78- Restored ability to start groupchats on ICQ.
79- Added show_offline setting that will also show offline contacts in the
80  control channel.
81- OAuth support for Twitter: This means the module will keep working after
82  June (this also changes "via API" under your tweets into "via BitlBee").
83
84Finished 15 May 2010
85
[db57e7c]86Version 1.2.6a:
87- Fixed a typo that renders the Twitter groupchat mode unusable. A last-
88  minute change that came a few minutes late.
89
90Finished 19 Apr 2010
91
[c0417e8]92Version 1.2.6:
[b6190ca]93- Native (very basic) support for Twitter, implemented by Geert Mulders.
94  Currently supported are posting tweets, reading the ones of people you
95  follow, and sending (not yet receiving!) direct messages.
[c0417e8]96- Fixed format of status messages in /WHOIS to improve IRC client
97  compatibility.
98- Show timestamps of offline messages/channel backlogs.
99- Allow saving MSN display names locally since sometimes this stuff breaks
100  server-side. (Use the local_display_name per-account setting.)
101- Suppress empty "Headline:" messages for certain new XMPP broadcast
102  messages.
103- Better handling of XMPP contacts with multiple resources on-line. Default
104  behaviour now is to write to wherever the last message came from, or to
105  the bare JID (usually becomes a broadcast) if there wasn't any recent msg.
[f4bcc22]106- Added a switchboard_keepalives setting which should solve some issues with
107  talking to offline MSN contacts. (Although full support for offline
108  messages is not ready yet!)
[c0417e8]109- The usual misc. bug fixes.
110
[f4bcc22]111Finished 19 Apr 2010
[c0417e8]112
[7e2b593]113Version 1.2.5:
114- Many bug fixes, including a fix for MSN login issues, Jabber login timing
115  issues, Yahoo! crashes at login time with huge contact lists,
116- Avoid linking in a static version of libresolv now that glibc has all
117  relevant functions available in the dynamic version.
118- Improved away state code and added the ability to set (non-away) status
[a1ac227]119  messages using "set status" (also possible per account) and see them in
120  blist and /whois output.
[7e2b593]121- Added a post-1.2 equivalent of encode/decode to quickly encrypt/decrypt
122  passwords in a way that BitlBee can read them.
123- Allow using the full name for generating nicknames, instead of just the
124  handle. This is especially useful when using the Facebook XMPP server.
125- Auto reconnect is now enabled by default since all protocols can properly
126  detect cases where auto reconnect should be avoided (i.e. concurrent
127  logins).
[f9928cb]128- Changed the default resource_select setting which should reduce message
129  routing issues on Jabber (i.e. messages going someone's phone instead of
130  the main client).
[7e2b593]131
[c0417e8]132Finished 17 Mar 2010
[a1ac227]133
[3650088]134Version 1.2.4:
135- Most important change (and main reason for releasing now): Upgraded Yahoo!
136  module to a newer version to get it working again.
137- join_chat command replaced with the much better chat command:
138  * Similar to how account replaced login/slist/logout. Add a chatroom once,
139    then just /join it like any other room. Also automatic joining at login
140    time is now possible.
141  * Note that the old way of starting groupchats (/join #nickname) is now
142    also deprecated, use "chat with" instead.
143  * See "help chat" and "help chat add" for more information.
144- Rewrote bitlbee.conf parser to be less dumb.
145- Fixed compatibility (hopefully) with AIM mobile messages, certain kinds
146  of Google Talk chatrooms.
147- Fixed numerous stability/reliability bugs over the last year.
148
149Finished 17 Oct 2009
150
[ba3a8a5]151Version 1.2.3:
152- Fixed one more flaw similar to the previous hijacking bug, caused by incon-
153  sistent handling of the USTATUS_IDENTIFIED state. All code touching these
154  variables was reviewed and should be correct now.
155
156Finished 7 Sep 2008
157
[b9e2539]158Version 1.2.2:
159- Security bugfix: It was possible to hijack accounts (without gaining access
160  to the old account, it's simply an overwrite)
161- Some more stability improvements.
162- Fixed bug where people with non-lowercase nicks couldn't drop their account.
163- Easier upgrades of non-forking daemon mode servers (using the DEAF
164  command).
165- Can be cross-compiled for Win32 now! (No support for SSL yet though, which
166  makes it less useful for now.)
167- Exponential backoff on auto-reconnect.
168- Changing passwords gives less confusing feedback ("password is empty") now.
169
170Finished 26 Aug 2008
171
[bfe7caa]172Version 1.2.1:
173- Fixed proxy support.
174- Fixed stalling issues while connecting to Jabber when using the OpenSSL
175  module.
176- Fixed problem with GLib and ForkDaemon where processes didn't die when
177  the client disconnects.
178- Fixed handling of "set charset none". (Which pretty much breaks the account
179  completely in 1.2.)
[5ecf96b]180- You can now automatically identify yourself to BitlBee by setting a server
181  password in your IRC client.
182- Compatible with all crazy kinds of line endings that clients can send.
[fb4e9a3f]183- Changed root nicknames are now saved.
184- Added ClientInterface setting to bind() outgoing connections to a specific
185  network interface.
186- Support for receiving Jabber chatroom invitations.
187- Relaxed port restriction of the Jabber module: added ports 80 and 443.
188- Preserving case in Jabber resources of buddies, since these should
189  officially be treated as case sensitive.
190- Fully stripping spaces from AIM screennames, this didn't happen completely
191  which severly breaks the IRC protocol.
192- Removed all the yellow tape around daemon mode, it's pretty mature by now:
193  testing.bitlbee.org serves all (~30) SSL users from one daemon mode
194  process without any serious stability issues.
195- Fixed GLib <2.6 compatibility issue.
196- Misc. memory leak/crash fixes.
[bfe7caa]197
[d048ffc]198Finished 24 Jun 2008
[bfe7caa]199
[8c2008e]200Version 1.2:
[a5ac9f9]201- Added ForkDaemon mode next to the existing Daemon- and inetd modes. With
202  ForkDaemon you can run BitlBee as a stand-alone daemon and every connection
203  will run in its own process. No more need to configure inetd, and still you
204  don't get the stability problems BitlBee unfortunately still has in ordinary
205  (one-process) daemon mode.
206- Added inter-process/connection communication. This made it possible to
207  implement some IRC operator features like WALLOPs, KILL, DIE, REHASH and
208  more.
209- Added hooks for using libevent instead of GLib for event handling. This
210  should improve scalability, although this won't really be useful yet because
211  the one-process daemon mode is not reliable enough.
212- BitlBee now makes the buddy quits when doing "account off" look like a
213  netsplit. Modern IRC clients show this in a different, more compact way.
[7df5a08]214  (This can be disabled if your client doesn't support this.)
[670204f]215- GLib 1.x compatibility was dropped. BitlBee now requires GLib 2.4 or newer.
216  This allows us to use more GLib features (like the XML parser). By now GLib
217  1.x is so old that supporting it really isn't necessary anymore.
[a5ac9f9]218- Many, many, MANY little changes, improvements, fixes. Using non-blocking
[d07c3a8]219  I/O as much as possible, replaced the Gaim (0.59, IOW heavily outdated)
220  API, fixed lots of little bugs (including bugs that affected daemon mode
221  stability). See the bzr logs for more information.
222- One of the user-visible changes from the API change: You can finally see
223  all away states/messages properly.
224- Added units tests. Test coverage is very minimal for now.
225- Better charset handling: Everything is just converted from/to UTF-8 right
226  in the IRC core, and charset mismatches are detected (if possible) and the
227  user is asked to resolve this before continuing. Also, UTF-8 is the default
228  setting now, since that's how the world seems to work these days.
[ec0355f]229- One can now keep hashed passwords in bitlbee.conf instead of the cleartext
230  version.
[9829ae0]231- Most important change: New file format for user data (accounts, nicks and
232  settings). Migration to the new format should happen transparently,
233  BitlBee will read the old files and once you quit/save it will save in the
234  new format. It is recommended to delete the old files (BitlBee doesn't do
235  this automatically, it will just ignore them) since they won't be used
236  anymore (and since the old file format is a security risk). Some advantages
237  of this file format switch:
238  * Safer format, since the identify-password is now salted before generating
239    a checksum. This way one can't use MD5 reverse lookup databases to crack
240    passwords. Also, the IM-account passwords are encrypted using RC4 instead
241    of the simple obfuscation scheme which BitlBee used so far.
242  * Easier to extend than the previous format (at least the .nicks format was
243    horribly limited).
244  * Nicknames for buddies are now saved per-account instead of per-protocol.
245    So far having one buddy on multiple accounts of the same protocol was a
246    problem because the nicks generated for the two "instances" of this buddy
247    were very unpredictable.
248    NOTE: This also means that "account del" removes not just the account,
249    BUT ALSO ALL NICKNAMES! If you're changing IM accounts and don't want to
250    lose the nicknames, you can now use "account set" to change the username
251    and password for the existing connection.
252  * Per-account settings (see the new "account set" command).
[c7d0f41]253- A brand new Jabber module. Besides the major code cleanup, it also has
254  has these new features:
255  * Pretty complete XMPP support: RFC3920, RFC3921 plus a number of XEPs
[7df5a08]256    including XEP45, XEP73 and XEP85. (See http://www.xmpp.org/ for what all
257    these things mean exactly.) Privacy lists are not supported for obvious
[c7d0f41]258    reasons.
259  * This complete support also includes TLS and SASL support and SRV record
260    lookup. This means that specifying a server tag for connections should
261    (almost) never be necessary anymore, BitlBee can find the server and can
262    automatically convert plaintext connections to TLS-encrypted ones.
[7df5a08]263  * XEP45: Jabber chatroom support!
[c7d0f41]264  * XEP85 means typing notifications. The older XEP22 (still used by some
265    clients including Gaim <2.0) is not supported.
266  * Better handling of buddies who have more than one resource on-line. As
267    long as one resource is on-line (and visible), BitlBee will show this.
268    (The previous module didn't keep track of resources and sent an offline
269    event as soon as any resource disappears.)
270  * You can now set your resource priority.
271  * The info command now gives away state/message information for all
272    resources available for that buddy. (Of course this only works if the
273    buddy is in your contact list.)
[221a273]274  * An XML console (add xmlconsole to your contact list or see "help set
275    xmlconsole" if you want it permanently).
[d07c3a8]276- The Yahoo! module now says it supports YMSG protocol version 12, which will
277  hopefully keep the Yahoo module working after 2008-04-02 (when Yahoo! is
278  dropping support for version 6.x of their client).
279- MSN switchboard handling changes. Hopefully less messages will get lost now,
280  although things are still not perfect.
[9829ae0]281
[6612cc9]282Finished 17 Mar 2008
[8c2008e]283
284Version 1.0.4:
285- Removed sethostent(), which causes problems for many people, especially on
286  *BSD. This is basically the reason for this release.
287- "allow" command actually displays the allow list, not the block list.
288- Yahoo away state/msg fix.
289- Don't display "Gender: Male" by default if nothing's filled in (OSCAR
290  "info" command)
291- Fixed account cleanup (possible infinite loop) in irc_free().
292- Fixed configdir error message to not always display the compile-time
293  setting.
294
295Finished 20 Aug 2007
296
[670204f]297Version 1.0.3:
298- Fixed ugliness in block/allow list commands (still not perfect though, the
299  list is empty or not up-to-date for most protocols).
300- OSCAR module doesn't send the ICQ web-aware flag anymore, which seems to
301  get rid of a lot of ICQ spam.
302- added show_got_added(), BitlBee asks you, after authorizing someone, if you
303  want to add him/her to your list too.
304- add -tmp, mainly convenient if you want to talk to people who are not in
305  your list.
306- Fixed ISON command, should work better with irssi now.
307- Fixed compilation with tcc.
308- Fixed xinetd-file.
309- Misc. (crash)bug fixes, including one in the root command parsing that
310  caused mysterious error messages sometimes.
311
312Finished 24 Jun 2006 (Happy 4th birthday, BitlBee!)
313
314Version 1.0.2:
315- Pieces of code cleanup, fixes for possible problems in error checking.
316- Fixed an auto-reconnect cleanup problem that caused crashes in daemon mode.
317- /AWAY in daemon mode now doesn't set the away state for every connection
318  anymore.
319- Fixed a crash-bug on empty help subjects.
320- Jabber now correctly sets the current away state when connecting.
321- Added Invisible and Hidden to the away state alias list, invisible mode
322  should be pretty usable now.
323- Fixed handling of iconv(): It's now done for everything that goes between
324  BitlBee and the IRC client, instead of doing it (almost) every time
325  something goes to or come from the IM-modules. Should've thought about
326  that before. :-)
327- When cleaning up MSN switchboards with unsent msgs, it now also says which
328  contact those messages were meant for.
329- You can now use the block and allow commands to see your current block/
330  allow list.
331
332Finished 1 Apr 2006
333
334Version 1.0.1:
335- Support for AIM groupchats.
336- Improved typing notification support for at least AIM.
337- BitlBee sends a 005 reply when logging in, this informs modern IRC clients
338  of some of BitlBee's capabilities. This might also solve problems some
339  people were having with the new control channel name.
340- MSN switchboards are now properly reset when talking to a person who is
341  offline. This fixes problems with messages to MSN people that sometimes
342  didn't arrive.
343- Fixed one of the problems that made BitlBee show online Jabber people as
344  offline.
345- Fixed problems with commas in MSN passwords.
346- Added some consts for read-only data, which should make the BitlBee per-
347  process memory footprint a bit smaller.
348- Other bits of code cleanup.
349
350Finished 14 Jan 2006
351
[2095c57]352Version 1.0:
353- Removed some crashy debugging code.
[21d09ac]354- QUIT command now works before logging in. (Mainly an RFC-compliancy fix.)
[ef6c6a7]355- Hopefully slightly clearer handling of buddy add requests.
[834ff44]356- set buddy_sendbuffer_delay now also supports milisecond precision.
[e3a0e7e]357- Renamed #bitlbee to &bitlbee to avoid confusion with the channel on OFTC.
[0b2e843]358- Reviewed the xinetd file and installation instructions.
359- HTML stripping is configurable again.
360- Quit messages (at least on crashes) should appear again.
[43e3368]361- Cleaned up some unnecessary code in the Jabber module, and implemented
362  handlers for headline messages (which allows you to use RSS-to-Jabber
363  gateways).
[ef53ba8]364- Lowered the line splitting limit a bit to fix data loss issues.
365- The $proto($handle) format used for messages specific to one IM-connection
366  now only include the ($handle) part when there's more than one $proto-
367  connection.
368- Fix for a crash-bug on broken Jabber/SSL connections.
[a40a2c2]369- Incoming typing notifications now also come in as CTCP TYPING messages, for
370  better consistency. Don't forget to update your scripts!
371- AIM typing notifications are supported now.
[027d2eb]372- Jabber module only accepts ports 5220-5229 now, to prevent people from
373  abusing it as a port scanner. We aren't aware of any Jabber server that
374  runs on other ports than those. If you are, please warn us.
[40657a3]375- Send flood protection can't be enabled anymore. It was disabled by default
376  for a good reason for some time already, but some package maintainers
377  turned it back on while it's way too unreliable and trigger-happy to be
378  used.
379- Removed TODO file, the current to-do list is always in the on-line bug
380  tracking system.
381- Fixed a potential DoS bug in input handling.
[2095c57]382
[40657a3]383Finished 4 Dec 2005
[2095c57]384
[b7d3cc34]385Version 0.99:
386- Fixed memory initialization bug in OSCAR module that caused crashes on
387  closing the connection.
388- Most likely fixed the bug that caused BitlBee to use 100% CPU time in
389  some situations.
390- Outgoing MSN typing notifications are now understood correctly by the
391  orignal MS Mac/Windows clients (again).
392- Added "account add $protocol" to the documentation, got rid of a lot
393  of over-markup (i.e. overuse of bold-tags), reviewed some other parts.
394- Small changes to help.xsl to fix small flaws in the help.txt formatting.
395- Messaging yourself now doesn't make irssi or mIRC crash anymore.
396
397Finished 3 Nov 2005
398
399Version 0.93:
400- &quot; is now correctly converted to " instead of '.
401- Code cleanup in OSCAR module.
402- Some changes for better RFC-compliancy.
403- It's now possible to specify an alternate Jabber server.
404- bitlbee_save() now also checks the return value of fclose(), which might
405  solve more problems with lost account data.
406- Fixed a file descriptor leak in bitlbee.c.
407- Signedness fixes (mainly to keep GCC4 happy).
408- Away messages are now sent correctly to most ICQ clients.
409- BitlBee knows now which connection sends HTML, so it will strip HTML
410  automatically, "set html strip" is no longer necessary. Also, outgoing HTML
411  is escaped correctly.
412- info-command works for AIM-connections too now.
413- /notices to users will be sent as auto-away replies.
414- Messages about a connection now also mention a handle, for people who have
415  multiple accounts in use of the same protocol.
416- Examples are back in help.txt.
417
418Finished 31 Oct 2005
419
420Version 0.92:
421- Fixed some formatting issues with the help.txt XSL-sheet.
422- Moved the polling of the IRC connections to glib instead of a separate
423  select().
424- Added ctags generation to the Makefiles.
425- Sending a CTCP TYPING message to a user in your buddy list now sends a
426  typing notification to that person, if the protocol supports it. You
427  probably want to write/use a script for your IRC client to do this.
428- A dash is no longer considered a lowercase underscore in nicknames.
429- CTCP's to buddies no longer alter their private/non-private state.
430- Clean shutdown (with saving settings) on SIGTERM.
431- Fixed a crash on connecting to unreachable Jabber/SSL servers.
432- On ICQ, offline messages are now requested after receiving the buddy
433  list. This should get rid of the "Message from unknown OSCAR handle"
434  messages on login.
435- The linked list of buddies/nicks is now always sorted, which makes the
436  blist output a bit more useful.
437- Fixed a crash on renaming NickServ. (There's no reason to do this, but
438  still crashing isn't really how BitlBee should tell you that. ;-)
439- Now the message about the "new" ICQ server-side buddy lists is only
440  displayed when the server-side list is still empty.
441- The Yahoo! markup language stripper is now less likely to strip things
442  that shouldn't be stripped.
443- Working around a shortcoming in the Yahoo! cleanup code that didn't
444  cause any serious problems in previous versions, but got pretty nasty
445  (100% CPU time usage) now with everything in the glib main loop.
446- Fixed a bug in http_encode that might have caused buffer overflows
447  (although not likely to be exploitable) when trying to encode strings
448  with non-ASCII characters.
449- Fixed AIM screenname handling on ICQ connections.
450- When blocking someone, the MSN module now closes the conversation you're
451  having with him/her (if any) so he/she can't continue talking to you
452  (for as long as the conversation lasts).
453- Away messages are only sent when messaging someone outside the control
454  channel. (And now also when the user is offline instead of just away.)
455- Moved charset conversion in serv_buddy_rename() to the right place so
456  bogus changes are always detected now.
457- iso8859-1 is now the default charset because -15 caused some problems
458  and because -1 is enough for most people anyway.
459- Fixed crashes on attempting to add a buddy (or do other things) on
460  connections that are still initializing.
461- Added support for server-side notifies using the WATCH command.
462- IRC_MAX_ARGS is dead, at least for IRC commands.
463- Fixed a bug that made BitlBee crash on failing fresh MSN switchboard
464  connections.
465- Fixed an invisibility bug in the MSN code that handled transfers to
466  other servers in the middle of a session.
467- Newline stripping added to prevent newline-in-friendlyname attacks.
468  (Which allowed remote people to make BitlBee send raw custom IRC lines.)
469
470Finished 23 Feb 2005
471
472Version 0.91:
473- Full support for ICQ server-side contact lists!
474  NOTE: BitlBee now ignores your client-side contact list. If you want to
475        import your ICQ contact list, use the import_buddies command.
476- Added the import_buddies command for upgrading purposes.
477- Added support for OpenSSL.
478- Fixed one major problem with the daemon mode by getting rid of the global
479  IRC structure.
480- Documentation fixes. help.txt is now generated from XML. Also updated the
481  installation manual.
482- Made the quickstart up-to-date. (By Elizabeth Krumbach)
483- Some bitlbeed additions. (By Marcus Dennis)
484- info-command support for Jabber, MSN, Yahoo! and a more verbose info-reply
485  for ICQ. (By Frank Thieme)
486- Support for Jabber over SSL.
487- nick_get() appends a _ on duplicates instead of chopping off the last
488  character.
489- Got rid of an unused piece of code that caused crashes.
490  (oscar.c:gaim_parse_clientauto)
491- When splitting long messages into 450-char chunks, BitlBee now tries not
492  to cut off in the middle of a line.
493- Added a warning when the user specifies an unknown OSCAR server.
494- Removed GLib 2.x dependency, BitlBee will work with GLib 1.x again.
495- Improved strip_html(), now less likely to strip non-HTML things.
496- An invalid account-command will now display an error message.
497- Fixed a bug that caused crashes when /CTCP'ing a groupchat channel.
498- Hopefully better Unicode/non-ASCII support for ICQ.
499- Fixed MSN connection crash on non-ASCII characters in screenname.
500- Added some missing charset conversion calls. (serv_got_crap,
501  serv_buddy_rename)
502- "account off" without extra arguments now logs off all connections.
503- Fixed a crash-bug on disconnecting Yahoo! connections before they're fully
504  connected.
505- Fixed a bug in helpfile handling which sometimes caused crashes in daemon
506  mode.
507- block and allow commands work with just a nick as an argument again.
508- Working around a crash on some probably invalid Yahoo! packets.
509- Fixed a possible double free() on shutdown in irc_free().
510- Talking to ICQ people on AIM and vice versa and talking to people with
511  @mac.com accounts now possible.
512- Low ASCII chars are now stripped from away-messages so the Jabber module
513  won't barf on BitchX and lame-script away messages anymore.
514
515Finished 25 Sep 2004
516
517Version 0.90a:
518- Fixed the Yahoo! authentication code.
519
520Finished 28 Jun 2004
521
522Version 0.90:
523- A complete rewrite of the MSN module. This gives BitlBee the following
524  new features/improvements:
525  * You can now start groupchats with MSN people without having to send them
526    a bogus message first.
527  * People who are in your MSN block/allow list, but not in your contact
528    list, shouldn't show up in your BitlBee buddy lists anymore.
529  * Passport authentication shouldn't lock up the whole program for a couple
530    of seconds anymore. Additionally, it should also work behind proxies now.
531  * Better recognition of incoming file transfers; they're now recognized
532    when coming from non-English MS Messenger clients too.
533  * Fixed a problem with MSN passwords with non-alphanumeric characters.
534  * Mail notification support (also for Yahoo!)...
535  * Parsing of maintenance messages (ie "Server is going down in x minutes").
536  * Hopefully more stability.
537- Changes in the OSCAR module:
538  * Better reading of ICQ-away-states.
539  * Lots of cleanups.
540- Yahoo! module:
541  * Fixed authentication on 64-bit machines. (Patch from Matt Rogers)
542  * Better stripping of markup tags.
543- Lots of cleanup in all IM-modules.
544- Added support for using libnss instead of libgnutls.
545- Reverse hostname lookups work on IPv6 sockets too now. (And don't crash
546  the program anymore.)
547- Fixed a little problem with identifying right after registering a nick.
548- Restored complete proxy support and added a proxy setting to the conffile.
549- BitlBee can now tell you when people in your buddy list change their
550  "friendly name".
551- Instead of an account number, you can also specify the protocol name or
552  (part of) the username as an account identification with commands like
553  "account on", "add", etc.
554- BitlBee remembers what connection a question (i.e. authorization request)
555  belongs to and cleans it up when the connection goes down; this fixes
556  (one of) the last known crash bugs.
557- Plus some other changes in question management. (The query_order setting
558  is one of them. The default behaviour changed a bit, for more information
559  please read "help set query_order".)
560- Also fixed a memory management bug in the question code which caused some
561  crashes.
562- Optimized some nick handling functions and added a hash of all the users
563  to speed up user_find() a bit (especially good for people with large
564  buddy and notify lists).
565- Lots of changes for the Win32 port (see http://jelmer.vernstok.nl/).
566- Added the drop-command.
567- Fixed small problem with versions of sed which don't support the +
568  "operator" (the BSD version, for example, even though the operator is
569  documented properly in the re_format manpage...).
570- Added the default_target setting.
571- Added a CenterICQ2BitlBee conversion script.
572- Put back the evaluator for "set charset" (which got lost somewhere between
573  0.84 and 0.85), so an incorrect charset will be rejected again.
574- ISON now (A) gives one single reply and (B) also replies when none of the
575  persons asked for are on-line.
576- Using GConv instead of iconv now.
577- Incoming messages larger than 450 characters are now split into parts
578  before sending them to the user.
579- Fixed a bug in irc_exec() which could crash the program when some commands
580  were called with too little arguments.
581- Fixed a dumb NULL pointer dereference in the JOIN command.
582- Added rate limiting to bitlbeed. (Against server hammering)
583- Added handling of CTCP PINGs (yet another self-ping used by some IRC
584  clients...)
585- Added bitlbee_tab_completion.pl.
586- Removed the vCard handling code from Jabber because it's (A) not used and
587  (B) had a possible format string vulnerability.
588- Got rid of strcpy() in account.c. (Thanks to NETRIC for reporting these two
589  problems.)
590- ISO8859-15 is now the default charset.
591
592Finished 21 May 2004
593
594Version 0.85a:
595- Fixed an authentication problem with logging into some MSN accounts.
596- Removed a non-critical warning message from the ICQ servers when logging
597  in with an empty contact list.
598- Fixed reading the [defaults] section of bitlbee.conf.
599- The last newline in outgoing messages when using the buddy_sendbuffer is
600  now removed correctly.
601- Yahoo! colour/font tag stripping now actually works.
602- Fixed compilation on *BSD and some Linux architectures.
603
604Finished 24 Mar 2004
605
606Version 0.85:
607- Users can specify alternate configuration files/directories at runtime
608  now.
609- Rename now doesn't choke on name changes with only case changes anymore.
610- Imported the daemon patch into the main source tree. The daemon mode is
611  still experimental, this just eases maintenance. This daemon patch brings
612  a lot of features, including (as the name says) a real daemon mode and
613  also buffering of the data sent to the user, and flood protection.
614- Strips font and colour codes from Yahoo! messages.
615- Support for groupchats on Yahoo!
616- Fixed removing Yahoo! buddies from a different group than "Buddies".
617- Jabber presence packets with error messages are interpreted correctly now.
618  (They used to be parsed as a signin.)
619- bitlbee_save() checks return values from fprintf() and writes to tempfiles
620  first to make sure no old files get lost when there's a write error.
621- ICQ buddies are added all at once instead of once at a time. This should
622  solve problems with huge buddy lists.
623- Made the client pinging timings configurable. (Without requiring
624  recompilation)
625- MSN and Yahoo flag the connection as "wants_to_die" when they're logged
626  off because of a concurrent login. This means reconnection will be disabled
627  on concurrent logins.
628- BitlBee can now buffer the messages sent to someone before they're actually
629  sent, and wait for a specified number of seconds for more lines to be added
630  to the buffer before the message will really be sent.
631- Renamed the reconnect_delay setting to auto_reconnect_delay.
632- Unknown settings aren't saved anymore.
633
634Finished 13 Mar 2004
635
636Version 0.84:
637- Removed the libsoup dependency.
638- Fixed AuthMode=Registered: It will now restore your accounts when
639  identifying.
640- Fixed Yahoo! support.
641- Fixed a little memory leak in user.c.
642- Fixed a security bug in unused code in proxy.c, only people who use
643  the HTTP proxy support and an untrusted proxy might need this. We
644  haven't done an emergency release for this fix because proxy support
645  is disabled by default.
646- Fixed some memory leaks in IM-code.
647
648Finished 13 Feb 2004
649
650Version 0.83:
651- Fixed a crash bug on connecting to unsupported accounts.
652- Fixed a problem with connecting to MSN accounts with empty buddy
653  lists.
654- Fixed another inifite-loop bug in nick_get() and added a piece
655  of code which detects the infinite loop and asks the user to send
656  a bug report.
657- Fixed iconv-Solaris linking issues.
658- Fixed all the problems with spaces in AIM screennames now, we hope.
659- Fixed a buffer overflow in the nick handling code. Buffers are
660  overflowed with static data (nulls), so we don't think it's exploitable.
661- Added server-client pinging, useful for remote servers.
662- Added the hostname setting.
663- Some bitlbeed changes.
664- Added a little part to the on-line quickstart about the settings and
665  other help topics, this hopefully answers a lot of FAQ's.
666- Fixed the signal handler to re-raise the signal after the handler quits.
667  This makes sure the default handler is called after our handler sends
668  the user a bye-message, so core dumps are created and the parent will
669  get more useful information back from wait().
670- Added support for ICQ URL messages.
671- Fixed strip_html() behaviour on unknown &entities;.
672- Fixed a possible problem with Yahoo!
673- Fixed a problem with logging into more than one MSN account at once.
674
675Finished 31 Dec 2003
676
677Version 0.82:
678- Fixed a little bug in nick.c which could cause a complete hang for
679  some tricky buddylists. (Thanks to Geert Hauwaerts for helping with
680  fixing this bug)
681- Fixed MSN support. (Lots of thanks to Wouter Paesen!)
682- Removed the old login/logout commands.
683- Added the qlist command.
684- Fixed a buffer overflow in the nick checking code. (Thanks to Jon
685  Åslund for pointing us at this problem)
686- Adds the add_private and add_channel options for set handle_unknown.
687- Some documentation updates.
688- Added two small utilities to encode/decode BitlCrypted files.
689
690Finished 31 Oct 2003
691
692Version 0.81a:
693- This version just fixes some small things we should've fixed before
694  releasing 0.81:
695- Fixed a small bug in the auto-reconnect cleanup code.
696- Fixed the Makefile: Now it doesn't just overwrite your etc files when
697  installing.
698- Fixed the Makefile: $prefix/etc/bitlbee/ is the default etcdir now.
699- Disabling MSN by default, now that it doesn't work. It'll be back on
700  as soon as we get the module working again.
701
702Finished 16 Oct 2003
703
704Version 0.81:
705- Added a configuration file.
706- Added support for the PASS command to restrict access to the daemon to
707  only the people who know this password.
708- Only allowing registered people to use the daemon is possible too.
709- In case you, at some time, need to check the currently running BitlBee
710  version, just CTCP-VERSION someone in the channel.
711- Added the auto_connect setting for people who don't want the program
712  to connect to IM-networks automatically.
713- Extended the blist command.
714- Applied the auto-reconnect patch from G-Lite.
715- Applied the iconv patch from Yuri Pimenov.
716- Imported the MSN-friendlyname patch from Wouter Paesen.
717- Away-message aliasing code now just parses the beginning of the string,
718  not the whole string. This allows you to have a more descriptive away
719  message like "Busy - Fixing bugs in BitlBee" and all the IM connections
720  will have a busy-like away-state.
721- Added some information about away states to the help system.
722- MSN file transfers aren't silently ignored anymore.
723- Integrated the Yahoo protocol fix from Cerulean Studios (Trillian).
724  (Thanks to Tony Perrie!)
725- Made all protocol plugins optional. (Patch from Andrej Kacian/Ticho)
726
727Finished 15 Oct 2003
728
729Version 0.80:
730- Fixed a very stupid bug in the MSN away-state reading.
731- nick_cmp() now actually works, RFC-compliant.
732- Fixed and cleaned up the away-state handling, there were some very
733  weird things in the original Gaim code base which broke this completely
734  all the time.
735- The daemon prevents you from using root/NickServ as your nick now,
736  previous versions crashed on that.
737- At last ... GROUP CHAT SUPPORT! :-D
738- People who are *not* away get mode +v in #bitlbee now, so you can see
739  in /names who's away and who's not.
740- Crashing BitlBee by using the NICKSERV command without any arguments
741  is impossible now.
742- Added some notes about Darwin/OSX portability.
743- Separated connections from accounts. This means restoring a lost
744  connection can be done using a simple "account on <number>" command.
745  See "help account" for more information.
746  *** For now this won't cause problems when upgrading because the login
747  command still exists (as an alias for "account add"). This alias will
748  not stay forever, though.
749- irc_process() now makes sure it reads the whole available buffer before
750  executing the commands. Previous versions were very bad at handling
751  long floods from non-floodprotected clients. The code is still not
752  perfect, but good enough for local links.
753- Allow/Deny questions from msn.c now also mention your own screenname.
754  This is useful for people who run two (or even more) MSN accounts in
755  one BitlBee.
756- Fixed a little bug in the helpfile-changed-check code.
757- A little trick in "make install" makes sure the help function in running
758  sessions doesn't break while upgrading.
759- Added a nifty (and editable) MOTD.
760- Added IRIX to the compatibility list.
761- Added support for Cygwin.
762- Better HTML-stripping, it also handles &entities; correctly now.
763- Fixed some problems to make it compile on Solaris.
764- Added support for messages from Miranda/Mac ICQ. (Code port from Gaim 0.59)
765- Fixed the crash problem when removing yahoo buddies.
766- Added the handle_unknown setting.
767- Did some editing on a few docs.
768- Added a FAQ.
769- Added the daemon-patch by Maurits Dijkstra which adds stand-alone daemon
770  support to BitlBee.
771- Jabber now doesn't barf on high ASCII characters in away messages anymore.
772  (Thanks to Christian Häggström <chm@c00.info>)
773
774Finished 24 Jun 2003
775
776Version 0.74a:
777- The music-festivals-are-bad-for-your-mind release.
778- This one actually contains the fix for the bug 0.74 claimed to have.
779
780Finished 11 Jun 2003
781
782Version 0.74:
783- Fixed a security leak, where using a / in the nickname causes the saved
784  settings and account information to be stored in undesirable places.
785
786Finished 10 Jun 2003
787
788Version 0.73:
789- Fixed the unable-to-remove-icq-users (actually users from any *local*
790  contact list) bug.
791- Fixed away bug in aim protocol.
792- Fixed the 'statistics' under the blist command output.
793- Removed the commands from the XML documentation because they're 'on-line'
794  already.
795- Added some signal handling; ignoring SIGPIPE should als get rid of some
796  crashes (for some weird reason this has to be done). Also, crashes because
797  of things like segfaults are a bit more verbose now. ;-)
798- Changed the select() timeout in main(), this might improve some latencies.
799  (At leasts it speeds up signing on (especially for ICQ) a lot!)
800- Made the own-QUIT messages more compliant, probably.
801- Fixed some memory-bugs, thanks to valgrind.
802- irc_write() now checks the write() return value, and tries to send the rest
803  of the string, if it could not write it completely the first time.
804- Hostname lookups also work on NetBSD now.
805  (Thanks to David.Edmondson*sun*com (hi spambot))
806- At last, a new protocol. Welcome to ... YAHOO!
807- Documentation and code cleanup. Somehow the helpfile documented register
808  and identify twice, now that's what I call over-documenting.. :-/
809- Added the rename command to the helpfile, somehow I forgot that one.
810- Been a bit pedantic about compiler warnings. They're all dead now.
811- Fixed a small Makefile problem which gave an error when a clean tree was
812  "made distclean"
813- Fixed a (possible) memory leak in nogaim.c:proto_away()
814- Fixed the way proto_away() calls proto_away_alias_find(), now it gives
815  the *whole* list of away states
816- proto_away() doesn't give a NULL message anymore because AIM didn't like
817  that
818- Got rid of the last goto in my code (without ruining the code)
819- Created a more samba-like compiling process (without the complete command
820  lines, just a simple echo)
821- "help set ops" works now too, without quoting the "set ops"
822- Trying to log in with a protocol without a prpl (ICQ and TOC, for example)
823  made previous versions crash
824
825Finished 13 Apr 2003
826
827Version 0.72:
828- Updated the documentation.
829- Improved the MSN friendlyname code. (Although it doesn't seem to be perfect
830  yet..)
831- info-command added to get more information about ICQ users.
832- blist-command added to get a complete buddy list.
833- Fixed a bug which broke the AIM code when adding a screenname with a space
834  in it.
835- Added the NS alias for the NICKSERV command (Tony Vroon).
836- Fixed the USERHOST command implementation (Tony Vroon).
837- /me from IM-networks is now converted to a CTCP ACTION correctly.
838- Added an utils/ directory with some misc toys and handy things.
839- Added a /notice to the on_typing event. Don't use it though, the /notice
840  flood will just be a big annoyance. ;-)
841- Some people like root and themself to be ops, some don't. Now it's
842  configurable. (set ops)
843- Now the umode stuff actually works. Next step: Use those modes... (How?)
844
845Finished 19 Dec 2002
846
847Version 0.71:
848- Fixed the help command output layout (alignment)
849- Added a sample xinetd file
850- Cleaned up, 0.70 released with a build-stamp and DEADJOE file (oops)..
851- Messages can be sent like '<user>, <message>' in the control channel now,
852  instead of just '<user>: <message>'
853- Added a debug setting boolean: Set it to true for some debugging crap
854  which used to be on by default..
855- Changed the /whois reply: In the server section you now see the
856  connection this user belongs to.
857- Added some root/permission checks.
858- configure script works correctly when the terminating / is forgotten for
859  a directory.
860- Fixed format string bug in protocols/oscar/meta.c (Hmm, what's the use of
861  that file?)
862- Added '#include "crypting.h"' to commands.c to get rid of stupid warnings
863- Fixed crash-bug (SIGSEGV when adding an @-less contact to MSN/Jabber)
864- Added to_char setting
865- Fixed bug in set.c: It ignored the new value returned by the evaluator
866  :-(
867- Removed protocol tag from 'hostname' in user hostmask because this info
868  is in /whois' server section now
869- Added the GPL. Somehow 0.7 released without a COPYING file.. :-/
870- Enhanced the root_command() parser, you can 'quote' "arguments" now so
871  arguments can be strings with spaces
872- Debugging versions have True as the default value for set debug
873- NICKSERV is now an alternative for PRIVMSG root. This does not affect
874  functionality of current NICKSERV commands, but does allow people to just
875  do identify <pass> in channel.
876- NICKSERV REGISTER now doesn't try to log you in (to check if the user
877  exists) but checks for the existence of the user-configuration files.
878- NICKSERV SET password now works (as does set password in channel). This
879  makes changing your password possible.
880- NICKSERV password now stored in irc_t.
881- ./configure now only bugs you about possible problems with strip if it's
882  actually going to strip (wooohoooo! _sexy_ :)
883- Fixed a load of warnings in oscar.c, irc.c, nick.c and set.c
884- Split up root_command() into a version which eats raw strings and one
885  which eats split strings
886- New help system: Help available for most (all?) commands, all read from
887  an external help-file.
888- Changed the maximum message length in irc_usermsg() from IRC_MAX_LINE to
889  1024 (for loooong help messages..).
890- Only allow user to set supported umodes.
891- Fixed a memory leak in crypting.c (Thanks to Erik Hensema.)
892- Added a send_handler callback to user_t. Needed for the following entry:
893- Added the NickServ user as a root-clone.
894- Disabled tcpd by default because it's just a PITA for a lot of systems
895  and because you can use /usr/sbin/tcpd as well.
896- The root user can be renamed now.
897
898Finished 16 Sep 2002
Note: See TracBrowser for help on using the repository browser.