travis badgeHex.pmdocsBuilt with Spacemacs

Aspis

Aspis is a package that helps you verify that the code in your project’s dependencies contains exactly what’s on their GitHub and no other malicious code.

NOTE: Aspis is still in early stage of development and might be missing some features.

Usage

To use Aspis, add it as a dependency in your project.

Once it’s in your deps, you can run $ mix aspis.check to see if any of the dependencies pulled into your project contain code that differs from the code on their GitHub.

To see the diff for a specific package, run $ mix aspis.diff <package name>.

Both of these mix tasks will exit with a non-zero code if any problems are found - the dependencies differ from their github repository, the github repository itself could not be found or the right commit could not be identified by Aspis.

Installation

The package can be installed by adding aspis to your list of dependencies in mix.exs:

def deps do
  [
    {:aspis, ">= 0.1.0", app: false, runtime: false, optional: true}
  ]
end

In order for Aspis to work correctly, you’ll need git and diff programs in your PATH.

FAQ

How do I know Aspis is not malicious itself?

TODO (deps options and maybe other ways)

How does it work?

TODO (conventions, heuristics, git and diff)