Stack Version Comparison Tool

Peter Haworth pete at
Sat Jun 23 12:47:02 EDT 2012

Thanks for the input Dick.  I'm assuming they are made in the context of
trying to recreate a stack from within the tool, although you do point out
some issues I'm trying to figure out solutions for. I've emebedded a few
comments in the text of your email below.

lcSQL Software <>

On Fri, Jun 22, 2012 at 10:47 PM, Dick Kriesel <dick.kriesel at>wrote:

> Hi, Peter.
> Significant differences between versions can happen at least a few more
> places:
> 1)  multi-dimensional arrays stored in custom properties (for example, app
> settings)

The tool will identify that changes occurred in any custom property, no
matter what is stored in them.  But I'm glad you reminded me that cp's can
contain something other than plain text.  I will probably have to add a
feature to display the contents of a cp in several different formats other
than plain text - array, image,pdf, etc.

> 2)  the object hierarchy

I assume you mean a change in the grouping of objects?  That's an excellent
point and not something I had thought of.  I will add that to the list.

3)  name changes for stacks, objects, and custom properties

My "keys' for cards and controls is their ID, not their name.

I'm currently trying to decide what to about stacks since the stack name
isn't a reliable way to uniquley identify them across stack versions.  My
options appear to be to use the altID property and assign a value to each
stack when the first stack version is loaded in to the tool, or to install
a custom property of my own in each stack.

There's not much I can do about custom property name changes other than
report that the old name disappeared between versions and the new name

4)  id changes for objects

I'm aware that it's now possible to change an object ID by script but I'm
hoping that's not something that most people would do.  If it is, I would
probably have to add a cp of my own to every control the first time it is
loaded into the tool.

> 5)  stack hierarchies

I'm not clear what you mean by this - perhaps changing the main stack?  If
so, I currently don't distinguish between main and substacks specifically,
just whether a stack appeared or disappered between versions.  However I
would rpert a change to the mainstack property of a stack.

> The use-list has many messages about version control that could help you
> identify the worms and the people who know how to deal with them.  If and
> when you become interested in diffs for multi-dimensional arrays, let me
> know.

Thanks, I'll check the archives.  It's quite possible I will be interested
in multi-dimensional array diffs at some point so thanks for the offer.

I should clarify that I don't regard this tool as a version control system.
 It doesn't have any functions to check versions in/out or any of the other
features of a version control system in a multi-user environment.  It's
simply a way of identifying what changed between two versions of a stack

I am thinking that at some point in the future I will integrate my home
grown bug tracking stack with the diff tool, but first things first.

More information about the Use-livecode mailing list