Packages

Saxaboom is a data mapper that leverages SAX to extract information from documents, focused on low overhead and developer happiness.

Current section

Files

Jump to
saxaboom mix.exs
Raw

mix.exs

defmodule Saxaboom.MixProject do
use Mix.Project
@version "0.2.0"
def project do
[
app: :saxaboom,
name: "Saxaboom",
version: @version,
elixir: "~> 1.15",
license: "MIT",
start_permanent: Mix.env() == :prod,
description: description(),
package: package(),
docs: docs(),
deps: deps(),
elixirc_paths: elixirc_paths(Mix.env()),
test_coverage: test_coverage(),
source_url: "https://github.com/ducharmemp/saxaboom"
]
end
# Run "mix help compile.app" to learn about applications.
def application do
[
extra_applications: [:logger, :xmerl] ++ test_apps(Mix.env())
]
end
defp description() do
"""
Saxaboom is a data mapper that leverages SAX to extract information from documents, focused on low overhead and
developer happiness.
"""
end
defp docs() do
[
extras: [
"CHANGELOG.md",
{:LICENSE, [title: "License"]},
"README.md",
"BENCH.md"
],
main: "readme",
source_url: "https://github.com/ducharmemp/saxaboom",
source_ref: "v#{@version}",
skip_undefined_reference_warnings_on: ["CHANGELOG.md"]
]
end
defp package() do
[
maintainers: ["Matt DuCharme"],
licenses: ["MIT"],
links: %{"GitHub" => "https://github.com/ducharmemp/saxaboom"}
]
end
# Run "mix help deps" to learn about dependencies.
defp deps do
[
{:erlsom, "~> 1.5", optional: true},
{:saxy, "~> 1.5", optional: true},
{:stream_split, "~> 0.1.7"},
{:mox, "~> 0.1.0", only: :test},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.4", only: [:dev], runtime: false},
{:ex_doc, ">= 0.0.0", only: :dev, runtime: false}
]
end
defp elixirc_paths(:test), do: ["lib", "test/support"]
defp elixirc_paths(_), do: ["lib"]
defp test_apps(:test), do: [:erlsom]
defp test_apps(_), do: []
def test_coverage() do
[
ignore_modules: [
~r/\.?Support\./,
# This is tested indirectly by using the macros
Saxaboom.Mapper
]
]
end
end