npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@dx-works/voyenv

v0.4.1

Published

A CLI tool to configure Voyager releases and environments

Downloads

4

Readme

Voyenv

Voyenv is the official package manager for Voyager. Use the tool for packing Voyager releases with the instruments and runtime dependencies you need.

Installation & Usage

Install Voyenv either as a global npm package or download the latest release from Github.

NPM Installation

Install Voyenv through the NPM package manager. We have created a wrapper around the voyenv jar (using jdeploy) to easily install and upgrade the tool.

npm install @dx-works/voyenv -g

Verify the installation by running:

voyenv -version

Usage

To generate a Voyager release, open a command line in the folder you want to generate the release in. Before running the command you have to create a yml file described in the Configuration section, e.g. my-voyenv.yml.

Run the following command in a terminal window:

voyenv [path/to/voyenv/file]

The path to the voyenv.yml file is optional. If none is specified voyenv will search for a file named voyenv.yml in the current working directory. The voyager release will also be created in the current working directory.

Github Release Download

Download the latest release from Github. Unpack the zip file to a folder and open a terminal window in the newly extracted folder.

Run the following command to verify the installation:

java -jar voyenv.jar -version

Usage

From the voyenv installation folder run:

java -jar  voyenv.jar [path/to/voyenv/file.yml]

The path to the voyenv.yml file is optional. If none is specified voyenv will search for a file named voyenv.yml in the current working directory. The voyager release will also be created in the current working directory.

Configuration

Voyenv declares the voyager release in a yml file. A voyenv.yml example:

# Name of the release (a folder with this name will be created in the working directory)
name: voyager-test-1
# The Voyager version to download. See at https://github.com/dxworks/voyager/releases 
voyager_version: v1.4.1
# A list of instruments to download (from Github only)
instruments:
    # Name in owner/repo format
  - name: dxworks/voyager-git-log-instrument
    # The tag to find the specific release / tag
    # If not specified voyenv pulls all tags matching v*-voyager 
    # and chooses the one with the highest semver
    tag: v1.0.0
    # The asset to download from the release 
    # If not specified, the source code zip for the tag will be downloaded
    asset: git-log.zip
  - name: dxworks/lizard
#    tag: v1.17.9-voyager
  - name: dxworks/metrixplusplus
#    tag: v1.7.1-voyager
  - name: dxworks/inspector-git
    asset: iglog.zip
  - name: dxworks/dude
    asset: dude-voyager.zip
  - name: dxworks/insider
    asset: insider-voyager.zip
  - name: dxworks/honeydew
    asset: honeydew.zip
  - name: dxworks/jafax
    asset: jafax.zip
  - name: dxworks/maven-miner
    asset: maven-miner-voyager.zip
  - name: dxworks/npm-miner
    asset: npm-miner-voyager.zip

# A list of Github tokens. To get the latest tagged release of a voyager instrument,
# voyenv uses the Github Rest API. Due to rate limits of the Github Rest API
# it might be the case that the voyenv installation will stop due to rate limits.
# To avoid this, generate a Github Personal Access token and add it here
tokens:

# A map of runtimes please check the runtimes configuration section for more details
runtimes:
  java:
    version: 11
    platform: mac
    arch: x64
  python:
    version: 3.9.4
    platform: mac
    arch: x86_64

Instruments Configuration

TBA

Runtimes Configuration

Currently, Voyenv only supports adding Java and Python runtime environments.

The options you have to configure the two runtimes are:

    # get java versions from https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/tag/jdk-11.0.11%2B9_openj9-0.26.0 or api from https://api.adoptopenjdk.net/q/swagger-ui/#/Assets/searchReleases
    # getting java options by calling links like https://api.adoptopenjdk.net/v3/assets/feature_releases/11/ga?architecture=x64&jvm_impl=hotspot&os=mac
    java:
        version: 11.1
        platform: windows | linux | mac
        arch: x86 | x64

    # get python runtimes from https://github.com/indygreg/python-build-standalone/releases
    python:
        version: 3.9.1
        platform: windows | linux | mac
        arch: x86 | x64 | ...
    

Official Instruments

This is a list of official Voyager instruments that the dxworks team recognizes.

Software Metadata

Git Log

  - name: dxworks/voyager-git-log-instrument
    tag: v1.0.0
    asset: git-log.zip

Iglog

  - name: dxworks/inspector-git
    asset: iglog.zip

Code Analyzers

Insider

  - name: dxworks/insider
    asset: insider-voyager.zip

DuDe

  - name: dxworks/dude
    asset: dude-voyager.zip

Lizard

  - name: dxworks/lizard
#    tag: v1.17.9-voyager

Metrix++

  - name: dxworks/metrixplusplus
#    tag: v1.7.1-voyager

Fact Extractors

Honeydew

  - name: dxworks/honeydew
    asset: honeydew.zip

JaFaX

  - name: dxworks/jafax
    asset: jafax.zip

Library Extractors

MaMi

  - name: dxworks/maven-miner
    asset: maven-miner-voyager.zip

NoMi

  - name: dxworks/npm-miner
    asset: npm-miner-voyager.zip

Acknowledgement

Thanks to the jdeploy for allowing us to easily deploy to npm.

License

The current software is distributed under the Apache License 2.0