The version will now be automatically be filled in during ./configure, to be the same as the global package version.
This fixes the issues in the previous commit: we might allocate way too much memory, and we were not sure to get the whole response. Thanks to Gonzalo Paniagua Javier for pointing them out.
The retryAttempts parameter was ignored until now. We now actually do what it says and retry the invocation as many times as indicated. This helps with some servers which do not like to be talked to right after they've been started. For example, see this bug reported against Banshee: https://bugzilla.gnome.org/show_bug.cgi?id=672744
The Helper.GetResponse method will retry once if we get a "Gateway Timeout" HTTP response code. Also add some additional log output for some error cases.
When processing a ClientServiceRemoved event, we usually only have a USN, the Service instance is null. So we need to handle this correctly and get the service type from the USN. This fixes the following bug reported against Banshee: https://bugzilla.gnome.org/show_bug.cgi?id=671708
This allows consumers to make their private copy of the assemblies they need, as they're not installed in the GAC.
Generate all the binaries in a toplevel bin/ folder. As the generated makefiles wipe out the build folder during distclean, having it set to the project folder leads to bad things. Use $(srcdir) to find the various .snk files, so that they are found during an out-of-tree build, as "make distcheck" does it. Go over all the various assembly references, and do not require a specific version when it's not needed. Let MonoDevelop refresh the generated code in src/Mono.Upnp/Mono.Upnp.GtkClient/gtk-gui/.
We may try to deserialize into a property that is not writable and fail instead of just ignoring it if that's the case. Also fixed a bug that will prevent actions from working if the SoapEnvelope contains a Header element because it can't figure out how to create a default instance of it.
It was failing because we were trying to send out our variable notifications before responding to the subscribe request. I also reduced the time to wait for variable updates after unsubscribing to 10 seconds instead of 30 because it seemed very excessive.