Forum OpenACS Development: Re: Nested Lists

Collapse
6: Re: Nested Lists (response to 1)
Posted by Don Baccus on
Hmm...

" We have a diverse enough code base that it's really not ever 100% safe to change any programmatic behavior."

True but enabling nested lists doesn't change any *existing* behavior.  automated tests are nice but I really hate to raise the bar on simple changes that can be shown to not change existing behavior ...

Collapse
7: Re: Nested Lists (response to 6)
Posted by Joel Aufrecht on
I'm thinking in terms of, where do we draw the bug fix/new feature line on release branches. "Enabling nested lists" doesn't change any existing behavior, but we also need to ensure that the code change does "enabling nested lists" and nothing else, and that the way it does "enabling nested lists" doesn't break anything. Of course any bug fix has the same problem, but there's a spectrum from "the table name is misspelled in the Oracle query" which is a pretty darned safe fix, to something more subtle like, "this API call is confusing to invoke." This change is in the middle of the spectrum - not because the desired change is likely to be backwards-incompatible, but because it's a change to the code behind some widely used functionality.

So if we are going to change riskier stuff on a release branch, I think we should mitigate the risk via both code review and regression testing, whenever possible. We should do this for the hairier code bugs as well as for the design bugs.

Collapse
8: Re: Nested Lists (response to 7)
Posted by Benjamin Bytheway on
I commited the bugfix to HEAD earlier this morning.  I hope to add documentation to acs-templating for the undocumented name=""/value="" functionality, as well as give examples of what works and what doesn't with nested <lists>.

The ONLY thing I changed was to modify the index variable in a for loop.

"for {set __ats_i.." ==> "for {set __ats_${name}_i..."

This has no impact on current behavior. I will add some test cases in the next few days, to demonstrate the viability of the fix.  Hopefully it can be proved and moved to the 5-1 branch for release.