--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ChangeLog Mon May 19 18:27:00 2003 +0000
@@ -0,0 +1,573 @@
+2003-04-17 Mikael Hallendal <micke@codefactory.se>
+
+ * docs/reference/Makefile.am: Make --disable-gtk-doc not try to
+ install the documents :) Fixes #633, patch by Kevin Dougherty.
+
+ * loudmouth/lm-debug.c: Make build work with --disable-debug,
+ fixes #634, patch by Kevin Dougherty.
+
+2003-04-11 Mikael Hallendal <micke@codefactory.se>
+
+ * NEWS: More updates
+
+ * configure.in: Bumped version to 0.9
+
+ * loudmouth.spec.in: Fixed
+
+ * loudmouth/lm-connection.c:
+ (lm_connection_send_with_reply_and_block): Removed debug output.
+
+2003-04-10 Mikael Hallendal <micke@codefactory.se>
+
+ * NEWS: Updated for upcoming 0.9 release.
+
+2003-04-07 Mikael Hallendal <micke@codefactory.se>
+
+ * README: Added information about debug output.
+
+ * loudmouth/lm-connection.c:
+ (connection_in_event): Use a define for IN_BUFFER_SIZE
+
+2003-04-07 Mikael Hallendal <micke@codefactory.se>
+
+ * README:
+ * loudmouth/lm-connection.c: (connection_in_event):
+
+2003-04-07 Mikael Hallendal <micke@codefactory.se>
+
+ * configure.in:
+ - Added debug flag.
+ * loudmouth/Makefile.am:
+ - Added lm-debug.[ch]
+ * loudmouth/lm-internals.h: Added debug-stuff
+ * loudmouth/lm-connection.c: Use debug-stuff instead of d()-macro.
+ * loudmouth/lm-message.c: Same
+ * loudmouth/lm-parser.c: Same
+
+2003-04-05 Mikael Hallendal <micke@codefactory.se>
+
+ * Makefile.am: Added .spec and .spec.in to EXTRA_DIST
+ * configure.in: Set GLIB2_REQUIRED, will be used in the spec-file.
+ * loudmouth/lm-message.c:
+ * loudmouth/lm-message.h:
+ - fixed the support for message and presence elements without type
+ attribute.
+
+2003-04-01 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-message.c:
+ (lm_message_get_node): added, using for bindings.
+
+ * loudmouth/lm-message-node.c:
+ (lm_message_node_get_value): added, makes binding easier.
+ (lm_message_node_set_attribute): splitted out to just set one
+ attribute. using just this one to bind for C#.
+
+2003-03-24 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-connection.c:
+ (connection_incoming_dispatch):
+ - don't call handle_message if message is NULL.
+ (connection_do_open):
+ - set error, don't send any messages, just open the socket and
+ send the xml-document starter.
+ (connection_do_block): Removed.
+ (connection_create_source): added
+ (lm_connection_open_and_block): implemented.
+ (lm_connection_authenticate_and_block): implemented.
+ (lm_connection_send_with_reply_and_block): implemented.
+
+2003-03-23 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-connection.c:
+ - Now uses a queue for all incoming messages and a source that
+ polls the queue.
+ (connection_do_close): added, unrefs
+ io_channel and sets connection to be disconnected.
+ (connection_do_open): renamed from connection_connect
+
+2003-03-14 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-connection.c:
+ (lm_connection_get_server): added
+ (lm_connection_set_server): added
+ (lm_connection_get_port): added
+ (lm_connection_set_port): added
+ (lm_connection_get_use_ssl): added
+ (lm_connection_set_use_ssl): added
+ (lm_connection_new): Don't take port and use_ssl arguments. Make
+ server-attribute optional (passing NULL).
+
+ * configure.in: bumped to 0.8.99
+
+2003-03-13 Mikael Hallendal <micke@codefactory.se>
+
+ * autogen.sh (need_configure_in):
+ - fix to autogen on solaris. Reported by stric.
+
+ * configure.in:
+ - Added check for -lnsl and -lsocket needed to link on solaris.
+
+ * Released 0.8
+
+ * configure.in: bumped version to 0.8
+
+ * README (Introduction): added some information before the 0.8
+ release.
+
+ * loudmouth/lm-connection.c:
+ (connection_error_event): call disconnect callback.
+ (connection_hup_event): same.
+ (lm_connection_set_disconnect_function): added.
+
+2003-03-05 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/*.h: prettified headers.
+
+ * docs/reference/*: Updating docs. Now at 100%!
+
+2003-03-03 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-message-node.h:
+ - removed LmMessageNodeFunc, wasn't used anywhere.
+
+ * docs/reference/*: Updating docs. At 88% now... sooon!
+
+ * Changed license (again), this time back to LGPL. And it'll stay
+ there :)
+
+2003-02-27 Mikael Hallendal <micke@codefactory.se>
+
+ * Worked alot on documenting.
+
+2003-02-25 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-connection.c (connection_in_event):
+ - Try to solve #553
+
+2003-02-24 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-sha.c: don't use stdint.h, instead use the g*
+ versions of different int lengths. Fixes #536
+
+2003-02-08 Mikael Hallendal <micke@codefactory.se>
+
+ * src/*.c: Started to document
+
+ * src/lm-result.h: Removed
+
+ * src/lm-error.[ch]: Added
+
+ * src/lm-connection.[ch]:
+ - Use GErrors for reporting errors.
+ - Fixes #510
+
+ * docs/reference/Makefile.am: Don't link against GObject.
+
+2003-02-06 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-connection.c (connection_connect): send the opening
+ xml tag stating that we'll use encoding utf-8.
+
+2003-02-02 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-message.c:
+ - fixes #504
+ (lm_message_new): take to-argument
+ (lm_message_new_with_sub_type): take to-argument
+
+ * loudmouth/test-lm.c (main): don't init GType, not used anymore..
+
+ * lm-message-handler.c:
+ - include files we actually need :)
+
+ * loudmouth/lm-connection.c: don't include removed files.
+
+ * loudmouth/Makefile.am:
+ - Removed all the stuff that generated the marshallers.
+
+ * configure.in:
+ - removed gobject deps
+ - removed glib-genmarshal deps
+
+ * loudmouth-1.0.pc.in (Requires): removed all deps except glib.
+
+ * loudmouth/lm-connection.c:
+ - Is no more a GObject, this means that loudmouth now only depends
+ on GLib which makes it minimal and perfect for embedded systems.
+
+ * configure.in: Don't require libgtcpsocket
+
+ * loudmouth/lm-connection.c: Don't use libgtcpsocket for
+ communication. Now uses a GIOChannel.
+
+ * loudmouth/*.c:
+ - Use GDestroyNotify instead of LmFreeFunction.
+ - Added LmCallback which is a struct with callback,
+ user_data and a notify function.
+ - Changed LmConnectionOpenFunction and LmAuthenticateFunction to
+ be LmResultFunction.
+
+2003-02-01 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-sha.c (lm_sha_hash): don't print the digest.
+
+2003-01-31 Mikael Hallendal <micke@codefactory.se>
+
+ * *: changed the license to the same one used in RoadRunner.
+
+ * loudmouth/lm-sha.c:
+ - switched the SHA implementation for one with BSD license.
+
+ * loudmouth/lm-connection.c (lm_connection_authenticate):
+ - lm_sha_hash now returns a const gchar *
+
+
+2003-01-30 Mikael Hallendal <micke@codefactory.se>
+
+ * docs/*: Added gtk-doc support. Now I just have to write API docs
+ for everything :)
+
+ * loudmouth/lm-helper.[ch]: Removed.
+
+2003-01-30 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-message-node.c:
+ (lm_message_node_to_string): made public since it's really useful
+ for debugging your client.
+ (lm_message_node_find_child): readded this function from the old
+ LmNode. It traverses the tree to see if it can find the child
+ and returns at the first it finds. lm_message_node_get_child
+ only looks at the direct children.
+
+2003-01-29 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-connection.c:
+ (lm_connection_send): don't set ID here. we set it in
+ send_with_reply if it's not set (since it's needed there to find
+ the correct handler).
+ (connection_connection_recv_cb):
+ - not sure if this helps any, return if length <= 0 instead of
+ feeding it to the parser.
+
+ * loudmouth/lm-message.[ch]:
+ - Added LmMessageSubType that can be used to set and check a
+ message's sub type <node type="sub type">.
+ (message_sub_type_from_string): added
+ (message_sub_type_to_string): added
+ (lm_message_new_with_sub_type): added
+ (lm_message_get_sub_type): added
+
+ * loudmouth/lm-message-node.c (lm_message_node_get_child):
+ - remove variable that caused warning.
+
+ * configure.in: updated version to 0.2
+
+2003-01-27 Mikael Hallendal <micke@codefactory.se>
+
+ * src/*:
+ - LmClient -> LmConnection
+ - Use Message Handlers on LmConnection instead of signals
+ - LmElement, LmPresence and LmIQ removed
+ - LmMessage used for all kinds of messages now
+ - LmMessageHandler added as a generic message handler for all
+ kinds of messages.
+ - send_with_reply added to give a callback when waiting for an
+ answer to a request.
+ - LmResult added to most calls. Used to get some feedback on what
+ might have gone wrong.
+
+2003-01-27 Anders Carlsson <andersca@codefactory.se>
+
+ * autogen.sh (FILE): Use lm-message.c for testing.
+
+2003-01-26 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/*: Added lm-helper which will create elements to send
+ through client.
+
+2003-01-25 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-marshal.list (VOID): cleaned up old marshallers.
+
+ * loudmouth/lm-element.c (lm_element_get_type_string): added.
+
+ * loudmouth/lm-client.c:
+ - Changed message, presence and iq received back into signals
+ - Added default handlers to class
+ - Calling default handlers only if none of the connected callbacks
+ returned TRUE.
+
+2003-01-21 Mikael Hallendal <micke@codefactory.se>
+
+ * configure.in: don't use libgtcpsocket 1.0, use 0.1.0
+
+2002-12-10 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-util.c:
+ (lm_util_get_localtime): Added
+ (lm_util_case_strstr): Removed
+
+ * loudmouth/lm-x.h: Removed.
+
+ * loudmouth/lm-element.c:
+ - Added support for an iter for iterating over all x elements.
+ - Needed to resolve #347
+ (lm_element_get_x_iter): Added
+ (lm_x_iter_next): Added
+ (x_iter_next): Added
+ (lm_x_iter_free): Added
+
+ * loudmouth/Makefile.am (libloudmouthinclude_HEADERS):
+ - install lm_util.h
+
+2002-12-03 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-presence.c:
+ - Fixed show-array indexing, Fixes #341 and #342
+ (lm_presence_set_show): don't set
+ <show/> to "normal", just leave it out.
+ (presence_show_from_string): don't strcmp for "normal".
+ (presence_string_from_show): don't return "normal".
+
+2002-11-29 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-client.c (lm_client_subscribe_jid): Wrap g_print
+ with debug macro.
+ (lm_client_unsubscribe_jid): Likewise.
+ (lm_client_connect): Add debug print.
+ (client_connect_done_cb): Add debug print.
+
+ * loudmouth/lm-element.c (lm_element_new): When creating a stream
+ element, use "stream:stream" instead of just "stream". This fixes
+ the "Invalid XML" error we were getting from the server at the end
+ of the stream.
+
+ * loudmouth/lm-client.c (lm_client_authenticate): Don't free the
+ digest, it's static memory. This fixes a couple of very weird
+ crashes.
+ (lm_client_disconnect): Revert the fix I did here earlier, we
+ don't want to set is_connected until we really get a disconnect
+ callback from the connection. The problem is somewhere else.
+ (lm_client_send): Compare against </stream:stream> instead of just
+ </stream>.
+
+2002-11-29 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-node.c (node_free): don't free directly, use
+ ref-counts.
+ (lm_node_add_child_node): ref the child node.
+
+ * loudmouth/lm-element.c:
+ (lm_element_unref): implemented
+ (lm_element_set_tree): ref the tree.
+
+2002-11-29 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-client.c: Changed default_foo_handler to
+ foo_handler.
+
+2002-11-27 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-client.c (client_handle_iq): Fix warning by making
+ id const.
+
+2002-11-26 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-client.c (client_connection_closed_cb):
+ - Set is_connected to FALSE.
+
+2002-11-26 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/*: Changed so that LmElement and subclasses are no
+ longer objects. Just structs. You need to use get/set-functions
+ instead of properties.
+
+2002-11-25 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-element.c (element_get_property): fixed error
+ causing object_get ("from") trying to get "to" value.
+
+2002-11-24 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-client.c (client_handle_presence):
+ - Try to implement subscription requests.
+
+ * loudmouth/test-lm.c (main): Fix more callback types.
+
+ * loudmouth/lm-client.h:
+ - Remove lm_client_set_subscription_request_handler, unused.
+
+ * loudmouth/test-lm.c (main): Don't cast callbacks with (Type*).
+
+ * loudmouth/lm-client.c:
+ - Change function prototypes from *callback to callback.
+
+ * loudmouth/lm-client.h: Remove signal entry from object struct
+ and change function prototypes to match the definitions.
+
+2002-11-23 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-client.h: Add lm_client_get_agents.
+
+ * configure.in: Add compiler warnings logic but leave it disabled
+ since the sha stuff is not very warning free.
+
+ * loudmouth/lm-node.c (lm_node_get_string): Escape the body string
+ so we generate valid xml when sending things like '<', '>', and
+ '&'.
+
+2002-11-23 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-node.c (lm_node_unlink): added
+
+ * loudmouth/lm-presence.c (presence_set_property): don't set
+ <show>normal</show>
+
+ * loudmouth/lm-iq.c:
+ (lm_iq_get_query_node):
+ (lm_iq_set_query_node): removed, use lm_element_find_child and
+ lm_element_add_child_node instead.
+
+ * loudmouth/lm-element.c:
+ (lm_element_add_child): added :)
+ (lm_element_find_child): added
+
+ * loudmouth/lm-client.c (client_connection_closed_cb): call
+ disconnect callback.
+
+ * loudmouth/lm-sha.[ch]: added, found in jabberd2, remember to
+ check license issues with this.
+
+ * loudmouth/lm-client.c:
+ (lm_client_authenticate): use digest for sending password instead
+ of clear text.
+
+ * loudmouth/lm-client.c:
+ (client_handle_iq): handle register reply
+ (lm_client_register): added
+ (lm_client_authenticate): moved stuff from iq-helper, easy enough
+ now with the changes earlier today.
+
+ * loudmouth/lm-iq-helper.[ch]: removed, not needed anymore.
+
+ * loudmouth/lm-element.c (lm_element_add_child_node): added, this
+ can be used to add any node to any element.
+
+ * loudmouth/lm-presence.c (presence_set_property): priority is an
+ int, not string.
+
+ * loudmouth/lm-node.c (lm_node_add_child_node): rethinking, don't
+ ref.
+
+2002-11-22 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-node.c:
+ (lm_node_add_child): changed to take a name
+ and a value, very handy when adding key/value pair nodes.
+ (lm_node_add_child_node): added a _node to the old
+ lm_node_add_child. Also ref's the child so the user should unref
+ it after he's finished with it.
+
+ * loudmouth/lm-iq.c (lm_iq_new): take the type as argument.
+
+ * loudmouth/lm-client.c: added a default iq handler attribute and
+ use it in handle_iq if the incoming IQ isn't handled by the
+ library. This way a user of the library can now do anything with
+ it, even use it's own namespaces and such.
+
+ * loudmouth/*: Changes LmXMLNode -> LmNode
+
+ * loudmouth/*:
+ - Using LmXMLNode internally in all elements
+ - Use lm_message_new, lm_iq_new, lm_presence new instead of
+ g_object_new
+
+ * loudmouth/lm-presence.c:
+ (presence_get_xml_string): set to='' if it exists
+
+ * loudmouth/lm-xml-node.c:
+ (lm_xml_node_ref): added
+ (lm_xml_node_unref): added
+ (lm_xml_node_free): made private
+
+ * loudmouth/lm-parser.c:
+ (parser_end_element_cb): just unref the node, don't free it.
+
+ * loudmouth/lm-client.c:
+ - added "name", "version" and "os" proprties.
+ (lm_client_register_default_message_handler):
+ (lm_client_register_default_presence_handler): removed, unused
+
+ * loudmouth/lm-element.[ch]:
+ (lm_element_get_tree): Added, returns the XML tree for the
+ element.
+ (ilm_element_setup_from_xml): ref the node.
+
+2002-11-20 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-parser.c (lm_parser_parse): Try to convert the xml
+ input to from ISO-8859-1 to UTF-8 if it's not valid UTF-8. Not
+ the perfect fix but it makes a common case work.
+
+2002-11-16 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-client.c (lm_client_disconnect): send end of
+ stream.
+
+2002-11-15 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-roster.c (lm_roster_new_from_query_node): Get the
+ group from the child of the query node.
+
+2002-11-15 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-client.c: no more signals. You now register message
+ and presence handlers.
+
+ * loudmouth/lm-presence.c (presence_get_property): implemented
+
+ * loudmouth/lm-client.c:
+ - removed the disconnected and connected signals. Now callbacks
+ passed to lm_client_connect.
+
+2002-11-14 Mikael Hallendal <micke@codefactory.se>
+
+ * loudmouth/lm-presence.c:
+ (presence_class_init): type and show to be int's.
+ (presence_set_property): same.
+
+ * configure.in: bumped version to 0.1.1
+
+ * loudmouth/lm-presence.c (lm_presence_set_status): added.
+
+ * loudmouth/lm-element.c (element_class_init): not sure if we want
+ this but readded the PROP_ERROR.
+
+ * loudmouth/lm-client.c (lm_client_authenticate): silent warnings
+
+ * loudmouth/lm-iq.c (iq_set_attribute): chain up.
+
+ * loudmouth/lm-element.c (element_get_property): implement.
+
+ * loudmouth/lm-client.c:
+ - use callbacks for auth and roster instead of signals.
+ (client_handle_iq): handle auth and roster
+ (client_add_callback): added
+ (client_find_callback): added
+ (client_remove_callback): added
+ (lm_client_send): take an extra id argument. If passed the message
+ id will be copied to this argument.
+ (lm_client_authenticate): take callback+userdata as arguments.
+ (lm_client_request_roster): same
+
+2002-10-21 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-message.c (message_get_xml_string): Escape the
+ body, fixes server disconnecting on messages containing <>.
+
+2002-10-02 Richard Hult <rhult@codefactory.se>
+
+ * loudmouth/lm-xml-node.c (lm_xml_node_set_value): Don't run
+ strdown on the node value.
+