~ubuntu-branches/ubuntu/intrepid/coherence/intrepid

« back to all changes in this revision

Viewing changes to ChangeLog

  • Committer: Bazaar Package Importer
  • Author(s): Arnaud Quette
  • Date: 2007-08-02 10:48:40 UTC
  • Revision ID: james.westby@ubuntu.com-20070802104840-ip4jij6unufqno1p
Tags: upstream-0.4.0
ImportĀ upstreamĀ versionĀ 0.4.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2007-07-31 16:08  dev
 
2
 
 
3
        * ChangeLog, coherence/__init__.py,
 
4
          coherence/backends/flickr_storage.py, coherence/base.py,
 
5
          coherence/upnp/core/event.py, coherence/upnp/core/service.py,
 
6
          coherence/upnp/devices/control_point.py,
 
7
          coherence/upnp/devices/media_renderer.py,
 
8
          coherence/upnp/devices/media_server.py,
 
9
          coherence/upnp/services/servers/connection_manager_server.py,
 
10
          coherence/web/ui.py, docs/coherence.conf.example, setup.py:
 
11
          Preparations for the 0.4.0 release.
 
12
          
 
13
          This release brings
 
14
          
 
15
          * integration of a new logging module
 
16
          logging can now be configured via the config file or through an
 
17
          environment variable COHERENCE_DEBUG, which overrides the config
 
18
          values.
 
19
          
 
20
          Usage is like
 
21
          COHERENCE_DEBUG=*:3 emit INFO level messages from all modules
 
22
          COHERENCE_DEBUG=*:2,ssdp:4 WARNING level messages from all
 
23
          modules,
 
24
          plus debug level for the ssdp module
 
25
          
 
26
          * removed the dependency for SOAPpy, now using own methods and
 
27
          ElementTree only
 
28
          * start reworking the client API, to make things there easier
 
29
          too,
 
30
          see as an example
 
31
          https://coherence.beebits.net/wiki/CoherenceMediaRenderer
 
32
          * serving cover art now to DLNA MediaRenderers
 
33
          * refinements on the object creation and the import into the
 
34
          MediaServers
 
35
          * an installable package for the Nokia Maemo platform on the
 
36
          N800,
 
37
          complete with all dependecies, thanks to Rob Tylor of
 
38
          http://codethink.co.uk
 
39
          * and a lot more of the usual bugfixes and enhancements
 
40
 
 
41
2007-07-31 08:51  philn
 
42
 
 
43
        * coherence/extern/inotify.py: don't set _instance_ too early
 
44
 
 
45
2007-07-30 17:13  dev
 
46
 
 
47
        * coherence/upnp/core/device.py, coherence/upnp/core/service.py:
 
48
          more log level rearrangements
 
49
 
 
50
2007-07-30 16:42  philn
 
51
 
 
52
        * coherence/extern/inotify.py: check self._fd existence before
 
53
          release
 
54
 
 
55
2007-07-30 14:34  dev
 
56
 
 
57
        * coherence/backends/flickr_storage.py, coherence/base.py,
 
58
          coherence/log.py, coherence/upnp/core/service.py: * added
 
59
          disabling of any log output again, with 'none' as logmode in the
 
60
          configuration
 
61
          * rearranging the levels of some log messages
 
62
 
 
63
2007-07-27 10:07  dev
 
64
 
 
65
        * coherence/upnp/core/soap_proxy.py: return the failure from the
 
66
          errback of a soap call, so the upstream errback is called too
 
67
 
 
68
2007-07-27 10:06  dev
 
69
 
 
70
        * coherence/upnp/core/service.py: removed some debug noise
 
71
 
 
72
2007-07-27 10:05  dev
 
73
 
 
74
        * coherence/upnp/core/event.py: catch errors when sending
 
75
          UNSUBSCRIBE messages after the socket is gone
 
76
 
 
77
2007-07-26 18:49  dev
 
78
 
 
79
        * coherence/upnp/services/servers/connection_manager_server.py:
 
80
          fixed a wrong indentation
 
81
 
 
82
2007-07-26 16:10  philn
 
83
 
 
84
        * coherence/log.py: woo colored log output
 
85
 
 
86
2007-07-26 15:45  dev
 
87
 
 
88
        * coherence/__init__.py, coherence/base.py,
 
89
          coherence/upnp/core/device.py, coherence/upnp/core/event.py,
 
90
          coherence/upnp/core/service.py,
 
91
          coherence/upnp/devices/media_renderer_client.py,
 
92
          coherence/upnp/devices/media_server_client.py,
 
93
          coherence/upnp/services/clients/av_transport_client.py,
 
94
          coherence/upnp/services/clients/connection_manager_client.py,
 
95
          coherence/upnp/services/clients/content_directory_client.py,
 
96
          coherence/upnp/services/clients/rendering_control_client.py:
 
97
          event UNSUBSCRIBE messages haven't been send out on device
 
98
          shutdown.
 
99
          
 
100
          Using the proper write method to send out the request and
 
101
          rearrangement of the deferred cascade during the shutdown of
 
102
          Coherence solves that issue.
 
103
 
 
104
2007-07-25 18:29  dev
 
105
 
 
106
        * coherence/upnp/services/servers/connection_manager_server.py:
 
107
          react upon a malformed RemoteProtocolInfo with an error
 
108
 
 
109
2007-07-25 16:41  dev
 
110
 
 
111
        * coherence/upnp/core/DIDLLite.py: remove the '''optional'''
 
112
          preamble from the DIDLLite fragment, as some older
 
113
          ContentDirectory clients - notably the NOXON-2 software - can't
 
114
          handle it
 
115
 
 
116
2007-07-25 16:39  dev
 
117
 
 
118
        * coherence/upnp/devices/media_renderer.py,
 
119
          coherence/upnp/devices/media_server.py: follow-up to [585], do
 
120
          not suppress a lower-version number service announcement
 
121
 
 
122
2007-07-25 16:33  dev
 
123
 
 
124
        * coherence/upnp/core/msearch.py, coherence/upnp/core/ssdp.py: * do
 
125
          not send out ssdp notifications for ''silent'' devices and
 
126
          services on a '''ssdp:all''' request, only answer when exactly
 
127
          irthe type is queried
 
128
          * some log level adjustments
 
129
 
 
130
2007-07-25 16:26  dev
 
131
 
 
132
        * coherence/backends/mediadb_storage.py, coherence/log.py: * handle
 
133
          already existing cover art in the MediaDB store
 
134
          * forgotten argument passing at the log.critical convenience
 
135
          method
 
136
 
 
137
2007-07-25 10:43  dev
 
138
 
 
139
        * coherence/upnp/core/ssdp.py: do not append ''SILENT'' to the
 
140
          MSEARCH responses
 
141
 
 
142
2007-07-24 21:45  dev
 
143
 
 
144
        * coherence/upnp/core/service.py: added a namespace identifier to
 
145
          the event notification xml elements, closes #93
 
146
 
 
147
2007-07-24 21:35  dev
 
148
 
 
149
        * coherence/upnp/core/event.py, coherence/upnp/core/ssdp.py: a
 
150
          follow-up to [586], this time with the right files checked in :-(
 
151
 
 
152
2007-07-24 21:27  dev
 
153
 
 
154
        * coherence/upnp/core/event.py: have a proper event notification
 
155
          sequence number rollover - finally, after all these years ;-)
 
156
 
 
157
2007-07-24 21:11  dev
 
158
 
 
159
        * coherence/upnp/core/event.py, coherence/upnp/core/ssdp.py: added
 
160
          Date header to MSEARCH responses and event subscription messages
 
161
          to make the test-tool (and micxer) happy
 
162
 
 
163
2007-07-24 21:05  dev
 
164
 
 
165
        * coherence/upnp/devices/media_renderer.py,
 
166
          coherence/upnp/devices/media_server.py,
 
167
          coherence/upnp/services/servers/media_receiver_registrar_server.py:
 
168
          do not just register services in relation to the devices version
 
169
          number, react appropriate to version 1 only services like the
 
170
          MediaReceiverRegistrar and the ScheduledRecording one - this
 
171
          closes #92
 
172
 
 
173
2007-07-24 12:33  dev
 
174
 
 
175
        * coherence/upnp/core/DIDLLite.py: added ''originalTrackNumber'' to
 
176
          DIDLLite and be bit more tolerant to attributes with integer
 
177
          values
 
178
 
 
179
2007-07-24 08:06  dev
 
180
 
 
181
        * coherence/base.py: rearrange log-system initialization - a
 
182
          COHERENCE_DEBUG environment variable has always precedence over
 
183
          the log-level definitions in the config file
 
184
 
 
185
2007-07-23 20:28  dev
 
186
 
 
187
        * coherence/base.py, coherence/log.py: enable logging and level
 
188
          definition per subsystem via configuration file again
 
189
 
 
190
2007-07-23 17:46  dev
 
191
 
 
192
        * coherence/base.py, coherence/log.py: enable logging into a file
 
193
          via configuration again
 
194
 
 
195
2007-07-23 09:06  dev
 
196
 
 
197
        * coherence/base.py: be a bit more informative why a plugin import
 
198
          failed
 
199
 
 
200
2007-07-22 12:45  dev
 
201
 
 
202
        * coherence/backends/fs_storage.py, coherence/extern/inotify.py:
 
203
          append content of a directory if that directory was '''moved'''
 
204
          in, fixes #90
 
205
 
 
206
2007-07-15 15:19  dev
 
207
 
 
208
        * coherence/upnp/core/DIDLLite.py,
 
209
          coherence/upnp/services/clients/content_directory_client.py: *
 
210
          moved upnp:artist into the root class
 
211
          * return more info from the browse request
 
212
 
 
213
2007-07-11 23:42  dev
 
214
 
 
215
        * coherence/backends/fs_storage.py, coherence/upnp/core/service.py,
 
216
          coherence/upnp/core/utils.py,
 
217
          coherence/upnp/services/clients/content_directory_client.py:
 
218
          refinements of the CreateObject and ImportResource methods in the
 
219
          FSStore MediaServer, works fine now with our MediaRenderer
 
220
 
 
221
2007-07-11 23:39  dev
 
222
 
 
223
        * coherence/upnp/core/action.py, coherence/upnp/core/soap_proxy.py:
 
224
          adapt the handling of a single value result to the changes from
 
225
          the move from SOAPpy to our own ElementTree based parser
 
226
 
 
227
2007-07-11 23:36  dev
 
228
 
 
229
        * coherence/__init__.py, coherence/base.py: one more step in the
 
230
          ''we get the interface detection right'' direction
 
231
 
 
232
2007-07-09 21:05  dev
 
233
 
 
234
        * coherence/upnp/services/servers/av_transport_server.py: removed
 
235
          some lingering import of twisted.web.soap
 
236
 
 
237
2007-07-06 10:33  dev
 
238
 
 
239
        * coherence/upnp/core/utils.py: a lame fix to get the interface
 
240
          name on OSX, closes #88
 
241
 
 
242
2007-07-05 14:41  dev
 
243
 
 
244
        * coherence/upnp/devices/media_renderer.py,
 
245
          coherence/upnp/devices/media_server.py: fix the wrong if clause
 
246
          of [548]
 
247
 
 
248
2007-07-05 12:57  dev
 
249
 
 
250
        * coherence/upnp/devices/media_renderer.py,
 
251
          coherence/upnp/devices/media_server.py: added a keyword argument
 
252
          ''no_thread_needed'' (defaults to False) to initiate backends
 
253
          that are Twisted-friendly or need to run in a non-thread
 
254
          environment
 
255
 
 
256
2007-07-04 17:03  philn
 
257
 
 
258
        * coherence/extern/inotify.py: call reactor.removeReader when
 
259
          instance release is requested
 
260
 
 
261
2007-07-03 20:37  dev
 
262
 
 
263
        * coherence/__init__.py, coherence/base.py: some rearrangement of
 
264
          the eggs plugin handling
 
265
          
 
266
          * entrypoints are looked up only if there is at least one plugin
 
267
          to load defined
 
268
 
 
269
2007-07-03 19:07  dev
 
270
 
 
271
        * coherence/extern/covers_by_amazon.py: now the proper doc string
 
272
          adjustment
 
273
 
 
274
2007-07-03 18:57  dev
 
275
 
 
276
        * coherence/extern/covers_by_amazon.py: doc string adjustment
 
277
 
 
278
2007-07-03 18:48  dev
 
279
 
 
280
        * coherence/extern/covers_by_amazon.py: some cosmetic changes re
 
281
          [541]
 
282
 
 
283
2007-07-03 15:29  philn
 
284
 
 
285
        * coherence/extern/covers_by_amazon.py: applied patch from
 
286
          lightyear
 
287
 
 
288
2007-07-03 15:03  philn
 
289
 
 
290
        * coherence/backends/mediadb_storage.py,
 
291
          coherence/extern/covers_by_amazon.py: API key is now a parameter
 
292
          of the coverGetter
 
293
 
 
294
2007-07-03 14:53  dev
 
295
 
 
296
        * MANIFEST.in, coherence/extern/covers_by_amazon.py,
 
297
          coherence/extern/et.py, coherence/upnp/core/utils.py: * added
 
298
          MANIFEST.in to be prepared for the exclusion of the debion
 
299
          directory
 
300
          * moved parse_xml out of upnp.core.utils.py into
 
301
          coherence.extern.et.py, to remove the dependency from
 
302
          covers_by_amazon.py
 
303
 
 
304
2007-07-03 12:05  dev
 
305
 
 
306
        * coherence/backends/elisa_renderer.py: changed the check for a
 
307
          fitting protocolInfo
 
308
 
 
309
2007-07-02 17:06  philn
 
310
 
 
311
        * coherence/backends/elisa_renderer.py,
 
312
          coherence/upnp/core/ssdp.py: various fixes
 
313
 
 
314
2007-06-30 12:10  dev
 
315
 
 
316
        * coherence/base.py: do not '''print''' the tracebacks, return them
 
317
          as string for the log system to handle them
 
318
 
 
319
2007-06-30 11:05  dev
 
320
 
 
321
        * coherence/extern/et.py: we need that specific module import path
 
322
          for the ElementTree module on the Python 2.5 version on the Maemo
 
323
          platform
 
324
 
 
325
2007-06-29 17:17  philn
 
326
 
 
327
        * coherence/upnp/core/device.py, coherence/upnp/core/ssdp.py: don't
 
328
          attempt to write on None transport
 
329
 
 
330
2007-06-27 19:17  philn
 
331
 
 
332
        * coherence/backends/elisa_storage.py: ObjectIDs are not integers
 
333
          anymore
 
334
 
 
335
2007-06-27 18:43  dev
 
336
 
 
337
        * coherence/backends/fs_storage.py,
 
338
          coherence/upnp/core/DIDLLite.py: small change to see if we can
 
339
          support album art on the container level
 
340
 
 
341
2007-06-27 18:11  dev
 
342
 
 
343
        * coherence/upnp/core/DIDLLite.py: DLNA attributes for
 
344
          upnp:albumArtURI (testing)
 
345
 
 
346
2007-06-27 17:11  dev
 
347
 
 
348
        * coherence/upnp/core/DIDLLite.py: disable DLNA decorator due to
 
349
          immanent stupidity
 
350
 
 
351
2007-06-27 16:58  dev
 
352
 
 
353
        * coherence/extern/et.py, coherence/upnp/core/utils.py: set proper
 
354
          default encoding and handle data that is unicode already
 
355
 
 
356
2007-06-27 16:53  dev
 
357
 
 
358
        * coherence/upnp/devices/media_server.py: reduce noise
 
359
 
 
360
2007-06-27 12:16  dev
 
361
 
 
362
        * coherence/extern/et.py, coherence/upnp/core/DIDLLite.py,
 
363
          coherence/upnp/core/soap_lite.py: changed some of the ElementTree
 
364
          action to really send out utf-8 data (experimental and untested
 
365
          with Python2.4), re #89
 
366
 
 
367
2007-06-26 17:44  dev
 
368
 
 
369
        * coherence/upnp/devices/media_renderer_client.py,
 
370
          coherence/upnp/devices/media_server_client.py: follow up to
 
371
          [510], adjusting some debug helper methods
 
372
 
 
373
2007-06-26 10:47  dev
 
374
 
 
375
        * coherence/upnp/core/DIDLLite.py, coherence/upnp/core/dlna.py: * a
 
376
          beginning of a DLNA decorator module
 
377
          * added xml preamble to the DIDLLite string
 
378
 
 
379
2007-06-26 10:45  dev
 
380
 
 
381
        * coherence/upnp/core/variable.py: add the device usn as a
 
382
          parameter to the StateVariable updated notification
 
383
 
 
384
2007-06-26 10:43  dev
 
385
 
 
386
        * coherence/base.py, coherence/upnp/core/device.py,
 
387
          coherence/upnp/core/ssdp.py: some modifications on the reaction
 
388
          upon a SSDP device bye-bye message
 
389
 
 
390
2007-06-26 10:41  dev
 
391
 
 
392
        * coherence/upnp/devices/media_server_client.py: adjusting to the
 
393
          new ContentDirectoryService ''browse'' action
 
394
 
 
395
2007-06-26 10:39  dev
 
396
 
 
397
        * coherence/backends/flickr_storage.py,
 
398
          coherence/backends/fs_storage.py,
 
399
          coherence/upnp/devices/media_server.py: some more fixed regarding
 
400
          the unicode filenames
 
401
 
 
402
2007-06-25 19:18  dev
 
403
 
 
404
        * coherence/upnp/services/clients/content_directory_client.py:
 
405
          preserve backward compatibility, call new version of the UPnP
 
406
          ContentDirectoryService client Browse action only if requested
 
407
          explicitly
 
408
 
 
409
2007-06-25 18:40  dev
 
410
 
 
411
        * coherence/extern/inotify.py: some solution to handle unicode
 
412
          pathnames, again this might work only on utf-8 encoded
 
413
          filesystems
 
414
 
 
415
2007-06-25 15:06  dev
 
416
 
 
417
        * coherence/upnp/services/clients/content_directory_client.py: new
 
418
          version of the UPnP ContentDirectoryService client Browse action,
 
419
          returns a dict with the results of the query as another dict with
 
420
          the key ''items'' included. Might maybe change once more.
 
421
 
 
422
2007-06-25 14:51  dev
 
423
 
 
424
        * coherence/backends/fs_storage.py,
 
425
          coherence/backends/gstreamer_audio_player.py: * add mp4 files to
 
426
          the list of supported protocolType - closes #87, thx!
 
427
          * store filenames within the FSStore MediaServer as unicode
 
428
          strings - re #63.
 
429
          This will probably still have issues with filesystems that don't
 
430
          use utf-8 encoding.
 
431
 
 
432
2007-06-22 15:00  dev
 
433
 
 
434
        * coherence/upnp/devices/media_renderer.py,
 
435
          coherence/upnp/devices/media_server.py: get around a missing
 
436
          method in the new logging framework
 
437
 
 
438
2007-06-22 14:53  dev
 
439
 
 
440
        * coherence/backends/flickr_storage.py: added missing Loggable
 
441
          inheritance
 
442
 
 
443
2007-06-22 14:47  philn
 
444
 
 
445
        * coherence/upnp/core/service.py: ServiceServer should be a
 
446
          Loggable
 
447
 
 
448
2007-06-22 11:58  dev
 
449
 
 
450
        * coherence/backends/fs_storage.py,
 
451
          coherence/backends/gstreamer_audio_player.py: some protocolType
 
452
          additions for a simple test of the video handling capabilities of
 
453
          the MediaServer and the MediaRenderer
 
454
 
 
455
2007-06-22 08:04  dev
 
456
 
 
457
        * coherence/upnp/devices/media_renderer.py: fixed missing import
 
458
          that broke the MediaRenderer
 
459
 
 
460
2007-06-22 07:59  dev
 
461
 
 
462
        * coherence/extern/covers_by_amazon.py: added usage restrictions
 
463
          (by the Amazon Webservices license) to the doc string
 
464
 
 
465
2007-06-20 09:27  philn
 
466
 
 
467
        * coherence/base.py, coherence/upnp/core/event.py,
 
468
          coherence/upnp/devices/control_point.py: changed some warnings to
 
469
          info()
 
470
 
 
471
2007-06-20 09:01  philn
 
472
 
 
473
        * ., coherence/log.py: forgot a file
 
474
 
 
475
2007-06-20 08:58  philn
 
476
 
 
477
        * ChangeLog, coherence/backends/axiscam_storage.py,
 
478
          coherence/backends/buzztard_control.py,
 
479
          coherence/backends/elisa_renderer.py,
 
480
          coherence/backends/flickr_storage.py,
 
481
          coherence/backends/fs_storage.py,
 
482
          coherence/backends/gstreamer_audio_player.py,
 
483
          coherence/backends/mediadb_storage.py, coherence/base.py,
 
484
          coherence/upnp/core/action.py, coherence/upnp/core/device.py,
 
485
          coherence/upnp/core/event.py, coherence/upnp/core/msearch.py,
 
486
          coherence/upnp/core/service.py,
 
487
          coherence/upnp/core/soap_service.py, coherence/upnp/core/ssdp.py,
 
488
          coherence/upnp/core/variable.py,
 
489
          coherence/upnp/devices/control_point.py,
 
490
          coherence/upnp/devices/media_renderer.py,
 
491
          coherence/upnp/devices/media_renderer_client.py,
 
492
          coherence/upnp/devices/media_server.py,
 
493
          coherence/upnp/devices/media_server_client.py,
 
494
          coherence/upnp/services/servers/connection_manager_server.py,
 
495
          coherence/web/ui.py: * coherence/backends/axiscam_storage.py:
 
496
          * coherence/backends/buzztard_control.py:
 
497
          * coherence/backends/elisa_renderer.py:
 
498
          * coherence/backends/flickr_storage.py:
 
499
          * coherence/backends/fs_storage.py:
 
500
          * coherence/backends/gstreamer_audio_player.py:
 
501
          * coherence/backends/mediadb_storage.py:
 
502
          * coherence/base.py:
 
503
          * coherence/upnp/core/action.py:
 
504
          * coherence/upnp/core/device.py:
 
505
          * coherence/upnp/core/event.py:
 
506
          * coherence/upnp/core/msearch.py:
 
507
          * coherence/upnp/core/service.py:
 
508
          * coherence/upnp/core/soap_service.py:
 
509
          * coherence/upnp/core/ssdp.py:
 
510
          * coherence/upnp/core/variable.py:
 
511
          * coherence/upnp/devices/control_point.py:
 
512
          * coherence/upnp/devices/media_renderer.py:
 
513
          * coherence/upnp/devices/media_renderer_client.py:
 
514
          * coherence/upnp/devices/media_server.py:
 
515
          * coherence/upnp/devices/media_server_client.py:
 
516
          * coherence/upnp/services/servers/connection_manager_server.py:
 
517
          * coherence/web/ui.py:
 
518
          Slighly changed the way we do logging :-) There's now a
 
519
          COHERENCE_DEBUG env variable you can use to debug Coherence.
 
520
 
 
521
2007-06-20 08:30  dev
 
522
 
 
523
        * coherence/upnp/core/soap_lite.py,
 
524
          coherence/upnp/core/soap_service.py: more rework on the creation
 
525
          of an UPnP SOAP error
 
526
 
 
527
2007-06-20 08:19  dev
 
528
 
 
529
        * coherence/upnp/core/service.py: changed a log level
 
530
 
 
531
2007-06-20 08:19  dev
 
532
 
 
533
        * coherence/upnp/core/ssdp.py: send bye-bye notifications for
 
534
          "silent" (not-actively) announced devices/services
 
535
 
 
536
2007-06-19 20:22  dev
 
537
 
 
538
        * coherence/upnp/core/soap_service.py: bug fix for wrong UPnPError
 
539
          creation
 
540
 
 
541
2007-06-19 19:26  dev
 
542
 
 
543
        * coherence/extern/elementsoap, coherence/upnp/core/action.py,
 
544
          coherence/upnp/core/soap_lite.py,
 
545
          coherence/upnp/core/soap_proxy.py,
 
546
          coherence/upnp/core/soap_service.py: * rewrite of the SOAP
 
547
          classes, now relying solely on the ElementTree api.
 
548
          * this allows us to remove the SOAPpy dependency
 
549
 
 
550
2007-06-18 13:40  dev
 
551
 
 
552
        * coherence/extern/logger.py: bug fix
 
553
 
 
554
2007-06-18 13:33  dev
 
555
 
 
556
        * coherence/__init__.py, coherence/base.py,
 
557
          coherence/upnp/core/device.py, coherence/upnp/core/service.py,
 
558
          coherence/upnp/core/utils.py: * add a new device only to the
 
559
          internal list of devices after the detection of its services and
 
560
          its own one has completed successfully, re #82
 
561
          * maybe keep a reference of that unsuccessful attempt and ignore
 
562
          this device after three,... failed attempts?
 
563
          * be more informative about errors during plugin setup
 
564
          * increase svn version number to 0.3.1
 
565
 
 
566
2007-06-18 13:22  dev
 
567
 
 
568
        * coherence/upnp/devices/media_renderer.py,
 
569
          coherence/upnp/devices/media_server.py: create better looking
 
570
          (more readable) xml when in debug mode
 
571
 
 
572
2007-06-18 13:21  dev
 
573
 
 
574
        * coherence/extern/logger.py: helper methods to find out on which
 
575
          log level we are
 
576
 
 
577
2007-06-18 13:20  dev
 
578
 
 
579
        * coherence/extern/et.py: a little helper method to generate
 
580
          human-readable xml
 
581
 
 
582
2007-06-12 09:32  dev
 
583
 
 
584
        * coherence/extern/covers_by_amazon.py: make the WorkQueue a bit
 
585
          more general
 
586
 
 
587
2007-06-11 18:40  dev
 
588
 
 
589
        * setup.py: added version news into the package description
 
590
 
 
591
2007-06-11 18:08  dev
 
592
 
 
593
        * ChangeLog, coherence/__init__.py,
 
594
          coherence/backends/fs_storage.py: preparations for the 0.3.0
 
595
          release
 
596
 
 
597
2007-06-10 14:57  dev
 
598
 
 
599
        * coherence/upnp/core/ssdp.py,
 
600
          coherence/upnp/devices/media_renderer.py,
 
601
          coherence/upnp/devices/media_server.py: make some local device
 
602
          and service registrations ''silent'', meaning not announcing them
 
603
          via SSDP alive notification messages, but still answer for
 
604
          MSEARCH requests.
 
605
          
 
606
          This should solve an issue causing the PS3 to overbalance when
 
607
          getting notification messages from the same device for different
 
608
          device versions.
 
609
 
 
610
2007-06-10 14:52  dev
 
611
 
 
612
        * coherence/backends/fs_storage.py,
 
613
          coherence/upnp/core/DIDLLite.py: revert some changes made during
 
614
          the PS3 tests which seem to be unnecessary
 
615
 
 
616
2007-06-10 10:46  dev
 
617
 
 
618
        * coherence/upnp/core/service.py,
 
619
          coherence/upnp/devices/media_server.py: fixes some wrong
 
620
          assumption about an int really being one
 
621
 
 
622
2007-06-09 15:18  dev
 
623
 
 
624
        * coherence/__init__.py, coherence/backends/elisa_storage.py,
 
625
          coherence/backends/fs_storage.py,
 
626
          coherence/backends/gstreamer_audio_player.py,
 
627
          coherence/extern/et.py, coherence/extern/inotify.py,
 
628
          coherence/extern/uuid/uuid.README.txt,
 
629
          coherence/upnp/core/DIDLLite.py, coherence/upnp/core/event.py,
 
630
          coherence/upnp/core/service.py,
 
631
          coherence/upnp/core/soap_service.py, coherence/upnp/core/ssdp.py,
 
632
          coherence/upnp/core/utils.py,
 
633
          coherence/upnp/devices/media_server.py,
 
634
          coherence/upnp/services/servers/connection_manager_server.py,
 
635
          docs/coherence.conf.example, tests/rpc_client.py: merged all
 
636
          PS3-test branch changes r456:469 back into trunk.
 
637
 
 
638
2007-05-24 19:44  dev
 
639
 
 
640
        * coherence/upnp/devices/media_renderer.py,
 
641
          coherence/upnp/devices/media_server.py: enable support for device
 
642
          icons
 
643
          
 
644
          configuration isn't yet optimal - in the section of the
 
645
          MediaServer or MediaRenderer backend in the config file we need
 
646
          something like this:
 
647
          
 
648
          {{{
 
649
          [[[icon]]]
 
650
          mimetype = image/png
 
651
          height = 48
 
652
          width = 48
 
653
          depth = 24
 
654
          url = file:///home/dev/elisa/elisa.png
 
655
          }}}
 
656
          
 
657
          or in the config dict:
 
658
          
 
659
          {{{
 
660
          'icon': { 'url':'http://coherence.beebits.net/image.png',
 
661
          'mimetype': 'image/png',
 
662
          'width':120,
 
663
          'height':120,
 
664
          'depth':24
 
665
          }
 
666
          }}}
 
667
          
 
668
          According to the
 
669
          [http://upnp.org/specs/arch/UPnP-DeviceArchitecture-v1.0-20060720.pdf
 
670
          UPnP Device Architecture p.28] all fields are required. Maybe
 
671
          later Coherence can autogenerate the values with a PIL call.
 
672
          
 
673
          Multiple icons are supported to. The config above has to be
 
674
          wrapped into an '''icons''' section or dictionary, and the
 
675
          '''icon''' has to be replaced with an unique name.
 
676
 
 
677
2007-05-21 12:40  dev
 
678
 
 
679
        * coherence/backends/elisa_storage.py,
 
680
          coherence/upnp/core/DIDLLite.py: enable the Elisa MediaServer to
 
681
          supply cover images too
 
682
 
 
683
2007-05-20 19:03  dev
 
684
 
 
685
        * coherence/backends/mediadb_storage.py: use other id3 tag library
 
686
          ([http://pyid3lib.sourceforge.net pyid3lib]) if available, as
 
687
          requested by konttori
 
688
 
 
689
2007-05-20 19:00  dev
 
690
 
 
691
        * coherence/upnp/devices/media_server.py: small cleanup
 
692
 
 
693
2007-05-20 18:59  dev
 
694
 
 
695
        * coherence/extern/covers_by_amazon.py: * works now with artist and
 
696
          title in unicode
 
697
          * typo fix
 
698
 
 
699
2007-05-19 09:53  dev
 
700
 
 
701
        * coherence/backends/mediadb_storage.py: this is a comment addon
 
702
          for [449]
 
703
          
 
704
          * added the image extension to the cover request uri, so clients
 
705
          like the Nokia Media Streamer - which determine the image type by
 
706
          extension and ignore the mimetype - can handle it. This closes
 
707
          #78
 
708
          
 
709
          * reworked the container structure and added an "All tracks of
 
710
          <artist>" at the beginning of the Artist container
 
711
 
 
712
2007-05-19 09:43  dev
 
713
 
 
714
        * coherence/backends/mediadb_storage.py,
 
715
          coherence/upnp/devices/media_server.py: adapt the recognition of
 
716
          a request for cover art to the new uri with the image extension
 
717
          added, addresses #78
 
718
 
 
719
2007-05-19 09:41  dev
 
720
 
 
721
        * coherence/upnp/services/servers/content_directory_server.py:
 
722
          remove the wrong conversion of the ObjectID to an integer
 
723
 
 
724
2007-05-18 12:26  dev
 
725
 
 
726
        * coherence/upnp/devices/media_server.py: adjustments to proper
 
727
          display unicode names and titles in the web-interface
 
728
 
 
729
2007-05-18 12:25  dev
 
730
 
 
731
        * coherence/backends/mediadb_storage.py: Look Ma - now with 'All'
 
732
          and 'Artists' containers
 
733
 
 
734
2007-05-18 12:23  dev
 
735
 
 
736
        * coherence/upnp/core/utils.py: some minor cleanup
 
737
 
 
738
2007-05-17 19:55  dev
 
739
 
 
740
        * coherence/backends/mediadb_storage.py: * made the MediaStore a
 
741
          working MediaServer backend
 
742
          * added album art/cover image support
 
743
 
 
744
2007-05-17 19:52  dev
 
745
 
 
746
        * coherence/upnp/devices/media_server.py: adjustments to work with
 
747
          the MediaStore backend and to support album art/cover retrieval
 
748
 
 
749
2007-05-17 19:46  dev
 
750
 
 
751
        * coherence/upnp/core/DIDLLite.py: extend MusicTrack with
 
752
          'upnp:albumArtURI' attribute, which could move up to Item anyway
 
753
 
 
754
2007-05-17 19:41  dev
 
755
 
 
756
        * coherence/extern/covers_by_amazon.py: allow keeping the received
 
757
          image in memory or converting it into a different format with
 
758
          [http://www.pythonware.com/products/pil/index.htm PIL]
 
759
 
 
760
2007-05-17 12:18  dev
 
761
 
 
762
        * coherence/backends/buzztard_control.py,
 
763
          coherence/backends/flickr_storage.py,
 
764
          coherence/backends/fs_storage.py,
 
765
          coherence/upnp/services/servers/content_directory_server.py: use
 
766
          methods to access the MediaServer item attributes, allowing the
 
767
          item to create them on the fly
 
768
 
 
769
2007-05-17 12:16  dev
 
770
 
 
771
        * setup.py: add the new MediaStore backend to the MediaServer
 
772
          entrypoints
 
773
 
 
774
2007-05-17 11:55  dev
 
775
 
 
776
        * coherence/extern/logger.py: got it right this time? :-/
 
777
 
 
778
2007-05-17 11:40  dev
 
779
 
 
780
        * coherence/extern/logger.py: handle unicode log msg arguments
 
781
 
 
782
2007-05-13 20:17  dev
 
783
 
 
784
        * coherence/backends/mediadb_storage.py: first version of a
 
785
          MediaStore with a database backend, provides some basic internal
 
786
          functionality, but far from complete
 
787
 
 
788
2007-05-13 19:37  dev
 
789
 
 
790
        * coherence/extern/covers_by_amazon.py: deal a bit better with the
 
791
          filename extension
 
792
 
 
793
2007-05-12 20:30  dev
 
794
 
 
795
        * coherence/extern/covers_by_amazon.py: now callback handling with
 
796
          parameter passing
 
797
 
 
798
2007-05-12 11:23  dev
 
799
 
 
800
        * coherence/extern/covers_by_amazon.py: added a callback parameter,
 
801
          so the initiator will get informed when an image retrieval has
 
802
          succeeded
 
803
 
 
804
2007-05-12 10:57  dev
 
805
 
 
806
        * coherence/extern/covers_by_amazon.py: a small helper module to
 
807
          retrieve covers/album-art via the Amazon ECommerce Webservice
 
808
          with Twisted
 
809
          
 
810
          * works for ASIN and ARTIST/TITLE
 
811
          * saves the retrieved image in a file
 
812
          * includes a small Queue module to reduce the number of parallel
 
813
          requests
 
814
 
 
815
2007-05-10 16:30  dev
 
816
 
 
817
        * coherence/extern/inotify.py: added system call ids for ARM/Maemo
 
818
          platform
 
819
 
 
820
2007-05-10 16:29  dev
 
821
 
 
822
        * coherence/upnp/core/event.py: reduce the amount of log output
 
823
 
 
824
2007-05-07 20:21  dev
 
825
 
 
826
        * coherence/backends/gstreamer_audio_player.py, setup.py: rework of
 
827
          the GStreamer MediaRenderer
 
828
          
 
829
          supports ogg now and works way better on the N800 (still a few
 
830
          issues open, e.g. seems to stop sending UPnP events)
 
831
          
 
832
          re #74
 
833
 
 
834
2007-05-07 08:28  dev
 
835
 
 
836
        * coherence/upnp/core/service.py: store the information about
 
837
          vendor defines in the ''allowed value range'' too
 
838
 
 
839
2007-05-07 08:26  dev
 
840
 
 
841
        * coherence/backends/fs_storage.py,
 
842
          coherence/upnp/core/DIDLLite.py: adaption for ogg-files
 
843
 
 
844
2007-05-05 13:31  dev
 
845
 
 
846
        * coherence/__init__.py, coherence/base.py,
 
847
          coherence/upnp/core/device.py, coherence/upnp/core/event.py,
 
848
          coherence/upnp/core/service.py, coherence/upnp/core/ssdp.py: Fix
 
849
          the shutdown method of Coherence, the
 
850
          ''reactor.addSystemEventTrigger( 'before', 'shutdown',
 
851
          self.shutdown)'' expects self.shutdown to return a deferred and
 
852
          waits until that has finished.
 
853
          
 
854
          Now we return a
 
855
          [http://twistedmatrix.com/projects/core/documentation/howto/defer.html#auto7
 
856
          deferredList] in which we collect and wait for all cleanups that
 
857
          have to be done.
 
858
          
 
859
          In addition the way the event unsubscription had to be changed. A
 
860
          new EventProtocol instance seems not to be created by the
 
861
          ClientCreater when the reactor is going down. Which makes some
 
862
          sense anyway. :-)
 
863
          
 
864
          So we keep the protocol instance after our first event
 
865
          subscription request for reuse around and are now able to send
 
866
          out the unsubscribe request.
 
867
          
 
868
          This fixes #75 - at least it is supposed to. If not pls reopen
 
869
          this ticket.
 
870
 
 
871
2007-05-04 10:51  dev
 
872
 
 
873
        * coherence/backends/flickr_storage.py: Flickr seems to have
 
874
          changed the way original photos can be retrieved.
 
875
          
 
876
          [http://flickr.com/services/api/misc.urls.html Flickr Photo
 
877
          Source URLs]
 
878
          
 
879
          To access the original photos, we need to construct the url with
 
880
          an ''originalsecret'', which isn't returned in the response to
 
881
          our current request.
 
882
          
 
883
          So for now we just take the default image (medium resolution?)
 
884
          that Flickr offers and try to sort out later what's needed to
 
885
          retrieve that ''originalsecret'' value.
 
886
          
 
887
          This closes #73.
 
888
 
 
889
2007-04-26 10:54  micxer
 
890
 
 
891
        * coherence/extern/uuid/uuid.py: fixed typo in uuid.py
 
892
 
 
893
2007-04-16 19:03  dev
 
894
 
 
895
        * coherence/backends/gstreamer_audio_player.py: added id3lib to the
 
896
          GStreamer pipeline on the N800, to avoid crashes of dspmp3sink
 
897
          with files containing tags it cant handle
 
898
 
 
899
2007-04-15 18:40  dev
 
900
 
 
901
        * coherence/backends/fs_storage.py,
 
902
          coherence/upnp/devices/control_point.py,
 
903
          coherence/upnp/devices/media_server.py, tests/rpc_client.py:
 
904
          added the missing http-put content import method, needs probably
 
905
          a bit more error checking
 
906
          
 
907
          {{{
 
908
          tests/rpc_client.py -c put_resource
 
909
          "url=http://host:port/uuid/id?import" "path=file.mp3"
 
910
          }}}
 
911
 
 
912
2007-04-11 20:38  dev
 
913
 
 
914
        * coherence/backends/gstreamer_audio_player.py: more work on the
 
915
          GStreamer MediaRenderer for the Nokia N800,
 
916
          fixed some wrong assumptions on how GStreamer ticks,
 
917
          addresses [74]
 
918
 
 
919
2007-04-11 15:42  dev
 
920
 
 
921
        * coherence/backends/gstreamer_audio_player.py: volume control on
 
922
          the Nokia N800 dspm3sink
 
923
 
 
924
2007-04-11 13:06  dev
 
925
 
 
926
        * coherence/backends/gstreamer_audio_player.py: some changes in the
 
927
          GStreamer MediaRenderer to work on the Nokia N800, addresses #74
 
928
 
 
929
2007-04-11 13:04  dev
 
930
 
 
931
        * coherence/upnp/services/clients/av_transport_client.py: added
 
932
          necessary parameter for AVTransport Play (we do check this now)
 
933
 
 
934
2007-04-05 16:36  dev
 
935
 
 
936
        * tests/rpc_client.py: cut 'n paste error
 
937
 
 
938
2007-04-04 21:21  dev
 
939
 
 
940
        * coherence/upnp/devices/control_point.py, tests/rpc_client.py:
 
941
          more work on the ContentDirectory action ImportResource? in the
 
942
          file-system MediaServer
 
943
          
 
944
          an upload should now be possible with
 
945
          
 
946
          {{{
 
947
          test/rpc_client.py -c import_resource -d <uuid of MediaServer>
 
948
          source_uri=http://host/file
 
949
          destination_uri=http://mediaserver/location?import
 
950
          }}}
 
951
 
 
952
2007-04-04 16:17  dev
 
953
 
 
954
        * coherence/backends/fs_storage.py: handle non-existent inotify
 
955
          support graciously
 
956
 
 
957
2007-04-04 10:09  dev
 
958
 
 
959
        * setup.py: generate download url from __version__
 
960
 
 
961
2007-04-03 19:38  dev
 
962
 
 
963
        * coherence/__init__.py, coherence/backends/fs_storage.py,
 
964
          coherence/backends/gstreamer_audio_player.py,
 
965
          coherence/upnp/core/DIDLLite.py, coherence/upnp/core/utils.py,
 
966
          coherence/upnp/devices/control_point.py,
 
967
          coherence/upnp/devices/media_server.py,
 
968
          coherence/upnp/services/clients/content_directory_client.py,
 
969
          coherence/upnp/services/servers/content_directory_server.py,
 
970
          tests/rpc_client.py: initial work to support the ContentDirectory
 
971
          actions CreateObject and ImportResource in the file-system
 
972
          MediaServer
 
973
          
 
974
          for testing there is at the moment only the rpc_client
 
975
          
 
976
          {{{
 
977
          test/rpc_client.py -c list_devices
 
978
          
 
979
          test/rpc_client.py -c create_object -d <uuid of MediaServer> -i
 
980
          1000 title=abc upnp_class=object.container.storageFolder
 
981
          parentID=1000
 
982
          }}}
 
983
 
 
984
2007-04-03 18:53  dev
 
985
 
 
986
        * coherence/__init__.py, coherence/base.py: fix plugin load for
 
987
          plugins with missing dependencies
 
988
 
 
989
2007-04-01 10:19  dev
 
990
 
 
991
        * setup.py: update setup.py to allow registering with pypi
 
992
 
 
993
2007-04-01 09:38  dev
 
994
 
 
995
        * coherence/__init__.py: update version to 0.2.0
 
996
 
 
997
2007-03-26 12:52  dev
 
998
 
 
999
        * coherence/backends/axiscam_storage.py: put the signal somethere
 
1000
          where it makes sense
 
1001
 
 
1002
2007-03-26 11:58  dev
 
1003
 
 
1004
        * coherence/backends/elisa_renderer.py: some more fixes for the
 
1005
          Elisa MediaRenderer
 
1006
 
 
1007
2007-03-26 11:57  dev
 
1008
 
 
1009
        * coherence/backends/axiscam_storage.py: add forgotten louie signal
 
1010
          to the axiscam_store
 
1011
 
 
1012
2007-03-23 10:52  dev
 
1013
 
 
1014
        * coherence/backends/elisa_renderer.py,
 
1015
          coherence/backends/elisa_storage.py, coherence/base.py,
 
1016
          coherence/upnp/core/utils.py: remove twisted internal
 
1017
          log-messages from the Coherence log
 
1018
 
 
1019
2007-03-22 22:01  dev
 
1020
 
 
1021
        * coherence/__init__.py, coherence/backends/elisa_renderer.py,
 
1022
          coherence/backends/elisa_storage.py: incooperated patch from
 
1023
          philn with some minor adjustments
 
1024
          
 
1025
          re #72
 
1026
 
 
1027
2007-03-21 09:50  philn
 
1028
 
 
1029
        * coherence/backends/elisa_renderer.py,
 
1030
          coherence/backends/elisa_storage.py: Some progress on internal
 
1031
          elisa renderer
 
1032
 
 
1033
2007-03-20 19:51  dev
 
1034
 
 
1035
        * coherence/plugins: removed not needed plugins directory
 
1036
 
 
1037
2007-03-20 19:50  dev
 
1038
 
 
1039
        * coherence/__init__.py, coherence/base.py, setup.py: switched to
 
1040
          an entry points/setuptools based plugin system as
 
1041
          [http://base-art.net/Articles/64/ described by Philippe Normand]
 
1042
          
 
1043
          current entry points are:
 
1044
          
 
1045
          * coherence.plugins.backend.media_server
 
1046
          * coherence.plugins.backend.media_renderer
 
1047
          
 
1048
          Now external backends can much easier integrated and even
 
1049
          installed separately.
 
1050
          
 
1051
          This addresses #22 and closes #42.
 
1052
 
 
1053
2007-03-20 19:38  dev
 
1054
 
 
1055
        * coherence/backends/gstreamer_audio_player.py,
 
1056
          docs/coherence.conf.example: renamend GStreamer MediaRenderer
 
1057
          class from Player to GStreamerPlayer to be a bit more descriptive
 
1058
          in the plugin definition
 
1059
 
 
1060
2007-03-20 19:27  dev
 
1061
 
 
1062
        * coherence/upnp/core/device.py, coherence/upnp/core/service.py:
 
1063
          more fixes following [384]
 
1064
 
 
1065
2007-03-18 13:49  dev
 
1066
 
 
1067
        * coherence/upnp/core/device.py, coherence/upnp/core/service.py,
 
1068
          coherence/upnp/core/soap_proxy.py: proper handle of deferred
 
1069
          result, that's now a tuple
 
1070
          error introduced in [384]
 
1071
 
 
1072
2007-03-18 11:56  philn
 
1073
 
 
1074
        * coherence/upnp/core/utils.py: twisted.web.getPage returns a list
 
1075
          for me
 
1076
 
 
1077
2007-03-15 22:23  dev
 
1078
 
 
1079
        * coherence/upnp/core/device.py, coherence/upnp/core/service.py,
 
1080
          coherence/upnp/core/soap_proxy.py, coherence/upnp/core/utils.py:
 
1081
          disable log messages from the twisted.web.client in switching to
 
1082
          our own subclass
 
1083
 
 
1084
2007-03-15 10:13  dev
 
1085
 
 
1086
        * coherence/backends/buzztard_control.py: more work in the Buzztard
 
1087
          ContentDirectory update
 
1088
 
 
1089
2007-03-14 21:57  dev
 
1090
 
 
1091
        * coherence/backends/buzztard_control.py: attempt to fix missing
 
1092
          ContentDirectory change event propagation
 
1093
 
 
1094
2007-03-14 16:20  dev
 
1095
 
 
1096
        * coherence/backends/buzztard_control.py: some update on the repeat
 
1097
          handling
 
1098
 
 
1099
2007-03-14 16:16  dev
 
1100
 
 
1101
        * coherence/backends/buzztard_control.py: fix for missing stream
 
1102
          position update
 
1103
 
 
1104
2007-03-14 16:04  dev
 
1105
 
 
1106
        * coherence/backends/buzztard_control.py: added playmode handling -
 
1107
          NORMAL|REPEAT_ONE|REPEAT_ALL
 
1108
 
 
1109
2007-03-14 15:42  dev
 
1110
 
 
1111
        * coherence/backends/gstreamer_audio_player.py: small fix regarding
 
1112
          upnp_SetAVTransportURI, do not return an error when no
 
1113
          CurrentURIMetaData is present
 
1114
 
 
1115
2007-03-14 15:40  dev
 
1116
 
 
1117
        * coherence/__init__.py, docs/coherence.conf.example: version up to
 
1118
          0.1.2 and proper config example again
 
1119
 
 
1120
2007-03-14 15:40  dev
 
1121
 
 
1122
        * coherence/backends/buzztard_control.py,
 
1123
          coherence/upnp/core/service.py: change print to log.msg
 
1124
 
 
1125
2007-03-14 15:39  dev
 
1126
 
 
1127
        * coherence/base.py, coherence/extern/logger.py: switch in
 
1128
          logger.py to the twisted.python.log module and activated the
 
1129
          config 'logfile'
 
1130
          
 
1131
          re #15
 
1132
 
 
1133
2007-03-13 22:03  dev
 
1134
 
 
1135
        * coherence/backends/buzztard_control.py: next fix
 
1136
 
 
1137
2007-03-13 21:48  dev
 
1138
 
 
1139
        * coherence/backends/buzztard_control.py: use label:<index> as uri
 
1140
 
 
1141
2007-03-13 21:38  dev
 
1142
 
 
1143
        * coherence/backends/buzztard_control.py: proper host setting for
 
1144
          internal:
 
1145
 
 
1146
2007-03-13 21:24  dev
 
1147
 
 
1148
        * coherence/backends/buzztard_control.py: fix for now unused
 
1149
          parameter
 
1150
 
 
1151
2007-03-13 21:17  dev
 
1152
 
 
1153
        * coherence/backends/buzztard_control.py: more debug output
 
1154
 
 
1155
2007-03-13 21:01  dev
 
1156
 
 
1157
        * coherence/backends/buzztard_control.py,
 
1158
          coherence/upnp/core/DIDLLite.py: a not so smart attempt to
 
1159
          outsmart Nokias Media Streamer
 
1160
 
 
1161
2007-03-13 20:34  dev
 
1162
 
 
1163
        * coherence/backends/buzztard_control.py: bind the matching methods
 
1164
          to their signals
 
1165
 
 
1166
2007-03-13 20:30  dev
 
1167
 
 
1168
        * coherence/backends/buzztard_control.py: some update on the play
 
1169
          command
 
1170
 
 
1171
2007-03-13 20:15  dev
 
1172
 
 
1173
        * coherence/backends/buzztard_control.py: some changes on how
 
1174
          volume and mute values are retrieved
 
1175
 
 
1176
2007-03-13 14:28  dev
 
1177
 
 
1178
        * coherence/backends/buzztard_control.py: add Volume and Mute
 
1179
          handling to the Buzztard control
 
1180
 
 
1181
2007-03-13 13:52  dev
 
1182
 
 
1183
        * coherence/backends/buzztard_control.py,
 
1184
          coherence/backends/buzztard_renderer.py,
 
1185
          coherence/backends/buzztard_storage.py, coherence/base.py: merge
 
1186
          Buzzard MediaServer and MediaRenderer in one file
 
1187
 
 
1188
2007-03-13 10:18  dev
 
1189
 
 
1190
        * coherence/upnp/core/variable.py: proper handling of allowed
 
1191
          values in StateVariables with vendor defines
 
1192
 
 
1193
2007-03-13 09:43  dev
 
1194
 
 
1195
        * coherence/upnp/devices/media_renderer_client.py: stupid
 
1196
          copy&paste left over
 
1197
 
 
1198
2007-03-12 22:02  dev
 
1199
 
 
1200
        * coherence/backends/buzztard_storage.py: one more fix
 
1201
 
 
1202
2007-03-12 21:56  dev
 
1203
 
 
1204
        * coherence/backends/buzztard_storage.py: add playlist prefix to
 
1205
          Buzztard browse response
 
1206
 
 
1207
2007-03-12 21:52  dev
 
1208
 
 
1209
        * coherence/backends/buzztard_storage.py: next fix on event
 
1210
          handling
 
1211
 
 
1212
2007-03-12 21:48  dev
 
1213
 
 
1214
        * coherence/backends/buzztard_storage.py: fix on event signal
 
1215
 
 
1216
2007-03-12 21:43  dev
 
1217
 
 
1218
        * coherence/backends/buzztard_storage.py: connect Buzztard flush
 
1219
          signal
 
1220
 
 
1221
2007-03-12 21:38  dev
 
1222
 
 
1223
        * coherence/backends/buzztard_storage.py: signal a Buzztad event to
 
1224
          the MediaRenderer
 
1225
 
 
1226
2007-03-12 21:33  dev
 
1227
 
 
1228
        * coherence/backends/buzztard_renderer.py,
 
1229
          coherence/backends/buzztard_storage.py, coherence/base.py,
 
1230
          docs/coherence.conf.example: combine Buzztard MediaServer and
 
1231
          MediaRenderer
 
1232
 
 
1233
2007-03-12 19:52  dev
 
1234
 
 
1235
        * coherence/backends/buzztard_renderer.py: minor fix for Buzztard
 
1236
          MediaRenderer
 
1237
 
 
1238
2007-03-12 19:46  dev
 
1239
 
 
1240
        * coherence/backends/buzztard_storage.py: forgot to tupleize
 
1241
 
 
1242
2007-03-12 18:40  dev
 
1243
 
 
1244
        * coherence/upnp/core/service.py: one more correction on how the
 
1245
          StateVariable 'LastChange' is evented.
 
1246
          
 
1247
          This is a follow up to [334] and addresses #70
 
1248
 
 
1249
2007-03-12 18:34  dev
 
1250
 
 
1251
        * coherence/upnp/core/event.py: be a bit more verbose on the log
 
1252
          messages
 
1253
 
 
1254
2007-03-12 17:09  dev
 
1255
 
 
1256
        * coherence/backends/elisa_renderer.py: fixes for the Elisa
 
1257
          MediaRenderer
 
1258
 
 
1259
2007-03-11 20:41  dev
 
1260
 
 
1261
        * coherence/backends/buzztard_renderer.py,
 
1262
          coherence/backends/buzztard_storage.py,
 
1263
          docs/coherence.conf.example: append index number to the buzztard
 
1264
          playlist items
 
1265
 
 
1266
2007-03-11 20:27  dev
 
1267
 
 
1268
        * coherence/backends/buzztard_renderer.py: further updates on the
 
1269
          Buzztard MediaRenderer
 
1270
 
 
1271
2007-03-11 10:49  dev
 
1272
 
 
1273
        * coherence/backends/buzztard_renderer.py,
 
1274
          docs/coherence.conf.example: update on the Buzztard MediaRenderer
 
1275
 
 
1276
2007-03-10 14:55  dev
 
1277
 
 
1278
        * coherence/backends/buzztard_storage.py: fix missing import
 
1279
 
 
1280
2007-03-10 14:27  dev
 
1281
 
 
1282
        * coherence/backends/buzztard_storage.py: wrong name fix
 
1283
 
 
1284
2007-03-10 14:03  dev
 
1285
 
 
1286
        * coherence/base.py: activate buzztard_* backends
 
1287
 
 
1288
2007-03-10 13:56  dev
 
1289
 
 
1290
        * coherence/backends/buzztard_renderer.py,
 
1291
          coherence/backends/buzztard_storage.py,
 
1292
          docs/coherence.conf.example: more work on the Buzztard
 
1293
          MediaServer
 
1294
 
 
1295
2007-03-10 12:22  dev
 
1296
 
 
1297
        * coherence/backends/elisa_renderer.py: removed a noisy print
 
1298
 
 
1299
2007-03-10 10:37  dev
 
1300
 
 
1301
        * coherence/backends/buzztard_storage.py,
 
1302
          coherence/backends/elisa_storage.py,
 
1303
          coherence/backends/flickr_storage.py,
 
1304
          coherence/backends/fs_storage.py,
 
1305
          coherence/upnp/devices/media_renderer.py,
 
1306
          coherence/upnp/devices/media_server.py: use louie signal for
 
1307
          backend<->device communication
 
1308
 
 
1309
2007-03-09 14:31  dev
 
1310
 
 
1311
        * coherence/upnp/core/service.py, coherence/upnp/core/variable.py,
 
1312
          coherence/upnp/core/xml-service-descriptions/AVTransport2.xml:
 
1313
          update a StateVariable value only if the value really, really has
 
1314
          changed.
 
1315
          
 
1316
          added a new attribute to the xml service description to prevent
 
1317
          certain nonevented variables to not even show up in a LastChange
 
1318
          event.
 
1319
 
 
1320
2007-03-09 14:23  dev
 
1321
 
 
1322
        * coherence/upnp/services/servers/connection_manager_server.py:
 
1323
          make StateVariable CurrentConnectionIDs work for the MediaServer
 
1324
          again
 
1325
 
 
1326
2007-03-09 14:20  dev
 
1327
 
 
1328
        * coherence/upnp/core/event.py: be more specific in the log message
 
1329
          about the destination of the event notification
 
1330
 
 
1331
2007-03-09 14:19  dev
 
1332
 
 
1333
        * coherence/backends/elisa_renderer.py,
 
1334
          coherence/backends/gstreamer_audio_player.py: set the
 
1335
          res@duration attribute on every res item
 
1336
 
 
1337
2007-03-08 16:14  dev
 
1338
 
 
1339
        * coherence/backends/gstreamer_audio_player.py: revert small typo
 
1340
          change
 
1341
 
 
1342
2007-03-08 15:39  dev
 
1343
 
 
1344
        * coherence/backends/gstreamer_audio_player.py: first shot to
 
1345
          choose a suitable resource from within the MediaRenderer, helps
 
1346
          e.g. with the "internal:" resources and Nokias Media Streamer,
 
1347
          addresses #68
 
1348
 
 
1349
2007-03-08 14:25  dev
 
1350
 
 
1351
        * coherence/upnp/core/service.py: on a LastChange event send only
 
1352
          the StateVariables that have been changed
 
1353
 
 
1354
2007-03-07 20:24  dev
 
1355
 
 
1356
        * coherence/backends/buzztard_storage.py: initial version of a
 
1357
          MediaStreamer backend for [http://www.buzztard.org Buzztard]
 
1358
 
 
1359
2007-03-07 09:34  dev
 
1360
 
 
1361
        * coherence/base.py: catch traceback if hostname resolving fails,
 
1362
          closes #69
 
1363
 
 
1364
2007-03-06 09:44  dev
 
1365
 
 
1366
        * coherence/backends/elisa_renderer.py,
 
1367
          coherence/backends/elisa_storage.py: add support for 'internal'
 
1368
          res items to the Elisa backends
 
1369
 
 
1370
2007-03-06 09:16  dev
 
1371
 
 
1372
        * coherence/backends/elisa_renderer.py,
 
1373
          coherence/backends/gstreamer_audio_player.py: fix for empty
 
1374
          CurrentURIMetaData
 
1375
 
 
1376
2007-03-06 08:23  dev
 
1377
 
 
1378
        * coherence/backends/fs_storage.py,
 
1379
          coherence/backends/gstreamer_audio_player.py: test for additional
 
1380
          'internal' res items
 
1381
 
 
1382
2007-03-06 08:19  dev
 
1383
 
 
1384
        * coherence/upnp/core/variable.py: fix traceback due to a wrong
 
1385
          placed variable
 
1386
 
 
1387
2007-03-05 18:06  dev
 
1388
 
 
1389
        * coherence/backends/axiscam_storage.py: better mimetype and
 
1390
          protocol_type handling
 
1391
 
 
1392
2007-03-05 18:02  dev
 
1393
 
 
1394
        * coherence/upnp/core/variable.py: allow Set for string
 
1395
          StateVariable update too
 
1396
 
 
1397
2007-03-05 14:56  dev
 
1398
 
 
1399
        * coherence/backends/axiscam_storage.py, coherence/base.py: Axis
 
1400
          Cam MediaServer, addresses #67
 
1401
          
 
1402
          needs a config entry like this:
 
1403
          
 
1404
          {{{
 
1405
          [plugins]
 
1406
          [[AxisCamStore]]
 
1407
          name = Elisa is watching you
 
1408
          [[[Cam 1]]]
 
1409
          url = http://192.168.1.222:554/mpeg4/1/media.amp
 
1410
          protocol = rtsp-rtp-udp:*:video/MP4V-ES:*
 
1411
          [[[Cam 2]]]
 
1412
          url = http://192.168.1.222:554/mpeg4/2/media.amp
 
1413
          protocol = rtsp-rtp-udp:*:video/MP4V-ES:*
 
1414
          }}}
 
1415
 
 
1416
2007-03-05 13:35  dev
 
1417
 
 
1418
        * coherence/upnp/devices/media_server.py: fix wrong
 
1419
          ContentDirectory web-listing resource
 
1420
 
 
1421
2007-03-05 09:33  dev
 
1422
 
 
1423
        * coherence/upnp/core/variable.py: Allow the update value for a
 
1424
          StateVariable of type string to be
 
1425
          
 
1426
          * a string
 
1427
          * a comma-separated string
 
1428
          * a list
 
1429
          * a tuple.
 
1430
          
 
1431
          Lists and tuples will be transformed into a comma-separated
 
1432
          string.
 
1433
 
 
1434
2007-03-02 14:57  dev
 
1435
 
 
1436
        * coherence/upnp/devices/media_renderer_client.py: del proper
 
1437
          service object when removing MediaRenderer device client
 
1438
 
 
1439
2007-02-20 20:05  dev
 
1440
 
 
1441
        * coherence/backends/elisa_renderer.py,
 
1442
          coherence/backends/gstreamer_audio_player.py: some changes to
 
1443
          better follow the specs (maybe), at least we get now a progress
 
1444
          report with the N800 Media Streamer
 
1445
          
 
1446
          this addresses #55
 
1447
 
 
1448
2007-02-20 19:27  dev
 
1449
 
 
1450
        * coherence/upnp/core/DIDLLite.py: added handling of duration
 
1451
          attribute to Resource
 
1452
 
 
1453
2007-02-20 19:26  dev
 
1454
 
 
1455
        * coherence/upnp/core/xml-service-descriptions/AVTransport2.xml:
 
1456
          correct default value
 
1457
 
 
1458
2007-02-20 10:41  dev
 
1459
 
 
1460
        * coherence/backends/elisa_renderer.py: now with position and
 
1461
          duration info
 
1462
 
 
1463
2007-02-19 20:48  dev
 
1464
 
 
1465
        * coherence/backends/elisa_renderer.py: cleanups and a simple test
 
1466
          to retrieve the state info from the Elisa player
 
1467
 
 
1468
2007-02-19 16:01  dev
 
1469
 
 
1470
        * coherence/backends/elisa_renderer.py: now with load, play, pause
 
1471
          and stop support
 
1472
 
 
1473
2007-02-19 15:02  dev
 
1474
 
 
1475
        * coherence/backends/elisa_renderer.py,
 
1476
          coherence/backends/gstreamer_audio_player.py,
 
1477
          coherence/upnp/devices/media_renderer.py,
 
1478
          docs/coherence.conf.example: first version of a MediaRenderer
 
1479
          backend for Elisa (needs a patched player.py in Elisa)
 
1480
          
 
1481
          using signal 'Coherence.UPnP.Backend.init_completed' to notify
 
1482
          when the backend has finished initialization, as for the Elsia
 
1483
          backend we need to wait for the twisted.pb connection to Elisa
 
1484
          
 
1485
          corresponding changes in backends/gstreamer_audio_player.py and
 
1486
          devices/media_renderer.py
 
1487
 
 
1488
2007-02-19 14:53  dev
 
1489
 
 
1490
        * coherence/__init__.py, setup.py: move version to 0.1.1 and
 
1491
          retrieve it in setup.py from coherence.__init__.py
 
1492
 
 
1493
2007-02-19 14:52  dev
 
1494
 
 
1495
        * coherence/base.py: small fix for better error handling with a
 
1496
          nonexistant backend/device
 
1497
 
 
1498
2007-02-19 14:50  dev
 
1499
 
 
1500
        * coherence/upnp/core/service.py: allow passing a deferred to
 
1501
          service.set_variable and update the value with the result that
 
1502
          deferred returns
 
1503
 
 
1504
2007-02-17 09:09  dev
 
1505
 
 
1506
        * ., coherence/backends/fs_storage.py,
 
1507
          coherence/upnp/devices/media_server.py,
 
1508
          docs/coherence.conf.example: allow to export from the FSStore
 
1509
          more than one physical directory
 
1510
          
 
1511
          closes #51
 
1512
 
 
1513
2007-02-16 14:25  dev
 
1514
 
 
1515
        * coherence/upnp/core/DIDLLite.py, coherence/upnp/core/utils.py:
 
1516
          added datefaker function to utils.py and use it for UPnP items
 
1517
          with no own date element.
 
1518
          
 
1519
          This closes #60 and addresses #59.
 
1520
 
 
1521
2007-02-16 09:45  dev
 
1522
 
 
1523
        * setup.py: version change in setup.py from 0.1 to 0.1.0
 
1524
 
 
1525
2007-02-15 09:56  dev
 
1526
 
 
1527
        * docs/coherence.conf.example: add the serverport default value
 
1528
          change to the config file
 
1529
 
 
1530
2007-02-15 09:54  dev
 
1531
 
 
1532
        * coherence/backends/flickr_storage.py,
 
1533
          coherence/backends/fs_storage.py,
 
1534
          coherence/extern/elementsoap/ElementGoogle.py,
 
1535
          coherence/extern/elementsoap/ElementSOAP.py,
 
1536
          coherence/extern/elementsoap/ElementTree.py,
 
1537
          coherence/extern/elementsoap/HTTPClient.py,
 
1538
          coherence/extern/elementsoap/__init__.py, coherence/extern/et.py,
 
1539
          coherence/upnp/core/DIDLLite.py, coherence/upnp/core/device.py,
 
1540
          coherence/upnp/core/service.py,
 
1541
          coherence/upnp/core/soap_proxy.py,
 
1542
          coherence/upnp/core/soap_service.py,
 
1543
          coherence/upnp/core/utils.py,
 
1544
          coherence/upnp/devices/media_renderer.py,
 
1545
          coherence/upnp/devices/media_server.py,
 
1546
          coherence/upnp/services/servers/av_transport_server.py,
 
1547
          coherence/upnp/services/servers/connection_manager_server.py,
 
1548
          coherence/upnp/services/servers/content_directory_server.py,
 
1549
          coherence/upnp/services/servers/media_receiver_registrar_server.py,
 
1550
          coherence/upnp/services/servers/rendering_control_server.py:
 
1551
          merge branch go-4-python-2.5 changes r302:303 into trunk
 
1552
 
 
1553
2007-02-15 09:51  dev
 
1554
 
 
1555
        * coherence/web/__init__.py, coherence/web/ui.py: add forgotten UI
 
1556
          file
 
1557
 
 
1558
2007-02-15 08:57  dev
 
1559
 
 
1560
        * coherence/base.py: make the port used for all the http related
 
1561
          services by default choosable by the OS, this closes #65
 
1562
 
 
1563
2007-02-12 20:09  dev
 
1564
 
 
1565
        * coherence/base.py, coherence/web/Coherence.Base.js,
 
1566
          coherence/web/Coherence.Devices.js,
 
1567
          coherence/web/Coherence.Logging.js, coherence/web/Coherence.js,
 
1568
          coherence/web/MochiKit.js, coherence/web/main.css,
 
1569
          coherence/web/static, coherence/web/static/Coherence.Base.js,
 
1570
          coherence/web/static/Coherence.Devices.js,
 
1571
          coherence/web/static/Coherence.Logging.js,
 
1572
          coherence/web/static/Coherence.js,
 
1573
          coherence/web/static/MochiKit.js, coherence/web/static/main.css,
 
1574
          docs/coherence.conf.example, setup.py: - rework of the web
 
1575
          interface module
 
1576
          - get everything Nevow related in its own package
 
1577
          
 
1578
          this closes #44 and in some way #64
 
1579
 
 
1580
2007-02-12 14:25  dev
 
1581
 
 
1582
        * coherence/base.py, coherence/web/Coherence.Base.js,
 
1583
          coherence/web/Coherence.Devices.js,
 
1584
          coherence/web/Coherence.Logging.js, coherence/web/main.css: bring
 
1585
          new web-interface up to date with Nevow >= 0.9
 
1586
 
 
1587
2007-02-12 14:22  dev
 
1588
 
 
1589
        * coherence/upnp/services/clients/content_directory_client.py: an
 
1590
          attempt to solve the encoding issues re #63
 
1591
 
 
1592
2007-02-12 11:15  dev
 
1593
 
 
1594
        * coherence/upnp/core/service.py: check if we aren't removed
 
1595
          already from the subscribers dict
 
1596
 
 
1597
2007-02-11 10:44  dev
 
1598
 
 
1599
        * coherence/extern/elementsoap/ElementSOAP.py,
 
1600
          coherence/upnp/core/DIDLLite.py, coherence/upnp/core/action.py,
 
1601
          coherence/upnp/core/device.py, coherence/upnp/core/event.py,
 
1602
          coherence/upnp/core/service.py,
 
1603
          coherence/upnp/core/soap_proxy.py, coherence/upnp/core/ssdp.py,
 
1604
          coherence/upnp/devices/control_point.py,
 
1605
          coherence/upnp/devices/media_renderer_client.py,
 
1606
          coherence/upnp/services/clients/av_transport_client.py,
 
1607
          coherence/upnp/services/clients/connection_manager_client.py,
 
1608
          coherence/upnp/services/clients/content_directory_client.py,
 
1609
          coherence/upnp/services/clients/rendering_control_client.py:
 
1610
          removed unnecessary executable bit on python module files, closes
 
1611
          #62
 
1612
 
 
1613
2007-02-11 10:33  dev
 
1614
 
 
1615
        * coherence/upnp/core/utils.py: added missing failure class
 
1616
 
 
1617
2007-02-11 10:31  dev
 
1618
 
 
1619
        * setup.py: include data files (non-python) in setup too
 
1620
 
 
1621
2007-02-09 13:09  dev
 
1622
 
 
1623
        * coherence/upnp/core/variable.py: follow up to [292]
 
1624
 
 
1625
2007-02-09 12:30  philn
 
1626
 
 
1627
        * coherence/backends/elisa_storage.py,
 
1628
          coherence/upnp/core/utils.py: Some XML parsing and elisa_storage
 
1629
          fixes
 
1630
 
 
1631
2007-02-09 11:54  philn
 
1632
 
 
1633
        * coherence/upnp/core/variable.py: when variable value is unicode,
 
1634
          encode it to utf-8
 
1635
 
 
1636
2007-02-09 10:58  philn
 
1637
 
 
1638
        * coherence/upnp/services/clients/content_directory_client.py:
 
1639
          removed some prints and try to deal better with empty browse
 
1640
          results
 
1641
 
 
1642
2007-02-08 19:01  dev
 
1643
 
 
1644
        * coherence/base.py, coherence/upnp/core/device.py,
 
1645
          coherence/upnp/core/event.py, coherence/upnp/core/service.py,
 
1646
          coherence/upnp/devices/control_point.py,
 
1647
          coherence/upnp/devices/media_renderer_client.py,
 
1648
          coherence/upnp/devices/media_server_client.py,
 
1649
          coherence/upnp/services/clients/av_transport_client.py,
 
1650
          coherence/upnp/services/clients/connection_manager_client.py,
 
1651
          coherence/upnp/services/clients/content_directory_client.py,
 
1652
          coherence/upnp/services/clients/rendering_control_client.py,
 
1653
          docs/coherence.conf.example: ControlPoint now sends proper
 
1654
          signals on detection and removal of a new device
 
1655
          
 
1656
          Coherence.UPnP.ControlPoint.MediaServer.detected : client obj,
 
1657
          usn
 
1658
          Coherence.UPnP.ControlPoint.MediaRenderer.detected : client obj,
 
1659
          usn
 
1660
          
 
1661
          Coherence.UPnP.ControlPoint.MediaServer.removed : usn
 
1662
          Coherence.UPnP.ControlPoint.MediaRenderer.removed : usn
 
1663
          
 
1664
          and a lot of fixes all over the place to get the instantiated
 
1665
          objects deleted.
 
1666
 
 
1667
2007-02-08 18:33  dev
 
1668
 
 
1669
        * coherence/extern/logger.py: change level info/debug order
 
1670
 
 
1671
2007-02-08 11:16  dev
 
1672
 
 
1673
        * coherence/upnp/core/action.py: bug fix
 
1674
 
 
1675
2007-02-08 10:40  dev
 
1676
 
 
1677
        * coherence/upnp/core/action.py, coherence/upnp/core/event.py:
 
1678
          better error handling and logging in client actions and a small
 
1679
          bugfix in event.py
 
1680
 
 
1681
2007-02-07 23:13  dev
 
1682
 
 
1683
        * coherence/backends/flickr_storage.py,
 
1684
          coherence/backends/fs_storage.py,
 
1685
          coherence/upnp/core/DIDLLite.py, coherence/upnp/core/utils.py:
 
1686
          add dc:date element to every upnp item and convert it in
 
1687
          DIDLLite.py from either a datetime object or a string
 
1688
          
 
1689
          this solves and closes #54
 
1690
 
 
1691
2007-02-07 17:17  dev
 
1692
 
 
1693
        * coherence/base.py, coherence/upnp/core/DIDLLite.py,
 
1694
          coherence/upnp/core/device.py, coherence/upnp/core/event.py,
 
1695
          coherence/upnp/devices/control_point.py,
 
1696
          docs/coherence.conf.example: more work to get the ControlPoint
 
1697
          back into line
 
1698
 
 
1699
2007-02-07 15:41  dev
 
1700
 
 
1701
        * setup.py: correct version number
 
1702
 
 
1703
2007-02-07 15:13  dev
 
1704
 
 
1705
        * ., setup.py: filled gaps in the setup.py
 
1706
 
 
1707
2007-02-07 14:37  philn
 
1708
 
 
1709
        * setup.py: initial setup.py checkin
 
1710
 
 
1711
2007-02-06 19:52  dev
 
1712
 
 
1713
        * coherence/base.py: missed one
 
1714
 
 
1715
2007-02-06 19:27  dev
 
1716
 
 
1717
        * coherence/base.py: redacting last changeset
 
1718
 
 
1719
2007-02-06 18:01  philn
 
1720
 
 
1721
        * coherence/base.py: Coherence class now acts as a singleton
 
1722
 
 
1723
2007-02-06 15:31  dev
 
1724
 
 
1725
        * coherence/backends/gstreamer_audio_player.py,
 
1726
          coherence/upnp/services/servers/connection_manager_server.py:
 
1727
          better compliance with the ConnectionManager and the AVTransport
 
1728
          spec, closes #49
 
1729
 
 
1730
2007-02-06 15:29  dev
 
1731
 
 
1732
        * coherence/upnp/core/service.py: new get_variable method from the
 
1733
          service class
 
1734
 
 
1735
2007-02-06 09:31  dev
 
1736
 
 
1737
        * coherence/backends/gstreamer_audio_player.py: better compliance
 
1738
          with the AVTransport spec
 
1739
 
 
1740
2007-02-06 09:30  dev
 
1741
 
 
1742
        * coherence/upnp/core/soap_service.py: one more log message
 
1743
 
 
1744
2007-02-06 09:30  dev
 
1745
 
 
1746
        * coherence/upnp/core/xml-service-descriptions/AVTransport2.xml:
 
1747
          small adjustment
 
1748
 
 
1749
2007-02-06 09:03  dev
 
1750
 
 
1751
        * coherence/web/Coherence.Base.js: small cleanup
 
1752
 
 
1753
2007-02-02 11:07  dev
 
1754
 
 
1755
        * coherence/base.py, coherence/web/Coherence.Base.js: better web UI
 
1756
          menu tab creation
 
1757
 
 
1758
2007-02-02 10:00  dev
 
1759
 
 
1760
        * coherence/base.py, coherence/web,
 
1761
          coherence/web/Coherence.Base.js,
 
1762
          coherence/web/Coherence.Devices.js,
 
1763
          coherence/web/Coherence.Logging.js, coherence/web/Coherence.js,
 
1764
          coherence/web/MochiKit.js, coherence/web/main.css: - reworked the
 
1765
          web UI to make more usage of the Athena features.
 
1766
          - breaks for now browser based device inspection.
 
1767
          - and addresses #15 too.
 
1768
 
 
1769
2007-02-02 09:55  dev
 
1770
 
 
1771
        * coherence/upnp/core/event.py: fix for backends with no name
 
1772
 
 
1773
2007-02-02 09:54  dev
 
1774
 
 
1775
        * coherence/extern/logger.py: added a method to retrieve data about
 
1776
          all log feeders
 
1777
 
 
1778
2007-01-31 21:51  dev
 
1779
 
 
1780
        * coherence/upnp/devices/media_renderer.py: relict?
 
1781
 
 
1782
2007-01-31 21:34  dev
 
1783
 
 
1784
        * docs/coherence.conf.example: have a less noisy example
 
1785
 
 
1786
2007-01-31 21:28  dev
 
1787
 
 
1788
        * coherence/upnp/core/event.py: better error and logging handling
 
1789
 
 
1790
2007-01-31 21:26  dev
 
1791
 
 
1792
        * coherence/base.py, docs/coherence.conf.example: add subsystem
 
1793
          specific logging option
 
1794
          
 
1795
          this allows to have for example an overall log level 'warning'
 
1796
          and set it to 'info' for the Event and Service subsystem
 
1797
          
 
1798
          addresses #15
 
1799
 
 
1800
2007-01-31 08:19  dev
 
1801
 
 
1802
        * coherence/extern/inotify.py: really a stupid bug - great catch
 
1803
          Kaleo, thx!
 
1804
          
 
1805
          https://core.fluendo.com/elisa/trac/changeset/1402/trunk/elisa/extern/inotify.py
 
1806
 
 
1807
2007-01-30 14:32  dev
 
1808
 
 
1809
        * coherence/upnp/devices/media_server.py: added HEAD http request
 
1810
          sanitizing for the ReverseProxyResource, seems to be necessary
 
1811
          for the N800 file-manager
 
1812
 
 
1813
2007-01-29 23:11  dev
 
1814
 
 
1815
        * coherence/upnp/devices/media_server.py: stupid errors
 
1816
 
 
1817
2007-01-29 21:08  dev
 
1818
 
 
1819
        * coherence/backends/flickr_storage.py: one more
 
1820
 
 
1821
2007-01-29 21:03  dev
 
1822
 
 
1823
        * coherence/upnp/devices/media_server.py: one print too much
 
1824
 
 
1825
2007-01-29 19:05  dev
 
1826
 
 
1827
        * coherence/backends/flickr_storage.py,
 
1828
          docs/coherence.conf.example: check with Flickr every n minutes if
 
1829
          there are any new images and update the local store
 
1830
 
 
1831
2007-01-29 18:26  dev
 
1832
 
 
1833
        * coherence/upnp/devices/media_server.py: an attempt to fix
 
1834
          inappropriate http GET requests from the XBox when relaying them
 
1835
          to some other service, re #52
 
1836
 
 
1837
2007-01-28 10:32  dev
 
1838
 
 
1839
        * coherence/backends/fs_storage.py, docs/coherence.conf.example:
 
1840
          fix content path in fs_storage.py and change directive to
 
1841
          'content'
 
1842
 
 
1843
2007-01-28 10:31  dev
 
1844
 
 
1845
        * coherence/base.py: stupid dodge to get around the still
 
1846
          non-existent plugin handling
 
1847
 
 
1848
2007-01-24 17:44  dev
 
1849
 
 
1850
        * coherence/upnp/devices/media_server.py: added ConnectionID
 
1851
          handling for the Flickr proxy connection
 
1852
 
 
1853
2007-01-24 17:20  dev
 
1854
 
 
1855
        * coherence/backends/flickr_storage.py,
 
1856
          coherence/upnp/devices/media_server.py,
 
1857
          docs/coherence.conf.example: Support for acting as a proxy for
 
1858
          Flickr to support MediaRenderers like the XBox, which can't
 
1859
          access the Flickr servers directly.
 
1860
          
 
1861
          Contains an unclean hook inside the MediaServers getChild method.
 
1862
 
 
1863
2007-01-24 17:17  dev
 
1864
 
 
1865
        * coherence/upnp/core/DIDLLite.py: UPnP class changes for a better
 
1866
          compliance with the XBox, addresses #50.
 
1867
          
 
1868
          Should be of no effect for the other ContentDirectory clients.
 
1869
          ;-)
 
1870
 
 
1871
2007-01-24 17:15  dev
 
1872
 
 
1873
        * coherence/upnp/core/event.py: check if the url has a port defined
 
1874
          before we try to use it
 
1875
 
 
1876
2007-01-23 21:39  dev
 
1877
 
 
1878
        * coherence/upnp/core/service.py: remove unnecessarily, error
 
1879
          engendering line of code
 
1880
 
 
1881
2007-01-23 14:20  dev
 
1882
 
 
1883
        * coherence/backends/flickr_storage.py: missing " :-(
 
1884
 
 
1885
2007-01-23 13:36  dev
 
1886
 
 
1887
        * coherence/backends/flickr_storage.py: a nicer log-message in
 
1888
          FlickrStore
 
1889
 
 
1890
2007-01-22 19:23  dev
 
1891
 
 
1892
        * coherence/upnp/core/service.py,
 
1893
          coherence/upnp/core/soap_service.py,
 
1894
          coherence/upnp/services/servers/content_directory_server.py:
 
1895
          attempts to iron out the deviant behaviour of the new XBox UPnP
 
1896
          client,
 
1897
          addresses #50
 
1898
 
 
1899
2007-01-22 09:21  dev
 
1900
 
 
1901
        * coherence/upnp/core/service.py: some cleanups
 
1902
 
 
1903
2007-01-21 22:48  dev
 
1904
 
 
1905
        * coherence/backends/flickr_storage.py: let flickr calculate the
 
1906
          date
 
1907
 
 
1908
2007-01-21 21:50  dev
 
1909
 
 
1910
        * coherence/upnp/core/soap_service.py: follow better the specs on
 
1911
          pages 49-51 in
 
1912
          http://upnp.org/resources/documents/CleanUPnPDA101-20031202s.pdf
 
1913
          when sending back an error upon an action call
 
1914
          
 
1915
          exchanged a bit of SOAPpy using code with ElementTree
 
1916
 
 
1917
2007-01-21 12:31  dev
 
1918
 
 
1919
        * coherence/backends/flickr_storage.py,
 
1920
          coherence/backends/fs_storage.py, coherence/upnp/core/service.py,
 
1921
          coherence/upnp/core/soap_service.py,
 
1922
          coherence/upnp/devices/media_server.py,
 
1923
          coherence/upnp/services/servers/content_directory_server.py: try
 
1924
          something to make the MediaServer usage from an XBox a little bit
 
1925
          more universal, addresses #36
 
1926
 
 
1927
2007-01-20 15:18  dev
 
1928
 
 
1929
        * coherence/backends/elisa_storage.py,
 
1930
          coherence/backends/flickr_storage.py,
 
1931
          coherence/backends/fs_storage.py,
 
1932
          coherence/backends/gstreamer_audio_player.py,
 
1933
          coherence/upnp/devices/media_renderer.py,
 
1934
          coherence/upnp/devices/media_server.py,
 
1935
          docs/coherence.conf.example: set the 'friendly_name' of a device
 
1936
          in the configuration
 
1937
 
 
1938
2007-01-20 14:06  dev
 
1939
 
 
1940
        * coherence/backends/elisa_storage.py,
 
1941
          coherence/backends/flickr_storage.py,
 
1942
          coherence/backends/fs_storage.py,
 
1943
          coherence/backends/gstreamer_audio_player.py,
 
1944
          coherence/upnp/devices/media_server.py,
 
1945
          coherence/upnp/services/servers/content_directory_server.py:
 
1946
          Cleaned up the backend upnp_... functions, moved the universal
 
1947
          ones into the service.
 
1948
          
 
1949
          This addresses #36, but we need for this to work properly some
 
1950
          additional mapping supplied by the backend to tell which of the
 
1951
          Windows Media Connect 'directories' the backend actually
 
1952
          supports.
 
1953
          
 
1954
          Added a method to browse the content of the Flickr backend.
 
1955
          This should evolve in some future into something that allows
 
1956
          browser access to any of the non-filesystem backends.
 
1957
 
 
1958
2007-01-19 14:17  dev
 
1959
 
 
1960
        * coherence/backends/flickr_storage.py,
 
1961
          docs/coherence.conf.example: first usable Flickr backend
 
1962
 
 
1963
2007-01-19 14:16  dev
 
1964
 
 
1965
        * coherence/base.py: one more debug output line
 
1966
 
 
1967
2007-01-19 14:15  dev
 
1968
 
 
1969
        * coherence/upnp/core/service.py: some minor adjustments on how
 
1970
          services are generated from the descriptions
 
1971
 
 
1972
2007-01-18 23:00  dev
 
1973
 
 
1974
        * coherence/backends/elisa_storage.py,
 
1975
          coherence/backends/flickr_storage.py,
 
1976
          coherence/backends/fs_storage.py, coherence/base.py,
 
1977
          coherence/upnp/devices/media_server.py,
 
1978
          docs/coherence.conf.example: this adds
 
1979
          
 
1980
          - a first version of a Flickr MediaServer backend
 
1981
          - the still necessary import in base.py
 
1982
          - and changes the way arguments are passed to the devices and via
 
1983
          them to the backends
 
1984
 
 
1985
2007-01-18 22:54  dev
 
1986
 
 
1987
        * coherence/upnp/core/soap_proxy.py: an attempt to make the
 
1988
          SOAPProxy a bit more universal, probably of no real future use
 
1989
 
 
1990
2007-01-18 08:32  dev
 
1991
 
 
1992
        * docs/coherence.conf.example: put 'serverport' into
 
1993
          coherence.conf.example too
 
1994
 
 
1995
2007-01-18 08:24  dev
 
1996
 
 
1997
        * coherence/base.py: added configuration option 'serverport' to
 
1998
          specify the port coherence should bind to, to serve xml files,
 
1999
          react on control requests or event subscriptions, and to
 
2000
          distribute content.
 
2001
 
 
2002
2007-01-17 10:49  dev
 
2003
 
 
2004
        * coherence/base.py, coherence/upnp/core/utils.py: being a little
 
2005
          bit more flexible regarding interface/own IP address detection
 
2006
 
 
2007
2007-01-16 13:12  haiku
 
2008
 
 
2009
        * coherence/backends/elisa_storage.py, coherence/base.py,
 
2010
          coherence/upnp/core/utils.py: - Updated Elisa storage to work
 
2011
          with new elisa media db
 
2012
          - Config now accepts an interface parameter, to provide the
 
2013
          network
 
2014
          interface to use. If not provided, default gateway interface is
 
2015
          used
 
2016
 
 
2017
2007-01-15 10:22  dev
 
2018
 
 
2019
        * coherence/upnp/core/device.py: try to prevent errors resulting
 
2020
          from 'strange' device descriptions, addresses #48
 
2021
 
 
2022
2007-01-12 10:59  dev
 
2023
 
 
2024
        * coherence/upnp/devices/control_point.py,
 
2025
          coherence/upnp/devices/media_renderer_client.py,
 
2026
          coherence/upnp/devices/media_server_client.py: bring ControlPoint
 
2027
          back in line
 
2028
 
 
2029
2007-01-12 10:09  dev
 
2030
 
 
2031
        * coherence/backends/elisa_storage.py: reverted change
 
2032
 
 
2033
2007-01-11 18:59  dev
 
2034
 
 
2035
        * README: add a first version of a README
 
2036
 
 
2037
2007-01-11 11:21  philn
 
2038
 
 
2039
        * coherence/backends/elisa_storage.py, coherence/base.py: some
 
2040
          fixes
 
2041
 
 
2042
2007-01-09 15:06  dev
 
2043
 
 
2044
        * coherence/backends/gstreamer_audio_player.py: one more regarding
 
2045
          volume control
 
2046
 
 
2047
2007-01-09 15:02  dev
 
2048
 
 
2049
        * coherence/backends/gstreamer_audio_player.py,
 
2050
          coherence/upnp/core/service.py, coherence/upnp/core/variable.py:
 
2051
          more fixes re proper volume control of the Gstreamer
 
2052
          MediaRenderer
 
2053
          
 
2054
          - added the channel attribute
 
2055
          - send the allowedValueRange with the service description
 
2056
          unfortunately the Intel CP still sends strange values
 
2057
 
 
2058
2007-01-09 14:59  dev
 
2059
 
 
2060
        * coherence/upnp/core/xml-service-descriptions/RenderingControl2.xml:
 
2061
          a try to hint the dependency between the audio related
 
2062
          StateVariables and the channel list
 
2063
 
 
2064
2007-01-09 10:28  dev
 
2065
 
 
2066
        * coherence/backends/gstreamer_audio_player.py: fix for stupid typo
 
2067
 
 
2068
2007-01-08 17:31  dev
 
2069
 
 
2070
        * coherence/backends/gstreamer_audio_player.py: adjustments for
 
2071
          better Gstreamer property handling, as the playbin seems not to
 
2072
          have a 'mute' property
 
2073
 
 
2074
2007-01-08 17:29  dev
 
2075
 
 
2076
        * coherence/upnp/core/variable.py: add another value to the list to
 
2077
          determine boolean True
 
2078
 
 
2079
2007-01-07 20:14  dev
 
2080
 
 
2081
        * coherence/backends/gstreamer_audio_player.py, coherence/base.py,
 
2082
          coherence/upnp/core/service.py, coherence/upnp/core/variable.py:
 
2083
          This adds Volume and Mute control to the GStreamer MediaRenderer
 
2084
          backend.
 
2085
          
 
2086
          And a first method for a backend to overwrite the vendor defines
 
2087
          in the xml-service-descriptions.
 
2088
 
 
2089
2007-01-07 15:25  dev
 
2090
 
 
2091
        * coherence/upnp/core/service.py, coherence/upnp/core/variable.py,
 
2092
          coherence/upnp/services/servers/connection_manager_server.py:
 
2093
          remove a connection from the ConnectionManager after 300 seconds
 
2094
          of inactivity - which is currently synonymous to no change of a
 
2095
          StateVariable
 
2096
 
 
2097
2007-01-06 21:05  dev
 
2098
 
 
2099
        * coherence/backends/fs_storage.py,
 
2100
          coherence/backends/gstreamer_audio_player.py,
 
2101
          coherence/upnp/core/service.py,
 
2102
          coherence/upnp/core/xml-service-descriptions/AVTransport2.xml,
 
2103
          coherence/upnp/core/xml-service-descriptions/RenderingControl2.xml,
 
2104
          coherence/upnp/devices/media_server.py,
 
2105
          coherence/upnp/services/servers/connection_manager_server.py:
 
2106
          Enable several instances per MediaRenderer.
 
2107
          
 
2108
          We still need to find a way to actually tell the
 
2109
          ConnectionManager if the backend supports this!
 
2110
          
 
2111
          Adapting the MediaServer to these changes and some cosmetic fixes
 
2112
          in the xml-service-descriptions.
 
2113
          
 
2114
          This also closes #45.
 
2115
 
 
2116
2007-01-06 20:56  dev
 
2117
 
 
2118
        * coherence/upnp/devices/media_renderer.py: use the backend
 
2119
          parameter
 
2120
 
 
2121
2007-01-06 20:53  dev
 
2122
 
 
2123
        * coherence/upnp/core/variable.py: store the default value of a
 
2124
          variable so we have it available when copying them for a new
 
2125
          instance
 
2126
 
 
2127
2007-01-05 11:16  dev
 
2128
 
 
2129
        * coherence/upnp/services/servers/connection_manager_server.py:
 
2130
          without words
 
2131
 
 
2132
2007-01-04 21:49  dev
 
2133
 
 
2134
        * coherence/backends/gstreamer_audio_player.py,
 
2135
          coherence/upnp/services/servers/connection_manager_server.py:
 
2136
          some update on the MediaRenderer
 
2137
 
 
2138
2006-12-30 23:01  dev
 
2139
 
 
2140
        * bin/coherence, coherence/base.py, coherence/upnp/core/utils.py,
 
2141
          docs/coherence.conf.example: introduce 'ConfigObj' to handle the
 
2142
          configuration file
 
2143
          
 
2144
          This, and the get_ip_address function in utils.py, closes #34.
 
2145
 
 
2146
2006-12-30 22:54  dev
 
2147
 
 
2148
        * coherence/backends/fs_storage.py,
 
2149
          coherence/backends/gstreamer_audio_player.py,
 
2150
          coherence/upnp/core/service.py,
 
2151
          coherence/upnp/services/servers/connection_manager_server.py:
 
2152
          move universally valid upnp_ functions into the service class
 
2153
          
 
2154
          re #45
 
2155
 
 
2156
2006-12-30 22:02  dev
 
2157
 
 
2158
        * coherence/extern/logger.py: some improvements on the logger re
 
2159
          #15, this will allow us to move that ticket to the next milestone
 
2160
 
 
2161
2006-12-21 16:20  dev
 
2162
 
 
2163
        * coherence/base.py, coherence/upnp/core/service.py,
 
2164
          coherence/upnp/core/variable.py,
 
2165
          coherence/upnp/devices/media_server.py,
 
2166
          coherence/upnp/services/servers/av_transport_server.py,
 
2167
          coherence/upnp/services/servers/connection_manager_server.py,
 
2168
          coherence/upnp/services/servers/content_directory_server.py,
 
2169
          coherence/upnp/services/servers/media_receiver_registrar_server.py,
 
2170
          coherence/upnp/services/servers/rendering_control_server.py:
 
2171
          Check if a device backend for server service provides all needed
 
2172
          action callbacks.
 
2173
          
 
2174
          If the action is optional, just don't provide it.
 
2175
          If it is a required action, don't activate the service.
 
2176
          
 
2177
          If that service is a required one, this will lead to an abort of
 
2178
          the device
 
2179
          instantiation.
 
2180
          
 
2181
          We need an overwrite for this to create in the TestSuite
 
2182
          nonconformity devices/services.
 
2183
          
 
2184
          This closes #25.
 
2185
 
 
2186
2006-12-21 15:59  dev
 
2187
 
 
2188
        * coherence/extern/logger.py: some more logger functionality
 
2189
 
 
2190
2006-12-21 15:56  dev
 
2191
 
 
2192
        * coherence/backends/fs_storage.py: temporally add
 
2193
          upnp_GetCurrentConnectionInfo to the backend until we have a
 
2194
          solution for #45.
 
2195
 
 
2196
2006-12-20 18:21  dev
 
2197
 
 
2198
        * bin/coherence, coherence/base.py: made the backend passing to the
 
2199
          Coherence class a little bit more reasonable/readable - advice by
 
2200
          philn
 
2201
 
 
2202
2006-12-20 17:14  dev
 
2203
 
 
2204
        * bin/coherence, coherence/backends/fs_storage.py,
 
2205
          coherence/backends/gstreamer_audio_player.py, coherence/base.py,
 
2206
          coherence/upnp/devices/media_renderer.py,
 
2207
          coherence/upnp/devices/media_server.py: Some first steps in the
 
2208
          direction of a plugin system.
 
2209
          
 
2210
          Let the backends be the only visible things outside of Coherence!
 
2211
          
 
2212
          We should now be able to add and activate a plugin an startup
 
2213
          and, in the next steps, later via the WebUI too, and retrieve
 
2214
          from somewhere the configuration for each plugin.
 
2215
          
 
2216
          And this foundation should be extendable for .egg plugins too.
 
2217
 
 
2218
2006-12-18 22:28  dev
 
2219
 
 
2220
        * bin, bin/coherence, coherence.py, coherence/base.py: Moved
 
2221
          Coherence class into the coherence package and the coherence.py
 
2222
          into bin/coherence.
 
2223
          
 
2224
          Added a plugins parameter to Coherence, where a list of classes
 
2225
          can be handed over for instantiation.
 
2226
          And an add_plugin method to add one later.
 
2227
 
 
2228
2006-12-17 22:34  dev
 
2229
 
 
2230
        * coherence/upnp/core/event.py,
 
2231
          coherence/upnp/services/servers/connection_manager_server.py:
 
2232
          undo some unnecessary changes
 
2233
 
 
2234
2006-12-17 22:28  dev
 
2235
 
 
2236
        * coherence.py, coherence/backends/gstreamer_audio_player.py,
 
2237
          coherence/upnp/core/event.py, coherence/upnp/core/service.py,
 
2238
          coherence/upnp/core/variable.py,
 
2239
          coherence/upnp/core/xml-service-descriptions/AVTransport2.xml,
 
2240
          coherence/upnp/devices/media_renderer.py,
 
2241
          coherence/upnp/devices/media_server.py,
 
2242
          coherence/upnp/services/servers/connection_manager_server.py: We
 
2243
          have a controllable MediaRenderer!
 
2244
          
 
2245
          Everything that was needed to get recognized by the Intel
 
2246
          ControlPoint.
 
2247
          An audio file will be played and progress displayed on the
 
2248
          ControlPoint.
 
2249
          Pause, Start and Stop seem to work.
 
2250
          
 
2251
          There is an issue left on EOS and resetting the
 
2252
          CurrentTransportActions.
 
2253
          
 
2254
          This addresses #38 again.
 
2255
 
 
2256
2006-12-17 19:37  dev
 
2257
 
 
2258
        * coherence/upnp/devices/media_server.py: small fix and more
 
2259
          parameters on the call to
 
2260
          connection_manager_server.add_connection
 
2261
 
 
2262
2006-12-17 12:43  dev
 
2263
 
 
2264
        * coherence/backends/gstreamer_audio_player.py,
 
2265
          coherence/upnp/services/servers/connection_manager_server.py:
 
2266
          changes for a better spec compliance, but either we are still
 
2267
          missing some things or maybe the Intel ControlPoint expects
 
2268
          something out of the usual way?
 
2269
          
 
2270
          Need to check and compare this with a working MediaRenderer.
 
2271
 
 
2272
2006-12-17 12:40  dev
 
2273
 
 
2274
        * coherence/upnp/core/variable.py: wrong check for last_change
 
2275
          attribute, surfaced due to the updates with the new default
 
2276
          values in [193]
 
2277
 
 
2278
2006-12-17 12:38  dev
 
2279
 
 
2280
        * coherence/backends/fs_storage.py: proper errback return too
 
2281
 
 
2282
2006-12-17 12:38  dev
 
2283
 
 
2284
        * coherence.py, coherence/upnp/core/service.py,
 
2285
          coherence/upnp/core/soap_service.py,
 
2286
          coherence/upnp/devices/media_server.py: more work on the logging
 
2287
          front re #15.
 
2288
          
 
2289
          Now we need to enable on/off and a level change via the web-UI.
 
2290
 
 
2291
2006-12-17 12:35  dev
 
2292
 
 
2293
        * coherence/backends/elisa_storage.py: proper errback return
 
2294
 
 
2295
2006-12-17 12:31  dev
 
2296
 
 
2297
        * coherence/extern/inotify.py: more decent class instantiation and
 
2298
          a minor typo fix
 
2299
 
 
2300
2006-12-16 22:22  dev
 
2301
 
 
2302
        * coherence.py, coherence/extern/logger.py,
 
2303
          coherence/upnp/core/msearch.py, coherence/upnp/core/service.py,
 
2304
          coherence/upnp/core/ssdp.py,
 
2305
          coherence/upnp/devices/media_renderer.py,
 
2306
          coherence/upnp/devices/media_server.py: on the way to some
 
2307
          configurable logging function:
 
2308
          
 
2309
          * enable/disable per module
 
2310
          * set log level per module
 
2311
          
 
2312
          This addresses #15.
 
2313
 
 
2314
2006-12-15 20:05  dev
 
2315
 
 
2316
        * coherence/upnp/core/service.py,
 
2317
          coherence/upnp/core/soap_service.py,
 
2318
          coherence/upnp/core/variable.py,
 
2319
          coherence/upnp/core/xml-service-descriptions/AVTransport2.xml,
 
2320
          coherence/upnp/core/xml-service-descriptions/ConnectionManager2.xml,
 
2321
          coherence/upnp/core/xml-service-descriptions/ContentDirectory2.xml,
 
2322
          coherence/upnp/core/xml-service-descriptions/RenderingControl2.xml:
 
2323
          a whole bunch of changes in the xml service descriptions
 
2324
          regarding default values and the definition of all allowed
 
2325
          values.
 
2326
          
 
2327
          Plus a our very first '''own''' vendor extension
 
2328
          
 
2329
          ''coherence:X_withVendorDefines = "True|False"''
 
2330
          
 
2331
          which defines if a value in
 
2332
          
 
2333
          * a allowedValueList and
 
2334
          * a allowedValueRange
 
2335
          
 
2336
          can be extended by a vendor.
 
2337
          
 
2338
          This is currently used only in the description files used for
 
2339
          service creation, but it could be inserted into the description
 
2340
          files we send out to other devices too.
 
2341
          
 
2342
          This changeset fixes #37 and #38.
 
2343
 
 
2344
2006-12-13 17:27  dev
 
2345
 
 
2346
        * coherence/backends/fs_storage.py: small self-test change
 
2347
 
 
2348
2006-12-13 10:24  dev
 
2349
 
 
2350
        * coherence/backends/fs_storage.py: fix for "stupid bug"
 
2351
 
 
2352
2006-12-13 10:19  dev
 
2353
 
 
2354
        * coherence/backends/fs_storage.py: let upnp_Browse work again with
 
2355
          the changed root_id
 
2356
 
 
2357
2006-12-13 10:01  dev
 
2358
 
 
2359
        * coherence/upnp/devices/media_server.py: take back [176], as it is
 
2360
          probably not needed for the XBox
 
2361
 
 
2362
2006-12-12 13:04  dev
 
2363
 
 
2364
        * coherence/backends/fs_storage.py: first attempt to please an XBox
 
2365
          UPnP Search Action for 'all audio items'
 
2366
 
 
2367
2006-12-12 13:00  dev
 
2368
 
 
2369
        * coherence/upnp/core/soap_service.py: let's see the headers of an
 
2370
          XBox SOAP request, maybe we have an user-agent header there too
 
2371
 
 
2372
2006-12-12 09:59  dev
 
2373
 
 
2374
        * coherence/extern/uuid: more housekeeping
 
2375
 
 
2376
2006-12-12 09:58  dev
 
2377
 
 
2378
        * coherence/upnp/core/xml-service-descriptions: housekeeping
 
2379
 
 
2380
2006-12-12 09:52  dev
 
2381
 
 
2382
        * coherence/extern/uuid, coherence/extern/uuid/__init__.py,
 
2383
          coherence/extern/uuid/uuid.html, coherence/extern/uuid/uuid.py,
 
2384
          coherence/upnp/core/uuid.py,
 
2385
          coherence/upnp/devices/media_server.py: generate proper UUIDs,
 
2386
          this closes #19 and should help us with devices that are
 
2387
          (justifiably) petty about its format.
 
2388
 
 
2389
2006-12-11 22:18  dev
 
2390
 
 
2391
        * coherence/upnp/devices/media_server.py: and again...
 
2392
 
 
2393
2006-12-11 21:48  dev
 
2394
 
 
2395
        * coherence/upnp/devices/media_server.py: one more
 
2396
 
 
2397
2006-12-11 21:33  dev
 
2398
 
 
2399
        * coherence/upnp/devices/media_server.py: is it an UUID question?
 
2400
 
 
2401
2006-12-11 20:41  dev
 
2402
 
 
2403
        * coherence/upnp/devices/media_server.py: one more change to find
 
2404
          out the XBox' likings
 
2405
 
 
2406
2006-12-11 20:18  dev
 
2407
 
 
2408
        * coherence/upnp/devices/media_server.py: some more adjustments to
 
2409
          get recognized by the XBox, added DLNA tags
 
2410
 
 
2411
2006-12-11 18:45  dev
 
2412
 
 
2413
        * coherence/upnp/devices/media_server.py: fake a Windows Media
 
2414
          Connect server to get discovered by an XBox MediaRenderer
 
2415
 
 
2416
2006-12-11 18:07  idnar
 
2417
 
 
2418
        * coherence/upnp/core/device.py, coherence/upnp/core/service.py,
 
2419
          coherence/upnp/core/soap_proxy.py: Pass correct args to
 
2420
          addCallbacks.
 
2421
 
 
2422
2006-12-11 17:51  dev
 
2423
 
 
2424
        * coherence/upnp/core/msearch.py, coherence/upnp/core/ssdp.py,
 
2425
          coherence/upnp/devices/media_server.py: some debugging output, it
 
2426
          is really time for proper logging :-(
 
2427
 
 
2428
2006-12-11 09:29  dev
 
2429
 
 
2430
        * coherence/backends/gstreamer_audio_player.py: initialize and
 
2431
          update more UPnP variables
 
2432
 
 
2433
2006-12-10 21:35  dev
 
2434
 
 
2435
        * coherence/backends/elisa_storage.py,
 
2436
          coherence/backends/fs_storage.py,
 
2437
          coherence/backends/gstreamer_audio_player.py,
 
2438
          coherence/upnp/devices/media_renderer.py,
 
2439
          coherence/upnp/devices/media_server.py,
 
2440
          coherence/upnp/services/servers/av_transport_server.py,
 
2441
          coherence/upnp/services/servers/connection_manager_server.py,
 
2442
          coherence/upnp/services/servers/content_directory_server.py,
 
2443
          coherence/upnp/services/servers/media_receiver_registrar_server.py,
 
2444
          coherence/upnp/services/servers/rendering_control_server.py,
 
2445
          docs: first attempt of a MediaRenderer with a GStreamer (Audio)
 
2446
          backend.
 
2447
          
 
2448
          Only partially working, and maybe hobbled by a [GStreamer Bug
 
2449
          384140 http://bugzilla.gnome.org/show_bug.cgi?id=384140] too.
 
2450
          
 
2451
          Some adjustments all around.
 
2452
 
 
2453
2006-12-10 20:43  dev
 
2454
 
 
2455
        * coherence.py, coherence/upnp/core/msearch.py,
 
2456
          coherence/upnp/core/ssdp.py: Actually send out ssdp:byebye
 
2457
          messages on application shutdown.
 
2458
 
 
2459
2006-12-10 20:02  dev
 
2460
 
 
2461
        * coherence/upnp/core/device.py, coherence/upnp/core/service.py,
 
2462
          coherence/upnp/core/soap_proxy.py: added errbacks to
 
2463
          twisted.web.client.getPage calls
 
2464
 
 
2465
2006-12-02 16:48  dev
 
2466
 
 
2467
        * coherence/backends/elisa_storage.py,
 
2468
          coherence/backends/fs_storage.py, coherence/upnp/core/service.py,
 
2469
          coherence/upnp/core/variable.py,
 
2470
          coherence/upnp/devices/media_server.py,
 
2471
          coherence/upnp/services/servers/content_directory_server.py: This
 
2472
          adds auto-detection of file-system changes by means of the
 
2473
          inotify-module for the FileSystemBackend, re #33.
 
2474
          
 
2475
          Quite some other adjustments and fixes related to StateVariable
 
2476
          modifications and event propagation.
 
2477
 
 
2478
2006-12-02 16:41  dev
 
2479
 
 
2480
        * coherence/extern/inotify.py: a simple Python
 
2481
          [http://en.wikipedia.org/wiki/Inotify Inotify] interface, using
 
2482
          [http://python.net/crew/theller/ctypes/ ctypes] for the kernel
 
2483
          calls, works only on Linux with a kernel > 2.6.13 and
 
2484
          additionally at the moment only on ix86 architecture due to a
 
2485
          lame solution retrieving the kernel call ids.
 
2486
 
 
2487
2006-12-02 16:25  dev
 
2488
 
 
2489
        * LICENCE: add MIT licence file
 
2490
 
 
2491
2006-12-02 16:02  dev
 
2492
 
 
2493
        * coherence.py: reminder change re #34
 
2494
 
 
2495
2006-11-28 17:21  dev
 
2496
 
 
2497
        * coherence/upnp/core/variable.py: a reminder to fix it
 
2498
 
 
2499
2006-11-28 17:16  dev
 
2500
 
 
2501
        * ., coherence, coherence.py, coherence/__init__.py,
 
2502
          coherence/backends, coherence/backends/__init__.py,
 
2503
          coherence/backends/elisa_storage.py,
 
2504
          coherence/backends/fs_storage.py, coherence/extern,
 
2505
          coherence/extern/__init__.py, coherence/plugins, coherence/upnp,
 
2506
          coherence/upnp/__init__.py, coherence/upnp/core,
 
2507
          coherence/upnp/core/DIDLLite.py, coherence/upnp/core/__init__.py,
 
2508
          coherence/upnp/core/device.py, coherence/upnp/core/event.py,
 
2509
          coherence/upnp/core/msearch.py, coherence/upnp/core/service.py,
 
2510
          coherence/upnp/core/soap_proxy.py,
 
2511
          coherence/upnp/core/variable.py, coherence/upnp/devices,
 
2512
          coherence/upnp/devices/__init__.py,
 
2513
          coherence/upnp/devices/control_point.py,
 
2514
          coherence/upnp/devices/media_renderer.py,
 
2515
          coherence/upnp/devices/media_renderer_client.py,
 
2516
          coherence/upnp/devices/media_server.py,
 
2517
          coherence/upnp/devices/media_server_client.py,
 
2518
          coherence/upnp/services, coherence/upnp/services/__init__.py,
 
2519
          coherence/upnp/services/clients,
 
2520
          coherence/upnp/services/clients/__init__.py,
 
2521
          coherence/upnp/services/clients/av_transport_client.py,
 
2522
          coherence/upnp/services/clients/connection_manager_client.py,
 
2523
          coherence/upnp/services/clients/content_directory_client.py,
 
2524
          coherence/upnp/services/clients/rendering_control_client.py,
 
2525
          coherence/upnp/services/servers,
 
2526
          coherence/upnp/services/servers/__init__.py,
 
2527
          coherence/upnp/services/servers/av_transport_server.py,
 
2528
          coherence/upnp/services/servers/connection_manager_server.py,
 
2529
          coherence/upnp/services/servers/content_directory_server.py,
 
2530
          coherence/upnp/services/servers/media_receiver_registrar_server.py,
 
2531
          coherence/upnp/services/servers/rendering_control_server.py,
 
2532
          docs, tests, tests/content, tests/content/audio: a lot of small
 
2533
          adjustments after directory restructure, re #29
 
2534
 
 
2535
2006-11-28 16:45  dev
 
2536
 
 
2537
        * coherence/upnp/core/xml-service-descriptions,
 
2538
          coherence/upnp/xml-service-descriptions: Moved remotely
 
2539
 
 
2540
2006-11-28 13:14  dev
 
2541
 
 
2542
        * docs: Created folder remotely
 
2543
 
 
2544
2006-11-28 13:13  dev
 
2545
 
 
2546
        * coherence/tests, tests: Moved remotely
 
2547
 
 
2548
2006-11-28 13:08  dev
 
2549
 
 
2550
        * coherence/upnp/core/variable.py, coherence/upnp/variable.py:
 
2551
          Moved remotely
 
2552
 
 
2553
2006-11-28 13:08  dev
 
2554
 
 
2555
        * coherence/upnp/core/uuid.py, coherence/upnp/uuid.py: Moved
 
2556
          remotely
 
2557
 
 
2558
2006-11-28 13:07  dev
 
2559
 
 
2560
        * coherence/upnp/core/utils.py, coherence/upnp/utils.py: Moved
 
2561
          remotely
 
2562
 
 
2563
2006-11-28 13:07  dev
 
2564
 
 
2565
        * coherence/upnp/core/ssdp.py, coherence/upnp/ssdp.py: Moved
 
2566
          remotely
 
2567
 
 
2568
2006-11-28 13:06  dev
 
2569
 
 
2570
        * coherence/upnp/core/soap_service.py,
 
2571
          coherence/upnp/soap_service.py: Moved remotely
 
2572
 
 
2573
2006-11-28 13:06  dev
 
2574
 
 
2575
        * coherence/upnp/core/soap_proxy.py, coherence/upnp/soap_proxy.py:
 
2576
          Moved remotely
 
2577
 
 
2578
2006-11-28 13:06  dev
 
2579
 
 
2580
        * coherence/upnp/core/service.py, coherence/upnp/service.py: Moved
 
2581
          remotely
 
2582
 
 
2583
2006-11-28 13:06  dev
 
2584
 
 
2585
        * coherence/upnp/core/msearch.py, coherence/upnp/msearch.py: Moved
 
2586
          remotely
 
2587
 
 
2588
2006-11-28 13:05  dev
 
2589
 
 
2590
        * coherence/upnp/core/event.py, coherence/upnp/event.py: Moved
 
2591
          remotely
 
2592
 
 
2593
2006-11-28 13:05  dev
 
2594
 
 
2595
        * coherence/upnp/DIDLLite.py, coherence/upnp/core/DIDLLite.py:
 
2596
          Moved remotely
 
2597
 
 
2598
2006-11-28 13:05  dev
 
2599
 
 
2600
        * coherence/upnp/core/device.py, coherence/upnp/device.py: Moved
 
2601
          remotely
 
2602
 
 
2603
2006-11-28 13:04  dev
 
2604
 
 
2605
        * coherence/upnp/action.py, coherence/upnp/core/action.py: Moved
 
2606
          remotely
 
2607
 
 
2608
2006-11-28 13:04  dev
 
2609
 
 
2610
        * coherence/upnp/core: Created folder remotely
 
2611
 
 
2612
2006-11-28 13:02  dev
 
2613
 
 
2614
        * coherence/upnp/devices/media_server_client.py,
 
2615
          coherence/upnp/media_server_client.py: Moved remotely
 
2616
 
 
2617
2006-11-28 13:01  dev
 
2618
 
 
2619
        * coherence/upnp/devices/media_renderer_client.py,
 
2620
          coherence/upnp/media_renderer_client.py: Moved remotely
 
2621
 
 
2622
2006-11-28 13:01  dev
 
2623
 
 
2624
        * coherence/upnp/devices/media_server.py,
 
2625
          coherence/upnp/media_server.py: Moved remotely
 
2626
 
 
2627
2006-11-28 13:01  dev
 
2628
 
 
2629
        * coherence/upnp/devices/media_renderer.py,
 
2630
          coherence/upnp/media_renderer.py: Moved remotely
 
2631
 
 
2632
2006-11-28 13:01  dev
 
2633
 
 
2634
        * coherence/upnp/control_point.py,
 
2635
          coherence/upnp/devices/control_point.py: Moved remotely
 
2636
 
 
2637
2006-11-28 12:57  dev
 
2638
 
 
2639
        * coherence/tests/rpc_client.py, rpc_client.py: Moved remotely
 
2640
 
 
2641
2006-11-28 12:56  dev
 
2642
 
 
2643
        * coherence/upnp/rendering_control_server.py,
 
2644
          coherence/upnp/services/servers/rendering_control_server.py:
 
2645
          Moved remotely
 
2646
 
 
2647
2006-11-28 12:55  dev
 
2648
 
 
2649
        * coherence/upnp/rendering_control_client.py,
 
2650
          coherence/upnp/services/clients/rendering_control_client.py:
 
2651
          Moved remotely
 
2652
 
 
2653
2006-11-28 12:55  dev
 
2654
 
 
2655
        * coherence/upnp/media_receiver_registrar_server.py,
 
2656
          coherence/upnp/services/servers/media_receiver_registrar_server.py:
 
2657
          Moved remotely
 
2658
 
 
2659
2006-11-28 12:54  dev
 
2660
 
 
2661
        * coherence/upnp/content_directory_server.py,
 
2662
          coherence/upnp/services/servers/content_directory_server.py:
 
2663
          Moved remotely
 
2664
 
 
2665
2006-11-28 12:54  dev
 
2666
 
 
2667
        * coherence/upnp/content_directory_client.py,
 
2668
          coherence/upnp/services/clients/content_directory_client.py:
 
2669
          Moved remotely
 
2670
 
 
2671
2006-11-28 12:54  dev
 
2672
 
 
2673
        * coherence/upnp/connection_manager_server.py,
 
2674
          coherence/upnp/services/servers/connection_manager_server.py:
 
2675
          Moved remotely
 
2676
 
 
2677
2006-11-28 12:53  dev
 
2678
 
 
2679
        * coherence/upnp/connection_manager_client.py,
 
2680
          coherence/upnp/services/clients/connection_manager_client.py:
 
2681
          Moved remotely
 
2682
 
 
2683
2006-11-28 12:53  dev
 
2684
 
 
2685
        * coherence/upnp/av_transport_server.py,
 
2686
          coherence/upnp/services/servers/av_transport_server.py: Moved
 
2687
          remotely
 
2688
 
 
2689
2006-11-28 12:53  dev
 
2690
 
 
2691
        * coherence/upnp/av_transport_client.py,
 
2692
          coherence/upnp/services/clients/av_transport_client.py: Moved
 
2693
          remotely
 
2694
 
 
2695
2006-11-28 12:53  dev
 
2696
 
 
2697
        * coherence/upnp/services/clients: Created folder remotely
 
2698
 
 
2699
2006-11-28 12:52  dev
 
2700
 
 
2701
        * coherence/upnp/services/servers: Created folder remotely
 
2702
 
 
2703
2006-11-28 12:52  dev
 
2704
 
 
2705
        * coherence/upnp/services: Created folder remotely
 
2706
 
 
2707
2006-11-28 12:52  dev
 
2708
 
 
2709
        * coherence/upnp/devices: Created folder remotely
 
2710
 
 
2711
2006-11-28 12:51  dev
 
2712
 
 
2713
        * coherence/rpc_client.py, rpc_client.py: Moved remotely
 
2714
 
 
2715
2006-11-28 12:51  dev
 
2716
 
 
2717
        * coherence/upnp/variable.py, coherence/variable.py: Moved remotely
 
2718
 
 
2719
2006-11-28 12:51  dev
 
2720
 
 
2721
        * coherence/upnp/uuid.py, coherence/uuid.py: Moved remotely
 
2722
 
 
2723
2006-11-28 12:50  dev
 
2724
 
 
2725
        * coherence/upnp/utils.py, coherence/utils.py: Moved remotely
 
2726
 
 
2727
2006-11-28 12:50  dev
 
2728
 
 
2729
        * coherence/ssdp.py, coherence/upnp/ssdp.py: Moved remotely
 
2730
 
 
2731
2006-11-28 12:49  dev
 
2732
 
 
2733
        * coherence/soap_service.py, coherence/upnp/soap_service.py: Moved
 
2734
          remotely
 
2735
 
 
2736
2006-11-28 12:49  dev
 
2737
 
 
2738
        * coherence/soap_proxy.py, coherence/upnp/soap_proxy.py: Moved
 
2739
          remotely
 
2740
 
 
2741
2006-11-28 12:49  dev
 
2742
 
 
2743
        * coherence/service.py, coherence/upnp/service.py: Moved remotely
 
2744
 
 
2745
2006-11-28 12:49  dev
 
2746
 
 
2747
        * coherence/rendering_control_server.py,
 
2748
          coherence/upnp/rendering_control_server.py: Moved remotely
 
2749
 
 
2750
2006-11-28 12:48  dev
 
2751
 
 
2752
        * coherence/rendering_control_client.py,
 
2753
          coherence/upnp/rendering_control_client.py: Moved remotely
 
2754
 
 
2755
2006-11-28 12:48  dev
 
2756
 
 
2757
        * coherence/msearch.py, coherence/upnp/msearch.py: Moved remotely
 
2758
 
 
2759
2006-11-28 12:48  dev
 
2760
 
 
2761
        * coherence/media_server_client.py,
 
2762
          coherence/upnp/media_server_client.py: Moved remotely
 
2763
 
 
2764
2006-11-28 12:48  dev
 
2765
 
 
2766
        * coherence/media_server.py, coherence/upnp/media_server.py: Moved
 
2767
          remotely
 
2768
 
 
2769
2006-11-28 12:48  dev
 
2770
 
 
2771
        * coherence/media_renderer_client.py,
 
2772
          coherence/upnp/media_renderer_client.py: Moved remotely
 
2773
 
 
2774
2006-11-28 12:47  dev
 
2775
 
 
2776
        * coherence/media_renderer.py, coherence/upnp/media_renderer.py:
 
2777
          Moved remotely
 
2778
 
 
2779
2006-11-28 12:47  dev
 
2780
 
 
2781
        * coherence/media_receiver_registrar_server.py,
 
2782
          coherence/upnp/media_receiver_registrar_server.py: Moved remotely
 
2783
 
 
2784
2006-11-28 12:47  dev
 
2785
 
 
2786
        * coherence/event.py, coherence/upnp/event.py: Moved remotely
 
2787
 
 
2788
2006-11-28 12:47  dev
 
2789
 
 
2790
        * coherence/DIDLLite.py, coherence/upnp/DIDLLite.py: Moved remotely
 
2791
 
 
2792
2006-11-28 12:47  dev
 
2793
 
 
2794
        * coherence/device.py, coherence/upnp/device.py: Moved remotely
 
2795
 
 
2796
2006-11-28 12:47  dev
 
2797
 
 
2798
        * coherence/control_point.py, coherence/upnp/control_point.py:
 
2799
          Moved remotely
 
2800
 
 
2801
2006-11-28 12:46  dev
 
2802
 
 
2803
        * coherence/content_directory_server.py,
 
2804
          coherence/upnp/content_directory_server.py: Moved remotely
 
2805
 
 
2806
2006-11-28 12:46  dev
 
2807
 
 
2808
        * coherence/content_directory_client.py,
 
2809
          coherence/upnp/content_directory_client.py: Moved remotely
 
2810
 
 
2811
2006-11-28 12:46  dev
 
2812
 
 
2813
        * coherence/connection_manager_server.py,
 
2814
          coherence/upnp/connection_manager_server.py: Moved remotely
 
2815
 
 
2816
2006-11-28 12:46  dev
 
2817
 
 
2818
        * coherence/connection_manager_client.py,
 
2819
          coherence/upnp/connection_manager_client.py: Moved remotely
 
2820
 
 
2821
2006-11-28 12:46  dev
 
2822
 
 
2823
        * coherence/av_transport_server.py,
 
2824
          coherence/upnp/av_transport_server.py: Moved remotely
 
2825
 
 
2826
2006-11-28 12:46  dev
 
2827
 
 
2828
        * coherence/av_transport_client.py,
 
2829
          coherence/upnp/av_transport_client.py: Moved remotely
 
2830
 
 
2831
2006-11-28 12:45  dev
 
2832
 
 
2833
        * coherence/action.py, coherence/upnp/action.py: Moved remotely
 
2834
 
 
2835
2006-11-28 12:44  dev
 
2836
 
 
2837
        * coherence/elementsoap, coherence/extern/elementsoap: Moved
 
2838
          remotely
 
2839
 
 
2840
2006-11-28 12:44  dev
 
2841
 
 
2842
        * coherence/content, coherence/tests/content: Moved remotely
 
2843
 
 
2844
2006-11-28 12:44  dev
 
2845
 
 
2846
        * coherence/tests: Created folder remotely
 
2847
 
 
2848
2006-11-28 12:44  dev
 
2849
 
 
2850
        * coherence/extern: Created folder remotely
 
2851
 
 
2852
2006-11-28 12:43  dev
 
2853
 
 
2854
        * coherence.py, coherence/coherence.py: Moved remotely
 
2855
 
 
2856
2006-11-28 12:43  dev
 
2857
 
 
2858
        * coherence/upnp/xml-service-descriptions,
 
2859
          coherence/xml-service-descriptions: Moved remotely
 
2860
 
 
2861
2006-11-28 12:43  dev
 
2862
 
 
2863
        * coherence/backends/elisa_storage.py, coherence/elisa_storage.py:
 
2864
          Moved remotely
 
2865
 
 
2866
2006-11-28 12:43  dev
 
2867
 
 
2868
        * coherence/backends/fs_storage.py, coherence/fs_storage.py: Moved
 
2869
          remotely
 
2870
 
 
2871
2006-11-28 12:41  dev
 
2872
 
 
2873
        * coherence/plugins: Created folder remotely
 
2874
 
 
2875
2006-11-28 12:41  dev
 
2876
 
 
2877
        * coherence/backends: Created folder remotely
 
2878
 
 
2879
2006-11-28 12:41  dev
 
2880
 
 
2881
        * coherence/upnp: Created folder remotely
 
2882
 
 
2883
2006-11-28 12:40  dev
 
2884
 
 
2885
        * coherence, python-upnp: Renamed remotely
 
2886
 
 
2887
2006-11-27 15:26  dev
 
2888
 
 
2889
        * python-upnp/elisa_storage.py: doc string adjustment
 
2890
 
 
2891
2006-11-27 15:16  dev
 
2892
 
 
2893
        * python-upnp/elisa_storage.py: item.res.size is an optional
 
2894
          attribute -as the Elisa MediaStore isn't (yet) providing it, it
 
2895
          should be set to None if not present in the response from the
 
2896
          MediaStore.
 
2897
 
 
2898
2006-11-26 18:01  dev
 
2899
 
 
2900
        * python-upnp/elisa_storage.py, python-upnp/media_server.py: dumb
 
2901
          changes to test the Elisa MediaStore, time to work on the plugin
 
2902
          system
 
2903
 
 
2904
2006-11-26 16:21  dev
 
2905
 
 
2906
        * python-upnp/connection_manager_server.py,
 
2907
          python-upnp/content_directory_server.py,
 
2908
          python-upnp/fs_storage.py, python-upnp/media_server.py: keep
 
2909
          track of connections in the MediaServer ConnectionManager and
 
2910
          some cosmetically changes
 
2911
 
 
2912
2006-11-26 16:19  dev
 
2913
 
 
2914
        * python-upnp/service.py: fix soap_generic in such a way, that the
 
2915
          action.callback as intended can actually return a deferred or a
 
2916
          result-dict
 
2917
 
 
2918
2006-11-26 15:35  philn
 
2919
 
 
2920
        * python-upnp/elisa_storage.py, python-upnp/soap_service.py: Some
 
2921
          progress on Elisa store
 
2922
 
 
2923
2006-11-24 15:15  dev
 
2924
 
 
2925
        * python-upnp/elisa_storage.py: first shot of an
 
2926
          [http://www.fluendo.com/elisa/ Elisa] MediaServer backend
 
2927
 
 
2928
2006-11-24 15:13  dev
 
2929
 
 
2930
        * python-upnp/fs_storage.py: some forgotten import
 
2931
 
 
2932
2006-11-22 17:02  dev
 
2933
 
 
2934
        * python-upnp/av_transport_server.py, python-upnp/coherence.py,
 
2935
          python-upnp/connection_manager_server.py, python-upnp/content,
 
2936
          python-upnp/content/audio,
 
2937
          python-upnp/content_directory_server.py, python-upnp/device.py,
 
2938
          python-upnp/event.py, python-upnp/fs_storage.py,
 
2939
          python-upnp/media_receiver_registrar_server.py,
 
2940
          python-upnp/media_renderer.py, python-upnp/media_server.py,
 
2941
          python-upnp/msearch.py, python-upnp/rendering_control_server.py,
 
2942
          python-upnp/service.py, python-upnp/ssdp.py: A lot of fixes and
 
2943
          enhancements regarding a working MediaServer.
 
2944
          
 
2945
          Some of them concerning the different namespace, which refs to
 
2946
          #28.
 
2947
          
 
2948
          Fixed an embarrassingly stupid bug in the device registration,
 
2949
          where we had the services url in the location header of the
 
2950
          service notification, instead of the url for the device
 
2951
          description.xml, this is one of those that fixes #26.
 
2952
          
 
2953
          This only showed up due to the fact that the Noxon-2 looks only
 
2954
          for service notifications.
 
2955
          
 
2956
          Version 2 devices now send out notifications for devices v1 and
 
2957
          services v1 too. Requisite for this are different device
 
2958
          descriptions accordingly to the version, pointing to the matching
 
2959
          services.
 
2960
 
 
2961
2006-11-21 13:06  dev
 
2962
 
 
2963
        * python-upnp/media_receiver_registrar_server.py,
 
2964
          python-upnp/xml-service-descriptions/X_MS_MediaReceiverRegistrar1.xml:
 
2965
          This adds a MediaReceiverRegistrar with a FakeBackend, that just
 
2966
          affirms any IsAuthorized and IsValidated actions.
 
2967
 
 
2968
2006-11-19 16:41  dev
 
2969
 
 
2970
        * python-upnp/coherence.py, python-upnp/fs_storage.py,
 
2971
          python-upnp/media_server.py: removed 'uuid:' part from the
 
2972
          devices URL
 
2973
 
 
2974
2006-11-18 21:44  dev
 
2975
 
 
2976
        * python-upnp/DIDLLite.py, python-upnp/fs_storage.py: some progress
 
2977
          towards a simple MediaServer (plugin) with a FileSystem backend
 
2978
 
 
2979
2006-11-18 12:34  dev
 
2980
 
 
2981
        * python-upnp/fs_storage.py, python-upnp/media_renderer.py,
 
2982
          python-upnp/media_server.py: make the MediaServer return content
 
2983
          on request for an ObjectID
 
2984
 
 
2985
2006-11-18 10:34  dev
 
2986
 
 
2987
        * python-upnp/fs_storage.py: minor cosmetic changes
 
2988
 
 
2989
2006-11-17 21:58  dev
 
2990
 
 
2991
        * python-upnp/av_transport_server.py,
 
2992
          python-upnp/connection_manager_server.py,
 
2993
          python-upnp/content_directory_server.py,
 
2994
          python-upnp/fs_storage.py, python-upnp/media_renderer.py,
 
2995
          python-upnp/media_server.py,
 
2996
          python-upnp/rendering_control_server.py, python-upnp/service.py:
 
2997
          First 'usable' approach to couple the action callbacks with the
 
2998
          methods the backend provides.
 
2999
          
 
3000
          We still need 'some' knowledge about UPnP in the backend, maybe
 
3001
          this can be reduced further.
 
3002
 
 
3003
2006-11-17 11:30  dev
 
3004
 
 
3005
        * python-upnp/content_directory_server.py,
 
3006
          python-upnp/fs_storage.py, python-upnp/media_server.py: first
 
3007
          steps towards a simple MediaServer (plugin) with a FileSystem
 
3008
          backend
 
3009
 
 
3010
2006-11-17 11:26  dev
 
3011
 
 
3012
        * python-upnp/service.py: wrong use of attribute and some minor
 
3013
          fixes
 
3014
 
 
3015
2006-11-17 11:23  dev
 
3016
 
 
3017
        * python-upnp/DIDLLite.py: use cElementTree if available and
 
3018
          renamed klass to upnp_class
 
3019
 
 
3020
2006-11-17 11:16  dev
 
3021
 
 
3022
        * python-upnp/content_directory.py: removed as this is only needed
 
3023
          with the elisa UPnP plugin
 
3024
 
 
3025
2006-11-17 11:14  dev
 
3026
 
 
3027
        * python-upnp/soap_service.py: fix UPnPPublisher to get the
 
3028
          'soap'generic' function actually working with IN arguments
 
3029
 
 
3030
2006-11-16 10:26  dev
 
3031
 
 
3032
        * python-upnp/msearch.py: let the OS choose a port for the MSEARCH
 
3033
          service, fixes #23
 
3034
 
 
3035
2006-11-09 14:19  dev
 
3036
 
 
3037
        * python-upnp/event.py, python-upnp/media_renderer_client.py,
 
3038
          python-upnp/service.py, python-upnp/variable.py: added the
 
3039
          initial notification upon event subscription and proper
 
3040
          propagation of the LastChange event, closes #17 and #21.
 
3041
 
 
3042
2006-11-09 10:50  dev
 
3043
 
 
3044
        * python-upnp/coherence.py: no need to check for re-subscriptions
 
3045
          immediately, wait for the first looping call to pass
 
3046
 
 
3047
2006-11-09 10:47  dev
 
3048
 
 
3049
        * python-upnp/ssdp.py: don't (re)send notifications immediately,
 
3050
          wait for the first looping call to pass
 
3051
 
 
3052
2006-11-08 14:28  dev
 
3053
 
 
3054
        * python-upnp/av_transport_server.py,
 
3055
          python-upnp/connection_manager_client.py,
 
3056
          python-upnp/content_directory_client.py, python-upnp/event.py,
 
3057
          python-upnp/media_renderer.py,
 
3058
          python-upnp/media_renderer_client.py,
 
3059
          python-upnp/rendering_control_client.py,
 
3060
          python-upnp/rendering_control_server.py, python-upnp/service.py:
 
3061
          First stub for the MediaRenderer and its services, plus some bugs
 
3062
          fixed in the event notification stuff that showed up on the first
 
3063
          tests.
 
3064
 
 
3065
2006-11-07 14:54  dev
 
3066
 
 
3067
        * python-upnp/service.py: error checks in `soap__generic` for wrong
 
3068
          or missing IN arguments
 
3069
 
 
3070
2006-11-07 14:42  dev
 
3071
 
 
3072
        * python-upnp/soap_service.py: Proper error-code for 'method not
 
3073
          found' according to
 
3074
          [http://upnp.org/resources/documents/CleanUPnPDA101-20031202s.pdf
 
3075
          UPnP Device Architecture]
 
3076
 
 
3077
2006-11-06 22:18  dev
 
3078
 
 
3079
        * python-upnp/connection_manager_server.py,
 
3080
          python-upnp/content_directory_server.py, python-upnp/service.py:
 
3081
          follow-up on [57] and [58] which fixes the therein introduced
 
3082
          bugs
 
3083
 
 
3084
2006-11-06 21:22  dev
 
3085
 
 
3086
        * python-upnp/soap_service.py: Extending UPnPPublisher for a better
 
3087
          compliance with the
 
3088
          [http://upnp.org/resources/documents/CleanUPnPDA101-20031202s.pdf
 
3089
          UPnP Device Architecture]
 
3090
 
 
3091
2006-11-04 13:49  dev
 
3092
 
 
3093
        * python-upnp/connection_manager_server.py,
 
3094
          python-upnp/content_directory_server.py, python-upnp/service.py:
 
3095
          moved `soap__generic` and `get_action_results` out of the service
 
3096
          control classes into service.py, into their own ServiceControl
 
3097
          mix-in
 
3098
 
 
3099
2006-11-04 12:29  dev
 
3100
 
 
3101
        * python-upnp/connection_manager_server.py,
 
3102
          python-upnp/content_directory_server.py, python-upnp/service.py:
 
3103
          moved service description class into service.py
 
3104
 
 
3105
2006-11-01 21:50  dev
 
3106
 
 
3107
        * python-upnp/action.py, python-upnp/av_transport_client.py,
 
3108
          python-upnp/connection_manager_client.py,
 
3109
          python-upnp/content_directory.py,
 
3110
          python-upnp/content_directory_client.py,
 
3111
          python-upnp/control_point.py,
 
3112
          python-upnp/media_renderer_client.py,
 
3113
          python-upnp/media_server_client.py,
 
3114
          python-upnp/rendering_control_client.py,
 
3115
          python-upnp/soap_proxy.py, python-upnp/ssdp.py,
 
3116
          python-upnp/utils.py: put everything under MIT licence and added
 
3117
          appropriate copyright information, this changeset closes #7
 
3118
 
 
3119
2006-11-01 20:49  dev
 
3120
 
 
3121
        * python-upnp/service.py, python-upnp/variable.py: This adds the
 
3122
          missing methods for moderated events and closes #11.
 
3123
 
 
3124
2006-11-01 16:17  dev
 
3125
 
 
3126
        * python-upnp: property rag
 
3127
 
 
3128
2006-11-01 16:13  dev
 
3129
 
 
3130
        * python-upnp/connection_manager_server.py,
 
3131
          python-upnp/content_directory_server.py, python-upnp/service.py:
 
3132
          refactored server service into a more universal service.Server
 
3133
          class for mix-in.
 
3134
          
 
3135
          Added EventSubscriptionServer from #11.
 
3136
 
 
3137
2006-11-01 15:53  dev
 
3138
 
 
3139
        * python-upnp/event.py: server side event subscription and
 
3140
          notification, re #11
 
3141
          
 
3142
          The loop for sending out moderated events is not yet there ->
 
3143
          check [48].
 
3144
 
 
3145
2006-11-01 15:18  dev
 
3146
 
 
3147
        * python-upnp/media_server.py: minor cleanups
 
3148
 
 
3149
2006-11-01 15:11  dev
 
3150
 
 
3151
        * python-upnp/coherence.py: minor fix for device presentation in
 
3152
          the WebUI
 
3153
 
 
3154
2006-11-01 15:08  dev
 
3155
 
 
3156
        * python-upnp/device.py: changed license notes addressing #7
 
3157
 
 
3158
2006-11-01 15:03  dev
 
3159
 
 
3160
        * python-upnp/variable.py: laid foundation for moderated events, re
 
3161
          #11
 
3162
 
 
3163
2006-10-27 08:51  dev
 
3164
 
 
3165
        * python-upnp/ssdp.py, python-upnp/uuid.py: Repeat 100 times:
 
3166
          
 
3167
          Never work on code if you are tired!
 
3168
          Never work on code if you are tired!
 
3169
          Never work on code if you are tired!
 
3170
          Never work on code if you are tired!
 
3171
          ...
 
3172
 
 
3173
2006-10-26 16:26  dev
 
3174
 
 
3175
        * python-upnp/root-device.xml: removed accidentally checked-in file
 
3176
 
 
3177
2006-10-26 15:34  dev
 
3178
 
 
3179
        * python-upnp/uuid.py: Adjusted copyright just to be sure
 
3180
 
 
3181
2006-10-26 15:30  dev
 
3182
 
 
3183
        * python-upnp/media_server.py, python-upnp/uuid.py: Moved
 
3184
          generateuuid into its own UUID class so we can use it for SIDs
 
3185
          too.
 
3186
          Not sure if the str(instance) approach via __repr__ is sacrosanct
 
3187
          or if a self.uuid.get_uuid() construct is a better way to handle
 
3188
          this.
 
3189
 
 
3190
2006-10-23 11:14  dev
 
3191
 
 
3192
        * python-upnp/coherence.py,
 
3193
          python-upnp/connection_manager_server.py,
 
3194
          python-upnp/media_server.py: accommodations to
 
3195
          ArchitecturalOverview
 
3196
 
 
3197
2006-10-23 11:11  dev
 
3198
 
 
3199
        * python-upnp/ssdp.py: fixed old, mooching little bug, spotted by
 
3200
          philn
 
3201
 
 
3202
2006-10-15 20:55  dev
 
3203
 
 
3204
        * python-upnp/connection_manager_server.py: experimenting with a
 
3205
          generic soap method to save us from too many similar function
 
3206
          definitions.
 
3207
          
 
3208
          Maybe we can use this technique in the XMLRCP api too.
 
3209
 
 
3210
2006-10-15 20:51  dev
 
3211
 
 
3212
        * python-upnp/soap_service.py: extend UPnPPublisher so we can use a
 
3213
          generic soap method for the trivial actions in a server service.
 
3214
 
 
3215
2006-10-15 20:47  dev
 
3216
 
 
3217
        * python-upnp/content_directory_server.py: Copied over soap methods
 
3218
          from PyMedS.
 
3219
 
 
3220
2006-10-15 20:45  dev
 
3221
 
 
3222
        * python-upnp/action.py: Extend action class with a callback so it
 
3223
          is more useful in a server service.
 
3224
 
 
3225
2006-10-14 14:59  dev
 
3226
 
 
3227
        * python-upnp/media_server.py: Proper registration of ourself to
 
3228
          the SSDP server and corrected services url creation.
 
3229
 
 
3230
2006-10-14 14:56  dev
 
3231
 
 
3232
        * python-upnp/connection_manager_server.py,
 
3233
          python-upnp/content_directory_server.py: Fix serviceStateTable
 
3234
          typo in scpd.xml creation, added instantiation of
 
3235
          EventSubscriptionServer and use v2 of the service description
 
3236
          file.
 
3237
 
 
3238
2006-10-14 14:48  dev
 
3239
 
 
3240
        * python-upnp/media_server_client.py: Temporarily remove testing of
 
3241
          Browse action to handle our own half-done ContentDirectory
 
3242
          service.
 
3243
 
 
3244
2006-10-14 14:46  dev
 
3245
 
 
3246
        * python-upnp/content_directory_client.py: Adjust licence, address
 
3247
          #7
 
3248
 
 
3249
2006-10-14 14:44  dev
 
3250
 
 
3251
        * python-upnp/control_point.py, python-upnp/event.py: Added
 
3252
          EventSubscriptionServer and initiated it in
 
3253
          connection_manager_server.py and content_directory_server.py.
 
3254
          
 
3255
          Functionality is still missing!!!
 
3256
          
 
3257
          Removed an obsolete argument from EventServer `__init__`.
 
3258
          
 
3259
          Addresses #11.
 
3260
 
 
3261
2006-10-14 14:39  dev
 
3262
 
 
3263
        * python-upnp/ssdp.py: Reworked the SSDP server implementation.
 
3264
          
 
3265
          The dict items, that represent discovered remote or registered
 
3266
          local devices have now a manifestation attribute to distinguish
 
3267
          between local or remote devices.
 
3268
          
 
3269
          We do now resend notifications every 770 seconds.
 
3270
          These resends seem to be 'best practice' in case some
 
3271
          ControlPoint had missed the discovery responses.
 
3272
          
 
3273
          Talking of these, discovery responses are now implemented too.
 
3274
          
 
3275
          Notifications and discovery responses are only send out for local
 
3276
          devices.
 
3277
 
 
3278
2006-10-14 14:31  dev
 
3279
 
 
3280
        * python-upnp/service.py: commented out noisy print
 
3281
 
 
3282
2006-10-14 14:30  dev
 
3283
 
 
3284
        * python-upnp/coherence.py: commented out noisy print
 
3285
 
 
3286
2006-10-14 14:24  dev
 
3287
 
 
3288
        * python-upnp/msearch.py: Adjust loop time for msearch, now do
 
3289
          searches every 120 seconds.
 
3290
          Maybe that's still too often.
 
3291
          
 
3292
          Add the manifestation argument to the SSDP.register call and
 
3293
          modified the licence.
 
3294
 
 
3295
2006-10-14 14:17  dev
 
3296
 
 
3297
        * python-upnp/xml-service-descriptions/AVTransport2.xml,
 
3298
          python-upnp/xml-service-descriptions/ConnectionManager2.xml,
 
3299
          python-upnp/xml-service-descriptions/ContentDirectory2.xml,
 
3300
          python-upnp/xml-service-descriptions/MediaRenderer2.xml,
 
3301
          python-upnp/xml-service-descriptions/MediaServer2.xml,
 
3302
          python-upnp/xml-service-descriptions/RenderingControl2.xml,
 
3303
          python-upnp/xml-service-descriptions/ScheduledRecording1.xml:
 
3304
          Actually it is a good idea to use the correct xml files if you
 
3305
          want to support MediaServer V2 and MediaRenderer V2 ;-)
 
3306
          
 
3307
          This is an supplement to [25] and addresses #10 again.
 
3308
 
 
3309
2006-10-13 09:56  dev
 
3310
 
 
3311
        * python-upnp/variable.py: adjust faulty argument order in
 
3312
          StateVariable init
 
3313
 
 
3314
2006-10-12 14:48  dev
 
3315
 
 
3316
        * python-upnp/connection_manager_server.py,
 
3317
          python-upnp/content_directory_server.py,
 
3318
          python-upnp/media_server.py: Add and integrate
 
3319
          content_directory_server.py on the way to a working basic
 
3320
          MediaServer.
 
3321
          
 
3322
          Some of the changes in media_server.py in the device xml
 
3323
          description generation close #10.
 
3324
 
 
3325
2006-10-12 13:35  dev
 
3326
 
 
3327
        * python-upnp/action.py, python-upnp/coherence.py,
 
3328
          python-upnp/connection_manager_server.py,
 
3329
          python-upnp/media_server.py, python-upnp/service.py,
 
3330
          python-upnp/soap_service.py, python-upnp/variable.py,
 
3331
          python-upnp/xml-service-descriptions,
 
3332
          python-upnp/xml-service-descriptions/AVTransport1.xml,
 
3333
          python-upnp/xml-service-descriptions/ConnectionManager1.xml,
 
3334
          python-upnp/xml-service-descriptions/ContentDirectory1.xml,
 
3335
          python-upnp/xml-service-descriptions/RenderingControl1.xml:
 
3336
          Reverted the way the WebInterface is handled and add some simple
 
3337
          page-generation to allow easier browsing of the children.
 
3338
          
 
3339
          Included the xml-services-descriptions directory and use the xml
 
3340
          files therein as the source for the server services definition.
 
3341
          
 
3342
          This addresses #10.
 
3343
          
 
3344
          And finally added connection_manager_server.py and
 
3345
          soap_service.py for an initial test of a server service.
 
3346
 
 
3347
2006-10-11 16:50  dev
 
3348
 
 
3349
        * python-upnp/coherence.py, python-upnp/control_point.py,
 
3350
          python-upnp/device.py, python-upnp/media_server.py,
 
3351
          python-upnp/service.py, python-upnp/ssdp.py,
 
3352
          python-upnp/utils.py: Another big one which removes the blocking
 
3353
          urllib2.urlopen call
 
3354
          and adds signal based propagation of events, e.g. SSDP
 
3355
          new_device,
 
3356
          to get around too much deferred wizardry in the device,sub-device
 
3357
          and service detection.
 
3358
          
 
3359
          This introduces [http://pylouie.org louie] as signal dispatcher.
 
3360
 
 
3361
2006-10-09 09:52  dev
 
3362
 
 
3363
        * python-upnp/coherence.py, python-upnp/control_point.py,
 
3364
          python-upnp/event.py, python-upnp/rpc_client.py,
 
3365
          python-upnp/ssdp.py: This is a big changeset that turns upside
 
3366
          down a lot of
 
3367
          how the parts within the UPnP framework are dealt with.
 
3368
          
 
3369
          There is now an embracement class called Coherence that
 
3370
          deals with all the parts needed to run an UPnP service.
 
3371
          And allows in the future a more plugin based structure.
 
3372
          
 
3373
          There we decide whether we only want to be a ControlPoint,
 
3374
          only a MediaRenderer, only a MediaServer or any combination
 
3375
          of these.
 
3376
          
 
3377
          The SSDP and the MSEARCH subsystems have now their home there.
 
3378
          
 
3379
          And only one webserver instance is created where all the other
 
3380
          subsystems can register their services as childs.
 
3381
          
 
3382
          For example the ControlPoint appends there its Event Notification
 
3383
          service and its XMLRPC interface.
 
3384
          And of course it can append there its own web-interface.
 
3385
          
 
3386
          Likewise for the MediaServer. It appends its XML files,
 
3387
          the Event Subscription service, the SOAP interface and its
 
3388
          media files.
 
3389
          
 
3390
          Hopefully not to many things broke with this changeset,
 
3391
          actually and intendedly we should be on the same functionality
 
3392
          level like before.
 
3393
 
 
3394
2006-10-09 09:29  dev
 
3395
 
 
3396
        * python-upnp/media_server.py, python-upnp/root-device.xml: some
 
3397
          startup imports from pymeds to allow testing of the
 
3398
          framework/embracement approach
 
3399
 
 
3400
2006-10-05 21:55  dev
 
3401
 
 
3402
        * python-upnp/content_directory_client.py: added remaining action
 
3403
          methods to ContentDirectory client
 
3404
 
 
3405
2006-10-05 15:27  dev
 
3406
 
 
3407
        * python-upnp/content_directory_client.py,
 
3408
          python-upnp/media_server_client.py: fix stupid typo and solve
 
3409
          browse and search issues, herewith closes #6
 
3410
 
 
3411
2006-10-05 15:24  dev
 
3412
 
 
3413
        * python-upnp/service.py: move SOAP request method back to service
 
3414
          class, refs #9
 
3415
 
 
3416
2006-10-05 15:21  dev
 
3417
 
 
3418
        * python-upnp/action.py: change re #6
 
3419
 
 
3420
2006-10-05 15:17  dev
 
3421
 
 
3422
        * python-upnp/control_point.py: correction for error introduced in
 
3423
          [15]
 
3424
 
 
3425
2006-10-05 15:03  dev
 
3426
 
 
3427
        * python-upnp/DIDLLite.py: DIDL-Lite strings are encoded in utf-8
 
3428
          and need therefore decoding as such
 
3429
 
 
3430
2006-10-04 09:30  dev
 
3431
 
 
3432
        * python-upnp/control_point.py, python-upnp/device.py: fixed device
 
3433
          identification within the ControlPoint, corrected this in the
 
3434
          Device class and added instantiating of the MediaServerClient
 
3435
 
 
3436
2006-10-04 09:17  dev
 
3437
 
 
3438
        * python-upnp/media_renderer_client.py: first licence fix, refs #7
 
3439
 
 
3440
2006-10-04 09:12  dev
 
3441
 
 
3442
        * python-upnp/media_server_client.py: created MediaServerClient
 
3443
          class
 
3444
 
 
3445
2006-10-03 21:40  dev
 
3446
 
 
3447
        * python-upnp/action.py: added StateVariable (auto-)update on
 
3448
          return of an action call, refs #6
 
3449
 
 
3450
2006-10-03 21:32  dev
 
3451
 
 
3452
        * python-upnp/media_renderer_client.py: some more method calls to
 
3453
          test the new action handling, re #6
 
3454
 
 
3455
2006-10-03 21:29  dev
 
3456
 
 
3457
        * python-upnp/av_transport_client.py: added action
 
3458
          GetCurrentTransportActions
 
3459
 
 
3460
2006-10-03 21:28  dev
 
3461
 
 
3462
        * python-upnp/soap_proxy.py: removed some prints
 
3463
 
 
3464
2006-10-03 21:27  dev
 
3465
 
 
3466
        * python-upnp/elementsoap/ElementSOAP.py: removed an old print
 
3467
 
 
3468
2006-10-03 17:32  dev
 
3469
 
 
3470
        * python-upnp/action.py, python-upnp/av_transport_client.py,
 
3471
          python-upnp/connection_manager_client.py,
 
3472
          python-upnp/content_directory_client.py,
 
3473
          python-upnp/media_renderer_client.py,
 
3474
          python-upnp/rendering_control_client.py, python-upnp/service.py:
 
3475
          reengineered the way actions are called, breaks Search and Browse
 
3476
          actions in [source:/trunk/python-upnp/content_directory_client.py
 
3477
          ContentDirectory], addresses #6
 
3478
 
 
3479
2006-10-03 09:57  dev
 
3480
 
 
3481
        * python-upnp/control_point.py, python-upnp/event.py,
 
3482
          python-upnp/service.py: remaining adaptations for AVTransport and
 
3483
          RenderingControl LastChange events and instance based propagation
 
3484
          of that event and the therein enclosed StateVariables plus the
 
3485
          removal of some loquacious prints, closes #1,#2 and #3
 
3486
 
 
3487
2006-10-02 14:39  dev
 
3488
 
 
3489
        * python-upnp/av_transport_client.py, python-upnp/control_point.py,
 
3490
          python-upnp/media_renderer_client.py, python-upnp/service.py,
 
3491
          python-upnp/variable.py: added instance dict around
 
3492
          state_variables dict and adjusted variable related methods,
 
3493
          addresses #3
 
3494
 
 
3495
2006-10-02 13:00  dev
 
3496
 
 
3497
        * python-upnp/control_point.py, python-upnp/device.py,
 
3498
          python-upnp/event.py, python-upnp/service.py: enhanced with
 
3499
          unsubscribe service notification and proper(?) shutdown handling,
 
3500
          fixing #4
 
3501
 
 
3502
2006-10-02 12:50  dev
 
3503
 
 
3504
        * python-upnp/elementsoap: set svnignore for pyc/pyo
 
3505
 
 
3506
2006-10-01 14:53  dev
 
3507
 
 
3508
        * python-upnp: set svnignore for pyc/pyo
 
3509
 
 
3510
2006-10-01 14:39  dev
 
3511
 
 
3512
        * ., python-upnp, python-upnp/DIDLLite.py, python-upnp/__init__.py,
 
3513
          python-upnp/action.py, python-upnp/av_transport_client.py,
 
3514
          python-upnp/connection_manager_client.py,
 
3515
          python-upnp/content_directory.py,
 
3516
          python-upnp/content_directory_client.py,
 
3517
          python-upnp/control_point.py, python-upnp/device.py,
 
3518
          python-upnp/elementsoap, python-upnp/elementsoap/ElementSOAP.py,
 
3519
          python-upnp/elementsoap/HTTPClient.py,
 
3520
          python-upnp/elementsoap/README,
 
3521
          python-upnp/elementsoap/__init__.py, python-upnp/event.py,
 
3522
          python-upnp/media_renderer_client.py, python-upnp/msearch.py,
 
3523
          python-upnp/rendering_control_client.py,
 
3524
          python-upnp/rpc_client.py, python-upnp/service.py,
 
3525
          python-upnp/soap_proxy.py, python-upnp/ssdp.py,
 
3526
          python-upnp/utils.py, python-upnp/variable.py: initial import
 
3527