defmodule ExMgrs.MixProject do use Mix.Project def project do [ app: :ex_mgrs, version: "0.1.1", elixir: "~> 1.18", start_permanent: Mix.env() == :prod, deps: deps(), description: description(), package: package(), git_ops: git_ops() ] 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 [ {:rustler, "~> 0.36", runtime: false}, {:rustler_precompiled, "~> 0.8"}, {:ex_doc, ">= 0.0.0", only: :dev, runtime: false}, {:git_ops, "~> 2.6", only: :dev, runtime: false}, {:git_hooks, "~> 0.8", only: :dev, runtime: false} ] end defp git_ops do [ mix_project: __MODULE__, changelog_file: "CHANGELOG.md", repository_url: "https://github.com/cortfritz/ex_mgrs", types: [ feat: [header: "Features"], fix: [header: "Bug Fixes"], perf: [header: "Performance"], docs: [header: "Documentation", hidden?: true], chore: [header: "Chores", hidden?: true], ci: [header: "CI", hidden?: true], refactor: [header: "Refactoring", hidden?: true], test: [header: "Tests", hidden?: true], build: [header: "Build", hidden?: true], style: [header: "Style", hidden?: true] ], version_tag_prefix: "v" ] end defp description do "Elixir library for converting between latitude/longitude coordinates and MGRS (Military Grid Reference System) coordinates using embedded Rust geoconvert library." end defp package do [ name: "ex_mgrs", files: [ "lib", "native/geoconvert_nif/src", "native/geoconvert_nif/Cargo.toml", "native/geoconvert_embedded", "priv/native", "priv/egm96-15.bin", "checksum-*.exs", "mix.exs", "README.md", "CHANGELOG.md", "LICENSE*" ], maintainers: ["Cort Fritz"], licenses: ["MIT"], links: %{ "GitHub" => "https://github.com/cortfritz/ex_mgrs", "Changelog" => "https://github.com/cortfritz/ex_mgrs/blob/main/CHANGELOG.md", "Sponsor" => "https://github.com/sponsors/cortfritz" } ] end end