LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
ErnieH

Version independent source code saves

Status: Declined

Any idea that has received less than 7 kudos within 7 years after posting will be automatically declined.

Give the user the ability to save the LabVIEW source files as un-completed, version independent files capable of being imported to any version of LabVIEW. Of course, newer features won't be recognized, but the vast majority of the code should be useable.

6 Comments
jcarmody
Trusted Enthusiast

This is not the same thing, but the Code Capture Tool lets you back-save your snippets automatically.  I distribute my snippets from LabVIEW 2010 in 8.2.

Jim
You're entirely bonkers. But I'll tell you a secret. All the best people are. ~ Alice
For he does not know what will happen; So who can tell him when it will occur? Eccl. 8:7

AristosQueue (NI)
NI Employee (retired)

You essentially already have this. Since LV 8.2, LV has allowed Save For Previous to save backwards to LV 8.0. We have kept the full backwards save available since then, and plan to continue doing so. If you save for previous to 8.0, you essentially have the version independent format that you're asking for.

 

I'm not going to suggest that this idea be closed, however, because there is obviously room for improvement -- when saving from 2010 to 8.0, any feature that was new in, say, 8.6, will be stripped, so if I load that VI in 8.6, that feature won't show up. What you're asking for is a format that when loaded would restore as many of the features as possible and ignore any that it doesn't understand.

JackDunaway
Trusted Enthusiast

>> What you're asking for is a format that when loaded would restore as many of the features as possible and ignore any that it doesn't understand.

 

So how do you diff and reconcile all edits made to one VI in different versions? Or, by editing the VI in a version, do you wax all other source versions present in the VI file?

AristosQueue (NI)
NI Employee (retired)

> So how do you diff and reconcile all edits made to one VI in different versions?

 

Since diff is done in a particular version, I would assume that the differ would show diffs between the two VIs as they appear in that version. There might be some annotation for "there's a change here that cannot be interpreted."

 

> Or, by editing the VI in a version, do you wax all other source versions present in the VI file?

 

That would seem to me to be a requirement. Otherwise any edits I make might or might not be good edits since they might conflict with some other change that I can't even see. Imagine if I saved an inlined VI back to a version without inlining and then turned on subroutine priority. The VI would be broken when loaded back in a version where inlining existed if we retained the version independent edits. That would seem to me to be undesirable. If you start editing in a given version, my choice would be to trash all the non-loadable future version edits.

Dragis
Active Participant

i think this would be a cool feature, but it seems like there are a lot of cases where "not recognizing newer features" would easily break the functionality of the diagrams. you might consider an alternative approach where one can explicitly say the oldest compatible version and labview will enforce that the vis remain compatible with that version and later. no ambiguity.

Darren
Proven Zealot
Status changed to: Declined

Any idea that has received less than 7 kudos within 7 years after posting will be automatically declined.