LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Is it just me, or does save all not actually save all?

When working with nested libraries (e.g. a library with a class in it) in a project, performing a save all doesn't seem to actually save the inner libraries (at least not consistently). I will often get prompted to save library/class changes on closing the project, even though I've explicitly performed a save all.

 

Example: I update class data that's in a library.  At some point after this I press ctrl+shift+s.  And then LabVIEW crashes a few minutes later.  When I open these files again, the class won't have the changes that should have been saved.

 

I'm not sure that it's happening every time, but I'm almost certain this behavior is happening on a regular basis.  Anyone else experiencing this?

 

Version: 24Q1, 64-bit.

0 Kudos
Message 1 of 31
(770 Views)

@_carl wrote:

When working with nested libraries (e.g. a library with a class in it) in a project, performing a save all doesn't seem to actually save the inner libraries (at least not consistently). I will often get prompted to save library/class changes on closing the project, even though I've explicitly performed a save all.

 

Example: I update class data that's in a library.  At some point after this I press ctrl+shift+s.  And then LabVIEW crashes a few minutes later.  When I open these files again, the class won't have the changes that should have been saved.

 

I'm not sure that it's happening every time, but I'm almost certain this behavior is happening on a regular basis.  Anyone else experiencing this?

 

Version: 24Q1, 64-bit.


It's quite annoying.  Closely related is that clicking the X button on an unsaved library will close it without saving, and ctrl+S won't save it, either.  You have explicitly open the file menu and select save for it to actually save.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 2 of 31
(756 Views)

I have not ran into this issue for a good while, even with updating my libraries to use 2024 and some refactoring/rearchitecting. I'll keep an eye out for this again whenever I get back into application development.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 3 of 31
(752 Views)

I've been running into pretty similar behavior but it seems to me more like the library isn't being correctly flagged as being modified. Specifically, I've been having issues with moving VIs into a virtual folder and then LabVIEW not realizing that's an update to the library so I end up going into the library and putting a random character into the description.

0 Kudos
Message 4 of 31
(675 Views)

@Jacobson wrote:

I've been running into pretty similar behavior but it seems to me more like the library isn't being correctly flagged as being modified. Specifically, I've been having issues with moving VIs into a virtual folder and then LabVIEW not realizing that's an update to the library so I end up going into the library and putting a random character into the description.


This is a version of what I mentioned above.  If you manually save the library via the file menu, it will force an update.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
Message 5 of 31
(636 Views)

@billko wrote:

@Jacobson wrote:

I've been running into pretty similar behavior but it seems to me more like the library isn't being correctly flagged as being modified. Specifically, I've been having issues with moving VIs into a virtual folder and then LabVIEW not realizing that's an update to the library so I end up going into the library and putting a random character into the description.


This is a version of what I mentioned above.  If you manually save the library via the file menu, it will force an update.


Virtual Folders only exist in the owning lvproj folder. So, moving items in a project between virtual folders causes absolutely no changes to those items.  Since you Save all (this project) no changes really need saving.  To save changes like that you need to save the project rather than all items in the project.  


"Should be" isn't "Is" -Jay
0 Kudos
Message 6 of 31
(606 Views)

@JÞB wrote:

@billko wrote:

@Jacobson wrote:

I've been running into pretty similar behavior but it seems to me more like the library isn't being correctly flagged as being modified. Specifically, I've been having issues with moving VIs into a virtual folder and then LabVIEW not realizing that's an update to the library so I end up going into the library and putting a random character into the description.


This is a version of what I mentioned above.  If you manually save the library via the file menu, it will force an update.


Virtual Folders only exist in the owning lvproj folder. So, moving items in a project between virtual folders causes absolutely no changes to those items.  Since you Save all (this project) no changes really need saving.  To save changes like that you need to save the project rather than all items in the project.  


It shouldn't matter that they are virtual folders.  You move a file - virtually or physically - and the library should update.  I could definitely understand the file not updating, but the library should reflect the change.


Edit: If you don't hard save, the file appears back in its original spot in the library.  That is unexpected behavior, if not a bug.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 7 of 31
(582 Views)

@billko wrote:

@JÞB wrote:

@billko wrote:

@Jacobson wrote:

I've been running into pretty similar behavior but it seems to me more like the library isn't being correctly flagged as being modified. Specifically, I've been having issues with moving VIs into a virtual folder and then LabVIEW not realizing that's an update to the library so I end up going into the library and putting a random character into the description.


This is a version of what I mentioned above.  If you manually save the library via the file menu, it will force an update.


Virtual Folders only exist in the owning lvproj folder. So, moving items in a project between virtual folders causes absolutely no changes to those items.  Since you Save all (this project) no changes really need saving.  To save changes like that you need to save the project rather than all items in the project.  


It shouldn't matter that they are virtual folders.  You move a file - virtually or physically - and the library should update.  I could definitely understand the file not updating, but the library should reflect the change.


Edit: If you don't hard save, the file appears back in its original spot in the library.  That is unexpected behavior, if not a bug.


Not a bug!  The project is simply an xml formatted file that does not contain any information about any libraries, vis, or any other file.  Any lvlib that is a lvproj member is still referring to the lvproj xml data.  

 

To move "Stuff" around in a lvlib you need to save the source lvproj file that defines that lblib.  Remember lvlib members know what library they belong to but not where they exist!  Projects, lvproj xml files merely point to where the members MIGHT exist on disc or virtually.  Since lvproj members have NO SAVED? flag to accept they belong in them, no changes to those lvproj files.  And no changes to the virtual folders  of  lvlib members could be forwarded as changes to a lvproj since there is no owning object of a project saved in a lvproj member.

 

Basically project members don't want to know what they are used in.  Library members MUST know that.  But moving library members around "virtually" in any project simply makes no changes to the library members location on disc where the project can find them so, there is no flag that tells that lvproj xml file that anything changed. 


"Should be" isn't "Is" -Jay
0 Kudos
Message 8 of 31
(542 Views)

@JÞB wrote:

@billko wrote:

@JÞB wrote:

@billko wrote:

@Jacobson wrote:

I've been running into pretty similar behavior but it seems to me more like the library isn't being correctly flagged as being modified. Specifically, I've been having issues with moving VIs into a virtual folder and then LabVIEW not realizing that's an update to the library so I end up going into the library and putting a random character into the description.


This is a version of what I mentioned above.  If you manually save the library via the file menu, it will force an update.


Virtual Folders only exist in the owning lvproj folder. So, moving items in a project between virtual folders causes absolutely no changes to those items.  Since you Save all (this project) no changes really need saving.  To save changes like that you need to save the project rather than all items in the project.  


It shouldn't matter that they are virtual folders.  You move a file - virtually or physically - and the library should update.  I could definitely understand the file not updating, but the library should reflect the change.


Edit: If you don't hard save, the file appears back in its original spot in the library.  That is unexpected behavior, if not a bug.


Not a bug!  The project is simply an xml formatted file that does not contain any information about any libraries, vis, or any other file.  Any lvlib that is a lvproj member is still referring to the lvproj xml data.  

 

To move "Stuff" around in a lvlib you need to save the source lvproj file that defines that lblib.  Remember lvlib members know what library they belong to but not where they exist!  Projects, lvproj xml files merely point to where the members MIGHT exist on disc or virtually.  Since lvproj members have NO SAVED? flag to accept they belong in them, no changes to those lvproj files.  And no changes to the virtual folders  of  lvlib members could be forwarded as changes to a lvproj since there is no owning object of a project saved in a lvproj member.

 

Basically project members don't want to know what they are used in.  Library members MUST know that.  But moving library members around "virtually" in any project simply makes no changes to the library members location on disc where the project can find them so, there is no flag that tells that lvproj xml file that anything changed. 


Your technical discussion is spot on, but anyone who closes the project only to open it later and find their changes have not taken will tell you that this is a bug.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 9 of 31
(523 Views)

Your technical discussion is spot on, but anyone who closes the project only to open it later and find their changes have not taken will tell you that this is a bug.

Bill

They never opened a *.lvproj file  in a text editor!  NOT A BUG!  
 
But, it is a very common problem when miss-using classes, libraries,  projects and other context qualifications.   
 
THOSE FULLY QUALIFIED NAMES are relevant.   Like component [template]  of library on target in application context!  Changing some "OBJECT" parameter in any context does not mean that the Object itself needs changed.  (That would mean that a single changed object would force changes to any caller in any context!)  Nuke it out Bill, that would be sooooooo wrong!

"Should be" isn't "Is" -Jay
0 Kudos
Message 10 of 31
(517 Views)