Preserving Command Line Workflow for a Package Management System using ASCII DAG Visualization

by   Katherine E. Isaacs, et al.

Package managers provide ease of access to applications by removing the time-consuming and sometimes completely prohibitive barrier of successfully building, installing, and maintaining the software for a system. A package dependency contains dependencies between all packages required to build and run the target software. Package management system developers, package maintainers, and users may consult the dependency graph when a simple listing is insufficient for their analyses. However, users working in a remote command line environment must disrupt their workflow to visualize dependency graphs in graphical programs, possibly needing to move files between devices or incur forwarding lag. Such is the case for users of Spack, an open source package management system originally developed to ease the complex builds required by supercomputing environments. To preserve the command line workflow of Spack, we develop an interactive ASCII visualization for its dependency graphs. Through interviews with Spack maintainers, we identify user goals and corresponding visual tasks for dependency graphs. We evaluate the use of our visualization through a command line-centered study, comparing it to the system's two existing approaches. We observe that despite the limitations of the ASCII representation, our visualization is preferred by participants when approached from a command line interface workflow.


An Empirical Comparison of Dependency Network Evolution in Seven Software Packaging Ecosystems

Nearly every popular programming language comes with one or more package...

Navigating through the R packages for movement

The advent of miniaturized biologging devices has provided ecologists wi...

Refactoring Software Packages via Community Detection from Stability Point of View

As the complexity and size of software projects increases in real-world ...

An Empirical Investigation of Command-Line Customization

The interactive command line, also known as the shell, is a prominent me...

Interactive Visualization and Representation Analysis Applied to Glacier Segmentation

Interpretability has attracted increasing attention in earth observation...

Analyzing the Evolution of Inter-package Dependencies in Operating Systems: A Case Study of Ubuntu

An Operating System (OS) combines multiple interdependent software packa...

License Incompatibilities in Software Ecosystems

Contemporary software is characterized by reuse of components that are d...

Please sign up or login with your details

Forgot password? Click here to reset