defmodule TableauExcerptExtension.MixProject do use Mix.Project @app :tableau_excerpt_extension @project_url "https://github.com/halostatue/tableau_excerpt_extension" @version "1.1.0" def project do [ app: @app, description: "A Social Media Account Extension for Tableau", version: @version, source_url: @project_url, name: "TableauExcerptExtension", elixir: "~> 1.18", build_embedded: Mix.env() == :prod, start_permanent: Mix.env() == :prod, deps: deps(), package: package(), docs: docs(), test_coverage: test_coverage(), elixirc_paths: elixirc_paths(Mix.env()), dialyzer: [ plt_add_apps: [:mix], plt_local_path: "priv/plts/project.plt", plt_core_path: "priv/plts/core.plt" ] ] end def application do [ extra_applications: [:logger] ] end def cli do [ preferred_envs: [ coveralls: :test, "coveralls.detail": :test, "coveralls.github": :test, "coveralls.html": :test, "coveralls.json": :test ] ] end defp elixirc_paths(:test), do: ["lib", "test/support"] defp elixirc_paths(_), do: ["lib"] defp package do [ maintainers: "Austin Ziegler", licenses: ["Apache-2.0"], files: ~w(lib .formatter.exs mix.exs *.md), links: %{ "Source" => @project_url, "Issues" => @project_url <> "/issues" } ] end defp deps do [ {:tableau, "~> 0.28"}, {:castore, "~> 1.0", optional: true}, {:credo, "~> 1.0", only: [:dev, :test], runtime: false}, {:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}, {:floki, "~> 0.36", only: [:test]}, {:excoveralls, "~> 0.18", only: [:test]}, {:ex_doc, "~> 0.29", only: [:dev, :test], runtime: false}, {:quokka, "~> 2.6", only: [:dev, :test], runtime: false} ] end defp docs do [ main: "TableauExcerptExtension", extras: [ "README.md", "guides/basic-usage.md": [ filename: "basic-usage", title: "Basic Usage" ], "guides/deduplicating-rendered-elements.md": [ filename: "deduplicating-rendered-elements", title: "Deduplicating Rendered Elements" ], "CONTRIBUTING.md": [filename: "CONTRIBUTING", title: "Contributing"], "CODE_OF_CONDUCT.md": [filename: "CODE_OF_CONDUCT", title: "Code of Conduct"], "CHANGELOG.md": [filename: "CHANGELOG", title: "CHANGELOG"], "LICENCE.md": [filename: "LICENCE", title: "Licence"], "licences/APACHE-2.0.txt": [filename: "APACHE-2.0", title: "Apache License, version 2.0"], "licences/dco.txt": [filename: "dco", title: "Developer Certificate of Origin"], "usage-rules.md": [filename: "usage-rules", title: "Agent Usage Rules"] ], groups_for_extras: [ Guides: ~r/guides\// ], source_ref: "v#{@version}", source_url: @project_url, canonical: "https://hexdocs.pm/#{@app}" ] end defp test_coverage do [ tool: ExCoveralls ] end end