DotSlash (dotslash) is a command-line tool that lets you represent a set of platform-specific, heavyweight executables with an equivalent small, easy-to-read text file. In turn, this makes it efficient to store executables in source control without hurting repository size. This paves the way for checking build toolchains and other tools directly into the repo, reducing dependencies on the host environment and thereby facilitating reproducible builds.
The dotslash package allows you to use DotSlash in your Python projects without having to install DotSlash globally.
Table of Contents
The dotslash.locate function returns the path to the DotSlash binary that was installed by this package.
>>> import dotslash
>>> dotslash.locate()
'/root/.local/bin/dotslash'The installed DotSlash binary can be invoked directly by running the dotslash module as a script.
python -m dotslash path/to/dotslash-file.json
When building or installing from this directory, the DOTSLASH_VERSION environment variable must be set to the version of DotSlash to use. A preceding v is accepted but not required.
DOTSLASH_VERSION=0.5.8 python -m build
This will use the binaries from DotSlash's GitHub releases. If there is a directory of GitHub release assets, you can use that directly with the DOTSLASH_SOURCE environment variable.
DOTSLASH_VERSION=0.5.8 DOTSLASH_SOURCE=path/to/dotslash-assets python -m build
The DotSlash source is set to release by default.
DotSlash is licensed under both the MIT license and Apache-2.0 license; the exact terms can be found in the LICENSE-MIT and LICENSE-APACHE files, respectively.