Current section
Files
Jump to
Current section
Files
mix.exs
defmodule Digestif.MixProject do
use Mix.Project
@version "0.2.0"
def project do
[
app: :digestif,
version: @version,
elixir: "~> 1.20",
elixirc_paths: elixirc_paths(Mix.env()),
# Optional backends may be absent in consuming applications.
elixirc_options: [infer_signatures: [:argon2_elixir]],
start_permanent: Mix.env() == :prod,
deps: deps(),
description: "Robust password hashing with a small Elixir API",
package: package(),
docs: docs(),
test_coverage: [summary: [threshold: 90]]
]
end
def application do
[
extra_applications: [:logger]
]
end
defp elixirc_paths(:test), do: ["lib", "test/support"]
defp elixirc_paths(_env), do: ["lib"]
defp deps do
[
{:argon2_elixir, "~> 4.0"},
{:pbkdf2_elixir, "~> 2.3", optional: true},
{:bcrypt_elixir, "~> 3.0", optional: true},
{:stream_data, "~> 1.2", only: [:dev, :test]},
{:ex_doc, "~> 0.38", only: :dev, runtime: false},
{:mix_audit, "~> 2.1", only: [:dev, :test], runtime: false}
]
end
defp package do
[
licenses: ["MIT"],
links: %{"Documentation" => "https://hexdocs.pm/digestif"},
files: ~w(lib .formatter.exs mix.exs README.md LICENSE)
]
end
defp docs do
[
main: "readme",
extras: ["README.md"],
groups_for_modules: [
"Hashing algorithms": [Digestif.Argon2id, Digestif.PBKDF2, Digestif.Bcrypt],
Extension: [Digestif.Hasher]
]
]
end
end