Packages

An opinionated rabbitmq client wrapper for `rabbit` library.

Current section

Files

Jump to
buck mix.exs
Raw

mix.exs

defmodule Buck.MixProject do
use Mix.Project
@source_url "https://github.com/bytecheck/buck"
@default_branch "main"
def project do
[
app: :buck,
version: _version(),
elixir: "~> 1.18",
start_permanent: Mix.env() == :prod,
deps: _deps(),
docs: _docs(),
package: _package(),
elixirc_paths: _elixirc_paths(Mix.env()),
description: _description()
]
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(_), do: ["lib"]
# Run "mix help deps" to learn about dependencies.
defp _deps do
[
{:amqp, "~> 4.0"},
{:rabbit, "~> 0.20"},
{:uuid, "~> 1.1"},
# test/docs
{:ex_doc, "~> 0.36", only: [:test], runtime: false},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false}
]
end
defp _version do
case Regex.run(~r/^v([\d\.a-z_A-Z\-]+)/, File.read!(Path.join(__DIR__, ".app_version")),
capture: :all_but_first
) do
[version] -> version
nil -> "0.0.0-default"
end
end
defp _docs do
[
main: "readme",
source_url: @source_url,
extras: ["README.md", "CHANGELOG.md": [title: "Changelog"]]
]
end
defp _description do
"An opinionated rabbitmq client wrapper for `rabbit` library."
end
defp _package do
[
maintainers: ["bytecheck"],
name: "buck",
files: ~w(lib .formatter.exs mix.exs README.md .app_version LICENSE CHANGELOG.md),
licenses: ["MIT"],
links: %{
"ChangeLog" => "#{@source_url}/blob/#{@default_branch}/CHANGELOG.md",
"GitHub" => "#{@source_url}"
}
]
end
end