Jump to content

Handling multiple versions of Reusable Library


Recommended Posts

I have different customers using different version of labVIEW, I have all my reusable library stored in SCC (Perforce), Now I am having to manage my reusable components for multiple version of LabVIEW. What do you think is the best way to manage the code, I can do a branch of the code but it duplicates the code and every Issue I find, I will have to go and fix all the supported versions of LabVIEW. I am sure many developers would have gone through this, Can anybody suggest the best ways to do it. It will be also useful for many new engineers like me. Is there already a thread where we have discussed this ?

With Regards

Rajkumar

Link to comment

You can make packages of your code in the oldest version you need to maintain. Then deploy and compile them if the version is more recent.

No code duplication needed. Check out VIPM... it does all you want and more. It handles versioning, distribution and installation. It also integrates in the project environment.

Link to comment

Add another vote for VIPM Pro from me too.

Add one vote against VIPM for me!

Maybe I don´t get the point but I can´t see an advantage in using VIPM. If I install all the dependencies in user.lib or on of these directories I´ll never have the chance to do a quick setup of my libs on another pc.

Using scc you can just bind your libs as externals in your projects.

With a trunk, branches, tags structure create release branches for every project and every lib.

Branches are not code duplication. You do your bugfixes on the trunk an merge this to the release branches (if necessary). Then you´ll create a tag with fixed revision numbers of the libs in your project.

This way you´ll have your setup complete with one checkout.

You don´t have to use another third party software and you don´t have to install things on other pc because it´s all there.

Link to comment

Add another vote for VIPM Pro from me too.

I've was playing around with VIPM 2010 yesterday and found that I can now build all the packages I want with the free community version. There used to be limitations, but it looks like JKI decided to open it.

Here are my major reasons to use VIPM: 1. It manages your user library for each version of LabVIEW you have installed, 2. You can define your palettes a lot more easily than using LabVIEW's palette editor, 3. You can install only which packets you need, 4. It handles packet dependencies (ex. my GPIB packet need my Wait packet in order to work). These are things a normal SCC just cannot do, or at least not cleanly.

Link to comment

Just like danielsan, I use source code control to handle all dependencies. Everything is set up as an external to a tag via the SCC. I never touch vi.lib/user.lib for anything other than a few of the code bases I use that are distributed through VIPM.

Link to comment

Just like danielsan, I use source code control to handle all dependencies. Everything is set up as an external to a tag via the SCC. I never touch vi.lib/user.lib for anything other than a few of the code bases I use that are distributed through VIPM.

I even put these things like the openG libs I use in the scc. This way I can immediately continue developing on any other standard LV installation.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.