Jump to content

Package Manager Comparison: Difference between revisions

From LabVIEW Wiki
No edit summary
No edit summary
 
(8 intermediate revisions by 5 users not shown)
Line 3: Line 3:
{| class="wikitable"
{| class="wikitable"
|-
|-
! Characteristic !! [[VI Package Manager]] (Free) !! [[VI Package Manager Community Edition]] (Free For Non Comerical Use)!! [[VI Package Manager]] (Pro $599/user/year) !! [[NI Package Manager]] !! [[G Package Manager]] ([[GPM]])
! Characteristic !! [[VI Package Manager]] (Community Non-Commercial, Free Commercial, Pro $599) !! [[NI Package Manager]] !! [[G Package Manager]] ([[GPM]])
|-
|-
| Installs With LabVIEW || Yes || || No || Yes || No
| Installs With LabVIEW || Yes || Yes || No
|-
|-
| Created By|| JKI || JKI || JKI || National Instruments || MGI (Moore Good Ideas)
| Created By|| JKI || National Instruments || MGI (Moore Good Ideas)
|-
|-
| Year Released || ? || 2020 || ? || 2017 || 2018
| Year Released || 2006 || 2017 || 2018
|-
|-
| Open Source || No || No || No || No || Yes
| Open Source || No || No || Yes
|-
|-
| Language Written In || G  || G || G || C# || G
| Language Written In || G || C# || G
|-
|-
| Free To Install || Yes || Yes || Yes Trial || Yes || Yes
| Free To Install || Yes (Community & Free) || Yes || Yes
|-
|-
| API || No || No ||Yes || Yes || Yes
| API || Yes (Community & Pro) || Yes || Yes
|-
|-
| Local repository management<sup>1</sup> || No || No || Yes || Yes || No
| Local repository management<sup>1</sup> || Yes (Pro) || Yes || Yes
|-
|-
| Supports multiple LabVIEW versions from a single package || Yes || Yes || Yes || No || Yes
| Supports multiple LabVIEW versions from a single package || Yes || No || Yes
|-
|-
| Natively supports mass compile after install || Yes || Yes || Yes || No || Yes
| Natively supports mass compile after install || Yes || No || Yes
|-
|-
| Scope of package installation<sup>2</sup> || LabVIEW IDE || LabVIEW IDE || LabVIEW IDE || LabVIEW IDE || Per Project<sup>5</sup>
| Scope of package installation<sup>2</sup> || LabVIEW IDE or OS File System || OS File System || Per Project<sup>5</sup>
|-
|-
| Supports LabVIEW NXG || No || No || No || Yes || No
| Supports LabVIEW NXG || No || Yes || No
|-
|-
| Integrates Into LabVIEW IDE<sup>8</sup> || No || No || No || No || No
| Integrates Into LabVIEW IDE<sup>8</sup> || Yes || No || No
|-
|-
| Integrates Into LabVIEW NXG IDE<sup>9</sup> || No || No || No || Yes || No
| Integrates Into LabVIEW NXG IDE<sup>9</sup> || No || Yes || No
|-
|-
| Create palettes as a part of the package creation || Yes || Yes || Yes || No || No
| Create palettes as a part of the package creation || Yes || No || No
|-
|-
| Supports Installation to symbolic paths (user.lib) || Yes || Yes || Yes || No || N/A<sup>6</sup>
| Supports Installation to symbolic paths (user.lib) || Yes || No || N/A<sup>6</sup>
|-
|-
| Support Structure || [https://forums.jki.net/forum/5-vi-package-manager-vipm/ JKI online support] ||  || [https://forums.jki.net/forum/5-vi-package-manager-vipm/ JKI online support] || [https://forums.ni.com/t5/NI-Package-Manager-NIPM/bd-p/1023 NI Forums] || [https://gitlab.com/mgi/gpm/gpm/wikis/home GitLab Issue Tracking and Wiki]<sup>10</sup>
| Support Structure || [https://forums.jki.net/forum/5-vi-package-manager-vipm/ Free & Community] or Paid Direct || [https://forums.ni.com/t5/NI-Package-Manager-NIPM/bd-p/1023 NI Forums] || [https://gitlab.com/mgi/gpm/gpm/wikis/home GitLab Issue Tracking and Wiki]<sup>10</sup>
|-
|-
| Supports Pre Build Step || No || || Yes, G Code || Yes - via Source Distribution, G Code || No
| Supports Pre Build Step || Yes, G Code (Community & Pro) || Yes - via Source Distribution, G Code || No
|-
|-
| Supports Post Build Step || No || || Yes, G Code || Yes - via Source Distribution, G Code || No
| Supports Post Build Step || Yes, G Code (Community & Pro) || Yes - via Source Distribution, G Code || No
|-
|-
| Supports Pre Install Step || Yes, G Code || || Yes, G Code || Yes - via exe/bat (Advanced: must [https://forums.ni.com/t5/NI-Package-Management/Manually-Pack-and-Unpack-Packages/ta-p/3956905 pack the package]) || No
| Supports Pre Install Step || Yes, G Code (Community & Pro) || Yes - via exe/bat (Advanced: must [https://forums.ni.com/t5/NI-Package-Management/Manually-Pack-and-Unpack-Packages/ta-p/3956905 pack the package]) || No
|-
|-
| Supports Post Install Step || Yes, G Code || || Yes, G Code || Yes - via exe/bat (Configurable from LabVIEW IDE)|| No
| Supports Post Install Step || Yes, G Code (Community & Pro) || Yes - via exe/bat (Configurable from LabVIEW IDE)|| No
|-
|-
| Supports Pre Uninstall Step || Yes, G Code || || Yes, G Code || Yes - via exe/bat (Configurable from LabVIEW IDE)|| No
| Supports Pre Uninstall Step || Yes, G Code (Community & Pro) || Yes - via exe/bat (Configurable from LabVIEW IDE)|| No
|-
|-
| Supports Post Uninstall Step || Yes, G Code || || Yes, G Code || Yes - via exe/bat (Advanced: must [https://forums.ni.com/t5/NI-Package-Management/Manually-Pack-and-Unpack-Packages/ta-p/3956905 pack the package]) || No
| Supports Post Uninstall Step || Yes, G Code (Community & Pro) || Yes - via exe/bat (Advanced: must [https://forums.ni.com/t5/NI-Package-Management/Manually-Pack-and-Unpack-Packages/ta-p/3956905 pack the package]) || No
|-
|-
| Supports N post install/pre uninstall steps || No || || No || Yes || No
| Supports N post install/pre uninstall steps || No || Yes || No
|-
|-
| Supports N Post Install All steps|| No || || No || Yes || No
| Supports N Post Install All steps|| No || Yes || No
|-
|-
| Supports Automatic Dependency Scanning<sup>4</sup> || No || || Yes || No || Yes
| Supports Automatic Dependency Scanning<sup>4</sup> || Yes (Community & Pro) || No || Yes
|-
|-
| Has a dedicated package manager application || Yes || || Yes || Yes || Yes
| Has a dedicated package manager application || Yes || Yes || Yes
|-
|-
| Packages Searchable via Web Page || Yes || || Yes || No || Yes
| Packages Searchable via Web Page || Yes || No || Yes
|-
|-
| Has a community repository of packages || No || || No || No || Yes
| Has a community led, ungated repository of packages<sup>12</sup> || No || No || Yes
|-
|-
| Can list packages created by other package managers as dependencies<sup>7</sup> || No || || No || No || No
| Can list packages created by other package managers as dependencies<sup>7</sup> || No || No || No
|-
|-
| Supports 64 bit without manual intervention?<sup>3</sup> || Yes || || Yes|| Yes || No
| Supports 64 bit without manual intervention?<sup>3</sup> || Yes || Yes || No
|-
|-
| Supports offline\copies of repsoitories<sup>11</sup> || || || ||  ||  
| Supports offline\copies of repositories<sup>11</sup> || Yes (Pro) ||  || Yes
|}
|}


Line 96: Line 96:
|-
|-
| 11 || For some organizations, a connection to the internet is not allowed. This feature allows you to internet-based repositories and host them locally for your organization.
| 11 || For some organizations, a connection to the internet is not allowed. This feature allows you to internet-based repositories and host them locally for your organization.
|-
| 12 || A community package repository is not governed or gated by any organization. Community members are free to upload/download packages without oversight.
|}
|}
==External links==
==External links==
Line 101: Line 103:
* [https://www.ni.com/en-us/support/downloads/ni-package-manager.html NI Package Manager]
* [https://www.ni.com/en-us/support/downloads/ni-package-manager.html NI Package Manager]
* [https://gpackage.io G Package Manager]
* [https://gpackage.io G Package Manager]
[[Category:Code distribution]]

Latest revision as of 15:32, 28 August 2020

This is the comparison of package management solutions in the LabVIEW community.

Characteristic VI Package Manager (Community Non-Commercial, Free Commercial, Pro $599) NI Package Manager G Package Manager (GPM)
Installs With LabVIEW Yes Yes No
Created By JKI National Instruments MGI (Moore Good Ideas)
Year Released 2006 2017 2018
Open Source No No Yes
Language Written In G C# G
Free To Install Yes (Community & Free) Yes Yes
API Yes (Community & Pro) Yes Yes
Local repository management1 Yes (Pro) Yes Yes
Supports multiple LabVIEW versions from a single package Yes No Yes
Natively supports mass compile after install Yes No Yes
Scope of package installation2 LabVIEW IDE or OS File System OS File System Per Project5
Supports LabVIEW NXG No Yes No
Integrates Into LabVIEW IDE8 Yes No No
Integrates Into LabVIEW NXG IDE9 No Yes No
Create palettes as a part of the package creation Yes No No
Supports Installation to symbolic paths (user.lib) Yes No N/A6
Support Structure Free & Community or Paid Direct NI Forums GitLab Issue Tracking and Wiki10
Supports Pre Build Step Yes, G Code (Community & Pro) Yes - via Source Distribution, G Code No
Supports Post Build Step Yes, G Code (Community & Pro) Yes - via Source Distribution, G Code No
Supports Pre Install Step Yes, G Code (Community & Pro) Yes - via exe/bat (Advanced: must pack the package) No
Supports Post Install Step Yes, G Code (Community & Pro) Yes - via exe/bat (Configurable from LabVIEW IDE) No
Supports Pre Uninstall Step Yes, G Code (Community & Pro) Yes - via exe/bat (Configurable from LabVIEW IDE) No
Supports Post Uninstall Step Yes, G Code (Community & Pro) Yes - via exe/bat (Advanced: must pack the package) No
Supports N post install/pre uninstall steps No Yes No
Supports N Post Install All steps No Yes No
Supports Automatic Dependency Scanning4 Yes (Community & Pro) No Yes
Has a dedicated package manager application Yes Yes Yes
Packages Searchable via Web Page Yes No Yes
Has a community led, ungated repository of packages12 No No Yes
Can list packages created by other package managers as dependencies7 No No No
Supports 64 bit without manual intervention?3 Yes Yes No
Supports offline\copies of repositories11 Yes (Pro) Yes


Detail Number Additional Information
1 Repository types: A global repository is accessible to anyone. A local repository is created by an individual (company, etc.) and hosted on a local server.
2 Scope of Package Installation: determines if multiple versions of a package are allowed or if you may have only one version of a package.
3 GPM can place files anywhere. However, as of 0.2.0-35, GPackages installed for LabVIEW 64 bit will open, but cant find linked VIs. The GPackage(s) directories must be mass compiled to allow LabVIEW to relink the VIs to eachother.
4 Example
5 LabVIEW IDE Coming Soon
6 Coming Soon
7 Only packages of the same type can be listed as dependencies. For example, a VI Package can only depend on other VI Packages. A VI Package cannot depend on a NI Package.
8 There is no user experience to find, install, upgrade, remove, or autodetect packages from within the LabVIEW IDE.
9 NI Package manager is integrated into the NXG IDE so that the user may find the package responsible for installing missing gvis without leaving the IDE.
10 GPM is open source. The community can contribute to fix issues, add features and make support better.
11 For some organizations, a connection to the internet is not allowed. This feature allows you to internet-based repositories and host them locally for your organization.
12 A community package repository is not governed or gated by any organization. Community members are free to upload/download packages without oversight.

External links