Help - Search - Members - Calendar
Full Version: foo_playlist_tree
Hydrogenaudio Forums > Hosted Forums > foobar2000 > 3rd Party Plugins - (fb2k)
Pages: 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
cwbowron
QUOTE(ephemeros @ Jan 17 2005, 12:50 PM)
I'm sorry.. it doesn't..:
*


poop. I was afraid of that... try getting the most recent foo_playlist_tree.zip version... I may have fixed what the problem was...
ephemeros
QUOTE(cwbowron @ Jan 17 2005, 07:54 PM)
poop.  I was afraid of that... try getting the most recent foo_playlist_tree.zip version... I may have fixed what the problem was...
*


Thanks it does smile.gif
Some of my even most basic queries stopped working though, i.e. $node(Pop) (foo_playlist_gen format).. other queries, both foo_playlist_gen and regular, survived..
cwbowron
QUOTE(ephemeros @ Jan 17 2005, 01:02 PM)
QUOTE(cwbowron @ Jan 17 2005, 07:54 PM)
poop.  I was afraid of that... try getting the most recent foo_playlist_tree.zip version... I may have fixed what the problem was...
*


Thanks it does smile.gif
Some of my even most basic queries stopped working though, i.e. $node(Pop) (foo_playlist_gen format).. other queries, both foo_playlist_gen and regular, survived..
*


Try grabbing the latest version I just uploaded and use single quotes around the $node part now... '$node(Artist)' instead of $node(Artist)... The string will get evalulated by the title formatting now before its evaluating by playlist tree due to some rearranging I had to do to accomodate some other requests... You may have to do the same with $drops... sorry for the inconvience...
jkwarras
Ok, everything works now smile.gif
I can get now a query based in $playing() information even if the tag doesn't exist, thanks you.

I've also tried the background refresh, I've get one crash but now it seems to work, but it also seems to act weird because it adds nodes without any specific sense all over the place (at level 0) blink.gif

Some issues:

- With %tag% in EPG
NOT %play_counter% MISSING (doesn't work)
while
NOT play_counter MISSING (work)

- With ''
'($sub(%systemdate%,%added%) LESS 101) AND ($sub(%systemdate%,%added%) GREATER -1)'

without ' (before) it doesn't works
with ' (now) it works

I guess it has to do with the new way your component handle the formatting strings.
cwbowron
QUOTE(cwbowron @ Jan 17 2005, 01:25 PM)
QUOTE(ephemeros @ Jan 17 2005, 01:02 PM)
QUOTE(cwbowron @ Jan 17 2005, 07:54 PM)
poop.  I was afraid of that... try getting the most recent foo_playlist_tree.zip version... I may have fixed what the problem was...
*


Thanks it does smile.gif
Some of my even most basic queries stopped working though, i.e. $node(Pop) (foo_playlist_gen format).. other queries, both foo_playlist_gen and regular, survived..
*


Try grabbing the latest version I just uploaded and use single quotes around the $node part now... '$node(Artist)' instead of $node(Artist)... The string will get evalulated by the title formatting now before its evaluating by playlist tree due to some rearranging I had to do to accomodate some other requests... You may have to do the same with $drops... sorry for the inconvience...
*


I just uploaded a new version that works around this, so you dont need quotes around $node and $drop now...
ephemeros
QUOTE(cwbowron @ Jan 17 2005, 09:58 PM)
QUOTE(cwbowron @ Jan 17 2005, 01:25 PM)
Try grabbing the latest version I just uploaded and use single quotes around the $node part now... '$node(Artist)' instead of $node(Artist)... The string will get evalulated by the title formatting now before its evaluating by playlist tree due to some rearranging I had to do to accomodate some other requests... You may have to do the same with $drops... sorry for the inconvience...
*


I just uploaded a new version that works around this, so you dont need quotes around $node and $drop now...
*


Thanks and of course np, I'm a very happy beta tester cool.gif

EDIT: seems like $playing() needs a workaround too..
XanDaMan
Since its been declared as 'not recomended' and all that, any chance of a version that does just folder monitoring, nothing else?
jkwarras
QUOTE(XanDaMan @ Jan 18 2005, 03:12 AM)
Since its been declared as 'not recomended' and all that, any chance of a version that does just folder monitoring, nothing else?
*

I don't see the need of a version that will only do what you want. Imagine I come and request a version that only does 'dynamic queries' and other user request a version that only does this and that, etc... wink.gif

In case cwbowron will find the need of release a stable version it's up to him to decide what features must be included in a stable version and what shouldn't.
cbowron
I'm out.

No more public updates, no more public requests.

Send me an email if you have a feature request or a bug report. I'm through with this forum.

You can thank your friendly foobar2k moderators.
upNorth
Starting your post with "I'm out" is kind of funny when your post count equals 1... smile.gif

Yeah, I know...
hotzenpl0tz
Too bad, from a users standpoint the features of the plugin really made it exceptional. But without knowing the exact backgrounds, i will be the last to judge this one ...
jkwarras
QUOTE(cbowron @ Jan 18 2005, 06:15 AM)
I'm out.

That's a real shame, I'm really sorry to hear that sad.gif As other said your component, from a user point of view is really cool and has really powerful features that non other has. I'll respect your decision and thanks you from your effort, I've rarely see any developper so devoted and be willing to hear user requests/suggestions around here. And that's a real shame for the people that uses fb2k.

QUOTE(cbowron @ Jan 18 2005, 06:15 AM)
Send me an email if you have a feature request or a bug report.  I'm through with this forum.


Anyway, I don't know what happened, just what I've read around this forum. But I'll hope that you'll continue developping your plugin even outside this forum.

QUOTE(cbowron @ Jan 18 2005, 06:15 AM)
You can thank your friendly foobar2k moderators.
*

Yeah....
stroke
QUOTE(cbowron @ Jan 18 2005, 04:15 PM)
I'm out.

No more public updates, no more public requests.

Send me an email if you have a feature request or a bug report.  I'm through with this forum.

You can thank your friendly foobar2k moderators.
*


i simply hope that this is a troll, that cwbowron didn't quit.
the moderators requestet not to recommend the plugin because it is unstable, and probably they've got good reasons to do so, i experienced a few problems with playlist tree, but decided that i can live with them. anyway they didn't burn the bridges, the plugin is welcome when bugfree & we're free to discuss it in its thread. cwbowron i hope we'll hear from you on that issue, pls
ephemeros
WTF is happening around here? Why always politics going on in the background? sad.gif

cwbowron, THANKS!
You did a lot for us.. I hope not all hope is lost.
Thanks again,
eph

(edit: typo)
marcomk
QUOTE(cbowron @ Jan 18 2005, 03:15 PM)
I'm out.

No more public updates, no more public requests.

Send me an email if you have a feature request or a bug report.  I'm through with this forum.

You can thank your friendly foobar2k moderators.
*


I really hope this is a troll...

cwbowron, if anything happened that upset you, please don't give up. I really want to see a playlist tree v. 1.0!!!

Thanks for all your work! wink.gif
mazy
i second marcomk's post ... please, continue your work on this component and stay in here ...
jkwarras
QUOTE(marcomk @ Jan 18 2005, 12:12 PM)
cwbowron, if anything happened that upset you, please don't give up. I really want to see a playlist tree v. 1.0!!!
*

Me too....please? rolleyes.gif
Rommel
QUOTE(marcomk @ Jan 18 2005, 10:12 PM)
I really hope this is a troll...
*


he's a troll! mad.gif

cbowron
Group: Members
Posts: 1
Joined: Today, 04:10 PM
Member No.: 19142

cwbowron
Group: Members
Posts: 198
Joined: 16-November 04
From: East Lansing,MI
Member No.: 18153
marcomk
QUOTE(Rommel @ Jan 18 2005, 10:59 PM)
QUOTE(marcomk @ Jan 18 2005, 10:12 PM)
I really hope this is a troll...
*


he's a troll! mad.gif

cbowron
Group: Members
Posts: 1
Joined: Today, 04:10 PM
Member No.: 19142

cwbowron
Group: Members
Posts: 198
Joined: 16-November 04
From: East Lansing,MI
Member No.: 18153
*


Unfortunately, I don't think so. sad.gif
jkwarras
QUOTE(marcomk @ Jan 18 2005, 02:05 PM)
Unfortunately, I don't think so.  sad.gif
*

Me either ph34r.gif
I suspect he re-register under a similar name to post. I don't know.
mazy
well, read changelog.txt on his site ...

i really hope this could settle down
Silverbolt
QUOTE(Rommel @ Jan 18 2005, 02:59 PM)
he's a troll!  :angry:
*

Check cwbowron's website, particularily the updated changelog. Don't wish to join into any speculation, but it is unfortunate to see someone leave the forum dev pool on such terms. Thanks for the existing work, regardless.
marcomk
QUOTE(mazy @ Jan 18 2005, 11:17 PM)
well, read changelog.txt on his site ...

i really hope this could settle down
*


Maybe we should do something about it...

I sent an email to cwbowron to try to convince him to change his mind. Some other people could do the same...
Maybe we also have to invite the moderators to state precisely which are the requirements to make playlist tree an officially supported component. I'm sure cwbowron would be happy to fix the issues...
I know other components that don't work perfectly yet and still they were treated in a better way. A developer like cwbowron who devoted so much time to this project deserves more respect I suppose. At least some more diplomatic efforts. wink.gif
mazy
well said, marcomk, i agree with you on everything ...
DotNoir
First of all, he was suggesting his component to every innocent victim stopping here and asking if something could be done. And this component known to be a bit problematic, it's in no ones interested to introduce people new to foobar2000 to a broken component. Maybe if he would've fixed bugs with all his time he was implementing new features he might have gotten a working component, but at this point being even pre-beta and suggesting it everywhere he did more bad than good to the community.

Second of all, if he really did register another account he violated TOS #12, this leading to the fact that he will most likely not be able to join HA anymore
marcomk
QUOTE(DotNoir @ Jan 19 2005, 12:37 AM)
First of all, he was suggesting his component to every innocent victim stopping here and asking if something could be done.
*


Where are all these poor victims being hurt by evil cwbowron's component? If you read this thread, there are just happy betatester/users posting. Maybe the victims were too badly hurt to post...

QUOTE(DotNoir @ Jan 19 2005, 12:37 AM)
Maybe if he would've fixed bugs with all his time he was implementing new features he might have gotten a working component, but at this point being even pre-beta and suggesting it everywhere he did more bad than good to the community.
*


I agree on the fact that he could have fixed some bugs before implementing new features, but I strongly disagree on the rest of your statement. He never claimed that his component was in a final stage. If there was some concern for the possible 'victims', a warning in the first post could have been enough... He could still fix the remaining issues in a week or so at cwbowron's rate of development.

QUOTE(DotNoir @ Jan 19 2005, 12:37 AM)
Second of all, if he really did register another account he violated TOS #12, this leading to the fact that he will most likely not be able to join HA anymore
*


Sorry, I can't share the same fascination for burocracy. wink.gif
ssamadhi97
foo_playlist_tree was pretty unstable right from the beginning. foosion pointed out several issues repeatedly, the component was put on the list of known problematic components a month ago for a bunch of these issues, but unfortunately we haven't exactly seen an overwhelming effort from cwbowron's side to address them. marcomk is right, he should indeed have dedicated some time to getting these things out of the way first, instead of adding lots of new features (and probably a bunch of new bugs as well tongue.gif).

cwbowron got himself a warning from Peter when advertising his component in this thread (the "offending" post in question has been removed) - if I remember correctly, he even called it a "stable beta", which is apparently not the case. Looks like said warning was the cause for cwbowron to "quit".

QUOTE(marcomk @ Jan 18 2005, 11:37 PM)
Maybe we also have to invite the moderators to state precisely which are the requirements to make playlist tree an officially supported component.
*

If by "officially supported" you mean "moderators won't prevent advertising of it to newbies", addressing the issues foosion posted about in this thread (and documenting this effort) would be a good idea. It's not like the added stability etc wouldn't benefit the plugin itself as well.

Not actively promoting the plugin while it's still in unstable / alpha state would be clever too.
Exander
Ok, I'm stupid.
I can't figure out how to get my folders to show up in the playlist tree.

Anyone?
jkwarras
QUOTE(marcomk @ Jan 18 2005, 02:37 PM)
Maybe we should do something about it...

I sent an email to cwbowron to try to convince him to change his mind. Some other people could do the same...

I'll also try to send him an email. Edit: I've already did.

QUOTE(marcomk @ Jan 18 2005, 02:37 PM)
Maybe we also have to invite the moderators to state precisely which are the requirements to make playlist tree an officially supported component. I'm sure cwbowron would be happy to fix the issues...

I know that some problems where there, and foosion pointed them out when he post here that the component was in the unrecommended list, but I also think that the claim that it' sunstable because this topic has a lot of crash report isn't fair. Of course we get crashes because it's a non-stable component, we know that, but almost everytime we get a crash and report it, he fixed the crashes immediately.

About the other stuff (violation copyright and other development concepts) I can't talk because I don't have the knowledge to talk about that, but in any case he always asked for help when he didn't have the knowledge to code something, but I've just see what I will call a general indifference from other coders around here. I'm sure they have their reasons, but as a simple user, that's what I've seen, and that's shame becasue if someone wants to do something, has the willing and the time to implement features, but he doesn't get the support and respect from the people that he really needs, things goes wrong and it hurts the people at the base: users.

He's the only one that has come closest to (or at least tries to get closes to) a Media Library for fb2k, he has made this effort and that's why it get interest from users. That's why some of us recommended it, ebcause we are excited for such a powerful way of managing our music collection. Some of us were around here happy beta-testing it, even if we knew it wasn't stable. If we get a crash, we report and if he can't he fixes it, if he can't he doesn't and ask for soe help. That's what I call a community spirit. But I didn't see it from a developper point of view, and that's a real shame.

QUOTE(marcomk @ Jan 18 2005, 02:37 PM)
I know other components that don't work perfectly yet and still they were treated in a better way. A developer like cwbowron who devoted so much time to this project deserves more respect I suppose. At least some more diplomatic efforts.   wink.gif
*

That's exactly what I'm talking about. I've seen exactly the same thing, and I'm not suprised at all he decided to quit the forum and he felt unconfortable. The fact that a pinned post from the fb2k moderators asking people to not recommend the component wasn't the most reasonable way to achieve that. Isn't more logical to post it in here instead of letting know everyone and pointing by the finger the developper? The exactly same post inside this topic will have make much more sense and wouldn't have hurt anyone feelings. After all, it was already in the unrecommended list very visible at the top of the 3 party plugins forum. As an user I can understand that if something isn't stable and/or well designed we should not recommend it. I don't think anyone isn't able to understand it.

QUOTE(DotNoir @ Jan 18 2005, 03:37 PM)
First of all, he was suggesting his component to every innocent victim stopping here and asking if something could be done.
[...]but at this point being even pre-beta and suggesting it everywhere he did more bad than good to the community.

Are you sure this is true? I check this forum everyday and I didn't see cwbowron recommend personally his component to anyone. We, the users, have suggested it.

QUOTE(ssamadhi97 @ Jan 18 2005, 04:47 PM)
cwbowron got himself a warning from Peter when advertising his component in this thread (the "offending" post in question has been removed) - if I remember correctly, he even called it a "stable beta", which is apparently not the case. Looks like said warning was the cause for cwbowron to "quit".

I really wonder why this post in question has been removed and isn't in the recycle bin rolleyes.gif

Having said that, I think it's really a question of diplomaty and the way of handle these things. Everyone can make mistakes. Everyone has his own point of view. But at the end we get that an excellent and promising component that could have been a Media library isn't probably going to be developped anymore.

Edit: Added link to post where cwbowron state that his plugin is in development and not for geenral usage.
upNorth
I admit that I don't know the whole story, and didn't find this component very useful myself, but I still have an opinion to share.

If cwbowron can't keep up to, or fail to show enough interest in pursuing the standard Peter and developers close to him, expects, then I believe this community is better off without cwbowron as a developer in the long run. Anything that unnecessarily increases the amount of crashes, confusion and problems for new users, should be kept to a minimum. If not, I'm afraid this community will suffer and also make it less desirable for other developers to create new components, because they will have to deal with alot of problems caused by such problematic components (foo_tunes is probably a good example).
mazy
i'm sick of repeated comparsions to foo_tunes. foo_tunes is old project which didn't really get off alpha or beta stage ... though it supported features that foo_ui_columns didn't or doesn't have ...

and as for confusion of newcomers to foobar - that's whole different story, we can see it all the time that ppl are requesting / complaining about things like "winamp's volume", "id3v2 tags not written / read / deleted", "enqueue / send to playlist" etc.

foobar is simply way to big and customizable, with many 3rd party plugins in all kinds of development stages and rather poor (or lack of) documentation. for proper use of some plugins or features you would have to read multiple pages long threads or even better follow their development.

--

what we see here, concerning foo_playlist_tree, is rather being premature and taking premature actions on both sides. some ppl here were hostile or unenthusiastic to foo_playlist_tree from the beginning and stayed so.

if i could, i would ask all sides to be a little bit more helpful, calm down and leave emotions aside ...
jkwarras
QUOTE(jkwarras @ Jan 19 2005, 03:21 AM)
QUOTE(marcomk @ Jan 18 2005, 02:37 PM)
Maybe we should do something about it...

I sent an email to cwbowron to try to convince him to change his mind. Some other people could do the same...

I'll also try to send him an email. Edit: I've already did.
*

I've get an answer from cwbowron. He wanted me to post the entire email message so here it's:

QUOTE(Christopher Bowron <chris@bowron.us>)
I appreciate your kind words and your support.  I have decided to
continue development on the plugin, but to do so outside the confines of
the Hydrogen Audio Foobar2000 Forum.  I have created a public forum on
my website which is at http://www.bowron.us/forum/.  Please spread the
word and let people know the forum address and that development has not
stopped on the plugin.

You are right, most of the time the fb2k forum was a great and friendly
community.  The problem is the moderators and the foobar2k development
team are not.  Musicmusic, Phi and tboehrer were all helpful in the
development of my program, but people like Foosion, Picmixer and zZzZzZz
ruin it.  Most of the allegations they make in the known problematic
components are no longer true and I have emailed zZZZZZZZzzzfgdafasd in
defense of them and no changes were made.  The final two straws were the
suspension of my account for recommending my plugin and the moderation
of the discussion thread to include the subtitle "Highly Unstable".

Thank you for all your great suggestions on the plugin and I hope that
you will continue to use it and suggest new features and report bugs.
Thanks.
ssamadhi97
jkwarras: what you fail to mention (and he seems to be concealing it as well) is that the component was only added to the list of problematic components after several issues that were regarded as critical remained in it for well over a month.

Here's "our" (fb2k moderation team) perspective: Several issues were reported immediately after the initial release on Nov 16 and remained unfixed until it was put on the list on Dec 22. And it's not like he didn't get several hints on how to fix these issues. It looks like he did not really pursue to remedy these problems before administrative action was taken (namely putting his component on the blacklist) to force him to start doing something about it.

As for the "general indifference from other coders around here" when asked for help, you need to realize that offering coding help beyond posting general pointers and answering specific questions (which was done) is a very time-consuming thing to do. I don't think dedicating copious amounts of time to acquainting oneself to foreign code and fixing it is something that can be expected from everyone.

QUOTE(Christopher Bowron <chris@bowron.us>)
You are right, most of the time the fb2k forum was a great and friendly
community.  The problem is the moderators and the foobar2k development
team are not.  Musicmusic, Phi and tboehrer were all helpful in the
development of my program, but people like Foosion, Picmixer and zZzZzZz
ruin it.
*


Now this is almost funny. foosion filed several problem reports in this thread and posted hints on how to solve the issues he reported. LONG before playlist_tree was put on the list of problematic components, too. Seeing cwbowron's rudeness towards him in this email is shocking, to say the least. Same goes for zZzZzZz, who did not only write the player and generally provide tons of sample code in the SDK, but also a good deal of the code playlist tree was based on to begin with (AlbumList).


Oh yes, resorting to name calling was not very appropriate from cwbowron's side. I wouldn't mind trying to iron out this conflict, but such things definitely don't make that easier.
jkwarras
QUOTE(ssamadhi97 @ Jan 19 2005, 09:37 AM)
jkwarras: what you fail to mention (and he seems to be concealing it as well) is that the component was only added to the list of problematic components after several issues that were regarded as critical remained in it for well over a month.

Just to make sure: I'm not cwbowron's defender. Even if I don't know anything about coding I can understand that if he didn't solve several issues that fb2k moderation team considered as critical, after a month it's put under the problematic list. Most of these issues seems to have been solved but I'll not comment about that because I don't have the knowledge.

QUOTE(ssamadhi97 @ Jan 19 2005, 09:37 AM)
As for the "general indifference from other coders around here" when asked for help, you need to realize that offering coding help beyond posting general pointers and answering specific questions (which was done) is a very time-consuming thing to do. I don't think dedicating copious amounts of time to acquainting oneself to foreign code and fixing it is something that can be expected from everyone.

I can also understand it. I didn't mean that no one helped him, but maybe users were more excited than developers, after all I'm not the only one who felt that. I guess that some users wants a media library and this component is what comes closer at the moment for a lot of us, but I guess that sometimes users and developers have different opinions/preferences on what's cool and what's not, and what's really necessary and what's not. And I guess we fail to see if something is well designed or not, after all we use it, but (no offense) we don't really care if it's well designed or not, we just use it wink.gif So, I guess that some people would have expected more developers interest in that component, but obviously it's up to everyone to be willing to spend free time on something and to be interested in it smile.gif

QUOTE(ssamadhi97 @ Jan 19 2005, 09:37 AM)
Oh yes, resorting to name calling was not very appropriate from cwbowron's side. I wouldn't mind trying to iron out this conflict, but such things definitely don't make that easier.
*

Really, and that's my own opinion, I really think that if what cwbowron told me is right, suspending his account just for recommending once his component was just what makes things go the wrong way. After all I've recommended this plugin in this forum several times, same goes for other members... I wouldn't call it very delicate, I mean the reaction is very simple to predict rolleyes.gif

Well, I'll get out of the way, hoping that both parts will calm down a little. Only time will tell...
marcomk
ssamadhi97,

I can see your point and I highly respect the work of zZzZzZz and Foosion. If foobar is such a good player it is probably due not only to their skills but also to their rigour and high standards. I just believe this situation wasn't managed in the nicest possible way - and cwbowron had his own reaction. That's it.

Anyway, let's see it in these terms now... At least for a while, Playlist tree will be discussed and developed far from this forum, out of the reach of 'inexperienced users'. As a foobar's user and enthusiast, I just want to ask you all to be open to re-evaluate the component without prejudice as soon as it will reach a final stage. I think the community in general will benfit from this.

I would also invite all the users and coders interested in Playlist tree (which is a very interesting and ambitious project, why is it so difficult to admit it?) to join the new forum. There's no need to be divided in opposite parties. Personally, I think I will be active on both boards. wink.gif
Canar
I believe the action taken in this situation was appropriate. It shows that the foobar2000 community is concerned with the quality of the components produced by it. It is this quality that seperates the foobar2000 community from the Winamp community. Winamp's API is loaded with bugs and peculiarities, as are its plugins. foobar2000's API is clean, kept up-to-date, and has bugs/peculiarities fixed as they crop up. I would expect the same from the component development and maintenance division. The other developers have certainly followed that belief.

(foosion put what I had here much more succinctly. Please read his post below.) It's sad to see that he decided to ignore the suggestions from others here and quit participating in this forum, but that's his decision, I suppose.
ssamadhi97
To prevent further speculation...
QUOTE(jkwarras @ Jan 19 2005, 08:29 PM)
Really, and that's my own opinion, I really think that if what cwbowron told me is right, suspending his account just for recommending once his component was just what makes things go the wrong way.
*

It's only partly correct: that was a very limited two-day temporary suspension based on the premise that his component is still on the list of known problematic components for good reason (which I'm personally not sure about). The thread title was edited and the warning sticky was posted on the same premise, apparently.

Here's the warning cwbowron received from Peter:
QUOTE(zZzZzZz @ warning to cwbowron on Jan 17 2005, 11:31 PM)
http://www.hydrogenaudio.org/forums/index....showtopic=30716
Recommending one of known broken components (foo_playlist_tree) to people is harmful to the community and not welcome on our forums. Please read http://www.hydrogenaudio.org/forums/index....showtopic=17872, thank you.


On the ToS #12 issue:
QUOTE(marcomk @ Jan 19 2005, 01:16 AM)
QUOTE(DotNoir @ Jan 19 2005, 12:37 AM)
Second of all, if he really did register another account he violated TOS #12, this leading to the fact that he will most likely not be able to join HA anymore
*


Sorry, I can't share the same fascination for burocracy. wink.gif
*

QUOTE(HydrogenAudio Terms of Service)
12. All members are only allowed to have a single user account with the forums. Members who are found to violate this rule may be subject to immediate banishment or other administrative action.

"fascination for bureaucracy" or not, ToS are ToS and have to be enforced to be taken seriously. I think it shows some basic benevolence that his violation of ToS #12 did only result in disabled posting ability for the new account instead of an actual ban
foosion
When this plugin was initially released, I downloaded and ran it. What I saw looked remarkably like foo_albumlist, only that it had cwbowron’s name sticking on it (the source files in the archive indicated some relation to it anyway). My first impression was that it was an album list ripoff, and that the author must have some guts to post this on the foobar2000 forum. Inspecting the readme and the source code revealed its true nature. My mistake was, that I had already shared my initial “findings” on IRC. You know what they say about first impressions…

Further studies of the source code and plugin revealed a number (for me) obvious bugs, some of which can be explained by cwbowron being new to the foobar2000 SDK. Inarguably, the SDK is a little scarce on documentation, something that has to and will be adressed in future (the next) versions. Yet people still manage to make initial releases of components with relatively few bugs, so I assume that is possible (I might assume too much here). The fast release cycle where each day a new version would bring bug fixes for earlier days and new, often bugged features, is something that goes against my personal belief that a developer should prefer correctness (and thus thorough testing) to making features available as fast as possible. These two factors had a negative influence on my (emotional) view of this component. Still, I tried to keep emotions out of my posts, even if they might have sounded cold and harsh at times.

Now for putting foo_playlist_tree on the list of potential troublemakers: that was agreed upon based on my inspection of the component. So when cwbowron sent a PM to zZzZzZz stating that he resolved most of the problems, zZzZzZz forwarded that message to me. That was on the 25th of december. By that time I was on holidays for two weeks, and my entire foobar2000 related activities consisted of taking a peek at the forum every other day (and using it to play music). When I returned in 2005, I checked cwbowron’s claims and found that most old problems were indeed resolved (this didn’t happen in one go, so it took me until last week). Yet, I didn’t manage to post in this thread or update the list of potential trouble makers in this time, for which I apologize.

The sudden outburst that caused this whole situation to escalate took me by surprise. To err is human, and I’m pretty sure I am human. Now if you could hold back the stones at least until I finish writing a post about some remaining problems and how to solve them…
picmixer
QUOTE(marcomk @ Jan 19 2005, 09:51 PM)
   I can see your point and I highly respect the work of zZzZzZz and Foosion. If foobar is such a good player it is probably due not only to their skills but also to their rigour and high standards. I just believe this situation wasn't managed in the nicest possible way - and cwbowron had his own reaction.  That's it.
*


Well looking back at it maybe one could say the situation grew a bit out of proportions from both sides. And I am sure we will take this as a lesson and think about how we will solve such situations in a more diplomatic way in the future. The sticky that I put up in the third party forum should have probably been put up earlier to prevent any misunderstandings as well.

QUOTE(marcomk @ Jan 19 2005, 09:51 PM)
Anyway, let's see it in these terms now... At least for a while, Playlist tree will be discussed and developed far from this forum, out of the reach of 'inexperienced users'.  As a foobar's user and enthusiast, I just want to ask you all to be open to re-evaluate the component without prejudice as soon as it will reach a final stage.  I think the community in general will benfit from this.
*


I can assure you that we are all open to judge playlisttree without prejudice when it reaches the final stage. A component being on the list of "known problematic components" has nothing to do with any personal dislike of the developer, but this list rather exists to point out problems and for the benefit of the community.

As I have already mentioned in the third party forum, we intended to leave this thread open anyway, so that development may continue for the best of everyone and I explicitly mentioned that I don't want to keep anyone from using or helping to develop this component. To each his own and the diversity of plugins available for foobar2000 is definitely a very strong point of this player.

Coming to the two personal remarks I made in this topic, I can only say they might have been a bit out of place and could have simply solved by putting up the sticky in the third party forums earlier. But after all we are all just human beeings, including us moderators and sometimes get carried away by our personal feelings. If these remarks where taken more offending and serious than I had intended them to be, then I apologize about this, especially to cwbowron in case he took them personal. As I already said before, moderating and keeping everyone happy at the same time sometimes is a hard job and even we sometimes make misjudgements.

I however stand by the pinned post I made in the third party forums and can assure you it wasn't meant as a personal attack against anyone. Sometimes doing your moderating duties isn't always happy and cheerful and these things still need to be done.
foosion
This list of problems/suggestions is based on what I found in foo_playlist_tree from 2005-01-11. I do not know, if cwbowron still reads this forum and thread, so someone may want to forward this information to him. It's a pity I didn't manage to post this earlier.

The CF_HDROP clipboard format is provided and handled by the core, so there are few situations where you have to cater for that yourself.

There is now a generic component to resolve shell links (foo_lnk), so you need not complicate your code with that.

Using string8 as return type is inefficient, since the compiler/runtime will create a new string8 object everytime. To optimize efficiency, pass a string8/string_base pointer or reference as a parameter and append data to that. Also pass in a string8_fastalloc object to reduce the number of memory reallocation and string copy operations.

DragAcceptFiles should be obsolete if RegisterDragDrop is used.

The assert macro is not appropriate for checking input, it does nothing in release builds. I noticed it was used for that in combination with GetOpenFileName/GetSaveFileName. If you provide these functions with a default extension, you don't have to check for an extension yourself (the strchr based check would also fail, if the path provided by the user had a dot in one of the directory names, but no extension). You may want to disable the apparently unsused "read-only" checkbox in the open dialog (uGetOpenFileName does that automatically).

The parent window of the playlist tree window is null, which causes some (for me) unpleasant effects like having to show the window again using the menu command when it got moved to the background. This could be fixed by setting the foobar2000 main window as the parent window. The handle of the main window is accessible through core_api::get_main_window() (things like the DLL instance handle are also accessible through core_api).

QUOTE(cwbowron @ Jan 13 2005, 07:20 PM)
I dont think its a possibility because I think the TreeView Control is limited to the system colors....
*
It's the ImageList that is limited, because you are not using the right flags. I've had that problem myself at one point. Since I couldn't believe that Windows Explorer was able to have truecolor icons and I not, I searched MSDN until I found this:
QUOTE(MSDN: ImageList_Create() function)
ILC_COLOR
    Use the default behavior if none of the other ILC_COLOR* flags is specified. Typically, the default is ILC_COLOR4, but for older display drivers, the default is ILC_COLORDDB.
ILC_COLOR4
    Use a 4-bit (16-color) device-independent bitmap (DIB) section as the bitmap for the image list.
ILC_COLOR8
    Use an 8-bit DIB section. The colors used for the color table are the same colors as the halftone palette.
ILC_COLOR16
    Use a 16-bit (32/64k-color) DIB section.
ILC_COLOR24
    Use a 24-bit DIB section.
ILC_COLOR32
    Use a 32-bit DIB section.
(emphasis added by me)
jkwarras
QUOTE(foosion @ Jan 19 2005, 12:06 PM)
Now if you could hold back the stones
*

Actually that's the funniest thing I've read today about that whole story biggrin.gif
marcomk
I just want to say that I'm very pleased with the last posts by foosion and picmixer smile.gif
cwbowron
I appreciate the recent comments from Foosion and Picmixer. Foosion's comments will be especially useful in improving the component. I've implemented a couple of the suggestions and hope to add some more of the others soon, specifically the use of bitmaps with more than 16 colors and not having functions return string8's but pass them by reference. Hopefully this will improve the speed of the plugin.

I will continue to use my new forum (http://www.bowron.us/forum) for the official playlist tree bug report and feature request forum, as it will help me better keep track of things. If you have a bug report or have a feature you would like to see added, please let me know there.

I plan to continue following events happening in this forum. Hopefully we can put some of this behind us.
cwbowron
An open letter to the moderators

I have recently uploaded my version 1.0.0 of playlist tree, available from http://foobar.bowron.us/foo_playlist_tree_1.0.0.zip . Source code is available from http://foobar.bowron.us/foo_playlist_tree_src.zip . I would ask that you examine it, and if you agree with me that I have fixed the issues noted in the Known Problematic Components thread, that you would make the appropriate changes to that thread and to remove the ban on suggesting it in other threads.

There are some known issues with the plugin, but they relate to background query refreshes and automatically refreshing some trees on the change of the playing song, and they are noted in the options menu as "BETA Stage: Not for casual users".

I believe the program now properly supports the url scheme and the subsong index, properly handles Unicode, Handles appropriate non-unicode messages.

All char * operations are checked for buffer overflows or truncated to avoid problem. Most string operations use the native string8 format. Appropriate copyright notice for the SDK code has been made in the included readme.txt file.

Thank you for your consideration.
Phi
There are still some problems with your ui_extensions:

They are all coded as single-instance extensions, so you need to use the ui_extension::is_available method to restrict the number of times they can be added to a single host (i.e., once):
CODE
virtual bool is_available(ui_extension_host * p_host) const { return p_host != host; }

You need to properly handle transferring an extension from one ui_extension_host to another. Probably the most important thing you need to do here is call ui_extension_host::relinquish_ownership(HWND) on your old host (and make sure you call SetParent(wnd,new_parent) before this to avoid your window getting destroyed). Example by foosion (from the ui_extension SDK):
CODE
virtual HWND init_or_take_ownership(HWND wnd_parent, ui_extension_host * p_host, cfg_var::read_config_helper * config)
{
if (wnd == NULL) {
// Create new window.

// Store host.
host = p_host;

// only apply configuration data to a new instance
set_config(config);

// create window
wnd = create_window(wnd_parent);
} else {
// Transfer existing window to new host.
// Possibly extend this to handle free-floating <-> hosted transitions.

// Set new parent window.
SetParent(wnd, wnd_parent);

// Tell old host to let us go. We need to do this after using SetParent()!
host->relinquish_ownership(wnd);

// Store new host.
host = p_host;
}

// ensure the window is not visible
ShowWindow(wnd, SW_HIDE);

return wnd;
}


In search_window::destroy_window(), you never actually destroy your search window.

You can find some ui_extension documentation here.
cwbowron
QUOTE(Phi @ Jan 27 2005, 08:19 PM)
They are all coded as single-instance extensions, so you need to use the ui_extension::is_available method to restrict the number of times they can be added to a single host (i.e., once):

In search_window::destroy_window(), you never actually destroy your search window.



Thanks for the information... I've updated the program to reflect this information... Rather than use the is_available to test if the new host is the same as the old host, I've just tested if the panel already exists, because the plugin cannot handle multiple instances in different hosts either... Is there a problem with doing it this way?

Thanks again...
foosion
QUOTE(cwbowron @ Jan 28 2005, 04:21 PM)
Thanks for the information... I've updated the program to reflect this information... Rather than use the is_available to test if the new host is the same as the old host, I've just tested if the panel already exists, because the plugin cannot handle multiple instances in different hosts either... Is there a problem with doing it this way?
*
Making is_available() return false, in case the panel exists prevents the panel from being moved to another host, for example from the sidebar itself to a tabbed panel stack. Does that answer your question?

I just downloaded version 1.0.0 of the plugin. I only checked the preferences so far though. While adding some sort of sections is a good idea, I think you should go further in that direction. At least change the combobox to a regular listbox, so the settings are easier to browse. Using a treeview might be nicer to look at, but it is also more work to implement, so I understand if you postpone or discard that idea. Another nice and rather easy thing would be to hide the controls input controls except than current one (instead of disabling them).

I added a "(review pending)" remark to your component in the list of known potential troublemakers, until that review is done (hopefully on sunday).
Phi
QUOTE(cwbowron @ Jan 29 2005, 02:21 AM)
Rather than use the is_available to test if the new host is the same as the old host, I've just tested if the panel already exists, because the plugin cannot handle multiple instances in different hosts either... Is there a problem with doing it this way?

There won't be any problems doing it this way (technically). But as foosion said this will remove the convenience of host->host transfers (this uses the same instance, btw. Your window just gets moved indirectly to the new host after the SetParent call). I notice you did add the host transfer code though, so it should be safe to use the is_available definition I gave you above.
cwbowron
I see that the entry in the known problematic components has been changed to
QUOTE
foo_playlist_tree
    missing safety checks resulting in crashes, unicode support is broken, especially in ansi environments


I was hoping maybe foosion or someone else who has had a chance to examine the code could elaborate on these issues so that I might fix them.

Thanks
jkwarras
What I don't get it's why the pinned post about not recommending this component still there? Other components in this list are recommended all over this forum without any similar warning.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.