Packages

Extended Date Time Format (EDTF) / ISO 8601-2 parsing and English language rendering

Current section

Files

Jump to
edtf mix.exs
Raw

mix.exs

defmodule EDTF.MixProject do
  use Mix.Project

  @version "2.0.1"
  @url "https://github.com/nulib/edtf_ex"

  def project do
    [
      app: :edtf,
      version: @version,
      elixir: "~> 1.15",
      deps: deps(),
      name: "EDTF",
      description:
        "Extended Date Time Format (EDTF) / ISO 8601-2 parsing and English language rendering",
      package: package(),
      source_url: @url,
      homepage: @url,
      docs: [
        main: "readme",
        extras: ["README.md"]
      ],
      test_coverage: [tool: ExCoveralls],
      elixirc_paths: elixirc_paths(Mix.env())
    ]
  end

  def cli do
    [
      preferred_envs: [
        coveralls: :test,
        "coveralls.circle": :test,
        "coveralls.detail": :test,
        "coveralls.post": :test,
        "coveralls.html": :test,
        docs: :docs,
        "hex.publish": :docs,
        vcr: :test,
        "vcr.delete": :test,
        "vcr.check": :test,
        "vcr.show": :test
      ]
    ]
  end

  # Run "mix help compile.app" to learn about applications.
  def application do
    [
      extra_applications: [:logger]
    ]
  end

  # Run "mix help deps" to learn about dependencies.
  defp deps do
    [
      {:credo, "~> 1.7", only: [:dev, :test], runtime: false},
      {:ex_doc, "~> 0.34", only: [:dev, :test, :docs], runtime: false},
      {:excoveralls, "~> 0.18", only: [:dev, :test], runtime: false},
      {:inflex28, "~> 2.1"},
      {:nimble_parsec, "~> 1.4"}
    ]
  end

  defp elixirc_paths(:docs), do: ["lib", "test/support"]
  defp elixirc_paths(:test), do: ["lib", "test/support"]
  defp elixirc_paths(_), do: ["lib"]

  defp package do
    [
      files: ["lib", "mix.exs", "README.md", "LICENSE.md"],
      maintainers: ["Brendan Quinn", "Karen Shaw", "Michael B. Klein"],
      licenses: ["MIT"],
      links: %{GitHub: @url},
      exclude_patterns: [".DS_Store"]
    ]
  end
end