-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
262 lines (207 loc) · 8.52 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
0.13.1
======
Changes since 0.13:
- Use unix context manager if NetworkManager service is not available.
- Fix some minor leaks.
All contributors:
Zeeshan Ali (Khattak) <[email protected]>
Ross Burton <[email protected]>
0.13
====
Changes since 0.12.8:
- Print reason when fail to fetch description doc
- Support for dynamic/multiple networks through a new class, ContextManager.
This class creates/destroys new context as new network interfaces go up/down.
It also provides two convenient methods to take care of control point and
device reference managment for you. Currently we have two implementations of
context manager:
* unix: The static but guaranteed to work on Unix, implementation. This is the
default if none chosen at configure-time.
* network-manager: A NetworkManager based implementation.
- Idle handlers should use the assigned GMainContext.
- Gracefully handle 'no root element in description' scenerio.
- "host-ip" property moved from GUPnPContext to parent GSSDPClient.
- ControlPoint set itself inactive before getting disposed.
- New function to retrieve the capabilities of a DLNA device as announced in
the device description.
- New function to retrieve the content of arbitrary elements in the device
description.
- Fixed a crash that happens when service-proxy goes down before subscribtion to
it completes.
- Correct condition for SID being NULL.
- Don't create redundant proxies.
- Must not announce earlier versions of resources. This is strictly forbidden
according to the latest UPnP specs. Instead GSSDP now handles M-SEARCH
requests independent of version requested.
- Free app developer from hosting of description documents.
- New API to get SoupMessage associated with ServiceAction.
- Handle the SOAPAction header being missing.
- Fixed strrchr result checking.
- Provide and use a wrapper class for xmlDoc objects, GUPnPXMLDoc that is a
first-class gobject.
- New domains for XML errors.
- Many other minor fixes.
Bugs fixed:
1626 - Print reason when fail to fetch description doc
1769 - audit issues
1760 - missing/invalid SOAPAction header crashes gupnp
1705 - Provide a public API to get information about a GUPnPServiceAction's HTTP
request
Dependencies changed:
- gssdp >= 0.7
All contributors:
Zeeshan Ali (Khattak) <[email protected]>
Ross Burton <[email protected]>
Sven Neumann <[email protected]>
Jens Georg <[email protected]>
Steven Dorigotti <[email protected]>
WARNING: This release is API and ABI incompatible with previous releases.
0.12.8
======
Changes since 0.12.7
- Don't crash if device descriptions don't contain a root element.
- Fix pkg-config paths.
- Avoid using asserts.
- Use the closest match instead of using the icon that was last checked.
- Expect xmlRecoverMemory to fail.
- Reject action messages with zero content length.
- Change version in action answer.
Bug fixes in this release:
- bug#1570: gupnp doesn't set the pkgconfig lib dir correctly in 64 bit env.
- bug#1574: Avoid using asserts.
- bug#1592: gupnp_device_info_get_icon_url() does not return the closest match.
- bug#1604: Crash on action without any content.
All contributors to this release:
Ross Burton <[email protected]>
Zeeshan Ali (Khattak) <[email protected]>
Steven Dorigotti <[email protected]>
Sven Neumann <[email protected]>
Jens Georg <[email protected]>
0.12.7
======
- Chain up dispose and finalize in GUPnPDeviceInfo [Sven Neumann]
- Use a dedicated SoupSession [Sven Neumann]
- Fix device icon fallback logic [Ross Burton]
- Fix user agent string [Sven Neumann]
- Sanity check UDN while parsing [Zeeshan Ali]
0.12.6
======
- Port to FreeBSD. [Romain Tartière]
- Ship the XML files needed for example app. [Romain Tartière]
- Keep a reference on the control-point during signal emission. [Sven Neumann]
- Allow passing NULL to ControlPoint constructor, for default resource factory.
[Sven Neumann]
- Remove debug output that accidentally went in with the last commit.
[Sven Neumann]
0.12.5
======
- Improved error handling. [Sven Neumann, Jorn Baayen]
- Specify character set (UTF-8) in NOTIFY messages. [Jorn Baayen]
- Don't export internal functions. [Jorn Baayen]
- Fix some crasher bugs. [Zeeshan Ali]
- More lenient handling of xml from external sources. [Jorn Baayen,
Jussi Kukkonen]
- Fix possible reference cycles. [Zeeshan Ali, Jorn Baayen]
- Better handling of event subscription timeouts. [Zeeshan Ali]
0.12.4
======
- Set Content Type header correctly in soap messages [Zeeshan Ali]
- Don't pass arbitrary strings to printf() for security [Sven Neumann]
- Handle fscanf failing in get_default_host_ip() [Sven Neumann]
0.12.3
======
- Greatly improved client-side bindings [Jussi Kukkonen]
- Server-side bindings [JK]
- Don't use NULL return values from g_get_application_name [Ross Burton]
- Make gupnp_context_get_session public [Jorn Baayen]
- Use the specified GMainContext for timeouts [Olivier Crete, Jorn Baayen]
0.12.2
======
- Support returning actions outside of the 'action-invoked' signal handler
in service implementations. [Zeeshan Ali, Jorn Baayen]
- Add explicit dependency on gthread. [Zeeshan Ali, Jorn Baayen]
0.12.1
======
- Support Range headers without upper bound. [Jorn Baayen]
- Fixed memory management in HTTP GET handler. [Jorn Baayen]
0.12
====
- Add tool for generating convenience C wrappers for GUPnP service definitions.
[Ross Burton]
- Remove xmlDoc argument from gupnp_root_device_new() for simplicity.
(xmlDocs can still be passed to gupnp_root_device_new_full())
[Jorn Baayen]
- Better documentation, new tutorials and sample code. [Ross Burton]
- Improved support for Accept-Language header. [Jorn Baayen]
- Various internal improvements. [Zeeshan Ali, Jorn Baayen]
0.10.1
======
- Bump soname.
0.10
====
- Use libsoup 2.4. [Zeeshan Ali Khattak, Jorn Baayen]
- Use g_timeout_add_seconds(). [Jorn Baayen]
- Use GIO instead of xdgmime. [Jorn Baayen]
- Support HTTP Range header in the HTTP server. [Jorn Baayen]
- Use GMappedFile to mmap served files of read()ing them. [Jorn Baayen]
- Improved documentation. [Ross Burton]
- Spew HTTP messages to console when GUPNP_DEBUG is set. [Ross Burton]
- Various other fixes. [Ross Burton, Zeeshan Ali Khattak, Jorn Baayen]
0.8
===
- New API allowing for subclassing of resource types.
[Zeeshan Ali, Jorn Baayen]
- GUPnPDeviceInfo returns subresources with version greater or equal than
requested version. [Jorn Baayen]
- Servers announce versions less or equal than implemented version.
[Jorn Baayen]
- Make gupnp_context_get_server() public. [Jorn Baayen]
- GError arguments added to all error signals. [Jorn Baayen]
- Improved resubscription handling. [Jorn Baayen]
- Various other fixes and internal improvements
[Ross Burton, Zeeshan Ali, Jorn Baayen].
0.6
===
- Added service signal autoconnection feature in the spirit of
glade_xml_signal_autoconnect(). [Zeeshan Ali]
- Fixed various bugs related to object destruction. Fixes #500, 503.
[Jorn Baayen]
- Accept 'yes' and 'no' boolean values. [Zeeshan Ali]
- More information in error messages. [Zeeshan Ali, Jorn Baayen]
- Mark GUPnPServiceIntrospectionCallback() 'error' argument as 'const'.
[Jorn Baayen]
- Fixed gupnp_device_info_get_model_number() to return the right value.
[Zeeshan Ali]
- Moved the uuid dependency to Requires.Private, and removed the
shared-mime-data build dependency. [Jorn Baayen]
- Various other minor fixes. [Zeeshan Ali, Jorn Baayen]
Special thanks to Stéphane Loeuillet for stress-testing the library and
discovering many bugs. (Which are all fixed in this release. :) )
0.4
===
- A new series of functions for sending actions taking hash tables of parameter
name-GValue pairs. [Jorn Baayen]
- New introspection methods for state variable and action retrieval by name.
[Zeeshan Ali]
- New pkg-config file for building against an uninstalled libgupnp.
[Zeeshan Ali]
- Improved conversion between GValues and UPnP value types. [Jorn Baayen]
- Only include evented state variables in initial event message.
[Jorn Baayen]
0.3
===
- Allow embedded devices to have their own UDNs. [Jorn Baayen]
- Portability fix. [Priit Laes]
0.2
===
- Fully implemented server-side API. [Jorn Baayen]
- New service introspection support through SCPD documents. [Zeeshan Ali]
- M-POST support. [Jorn Baayen]
- More error codes split out into several error domains. [Jorn Baayen]
- Use Accept-Language header for internationalisation. [Jorn Baayen]
- Subresource retreival moved from DeviceProxy to DeviceInfo. [Jorn Baayen]
- Bug fixes.
GUPnP is now feature complete.
0.1
===
Initial release. Full client-side API, server side not done yet.