defmodule Ksc.MixProject do
use Mix.Project
@version "0.2.2"
@source_url "https://github.com/PJUllrich/ksc"
def project do
[
app: :ksc,
version: @version,
elixir: "~> 1.17",
start_permanent: Mix.env() == :prod,
# Support files under test/support are loaded manually by test_helper.exs,
# so exclude them from mix test's automatic test-file discovery.
test_ignore_filters: [&String.starts_with?(&1, "test/support/")],
deps: deps(),
description: description(),
package: package(),
docs: docs(),
name: "Ksc",
source_url: @source_url
]
end
def application do
[
extra_applications: [:logger]
]
end
defp deps do
[
{:yaml_elixir, "~> 2.12"},
{:ex_doc, "~> 0.34", only: :dev, runtime: false}
]
end
defp description do
"""
An Elixir implementation of the Kaitai Struct compiler and runtime.
Compiles .ksy format descriptions into Elixir modules that parse binary data into structured maps.
"""
end
defp package do
[
maintainers: ["Peter Ullrich"],
licenses: ["MIT"],
links: %{"GitHub" => @source_url},
files: ~w(lib mix.exs README.md LICENSE)
]
end
defp docs do
[
main: "readme",
source_ref: "v#{@version}",
source_url: @source_url,
extras: ["README.md", "LICENSE"]
]
end
end