<p dir="ltr"><br>
On Jul 3, 2013 7:09 PM, &quot;Jonathan Wilkes&quot; &lt;<a href="mailto:jancsika@yahoo.com">jancsika@yahoo.com</a>&gt; wrote:<br>
&gt;<br>
&gt; On 07/03/2013 04:31 AM, Roman Haefeli wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Wed, 2013-07-03 at 03:56 -0400, Ivica Bukvic wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Jul 3, 2013 1:38 AM, &quot;Roman Haefeli&quot; &lt;<a href="mailto:reduzent@gmail.com">reduzent@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; On Die, 2013-07-02 at 19:15 -0400, Ivica Ico Bukvic wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; [symbol\<br>
&gt;&gt;&gt;&gt;&gt;&gt; |<br>
&gt;&gt;&gt;&gt;&gt;&gt; [label $1(<br>
&gt;&gt;&gt;&gt;&gt;&gt; |<br>
&gt;&gt;&gt;&gt;&gt;&gt; [cnv]<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; - (ATTN: Ivica) [hsl] seems to have the bounding box (?)<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; miscalculated<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; in l2ork so it doesn&#39;t GOP when it&#39;s less than 2-3px from the<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; border<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; of the parent canvas. Checked in Vanilla, it works as expected<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; ([hsl]<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; can be placed to the very border and it will GOP).<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; According to Ivica this is on purpose. The reason is that<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; iemguis used<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; to have miscalculated positions and pd-l2ork fixed that while<br>
&gt;&gt;&gt;&gt;&gt;&gt; pd-vanilla/pd-extended didn&#39;t. Unfortunately, this breaks<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; compatibility<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; between pd-l2ork and pd-vanilla/pd-extended.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; This is true. Although, I wouldn&#39;t call translating an object by 3<br>
&gt;&gt;&gt;&gt;&gt; pixels exactly breaking compatibility.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; If a patch just isn&#39;t usable at all on a different flavor, then I<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; don&#39;t<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; see how this doesn&#39;t qualify for breaking compatibility.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Roman<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; I guess we need to clarify what &quot;not usable at all&quot; means. If a patch<br>
&gt;&gt;&gt; works but one optional gop hsl is not visible, personally I would say<br>
&gt;&gt;&gt; that one element may not be usable and only temporarily.<br>
&gt;<br>
&gt;<br>
&gt; I agree with Roman.  Patch authors were being very reasonable when<br>
&gt; they created their GOPs that just so happened to be based on faulty<br>
&gt; logic under the hood.  Those discrepancies were extremely small,<br>
&gt; small enough that most patch author&#39;s probably didn&#39;t even notice the<br>
&gt; bug until you pointed it out and fixed it.</p>
<p dir="ltr">For me having a new user face inconsistency with autopatching is a lot more critical than an existing user encounter an inconsistency due to the fact that an old bug has been fixed.</p>
<p dir="ltr">One could approach this problem by having a hack that adjusts the spacing during autopatching and that&#39;s exactly what I used to have. At some point I simply realized that I was adding more and more hacks to keep the hack propagating through the undo and other functions, and came to the conclusion it&#39;s time to start cleaning up hacks like these and make the code cleaner and easier to maintain.</p>

<p dir="ltr">Otherwise, by your suggested approach one could conclude that PD is perfect as-is and that no other development/changes are necessary. Case in point if a comment or labels for iemgui objects do in part fall out of GOP area, pd/extended still render them visible. Since this bug has been there for some time there are possibly patches out there that exploit this bug as a feature and by using your logic we should never change that either as doing so would break old patches. Again, if we take the suggested approach then there&#39;s nothing to change about pd. OTOH, one could ostensibly look into creating a simple shell script that when run could easily adapt all of the old patches to the new spacing. Perhaps someone else may want to contribute this?</p>

<p dir="ltr">In summary let us hope that other versions of the pd adopt the same/similar fixes and do so soon.</p>
<p dir="ltr">Best wishes,</p>
<p dir="ltr">Ico</p>
<p dir="ltr">&gt;<br>
&gt; So through no fault of their own, their patches are broken on the<br>
&gt; distribution of Pd that has a superior UX.  That&#39;s a bad situation.<br>
&gt;<br>
&gt; If you have a solution not too far off that will allow such GOP objects<br>
&gt; to be functional again, then the temporary breakage is probably ok.<br>
&gt; If not, then we need to keep the bug for all eternity and work around it.<br>
&gt;<br>
&gt; To do otherwise is to scare off potential users who have no idea how many<br>
&gt; other changes will break their patches because of idiosyncracies<br>
&gt; that lurk deep in code that Pd was designed to abstract away from them.<br>
&gt;<br>
&gt; -Jonathan<br>
&gt;<br>
&gt;&gt; Many of my patches are not usable at all without GOP GUIs visible. And I<br>
&gt;&gt; cannot fix it myself as either it breaks pd-vanilla|pd-extended or<br>
&gt;&gt; pd-l2ork or it looks dead ugly. So yes, it breaks compatibility in a<br>
&gt;&gt; serious way. And I also do not see the temporary aspect of it. I as a<br>
&gt;&gt; patch developer can&#39;t provide a solution to this.<br>
&gt;&gt;<br>
&gt;&gt; This is _the_ reason I don&#39;t even try to bother to make my patches work<br>
&gt;&gt; in pd-l2ork. And I even need to tell people that they shouldn&#39;t use<br>
&gt;&gt; pd-l2ork when they want to use my patches.<br>
&gt;&gt;<br>
&gt;&gt;&gt; If you are looking for things that really break compatibility, then<br>
&gt;&gt;&gt; those would be things like preset_node object that are current only<br>
&gt;&gt;&gt; possible in pd-l2ork.<br>
&gt;&gt;<br>
&gt;&gt; Actually, one can decide to use or not to use new features. Obviously,<br>
&gt;&gt; added features do not work in flavors that do not implement that<br>
&gt;&gt; feature. From a user point of view, this can be dealt with  in an clean<br>
&gt;&gt; way. If you want your patch to work on other flavors, don&#39;t use stuff<br>
&gt;&gt; like preset_node. I don&#39;t see a problem at all with that.<br>
&gt;&gt;<br>
&gt;&gt; Roman<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; <a href="mailto:Pd-list@iem.at">Pd-list@iem.at</a> mailing list<br>
&gt;&gt; UNSUBSCRIBE and account-management -&gt; <a href="http://lists.puredata.info/listinfo/pd-list">http://lists.puredata.info/listinfo/pd-list</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; <a href="mailto:Pd-list@iem.at">Pd-list@iem.at</a> mailing list<br>
&gt; UNSUBSCRIBE and account-management -&gt; <a href="http://lists.puredata.info/listinfo/pd-list">http://lists.puredata.info/listinfo/pd-list</a><br>
</p>