Wherever there’s a forum discussion about source code control or reuse library management (e.g. here,here, or here), you’re likely to find a JKI engineer or JKI customer (or both) talking about VI Package Manager Pro, and specifically about VI Package Configuration (VIPC) files.
VIPC files are one of the most important–but least understood–features of VIPM Pro. They help you keep track of the package versions for the project you are working on. This makes them great for:
- People who switch between multiple projects, or come back to old projects once in a while to fix bugs or add features.
- People who work on the same project(s) on multiple computers.
- People who hand-off projects to other developers for maintenance.
If any of these scenarios are familiar to you, keep reading. VIPC Files solve some real problems for you.
What is a VIPC file anyway?
If you’re serious about LabVIEW development, you probably employ some form of LabVIEW code reuse in your projects. Over time, you will find that each project uses slightly different libraries or different versions of different libraries. Generally speaking, it’s important to know which projects use which libraries. If you don’t, then you run the risk of building your new app with libraries that are too old, or too new, or just plain wrong. Maintaining this traceability saves time and money by reducing bugs and increasing reliability; in many industries it’s even a legal requirement.
VIPC files are VIPM’s solution to this problem. VIPCs make it easy to “apply” package configurations when you switch projects. This control allows you to selectively install/upgrade/downgrade packages on a per-project basis so you use the right packages in the right project every time. Then you avoid the massive risk incurred in the previously mentioned scenarios.
There’s not enough room here to fully cover all the benefits of VIPC files, so here are just a handful of “secrets” you may find helpful:
Secret #1: Creating VIPC files is super-easy
It’s super-easy to create a VIPC file for each of your projects, because VIPM does the work for you. From the VI Package Configuration Editor, simply press the Scan Project button. VIPM will analyze your project, identify the packages you are currently using, and automatically add them to your VIPC file. It will also remove packages that you don’t depend on. VIPM supports scanning *.lvproj files or toplevel VIs. As your project grows or changes, your VIPC file stays updated with just a click of a button.
Secret #1.A: Manually Adding Packages to VIPC files
You can manually add packages to a VIPC file by dragging & dropping them from the VIPM Main package list into the VI Package Configuration window, as shown below:
Or, you can right-click on the package from the VIPM Main package list and choose Send to Configuration, as shown below:
Secret #1.B: "Pin" Packages Added Manually to prevent VIPM from removing them after a Scan Project.
“Pinning” a package prevents VIPM from removing the package after a Scan Project, if the package is not found as a dependency. To pin a package, right-click on the package in the VIPC window and chose Pin Package, as shown below (note: if it has a checkmark next to it, it's already pinned):
Secret #2: Packages can be built into VIPC files, or included by reference
If you don’t care about disk space or aren’t sure about your network connection, your VIPC file can include the actual data for each package it contains. Alternatively, if your development machines have reliable network access, you can simply include each package “by reference.” VIPM will automatically download and install referenced packages (from the LabVIEW Tools Network or other repositories) as needed.
Secret #3: Applying configurations is easy
You can apply a VI Package Configuration either from Windows Explorer or from within VIPM. In each case it only takes a couple clicks to update your project to the latest libraries.
Secret #4: Every edition of VIPM can apply VIPC files
You have to be a VIPM Pro user to create or edit VIPC files, but any VIPM Free user can apply them. This means that a single project lead can maintain VIPC files for a whole team, and makes deploying your project reuse libraries easy.
This is just a brief introduction to the value of VIPC files. Larger teams frequently find that they need the private network repository features of VIPM Pro, but for individuals, small teams, and organizations just starting out with LabVIEW code reuse, VIPC files provide a great way to safely manage reuse code for multiple projects or multiple computers.
If you have questions or comments about VIPM or VIPC files, please join the discussion below!
Just download VIPM today and activate a 30day trial to try out VIPC files.