-
Notifications
You must be signed in to change notification settings - Fork 186
/
CHANGES
414 lines (351 loc) · 19.1 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
Changelog
---------
0.41.4 (2024-06-26)
- FIXED: Python 3.12 compatibility
0.41.3 (2022-03-04)
- FIXED: python 3.10 compatibility
0.41.2 (2018-02-07)
- FIXED: Make jPlayer work again in master branch (merge 0.41.1 into master)
- FIXED: '--setup' now works for CherryPy 12 and upwards (thanks to TangoSierraAlfaVI)
- FIXED: UnicodeError when transcoding non-ASCII URLs (thanks to evetsso)
- IMPROVEMENT: Added Bandcamp album cover fetching (thanks to its-wednesday)
0.41.1 (2017-10-10)
- FIXED: reverted jPlayer update, because it broke everything
0.41.0 (2017-10-09)
- FIXED: Installing CherryMusic via pip (thanks to rjsberry)
- IMPROVEMENT: updated jPlayer to 2.9.2, improved mobile compatibility (thansk to Max Leiter)
- IMPROVEMENT: Increased List Directory Item Size (thansk to Max Leiter)
- IMPROVEMENT: Made usernames case-insensitive (thanks to Max Leiter)
- IMPROVEMENT: Changed download zip archive name (thanks to Max Leiter)
0.40.0 (2017-04-08)
- FEATURE: Added option to select Album Art Source for manual searches
- FIXED: Server refused to start when not able to detect cherrypy version
- FIXED: No more blinking page title in Chrome
- FIXED: Corrected redirect after logout when for custom "server.rootpath"
- IMPROVEMENT: Using iTunes as default method to fetch album art
- IMPROVEMENT: Session duration can now be set in the config (thanks regisb)
0.39.1 (2016-10-09)
- FIXED: broken import
0.39.0 (2016-10-09)
- FEATURE: ... new feature here!
- FIXED:
- IMPROVEMENT:
0.38.0 (2016-09-17)
- FEATURE: Use file metadata when album art fetching (thanks mattss)
- IMPROVEMENT: Switch to iTunes API for album art fetching (thanks mattss)
- IMPROVEMENT: Better filtering of directory names when fetching album art (thanks mattss)
0.37.2 (2016-08-07)
- FIXED: more fixes for cherrypy detection (thanks Isgar)
0.37.1 (2016-07-30)
- FIXED: crash on start when not able to detect cherrypy version
0.37.0 (2016-07-09)
- FEATURE: support for reading MP4 tags
- FIXED: unicode crash when using cherrypy > 5.4
- FIXED: running the server directly on port 80
- FIXED: transcoding of OGG files with other samplerates than 44khz
- IMPROVEMENT: documented --deleteuser and --changepassword switches
- IMPROVEMENT: don't show remaining time in shuffle mode
0.36.0 (2015-11-21)
- FIXED: *Security* CVE-2015-8309 Download of arbitrary files by logged in users (thanks
feedersec)
- FIXED: *Security* CVE-2015-8310 XSS attack by logged-in users (thanks feedersec)
- FIXED: OGA files are now correctly recognized as ogg-audio files
- FIXED: Sorting tracks by track number correctly
- FIXED: Cannot load playlists containing single quotes
- FEATURE: allow reverse-sorting of playlists (thanks pando85)
- FEATURE: Enabled support of ffmpeg to decode ALAC files
- FEATURE: Added optional support for Pillow as Image Library
- IMPROVEMENT: disabled confirm-to-quit message for playlist downloads
- IMPROVEMENT: Updated TinyTag to version 0.10.1 (much faster ID3 parsing)
- IMPROVEMENT: Predictable selection of album-art images (thanks lzh9102)
- FIXED: Removed restrictions for passwords created in CLI
0.35.2 (2015-04-20)
- FIXED: server not starting on windows
0.35.1 (2015-04-10)
- FIXED: server not starting for python versions below 3.3
0.35.0 (2015-03-22)
- FEATURE: Opus transcoding support (thanks to qqueue)
- FEATURE: Support for media keys (thanks to cheese83)
- FIXED: File browser crash, when listing unreadable files (thanks to Tom Clegg)
- FIXED: Album art fetching breaking for very file paths (thanks to Che-Huai Lin)
- FIXED: Broken file listing if basedir does not end with a slash
- FIXED: Proper cover art display in safari (thanks to yukip)
- FIXED: Searching for terms ending in non ASCII-characters
- FIXED: keyboard shortcut settings for unrecognized keys (thanks cheese83)
- IMPROVEMENT: devel git version detection (thanks to MartijnRas)
- IMPROVEMENT: More transcoding quality settings (thanks to Druneau)
- IMPROVEMENT: Show first track after loading playlist
- IMPROVEMENT: Allow indexing of symlinked files
0.34.1 (2014-12-17)
- FIXED: Queue not visible due to outdated jPlayer
0.34.0 (2014-12-08)
- FEATURE: sorting of queue and open playlists via dropdown menu
- FEATURE: option to display active album art in player (thanks to @lzh9102)
- FEATURE: enable intertial scroll on mobile (thanks to @tkafka)
- FIXED: updated jPlayer to version 2.7.1 to fix playback on android
- FIXED: workaround for CherryPy (>=3.3.0) bug when releasing session locks
- FIXED: authentication for /serve resource (thanks to @susnux for spotting)
- FIXED: album art search works with new amazon and bestbuy web sites
- FIXED: udated tinytag to v0.7.2 to decode ID3 tags from latin1
- FIXED: admin GUI can again create new users as admin
- FIXED: restore "change password" functionality
- FIXED: various problems when filecache entries no longer exist on disk
- FIXED: some quirks in playlist age display were forcefully retired
- FIXED: server handles bad basedir configuration gracefully
- FIXED: updated jquery-ui to 1.11.1, does not ruin the js-compression anymore
- FIXED: localhost_only bind address respects server.ipv6_enabled setting
- IMPROVEMENT: transcoded tracks have a duration in player (thanks to @lzh9102)
- IMPROVEMENT: "folder" items are now easier to click
- IMPROVEMENT: request meta data for one track at a time to reduce server load
- IMPROVEMENT: expand CI tests to include Python 3.4 and PyPy3
- IMPROVEMENT: expand CI tests to more versions of CherryPy
- IMPROVEMENT: easier pypi releases via auto-conversion of README.md -> .rst
0.33.0 (2014-09-15)
- FEATURE: showing audio meta-data in file browser
- FEATURE: showing the number of files and folders inside each folder
- IMPROVEMENT: automatically hiding notifications after 5 seconds
- IMPROVEMENT: updated jplayer to version 2.6
- IMPROVEMENT: sorting playlists by age by default
- FIXED: mp3 playback on newer versions of chrome
- FIXED: search engine bug that degraded search quality immensely
- FIXED: incorrect length reported for long flac files
- FIXED: special characters in playlist names (thanks to marianosimone)
- FIXED: in browser setup not properly saving all the settings
- FIXED: config and data location in OSX
- FIXED: playback failure leading to too much recursion
0.32.0 (2014-04-05)
- FEATURE: built-in meta tag display in playlists for all platforms
- FEATURE: playlist scrolls to follow added an newly playing tracks
- FIXED: current track is always displayed in player area
- FIXED: album art cache works reliably
- IMPROVEMENT: better search for names containing umlauts
- IMPROVEMENT: generally improved UI usability
- IMPROVEMENT: stability and performance of album art fetching
- IMPROVEMENT: faster playlist loading
- IMPROVEMENT: faster loading of client through gzip compression
0.31.2 (2014-02-16)
- IMPROVEMENT: bump version number above 0.31.0
- IMPROVEMENT: update changelog
0.31.1 (2014-02-15)
- FEATURE: display track metainfo in web client
- FIXED: recover gracefully when update notifications can't be fetched
- FIXED: display default image when no album art found
0.31.0 (2014-02-11)
- FEATURE: export all playlists at once in a zip file (pls or m3u)
- FEATURE: force lower audio bitrate via transcoding (nice for mobile users)
- FEATURE: switch between list and cover view of folders
- FEATURE: Album art fetcher supports google image search (thanks to Lord-Simon!)
- FEATURE: ready for tag support in python 2 using mutagen (thanks to endlesscoil!)
- FEATURE: internationalization support for back-end
- FEATURE: German translation for back-end
- FEATURE: locate tracks from playlist in the file browser
- FEATURE: showing current track title in title of the browser tab
- FIXED: fixed zip export of playlist having wrong CRC (thanks to johnhe00!)
- FIXED: playlists were always saved as public upon first save
- FIXED: not showing hidden files anymore in file listings
- FIXED: repeat mode now repeats the whole playlist, instead of last track
- FIXED: album art fetcher works again with images from amazon
- IMPROVEMENT: improved mobile layout (nav bar padding and cover size)
- IMPROVEMENT: showing default folder image, when fetching album art fails
0.30.0 (2013-12-15)
- FEATURE: Change album art in media browser
- FEATURE: Play WMA files via live transcoding (needs ffmpeg)
- FEATURE: Update notifications for admins in web client
config key `update_notifications = [True] | False`
- FEATURE: `--version` switch for main script displays useful info
- FIX: !!! SSL config: relative paths are now relative to location of config file
- FIX: Resolve some unicode issues when playing tracks containing non-ASCII characters
- FIX: autoplay when adding first track now works for all playlists
- FIX: CherryMusic shuts down cleanly when parent process dies
- FIX: `media.basedir` can now handle trailing path separator
- FIX: Can change and delete playlists again
- FIX: Can delete users again
- FIX: Online indicator in admin dialog works again
- IMPROVEMENT: online tracking of test coverage at https://coveralls.io/r/devsnd/cherrymusic
- IMPROVEMENT: audioread failure no longer pretends to be a serious error
0.29.0 (2013-11-10)
- FEATURE: confirm dialog when closing browser while music is playing
can be disabled in the options dialog
- FEATURE: tracks names with a leading number are now always ordered correctly
- FEATURE: update notifications for server admins
- FIXED: resources not found after distutils install on debian based distros
- FIXED: tracks playing accidentally after sorting a playlist
- FIXED: playlists not being closed properly
- FIXED: playlists public/private state not changable
- FIXED: remove-played-tracks button resulting in jumping over tracks
- IMPROVEMENT: more code documentation
0.28.0 (2013-11-05)
- FEATURE: playlists can be searched by title or contained tracks
- FEATURE: playlists can be sorted by age, user or name
- FIXED: playing track not bein highlighted in playlist
- FIXED: in browser setup works with new bootstrap 3 layout
- FIXED: message of the day is bein displayed again
- FIXED: tray icon app crashing when displaying about dialog
- IMPROVEMENT: logout button is disabled when using auto-login (less confusing)
0.27.2 (2013-11-03)
- UPDATE: man pages reflect recent changes
0.27.1 (2013-11-03)
- HOTFIX: fixed download button not working
- FIX: shuffle and repeat buttons are visible now
0.27.0 (2013-11-02)
- FEATURE: brand new UI using bootstrap 3:
panels can be scrolled independently
redesigned media browser (unified playlist manager)
unified navigation & search bar
- IMPROVEMENT: faster client load times (less-css-compilation & js minification)
- FEATURE: downloading all tracks of a playlists as zip file
- IMPROVEMENT: limiting maximum size of downloadable playlists
- FEATURE: creation of playlists containing random tracks
- FEATURE: IPv6 support
- FEATURE: improved search for non-ascii characters
requires optional dependency "unidecode"
- FEATURE: new tray icon program "cherrymusic-tray" to start/stop CM comfortably
requires optional dependency "gobject-python"
- IMPROVEMENT: browser setup now shows details for missing dependencies
- UPDATE: updated jPlayer to version 2.4.0
- FIX: playback problems when using firefox on windows
- FIX: fetching of local album art works now as it should
- FIX: playback works now when CM is run with another rootpath but '/'
- FIX: playback in chrome randomly stopped, works now
+ a lot of other stuff, as always!
0.26.0 (2013-07-15)
- IMPROVEMENT: search quality, rare words are considered more important
- FEATURE: M4A transcoding support
- FEATURE: playlist saving menu
- FIX: playlist backward compability
- FIX: audioread path backward compability fix
0.25.1 (2013-05-14)
- FIX: Error on first startup when not using the browser setup
0.25.0 (2013-05-11)
- FIX: serving files with non-ASCII names (CherryPy monkey-patch)
- FEATURE: database versioning support
- FEATURE: busy indicator only occupies busy parts of the interface
- IMPROVEMENT: warn user about database updates before perfoming them
- FEATURE: CLI configuration override: --conf KEY=VALUE
- FEATURE: --port switch for overriding server port on start-up
- FEATURE: autoplay on adding first track to playlist (optional)
- FIX: minor corrections for various messages and help files
- FIX: correctly adding tracks to playlist after clearing it before
- FIX: preventing python 3 module stagger to be imported in python 2
- FIX: automatically indexing music on first start after setup
- FIX: playlist deletion button only visible for admins and owners
- FIX: track transcoding is determined on the fly (playlist portablity)
- IMPROVEMENT: switched to nosetest for automatic testing
- CHANGE: removed open search plugin
+ a bunch of internal changes, clean-up & stability
0.24.1 (2013-03-01)
- FIX: logout works also with previous request containing post-data
0.24.0 (2013-02-28)
- FEATURE: reworked UI using bootstrap (pretty & shiny!)
- FEATURE: new --setup switch enables first configuration in browser
- FEATURE: album art resizing (requires opt-depend ImageMagick)
- FEATURE: man pages!
- FEATURE: backward compatibility down to python 2.6
supporting now python 2.6, 2.7, 3.0+ and pypy
- FEATURE: users can change their password in the option menu
- IMPROVEMENT: search speed *and* quality greatly improved
- IMPROVEMENT: rewrite of transcoding module (works more reliably now)
- IMPROVEMENT: using HTML5 & Flash at the same time to reduce need to transcode
- IMPROVEMENT: playlist visibility can be changed in playlist browser
- IMPROVEMENT: users can change their passwords in the option menu
- IMPROVEMENT: flash block detection for opera
- IMPROVEMENT: better IPv6 support
- CHANGE: honoring XDG Base Directory Specification,
move the files like this to migrate:
$ mv ~/.cherrymusic/config $XDG_CONFIG_HOME/cherrymusic/cherrymusic.conf
$ mv ~/.cherrymusic/* $XDG_DATA_HOME/cherrymusic
- CHANGE: M3U & PLS download buttons hidden by default, can be reactivated in options
- CHANGE: removed unidecode from package, is now opt-depend
- FIX: Album art fetching doesn't stall interface anymore
- FIX: user online time display is now correct independent of the client time
- FIX: Loading or creating a playlist no longer interrupts playback
- FIX: Workaround for older cherrypy version on python 3.3
- FIX: users can no longer modify other user's public playlists
- FIX: invalidating session of deleted users
- FIX: local autologin works again
+ a lot more (like every time)!
0.23.0 (2013-01-23)
- FEATURE: New 2 Column Layout (Search and Playlists side by side)
- FEATURE: Manage multiple playlists in tabs
- FEATURE: OpenSearch for adding cherrymusic to browser search bar
- FEATURE: user changeable colors for the interface
- FEATURE: responsive design for mobiles (switch between playlist and search view)
- FEATURE: display remaining time for playlists
- FEATURE: added --dropfiledb switch for reinitialization of file db
- FEATURE: local cover art is loaded automatically
- FEATURE: remotely fetched cover art is now cached in ~/.cherrymusic/albumart
- FEATURE: customizable keyboard shortcuts
- FEATURE: advanced search syntax: prefixes "!f" and "!d" only files or directories respectively
- CHANGE: --update only performs an update anb does not start the server anymore
- CHANGE: renaming of config options:
dyndns_address -> dynamic_dns_address
enable_ssl -> ssl_enabled
- FIXED: execution from another work dir lead to not finding local resources
- FIXED: fixed jerky control buttons in webkit browsers
- FIXED: API accessible when not authenticated
- FIXED: SSL not working due to wrong IP parsing
- FIXED: symlinks being resolved not correctly
- FIXED: flashblock taken into account, users can activate player on demand
- FIXED: playlist duration longer than one hour not properly displayed
- FIXED: admin tab not visible anymore for non-admin users
- FIXED: being able to create new admin users from the GUI
- FIXED current track not being highlighted after changing anything in playlist
- UPDATE: updated jQuery to version 1.8.3
- DEPRECATED: Themes aren't used anymore
+ many more internal changes (dynamic db layout, decreased verbosity, etc.)
0.22.0 (2012-11-29)
- FEATURE: drag'n'drop sortable playlist
- FEATURE: partial updates. cherrymusic --update /path/to/changed/directory
- FEATURE: python 3.1 downward compatibility for debian users
- FEATURE: cherrymusic tries to automatically fetch album covers
- FEATURE: new layout for mobile devices
- FEATURE: --update switch now runs in background, immediate server start
- FEATURE: compactly listed folder paths are now autocompleted if listed
directory names overlap for more than one letter
- FEATURE: Added dependency installer, so that cherrymusic can be run on
any system without any preinstalled dependencies
- FEATURE: see online users in the admin panel
- FEATURE: delete users
- IMPROVEMENT: shuffle uses algorithm to play possibly unplayed tracks first
- IMPROVEMENT: Configuration interface overhaul. new or deprecated
options are now listed on startup
- IMPROVEMENT: search speed
- FIXED: removed configdb, proved to be unnecessary
- FIXED: jPlayer doesn't play mp3s when no codecs installed on server
- EXPERIMENTAL: cherrymusic can be started as a daemon using cherrymusicd
- UPDATE: jPlayer updated to version 2.2.0
0.21.1 (2012-10-26)
- IMPROVEMENT: updates run smoother, better progress report (server startup doesn't trigger update anymore)
- IMPROVEMENT: playlists remembered in session retain track order
- FEATURE: updates are triggered using the --update switch
- FEATURE: --newconfig switch creates a new config file (config.new) in the home dir
- FEATURE: show playtime of tracks and of playlist (requires ffmpeg)
- FEATURE: unfinished search terms also yield results
- IMPROVEMENT: search result weight algorithm takes partial matches into account
- FEATURE: auto-login on localhost
- EXPERIMENTAL: live transcoding of flac, ogg, mp3
- FIX: cherrypy not shutting down cleanly
- FIX: being able to create duplicate playlist names
- FEATURE: Made playlists deletable
- FEATURE: Added "update database" button in admin panel
- FEATURE: Added "remove played tracks" button
- FIX: browser showing compact entries multiple times
- FIX: bug that prevents listening to music when no codec is installed on host
- FEATURE: exporting playlists as PLS or M3U (take this, edna!)
- + MANY MORE...
0.2.0 (2012-09-18)
- FEATURE: https encryption support
- FEATURE: option to listen only on localhost
- FIX: config and databases now reside in the user's home directory
- FEATURE: savable playlists
- FIX: added GPL license
- FEATURE: salted user passwords
- FEATURE: admin user can be created inside web-interface on first start
- FEATURE: playlists are periodically saved in the session, so they're
not lost when browser or tabs are closed etc.
- FEATURE: theming support
- FEATURE: configurable server port
- FEATURE: admin panel for creating new users
- FEATURE: welcome screen for CLI and web-interface
0.1.0 (2012-08-16)
- Initial Release