-
Notifications
You must be signed in to change notification settings - Fork 3
/
mix.exs
110 lines (97 loc) · 2.67 KB
/
mix.exs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# SPDX-License-Identifier: AGPL-3.0-or-later
# Zenflows is software that implements the Valueflows vocabulary.
# Zenflows is designed, written, and maintained by srfsh <[email protected]>
# Copyright (C) 2021-2023 Dyne.org foundation <[email protected]>.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
defmodule Zenflows.MixProject do
use Mix.Project
def project() do
[
app: :zenflows,
version: "0.4.0",
elixir: "~> 1.14", # erlang/otp 24-25
start_permanent: Mix.env() == :prod,
config_path: "conf/buildtime.exs",
deps: deps(),
releases: [
zenflows: [
include_executables_for: [:unix],
applications: [runtime_tools: :permanent],
],
],
default_release: :zenflows,
elixirc_paths: elixirc_paths(Mix.env()),
test_pattern: "*.test.exs",
warn_test_pattern: "*{.test.ex,_test.ex,_test.exs}",
# doc
name: "Zenflows",
source_url: "https://github.com/dyne/zenflows.git",
hompage_url: "https://github.com/dyne/zenflows",
docs: docs(),
]
end
def application() do
[
extra_applications: [:logger, :inets, :ssl],
mod: {Zenflows.Application, []},
]
end
defp deps() do
[
# db
{:ecto_sql, "~> 3.10"},
{:postgrex, ">= 0.0.0"},
{:decimal, "~> 2.1"},
# crypto
{:plug_crypto, "~> 1.2"},
# http
{:plug_cowboy, "~> 2.6"},
{:mint, "~> 1.5"},
{:castore, ">= 0.0.0"},
# graphql
{:absinthe, "~> 1.7"},
{:absinthe_plug, "~> 1.5"},
{:jason, "~> 1.4"},
# live reload
{:exsync, "~> 0.2", only: :dev},
# static analysis
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.3", only: [:dev], runtime: false},
# doc
{:ex_doc, "~> 0.29", only: :dev, runtime: false},
]
end
defp docs() do
[
main: "readme",
source_ref: "master",
extra_section: "DOCS",
extras: [
"README.md",
"docs/configuration-guide.md",
"docs/vf-intro-gql-iface.md",
"docs/software-licences.md",
"docs/dependency-management.md",
"docs/style-guide.md",
"docs/user-creation-flow.md",
"LICENSE",
"CONTRIBUTING.md",
],
output: ".docs"
]
end
defp elixirc_paths(:test), do: ["src/", "test/help/"]
defp elixirc_paths(_), do: ["src/"]
end