NI Package Management Idea Exchange

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

NI Package Builder - Include nested dependencies in feeds

Status: New

I created a package in LabVIEW 2020 which (obviously) depends on LabVIEW runtime and other things.  When I create the feed from LabVIEW, it includes all of these -- Excellent!

 

I have additional packages that I want to create in NI Package Builder which are add-ons to the LV solution to support a Plugin Architecture.

I can include the LabVIEW package as a dependency (assuming it's installed), but when I create the feed, it does NOT include the nested dependencies.

 

It would be very nice to include an option for dependencies to "Detect and Include dependencies" 

4 Comments
Scott_Richardson
Active Participant

Hi Justin, can you clarify what version of NIPB you are using and what you are seeing that is different than the following. When you add an installed package to a new feed (local repository as called in NIPB) in the NIPB solution, the tree view shows that one package under the feed node. When NIPB builds the feed, it should be creating a solvable feed, i.e. all "depends" relationships are included. If there is a first level "recommends" or "suggests" relationship from the package, packages with those relationships will not be included in the feed unless you enable the "Include recommended and suggested packages" option on the package in the feed.

 

If this is not what you are seeing, I would be interested in any NIPB solution and input packages that you could share with me in a private message.

Scott Richardson
https://testeract.com
jyoung8711
Member

Scott --

So this is a two parter,  I'll go ahead and post as much as I can here publicly.  If more information would be helpful, let me know and we can touch base off-line (since it sounds like what I described might already be expected behavior...).

 

I have a plugin based application written in LabVIEW 2020 (Plugins are PPLs in this case).  I build the base EXE with required PPL interfaces in LabVIEW 2020, and then built a Package through LabVIEW as well.  When I build the package, I have the following selected:

 

1) Runtime LV2020 32-bit as a "required dependency" (among others)

jyoung8711_0-1614957268723.png

2) I tell it to "add to a feed" and to "include dependencies:

jyoung8711_1-1614957338334.png

3) When I build this feed I get exactly what's expected. A feed which includes all dependencies, as well as my packages (at the bottom of the screen shot)

jyoung8711_2-1614957428158.png

 

For the second part.  I now need to build customer specific solutions for our product which includes a set of additional PPL plugins and configuration files.  This I was doing in NIPB (20.6). I also have NIPM (20.6) installed

 

This is actually built in several reusable packages which build up the solution, and have a complex hierarchy

 

Package A (Depends) Package B

Package B (Depends) Package C

Package C (Depends) Package D

Package D (Depends) LabVIEW Build Package

 

I have created feeds for packages A-D as well.

Feeds A, B, C all include the "nested dependencies" from the others

By which I mean Feed A included Packages A, B, C, D, and MainApp.

 

However it did NOT include the dependencies from the main app. 

In fact, none of the feeds included those dependencies.

 

Build Spec:

jyoung8711_3-1614957646298.png

 

Resulting feed for Feed from A.

jyoung8711_5-1614957963880.png

 

It would be nice to either automagically or have the OPTION to add these nested dependencies to the feed.

 

In general, I've been struggling a bit with several dependency/build related features, and have posted a few other feature requests detailing other items:


https://forums.ni.com/t5/NI-Package-Management-Idea/NI-Package-Builder-Publish-to-SystemLink-Feeds/i...

https://forums.ni.com/t5/NI-Package-Management-Idea/NI-Package-Builder-Specify-Dependencies-from-Dis...

 

https://forums.ni.com/t5/NI-Package-Management-Idea/Add-Auto-register-feed-feature-when-installing-a...

 

Scott_Richardson
Active Participant

Justin, my simple LabVIEW/NIPB testcase that mimics yours worked as expected. All the dependencies from the application appeared in the feeds built by NIPB. I will contact you directly so that I can review some of your files.

Scott Richardson
https://testeract.com
jyoung8711
Member

Alright, so it appears I had a corrupt installation of NIPM that was causing issues with this feature that already exists 🙂 

 

Thanks for the help @Scott_Richardson