| 1 |
0.13.5 |
| 2 |
====== |
| 3 |
|
| 4 |
Changes since 0.13.4: |
| 5 |
|
| 6 |
- Chain up in GUPnPXMLDoc's finalize(). |
| 7 |
- Correct transfer annotation for gupnp_context_get_session(). |
| 8 |
- Prefer g_strcmp0() over strcmp(). |
| 9 |
- Check for body length rather than Content-Length in SOAP requests so we |
| 10 |
can satsify DLNA CTT test 7.2.5.7. |
| 11 |
- Explicitly link test apps to needed libraries. |
| 12 |
|
| 13 |
Bugs fixed in this release: |
| 14 |
|
| 15 |
2186 - Missing annotation for context_get_session |
| 16 |
|
| 17 |
All contributors: |
| 18 |
|
| 19 |
Sven Neumann <s.neumann@raumfeld.com> |
| 20 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 21 |
Zach Goldberg <zgold@corvette.(none)> |
| 22 |
|
| 23 |
0.13.4 |
| 24 |
====== |
| 25 |
|
| 26 |
Changes since 0.13.3: |
| 27 |
|
| 28 |
- GUPnPService should remove all handlers installed on the shared SoupServer |
| 29 |
instance when it is disposed. |
| 30 |
- Fixate subscription timeout to be 300s as per DLNA requirement (7.2.22.1). |
| 31 |
- Correct type of action argument of GUPnPService::action-invoked. |
| 32 |
- Remove redundant copying of GValue content in a few places. |
| 33 |
- Handle multiple variables inside property node in event notifications to be |
| 34 |
compatible with server-side implementations using older GUPnP |
| 35 |
- Fix syntax of event notifications with multiple properties. |
| 36 |
- Add/fix gobject-introspection annotations for various functions. |
| 37 |
- Some non-functional improvements. |
| 38 |
|
| 39 |
Bugs fixed in this release: |
| 40 |
|
| 41 |
2084 - Add scope annotations to various functions |
| 42 |
2131 - GUPnPServiceAction is a boxed, not a pointer |
| 43 |
2086 - Fix gtk-doc format on all functions in public GUPnP API |
| 44 |
|
| 45 |
All contributors: |
| 46 |
|
| 47 |
Sven Neumann <s.neumann@raumfeld.com> |
| 48 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 49 |
Zach Goldberg <zgold@corvette.(none)> |
| 50 |
|
| 51 |
0.13.3 |
| 52 |
====== |
| 53 |
|
| 54 |
Changes since 0.13.2: |
| 55 |
|
| 56 |
- Include the Content-Type header in the HTTP messages. This satisfies DLNA |
| 57 |
CTT test cases 7.2.5.9 and 7.2.29.1. |
| 58 |
- Use g_message instead of g_warning if we can't connect to DBus. |
| 59 |
- Make the HTTP server listen on the context's interface only. |
| 60 |
- Fix some potential crashes in GUPnPServiceProxy and GUPnPContextManager code. |
| 61 |
- Fix build issues in jhbuild environment. |
| 62 |
- Fix some gcc warnings. |
| 63 |
- Add new API to host path for specific user-agent(s). |
| 64 |
- Add gobject-introspection support: |
| 65 |
- Provide gobject-introspection GIR and typelib. |
| 66 |
- Add needed annotations to doc comments. |
| 67 |
- Add GList variants of action-related functions to satisfy PyGI. |
| 68 |
- A few non-functional improvments. |
| 69 |
|
| 70 |
Dependency related changes: |
| 71 |
|
| 72 |
- gssdp >= 0.7.1 |
| 73 |
|
| 74 |
Bugs fixed in this release: |
| 75 |
|
| 76 |
2054 - Xbox hacks |
| 77 |
1965 - gcc warning fixes |
| 78 |
2039 - GUPnP is hard to use with jhbuild |
| 79 |
1948 - Signal handler are not disconnected when ContextManager is disposed |
| 80 |
2030 - gupnp context listens on 0.0.0.0 instead of the context's ip |
| 81 |
1924 - Content-Type header must contain charset="utf-8" in all HTTP transactions |
| 82 |
2006 - Implement 3 new functions for language bindings (begin_action_list, |
| 83 |
end_action_list, gupnp_service_action_get_value_type) |
| 84 |
1919 - Add GObject Introspection Annotations and Makefile |
| 85 |
1979 - g_warning make gupnp-igd test fails |
| 86 |
1906 - Tests failed with gupnp 0.13 |
| 87 |
|
| 88 |
All contributors: |
| 89 |
|
| 90 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 91 |
Zach Goldberg <zgold@corvette.(none)> |
| 92 |
Ross Burton <ross@linux.intel.com> |
| 93 |
Olivier Crête <olivier.crete@collabora.co.uk> |
| 94 |
Neil Roberts <neil@linux.intel.com> |
| 95 |
Sven Neumann <s.neumann@raumfeld.com> |
| 96 |
Jens Georg <mail@jensge.org> |
| 97 |
Yakup Akbay <yakbay@ubicom.com> |
| 98 |
|
| 99 |
0.13.2 |
| 100 |
====== |
| 101 |
|
| 102 |
Changes since 0.13.1: |
| 103 |
|
| 104 |
- Utilize libconic (Maemo5) if available. |
| 105 |
- Unix context manager must signal the unavailibility of all contexts when |
| 106 |
disposed. |
| 107 |
- Enable silent build rules if they are available. |
| 108 |
- Fix race-conditions in client-side notification handling. |
| 109 |
- Unix context manager ignores point-to-point interfaces. |
| 110 |
- Context manager ignores interfaces without IP addresses. |
| 111 |
- Don't require timeouts to be specified in subscription requests. |
| 112 |
- Fix build against gcc 4.[1,2]. |
| 113 |
- Make network manager thread-safe. |
| 114 |
- Remove idle source on dispose in context manager implementations. |
| 115 |
- Warn in docs that gupnp_service_info_get_introspection() is evil and why. |
| 116 |
- Service retrieves introspection data in truly async way. |
| 117 |
- Fix some leaks. |
| 118 |
- A bunch of code clean-ups. |
| 119 |
|
| 120 |
All contributors: |
| 121 |
|
| 122 |
Olivier Crête <olivier.crete@collabora.co.uk> |
| 123 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 124 |
Ross Burton <ross@linux.intel.com> |
| 125 |
Jens Georg <mail@jensge.org> |
| 126 |
Cem Eliguzel <celiguzel@ubicom.com> |
| 127 |
|
| 128 |
Bugs fixed: |
| 129 |
|
| 130 |
1890 - Timeout parsing problem with SUBSCRIBE method |
| 131 |
1880 - subscription/notification handling is racy |
| 132 |
1906 - Tests failed with gupnp 0.13 |
| 133 |
1849 - Compile error when using gcc 4.[1,2] and strict aliasing |
| 134 |
1494 - Ability to deal with multiple network interfaces |
| 135 |
1881 - networkmanager interaction should use its own dbus connection |
| 136 |
|
| 137 |
0.13.1 |
| 138 |
====== |
| 139 |
|
| 140 |
Changes since 0.13: |
| 141 |
|
| 142 |
- Use unix context manager if NetworkManager service is not available. |
| 143 |
- Fix some minor leaks. |
| 144 |
|
| 145 |
All contributors: |
| 146 |
|
| 147 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 148 |
Ross Burton <ross@linux.intel.com> |
| 149 |
|
| 150 |
0.13 |
| 151 |
==== |
| 152 |
|
| 153 |
Changes since 0.12.8: |
| 154 |
|
| 155 |
- Print reason when fail to fetch description doc |
| 156 |
- Support for dynamic/multiple networks through a new class, ContextManager. |
| 157 |
This class creates/destroys new context as new network interfaces go up/down. |
| 158 |
It also provides two convenient methods to take care of control point and |
| 159 |
device reference managment for you. Currently we have two implementations of |
| 160 |
context manager: |
| 161 |
* unix: The static but guaranteed to work on Unix, implementation. This is the |
| 162 |
default if none chosen at configure-time. |
| 163 |
* network-manager: A NetworkManager based implementation. |
| 164 |
- Idle handlers should use the assigned GMainContext. |
| 165 |
- Gracefully handle 'no root element in description' scenerio. |
| 166 |
- "host-ip" property moved from GUPnPContext to parent GSSDPClient. |
| 167 |
- ControlPoint set itself inactive before getting disposed. |
| 168 |
- New function to retrieve the capabilities of a DLNA device as announced in |
| 169 |
the device description. |
| 170 |
- New function to retrieve the content of arbitrary elements in the device |
| 171 |
description. |
| 172 |
- Fixed a crash that happens when service-proxy goes down before subscribtion to |
| 173 |
it completes. |
| 174 |
- Correct condition for SID being NULL. |
| 175 |
- Don't create redundant proxies. |
| 176 |
- Must not announce earlier versions of resources. This is strictly forbidden |
| 177 |
according to the latest UPnP specs. Instead GSSDP now handles M-SEARCH |
| 178 |
requests independent of version requested. |
| 179 |
- Free app developer from hosting of description documents. |
| 180 |
- New API to get SoupMessage associated with ServiceAction. |
| 181 |
- Handle the SOAPAction header being missing. |
| 182 |
- Fixed strrchr result checking. |
| 183 |
- Provide and use a wrapper class for xmlDoc objects, GUPnPXMLDoc that is a |
| 184 |
first-class gobject. |
| 185 |
- New domains for XML errors. |
| 186 |
- Many other minor fixes. |
| 187 |
|
| 188 |
Bugs fixed: |
| 189 |
|
| 190 |
1626 - Print reason when fail to fetch description doc |
| 191 |
1769 - audit issues |
| 192 |
1760 - missing/invalid SOAPAction header crashes gupnp |
| 193 |
1705 - Provide a public API to get information about a GUPnPServiceAction's HTTP |
| 194 |
request |
| 195 |
|
| 196 |
Dependencies changed: |
| 197 |
|
| 198 |
- gssdp >= 0.7 |
| 199 |
|
| 200 |
All contributors: |
| 201 |
|
| 202 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 203 |
Ross Burton <ross@linux.intel.com> |
| 204 |
Sven Neumann <s.neumann@raumfeld.com> |
| 205 |
Jens Georg <mail@jensge.org> |
| 206 |
Steven Dorigotti <steven.dorigotti@tvblob.com> |
| 207 |
|
| 208 |
WARNING: This release is API and ABI incompatible with previous releases. |
| 209 |
|
| 210 |
0.12.8 |
| 211 |
====== |
| 212 |
|
| 213 |
Changes since 0.12.7 |
| 214 |
|
| 215 |
- Don't crash if device descriptions don't contain a root element. |
| 216 |
- Fix pkg-config paths. |
| 217 |
- Avoid using asserts. |
| 218 |
- Use the closest match instead of using the icon that was last checked. |
| 219 |
- Expect xmlRecoverMemory to fail. |
| 220 |
- Reject action messages with zero content length. |
| 221 |
- Change version in action answer. |
| 222 |
|
| 223 |
Bug fixes in this release: |
| 224 |
|
| 225 |
- bug#1570: gupnp doesn't set the pkgconfig lib dir correctly in 64 bit env. |
| 226 |
- bug#1574: Avoid using asserts. |
| 227 |
- bug#1592: gupnp_device_info_get_icon_url() does not return the closest match. |
| 228 |
- bug#1604: Crash on action without any content. |
| 229 |
|
| 230 |
All contributors to this release: |
| 231 |
|
| 232 |
Ross Burton <ross@linux.intel.com> |
| 233 |
Zeeshan Ali (Khattak) <zeeshanak@gnome.org> |
| 234 |
Steven Dorigotti <steven.dorigotti@tvblob.com> |
| 235 |
Sven Neumann <s.neumann@raumfeld.com> |
| 236 |
Jens Georg <mail@jensge.org> |
| 237 |
|
| 238 |
0.12.7 |
| 239 |
====== |
| 240 |
|
| 241 |
- Chain up dispose and finalize in GUPnPDeviceInfo [Sven Neumann] |
| 242 |
- Use a dedicated SoupSession [Sven Neumann] |
| 243 |
- Fix device icon fallback logic [Ross Burton] |
| 244 |
- Fix user agent string [Sven Neumann] |
| 245 |
- Sanity check UDN while parsing [Zeeshan Ali] |
| 246 |
|
| 247 |
0.12.6 |
| 248 |
====== |
| 249 |
|
| 250 |
- Port to FreeBSD. [Romain Tartière] |
| 251 |
- Ship the XML files needed for example app. [Romain Tartière] |
| 252 |
- Keep a reference on the control-point during signal emission. [Sven Neumann] |
| 253 |
- Allow passing NULL to ControlPoint constructor, for default resource factory. |
| 254 |
[Sven Neumann] |
| 255 |
- Remove debug output that accidentally went in with the last commit. |
| 256 |
[Sven Neumann] |
| 257 |
|
| 258 |
0.12.5 |
| 259 |
====== |
| 260 |
|
| 261 |
- Improved error handling. [Sven Neumann, Jorn Baayen] |
| 262 |
- Specify character set (UTF-8) in NOTIFY messages. [Jorn Baayen] |
| 263 |
- Don't export internal functions. [Jorn Baayen] |
| 264 |
- Fix some crasher bugs. [Zeeshan Ali] |
| 265 |
- More lenient handling of xml from external sources. [Jorn Baayen, |
| 266 |
Jussi Kukkonen] |
| 267 |
- Fix possible reference cycles. [Zeeshan Ali, Jorn Baayen] |
| 268 |
- Better handling of event subscription timeouts. [Zeeshan Ali] |
| 269 |
|
| 270 |
0.12.4 |
| 271 |
====== |
| 272 |
|
| 273 |
- Set Content Type header correctly in soap messages [Zeeshan Ali] |
| 274 |
- Don't pass arbitrary strings to printf() for security [Sven Neumann] |
| 275 |
- Handle fscanf failing in get_default_host_ip() [Sven Neumann] |
| 276 |
|
| 277 |
0.12.3 |
| 278 |
====== |
| 279 |
|
| 280 |
- Greatly improved client-side bindings [Jussi Kukkonen] |
| 281 |
- Server-side bindings [JK] |
| 282 |
- Don't use NULL return values from g_get_application_name [Ross Burton] |
| 283 |
- Make gupnp_context_get_session public [Jorn Baayen] |
| 284 |
- Use the specified GMainContext for timeouts [Olivier Crete, Jorn Baayen] |
| 285 |
|
| 286 |
0.12.2 |
| 287 |
====== |
| 288 |
|
| 289 |
- Support returning actions outside of the 'action-invoked' signal handler |
| 290 |
in service implementations. [Zeeshan Ali, Jorn Baayen] |
| 291 |
- Add explicit dependency on gthread. [Zeeshan Ali, Jorn Baayen] |
| 292 |
|
| 293 |
0.12.1 |
| 294 |
====== |
| 295 |
|
| 296 |
- Support Range headers without upper bound. [Jorn Baayen] |
| 297 |
- Fixed memory management in HTTP GET handler. [Jorn Baayen] |
| 298 |
|
| 299 |
0.12 |
| 300 |
==== |
| 301 |
|
| 302 |
- Add tool for generating convenience C wrappers for GUPnP service definitions. |
| 303 |
[Ross Burton] |
| 304 |
- Remove xmlDoc argument from gupnp_root_device_new() for simplicity. |
| 305 |
(xmlDocs can still be passed to gupnp_root_device_new_full()) |
| 306 |
[Jorn Baayen] |
| 307 |
- Better documentation, new tutorials and sample code. [Ross Burton] |
| 308 |
- Improved support for Accept-Language header. [Jorn Baayen] |
| 309 |
- Various internal improvements. [Zeeshan Ali, Jorn Baayen] |
| 310 |
|
| 311 |
0.10.1 |
| 312 |
====== |
| 313 |
|
| 314 |
- Bump soname. |
| 315 |
|
| 316 |
0.10 |
| 317 |
==== |
| 318 |
|
| 319 |
- Use libsoup 2.4. [Zeeshan Ali Khattak, Jorn Baayen] |
| 320 |
- Use g_timeout_add_seconds(). [Jorn Baayen] |
| 321 |
- Use GIO instead of xdgmime. [Jorn Baayen] |
| 322 |
- Support HTTP Range header in the HTTP server. [Jorn Baayen] |
| 323 |
- Use GMappedFile to mmap served files of read()ing them. [Jorn Baayen] |
| 324 |
- Improved documentation. [Ross Burton] |
| 325 |
- Spew HTTP messages to console when GUPNP_DEBUG is set. [Ross Burton] |
| 326 |
- Various other fixes. [Ross Burton, Zeeshan Ali Khattak, Jorn Baayen] |
| 327 |
|
| 328 |
0.8 |
| 329 |
=== |
| 330 |
|
| 331 |
- New API allowing for subclassing of resource types. |
| 332 |
[Zeeshan Ali, Jorn Baayen] |
| 333 |
- GUPnPDeviceInfo returns subresources with version greater or equal than |
| 334 |
requested version. [Jorn Baayen] |
| 335 |
- Servers announce versions less or equal than implemented version. |
| 336 |
[Jorn Baayen] |
| 337 |
- Make gupnp_context_get_server() public. [Jorn Baayen] |
| 338 |
- GError arguments added to all error signals. [Jorn Baayen] |
| 339 |
- Improved resubscription handling. [Jorn Baayen] |
| 340 |
- Various other fixes and internal improvements |
| 341 |
[Ross Burton, Zeeshan Ali, Jorn Baayen]. |
| 342 |
|
| 343 |
0.6 |
| 344 |
=== |
| 345 |
|
| 346 |
- Added service signal autoconnection feature in the spirit of |
| 347 |
glade_xml_signal_autoconnect(). [Zeeshan Ali] |
| 348 |
- Fixed various bugs related to object destruction. Fixes #500, 503. |
| 349 |
[Jorn Baayen] |
| 350 |
- Accept 'yes' and 'no' boolean values. [Zeeshan Ali] |
| 351 |
- More information in error messages. [Zeeshan Ali, Jorn Baayen] |
| 352 |
- Mark GUPnPServiceIntrospectionCallback() 'error' argument as 'const'. |
| 353 |
[Jorn Baayen] |
| 354 |
- Fixed gupnp_device_info_get_model_number() to return the right value. |
| 355 |
[Zeeshan Ali] |
| 356 |
- Moved the uuid dependency to Requires.Private, and removed the |
| 357 |
shared-mime-data build dependency. [Jorn Baayen] |
| 358 |
- Various other minor fixes. [Zeeshan Ali, Jorn Baayen] |
| 359 |
|
| 360 |
Special thanks to Stéphane Loeuillet for stress-testing the library and |
| 361 |
discovering many bugs. (Which are all fixed in this release. :) ) |
| 362 |
|
| 363 |
0.4 |
| 364 |
=== |
| 365 |
|
| 366 |
- A new series of functions for sending actions taking hash tables of parameter |
| 367 |
name-GValue pairs. [Jorn Baayen] |
| 368 |
- New introspection methods for state variable and action retrieval by name. |
| 369 |
[Zeeshan Ali] |
| 370 |
- New pkg-config file for building against an uninstalled libgupnp. |
| 371 |
[Zeeshan Ali] |
| 372 |
- Improved conversion between GValues and UPnP value types. [Jorn Baayen] |
| 373 |
- Only include evented state variables in initial event message. |
| 374 |
[Jorn Baayen] |
| 375 |
|
| 376 |
0.3 |
| 377 |
=== |
| 378 |
|
| 379 |
- Allow embedded devices to have their own UDNs. [Jorn Baayen] |
| 380 |
- Portability fix. [Priit Laes] |
| 381 |
|
| 382 |
0.2 |
| 383 |
=== |
| 384 |
|
| 385 |
- Fully implemented server-side API. [Jorn Baayen] |
| 386 |
- New service introspection support through SCPD documents. [Zeeshan Ali] |
| 387 |
- M-POST support. [Jorn Baayen] |
| 388 |
- More error codes split out into several error domains. [Jorn Baayen] |
| 389 |
- Use Accept-Language header for internationalisation. [Jorn Baayen] |
| 390 |
- Subresource retreival moved from DeviceProxy to DeviceInfo. [Jorn Baayen] |
| 391 |
- Bug fixes. |
| 392 |
|
| 393 |
GUPnP is now feature complete. |
| 394 |
|
| 395 |
0.1 |
| 396 |
=== |
| 397 |
|
| 398 |
Initial release. Full client-side API, server side not done yet. |