Hi devs, I also disagree with that change. The playlist operator should remain available in the most basic setup. I'll outline here the natural way to fix the situation, using the same architecture as usual. It was time to do something here anyway, since more formats are getting supported and playlist() wants to get something out of that work too.
We could have a playlist_decoder module, to which plugins (stored in the playlist_formats directory) could register. The plugins would be independent, and notably the podcast/xspf/smil/.. plugins could be turned off easily. The playlist_decoder could offer a decoding function with an optional content-type parameter for forcing the format (input.http() has such information), but would also be able to auto-detect the format for an operator like playlist(). The easy way to do so would be to try plugins one by one until one accepts the file, which implies that the most structured formats (xml,pls) should come first. The playlist would probably have to be passed as a string for generality. The output could simply be a list of (metadata,uri). If anyone wants to do that, of course I agree. Other names for modules/directories are of course possible, but please keep it concise and meaningful. -- David
