Current section

Files

Jump to
forge mix.exs
Raw

mix.exs

defmodule Forge.MixProject do
use Mix.Project
@version File.cwd!() |> Path.join("version") |> File.read!() |> String.trim()
@elixir_version File.cwd!() |> Path.join(".elixir_version") |> File.read!() |> String.trim()
@otp_version File.cwd!() |> Path.join(".otp_version") |> File.read!() |> String.trim()
def get_version, do: @version
def get_elixir_version, do: @elixir_version
def get_otp_version, do: @otp_version
def project do
[
app: :forge,
version: @version,
elixir: @elixir_version,
description: description(),
package: package(),
elixirc_paths: elixirc_paths(Mix.env()),
compilers: Mix.compilers(),
start_permanent: Mix.env() == :prod,
deps: deps(),
# Docs
name: "Forge",
source_url: "https://github.com/arcblock/forge",
homepage_url: "https://github.com/arcblock/forge",
docs: [
main: "Forge",
extras: ["README.md"]
]
]
end
# Run "mix help compile.app" to learn about applications.
def application do
[
extra_applications: [:logger]
]
end
defp elixirc_paths(:test), do: ["lib", "test/support"]
defp elixirc_paths(:dev), do: ["lib", "test/support"]
defp elixirc_paths(_), do: ["lib"]
# Run "mix help deps" to learn about dependencies.
defp deps do
[
# Normal dependencies
{:ex_abci, "~> 0.4.0"},
{:httpoison, "~> 1.0"},
{:keccakf1600, "~> 2.0", hex: :keccakf1600_orig},
{:libsecp256k1, "~> 0.1.3"},
{:merkle_patricia_tree, "~> 0.2.7"},
{:protobuf, "~> 0.5.3"},
# dev & test
{:credo, "~> 1.0.0-rc1", only: [:dev, :test]},
{:dialyxir, "~> 0.5", only: [:dev], runtime: false},
{:ex_doc, "~> 0.19.0", only: [:dev, :test], runtime: false},
{:pre_commit_hook, "~> 1.2", only: [:dev, :test], runtime: false}
]
end
defp description do
"""
Your awesome library.
"""
end
defp package do
[
files: [
"config",
"lib",
"mix.exs",
"README*",
"version",
".elixir_version",
".otp_version"
],
licenses: ["Apache 2.0"],
maintainers: ["tyr.chen@gmail.com"],
links: %{
"GitHub" => "https://github.com/arcblock/forge",
"Docs" => "https://hexdocs.pm/forge"
}
]
end
end