Hi Frank, Well, I can't remember now if I was looking at that bug report or if I was having my own problems with declare (I've had many). I had bad confusion making abstractions use "soundfiler", for instance, and having relative paths get expanded relative to the abstraction instead of the calling patch. However, when an abstraction opens a sub-abstraction as in "x/y", I think it's best to have x/y be relative to the abstraction's location and not the calling patch's. These two needs seem in direct conflict. I hope to figure out a better way to handle this but have given up trying to resolve it for 0.41.
I hope nobody is yet throwing "declare" objects in abstractions, as that currently does something so wrong (altering the global path for the calling patch!?) that I thought it better to get rid of the whole thing for now. cheers Miller On Sat, Jan 05, 2008 at 06:28:20PM +0100, Frank Barknecht wrote: > Hi, > > I checked out the behaviour of [declare] in the latest test version, > which supposedly should have some fixes according to the release > notes: > > Fixed "declare" which wasn't working properly yet in 0.40-0, and made > more objects (notably "soundfiler") respect "declared" paths. Path > entries are relative to the parent patch. Declares inside abstractions > are ignored. > > Now I'm not sure, if simply ignoring declares in abstractions is the > right thing (tm) to do. Using the declare-bug.tgz examples from Bug > #1714473 I now cannot make abstractions evaluate declares anymore. > This seems to be intended, but why? > > The example uses an abstraction, "myabs/test-patch-with-deep-declare" > that includes an instance of [abuse-me], which by [declare -path > ./sub] inside "myabs/test-patch-with-deep-declare.pd" should be taken > from "myabs/sub/abuse-me.pd". But, alas, this isn't found and thus > "myabs/test-patch-with-deep-declare" is broken. Opening > "myabs/test-patch-with-deep-declare.pd" directly will make it find the > correct abuse-me.pd in myabs/sub/abuse-me.pd > > I believe, the correct behaviour would be to not ignore the declares > in abstractions, but make them act relative to the abstraction's path. > > Otherwise abstractions would behave differently when opened directly > compared to when used as abstractions, which I think is very > confusing. > > Ciao > -- > Frank Barknecht _ ______footils.org__ > > _______________________________________________ > PD-dev mailing list > PD-dev@iem.at > http://lists.puredata.info/listinfo/pd-dev _______________________________________________ PD-dev mailing list PD-dev@iem.at http://lists.puredata.info/listinfo/pd-dev