4 0.17.x introducing AM::Playlist + AM::Time
5 0.16.x utf-8 support + introducing mpd-dynamic script
6 0.15.x introducing AM::Collection
7 0.14.x introducing AM::Items
8 0.13.x rewrote connection mechanism
9 0.12.4 adoption by jerome quelin & quick fixes
10 0.12.0 adoption by nicholas j humphrey & first release on cpan
11 0.10.0 adapting to evolving mpd
12 [...] ? (no information)
13 0.1.0 initial release by tue abrahamsen
21 - new methods AM::Collection::all_songs()
23 0.17.2 Sun Apr 8 15:35:43 CEST 2007
24 - introducing AM::Stats for better encapsulation
26 0.17.1 Sun Apr 8 12:23:53 CEST 2007
27 - introducing AM::Time for better encapsulation
28 - thus, removed get_time_info() and get_time_format()
29 - test coverage up to 100% \o/
31 0.17.0 Fri Apr 6 16:54:07 CEST 2007
32 - introducing AM::Playlist for better segregation of playlist handling
33 - completed tests to cover all playlist operations, AM is now 95.1% covered
37 0.16.2 Tue Apr 3 19:02:29 CEST 2007
38 - utf-8 support generalized
40 0.16.1 Mon Apr 2 18:26:17 CEST 2007
41 - new internal _cooked_command_*() methods, allowing for better code
42 factorization - and thus, better code coverage (100% achieved for
43 am::collection, 89.3% overall)
45 0.16.0 Thu Mar 29 19:04:34 CEST 2007
46 - script to listen your music endlessly: mpd-dynamic
50 0.15.4 Tue Mar 27 18:42:58 CEST 2007
51 - AM::Test more robust regarding fake mpd startup
52 - AM::Test quicker if no tests performed
53 - new methods in AM::Collection:
54 . songs_with_filename_partial()
55 . songs_by_artist_partial()
56 . songs_from_album_partial()
57 . songs_with_title_partial()
59 0.15.3 Wed Mar 21 18:08:06 CET 2007
60 - requiring perl 5.8.x minimum
62 0.15.2 Tue Mar 20 17:24:59 CET 2007
63 - fixed bug #25553 (on rt.cpan.org)
65 0.15.1 Sun Mar 18 19:06:57 CET 2007
66 - added Readonly as prereq
68 0.15.0 Sat Mar 17 17:49:50 CET 2007
69 - implementation of Audio::MPD::Collection: this class will act as the entry
70 point to look up in mpd's collection
71 - thus, following AM methods removed (see AM::Collection for the replacement):
78 - now that AM::Collection is here, AM's test coverage is up to 82.5% \o/
82 0.14.0 Sat Mar 17 13:29:57 CET 2007
83 - implementation of Audio::MPD::Item: instead of returning some random hash
84 reference, Audio::MPD now returns AMI objects.
86 . get_current_song() -> current()
87 . get_song_info() -> song()
88 . get_song_info_from_id() -> songid()
89 . get_title() -> AMI::Song::as_string()
90 . pl_changes() -> pl_changes()
91 - pl_changes() now return an array ref instead of a hash with positions as key
92 - test coverage of Audio::MPD up to 66.5%
96 0.13.5 Thu Mar 8 20:22:32 CET 2007
97 - get_urlhandlers() renamed to urlhandlers()
98 - seekid() defaults to current song
100 - test coverage of Audio::MPD up to 36.1%
102 0.13.4 Tue Mar 6 20:05:21 CET 2007
103 - new method password() to change mpd password
104 - bug fix in deleteid() (was issuing "delete") and crop() (should be done in
105 reverse order to keep mpd happy)
106 - test coverage of Audio::MPD up to 36.1%
108 0.13.3 Sun Mar 4 19:30:24 CET 2007
109 - bug fix on volume() method
111 0.13.2 Sun Mar 4 10:17:50 CET 2007
112 - Makefile.PL now uses ExtUtils::MakeMaker instead of perverting Module::Builder
113 - bugfix in play() / playid()
114 - testing Audio::MPD::Status up to 100%
115 - testing Audio::MPD = 24.5%
118 - status() now returns an Audio::MPD::Status object, for better encapsulation
119 - added dependancy on Class::Accessor
121 0.13.0 Fri Mar 2 12:55:38 CET 2007
122 - connection completely reworked to get rid of the most obvious problems
123 note: this does not mean that we're completely clean, but at least it's
124 better than what it was.
125 - is_connected() and close_connection() are no more needed, and thus removed
126 - error handling is now done via die - get_error() is gone
127 - play(), delete(), move(), get_song_info(), seek() & swap() do not accept a
128 third fromid parameter anymore
129 - pause() now toggle pause status if no parameter is sent
131 . kill_mpd() -> kill()
132 . get_server_version() -> version()
133 . set_fade() -> fade()
134 . set_random() -> random()
135 . set_repeat() -> repeat()
136 . set_volume() -> volume()
137 - new methods: stats(), status()
138 - delete() and deleteid() can take more than one song to delete
142 0.12.4 Thu Jan 25 21:52:05 CET 2007 [JQ]
143 - grouped pod in sections for easier reading
144 - corrected pod typos here and there
145 - added contact information
146 - new tests for pod correctness and pod coverage
147 - added missing pod for 3 subs
149 0.12.3 (Nicholas J Humfrey)
150 - Added Makefile.PL support
152 0.12.2 (Nicholas J Humfrey)
153 - Fixed bug in parsing parmeters in pause()
155 0.12.0-rc7+njh (Nicholas J Humfrey)
156 - Moved $sock and @playlists into object so that you can talk to
157 multiple MPDs in the same script.
158 - Added Module::Build based build/install system
159 - Changed namespace to Audio::MPD so that it can be added to CPAN
161 - Changing 'END' handler to 'DESTROY'
162 - Changed <$sock> to $sock->getline
163 - Changed print $sock "foo" to $sock->print("foo")
164 - Corrected pause() so that it didn't use depricated lack of argument
165 - Added optional path parameter to updatedb()
168 - better password-handling, including possibility to connect to
169 password@mpdhost (William Pettersson)
170 - made get_time_info work, and added more to the output
171 - made ALLOW_TOGGLE_STATES 1 by default
174 - get_song_info() now uses current song, if none is specified
175 - mpc.pl now says that 'seek' is in seconds instead of percentage
176 - Fixed bug in close()
177 - Removed warn() in _get_playlist()
178 - Made MPD.pm more backwards compatible (Martin Stolle)
179 - Added get_current_song_info() (Martin Stolle)
180 - Made internal sub _process_feedback() more robust (Martin Stolle)
181 - Update get_title() to be more flexible (Martin Stolle)
183 0.12.0-rc5 (No more fires!-release)
184 - Fixed bug in save() (Laurent Monrouzies)
185 - Removed annoying line in set_random() (Dale Francum)
186 - Added get_time_info (Thanks Dale Francum)
187 - Removed 'use Data::Dumper;' from mpc.pl and MPD.pm
188 - Added support for new MPD-functions:
189 'outputs', 'enableoutputs', 'disableoutputs', 'commands' and 'notcommands'
190 - Fixed bug in get_title() where old title would get returned
191 - Fixed bug where playlist was not updated (hannes)
192 - Added playlist_changes() so clients can update their playlist (hannes)
193 - Updated _get_playlist() (hannes)
196 - Old bug where $playlist[0] contained undef removed again :)
197 - crop() function added (removes all songs but the playing)
198 - Fixed some bugs and errorhandling in mpc.pl
201 - (almost) total rewrite of module
204 - Changed default port to 6600
205 - Removed UNPAUSE_ON_PLAY setting, as this is now default in MPD
206 - Added urlhandlers()
209 - Bugfixes in mpc.pl (playlist() and volume())
210 - Updated ACK-error handling (geterror() changed, seterror() added)
211 - Add 'plchanges'-support in getplaylist()
212 - Added $config{'ALLOW_TOGGLE_STATES'}
213 - Added deleteid() / moveid() / playid() / seekid() / swapid()
214 - Removed deprecated 'unpause-on-play'-code
222 - Major speedup. Playlist was fetched way too many times
223 - Another major speedup. Playlist is now only fetched when needed!
224 - Added %config, for changing default behavior
225 - Old $number-- in play() was removed.
226 - Stupid bug where last song was not saved in @playlist removed
227 - Rewrote searchadd() to utilize 'command_list_begin'/'command_list_end'
229 - Fixed bug where search() didn't return the last song found
230 - Small rewrite in setrepeat() and setrandom()
232 - Fixed bugs and bugs and bugs and bugs
234 - Rewrote all pod-documentation
236 - Removed 'unfinished subs' and 'todo'
237 - Probably more stuff
240 - Changed @playlist syntax ($pl[song-number]{info-to-get} eg. $pl[42]{'file'})
241 - Removed deprecated getsonginfo()
242 - Moved gettitle() and gettimeformat() to 'Custom subs'
243 - Altered gettitle()'s errorhandling a bit
246 - Made getsonginfo() return a hash instead of an array
247 - Streamlined add()/delete()/move()/swap()
248 - Made (almost) all functions undef on succes and 1 on error. Last error can
249 be retrieved by $self->geterror()
250 - search() now accepts filenames too (thanks sbh)
251 - delete() can take ranges (thanks sbh)
252 - Added the 'Custom functions'-part
253 - Added searchadd() (thanks sbh)
258 - Fixed bug where last song on playlist was not present
259 - Made getstatus() call playlistinfo if playlist had changed
260 - Implemented getsonginfo() for returning information from @playlist (Thanks msells)
261 - Added $self->{module_version}
262 - Empties @playlist, when renewing it
263 - A bit of optimizing and cleanup around getplaylist (Thanks msells)
266 - Fixed error in add()-comments
267 - Moved $host and $port parameter to new() - It finally works!
270 - Added nextinfo() and changed lsinfo() and listallinfo()
271 - Changed version-numbering to fit MPD standards