2023-08-07 15:13:01 +12:00
|
|
|
defmodule AshCubDB.MixProject do
|
|
|
|
use Mix.Project
|
|
|
|
|
2024-05-11 15:32:18 +12:00
|
|
|
@version "0.6.2"
|
2023-08-07 15:13:01 +12:00
|
|
|
|
|
|
|
@moduledoc """
|
|
|
|
A CubDB data layer for `Ash` resources.
|
|
|
|
"""
|
|
|
|
|
|
|
|
def project do
|
|
|
|
[
|
|
|
|
app: :ash_cubdb,
|
|
|
|
version: @version,
|
|
|
|
elixir: "~> 1.15",
|
|
|
|
start_permanent: Mix.env() == :prod,
|
2023-08-07 17:47:06 +12:00
|
|
|
consolidate_protocols: Mix.env() != :test,
|
|
|
|
elixirc_paths: elixirc_paths(Mix.env()),
|
2023-08-07 15:13:01 +12:00
|
|
|
deps: deps(),
|
|
|
|
description: @moduledoc,
|
|
|
|
package: package(),
|
2024-02-05 16:00:21 +13:00
|
|
|
source_url: "https://harton.dev/james/ash_cubdb",
|
|
|
|
homepage_url: "https://harton.dev/james/ash_cubdb",
|
2023-08-07 17:47:06 +12:00
|
|
|
aliases: aliases(),
|
|
|
|
dialyzer: [plt_add_apps: [:faker, :smokestack]],
|
|
|
|
docs: [
|
2023-10-02 16:15:38 +13:00
|
|
|
main: "readme",
|
2023-08-07 17:47:06 +12:00
|
|
|
extra_section: "Guides",
|
|
|
|
formatters: ["html"],
|
|
|
|
filter_modules: ~r/^Elixir.AshCubDB/,
|
|
|
|
source_url_pattern:
|
2024-02-05 16:00:21 +13:00
|
|
|
"https://harton.dev/james/ash_cub_db/src/branch/main/%{path}#L%{line}",
|
2024-01-15 10:19:23 +13:00
|
|
|
extras: [
|
|
|
|
"README.md",
|
2024-03-07 19:25:52 +13:00
|
|
|
"CHANGELOG.md",
|
2024-02-05 16:00:30 +13:00
|
|
|
"documentation/dsls/DSL:-AshCubDB.DataLayer.md"
|
2023-09-30 10:30:54 +13:00
|
|
|
],
|
2024-01-15 10:19:23 +13:00
|
|
|
groups_for_extras: [
|
|
|
|
Tutorials: ~r'documentation/tutorials',
|
|
|
|
"How To": ~r'documentation/how_to',
|
|
|
|
Topics: ~r'documentation/topics',
|
|
|
|
DSLs: ~r'documentation/dsls'
|
|
|
|
]
|
2023-08-07 17:47:06 +12:00
|
|
|
]
|
2023-08-07 15:13:01 +12:00
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
def package do
|
|
|
|
[
|
|
|
|
maintainers: ["James Harton <james@harton.nz>"],
|
|
|
|
licenses: ["HL3-FULL"],
|
|
|
|
links: %{
|
2024-03-07 19:25:52 +13:00
|
|
|
"Source" => "https://harton.dev/james/ash_cubdb",
|
|
|
|
"GitHub" => "https://github.com/jimsynz/ash_cubdb",
|
|
|
|
"Changelog" => "https://docs.harton.nz/james/ash_cubdb/changelog.html",
|
|
|
|
"Sponsor" => "https://github.com/sponsors/jimsynz"
|
2023-08-07 15:13:01 +12:00
|
|
|
}
|
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
# Run "mix help compile.app" to learn about applications.
|
|
|
|
def application do
|
|
|
|
[
|
|
|
|
extra_applications: [:logger],
|
|
|
|
mod: {AshCubDB.Application, []}
|
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
# Run "mix help deps" to learn about dependencies.
|
|
|
|
defp deps do
|
|
|
|
opts = [only: ~w[dev test]a, runtime: false]
|
|
|
|
|
|
|
|
[
|
2024-05-11 15:31:52 +12:00
|
|
|
{:ash, "~> 3.0"},
|
2023-08-07 15:13:01 +12:00
|
|
|
{:cubdb, "~> 2.0"},
|
2024-03-28 10:27:46 +13:00
|
|
|
{:spark, "~> 2.1"},
|
2024-01-15 10:19:23 +13:00
|
|
|
{:earmark, ">= 0.0.0"},
|
2023-08-07 15:13:01 +12:00
|
|
|
{:credo, "~> 1.7", opts},
|
|
|
|
{:dialyxir, "~> 1.3", opts},
|
|
|
|
{:doctor, "~> 0.21", opts},
|
2024-03-01 23:18:10 +13:00
|
|
|
{:ex_check, "~> 0.16", opts},
|
2023-08-07 15:13:01 +12:00
|
|
|
{:ex_doc, ">= 0.0.0", opts},
|
2024-02-29 19:28:40 +13:00
|
|
|
{:faker, "~> 0.18", opts},
|
2023-08-07 15:13:01 +12:00
|
|
|
{:git_ops, "~> 2.6", opts},
|
2023-08-07 17:47:06 +12:00
|
|
|
{:mix_audit, "~> 2.1", opts},
|
2024-05-29 10:11:31 +12:00
|
|
|
{:smokestack, "~> 0.9.0", opts}
|
2023-08-07 15:13:01 +12:00
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
defp aliases do
|
|
|
|
[
|
2023-08-07 17:47:06 +12:00
|
|
|
"spark.formatter": "spark.formatter --extensions=AshCubDB.DataLayer",
|
|
|
|
"spark.cheat_sheets": "spark.cheat_sheets --extensions=AshCubDB.DataLayer"
|
2023-08-07 15:13:01 +12:00
|
|
|
]
|
|
|
|
end
|
2023-08-07 17:47:06 +12:00
|
|
|
|
|
|
|
defp elixirc_paths(env) when env in ~w[dev test]a, do: ~w[lib test/support]
|
|
|
|
defp elixirc_paths(_), do: ~w[lib]
|
2023-08-07 15:13:01 +12:00
|
|
|
end
|