Current section

Files

Jump to
pathex mix.exs
Raw

mix.exs

defmodule Pathex.MixProject do
use Mix.Project
@version "2.5.2"
def project do
[
app: :pathex,
version: @version,
elixir: "~> 1.13",
start_permanent: Mix.env() == :prod,
description: description(),
package: package(),
deps: deps(),
name: "Pathex",
source_url: "https://github.com/hissssst/pathex",
docs: docs()
# compilers: [:unused | Mix.compilers()],
# unused: [{:_, :__using__, :_}, {:_, :__impl__, :_}]
]
end
def application, do: []
def description do
"Functional lenses for nested structures"
end
defp package do
[
description: description(),
licenses: ["BSD-2-Clause"],
files: [
"lib",
"mix.exs",
"README.md",
".formatter.exs"
],
maintainers: [
"Georgy Sychev"
],
links: %{
GitHub: "https://github.com/hissssst/pathex",
Changelog: "https://github.com/hissssst/pathex/blob/master/CHANGELOG.md"
}
]
end
defp deps do
[
# # Uncomment for development
{:dialyxir, "~> 1.0", only: :dev, runtime: false},
{:gradient, github: "esl/gradient", only: :dev, runtime: false},
{:mix_unused, "~> 0.3", only: :dev, runtime: false},
{:credo, "~> 1.5", only: :dev, runtime: false},
{:ex_doc, "~> 0.28", only: :dev, runtime: false}
]
end
# Docs section
defp docs do
[
source_ref: "v#{@version}",
main: "readme",
extra_section: "GUIDES",
groups_for_modules: groups_for_modules(),
extras: ["README.md" | Path.wildcard("guides/*/*")] ++ ["CHANGELOG.md"],
groups_for_extras: groups_for_extras()
]
end
defp groups_for_extras do
[
Tutorials: ~r/guides\/tutorials\/.*/
]
end
defp groups_for_modules do
[
Public: [
Pathex,
Pathex.Lenses,
Pathex.Lenses.Recur,
Pathex.Combinator,
Pathex.Debug,
Pathex.Accessibility,
Pathex.Short
],
"Code generation": [
Pathex.Builder,
Pathex.Builder.Code
],
"Operation modes": [
Pathex.Combination,
Pathex.Operations,
Pathex.QuotedParser,
Pathex.Parser
],
"Viewers generation": [
Pathex.Builder.Viewer,
Pathex.Builder.MatchableViewer,
Pathex.Builder.SimpleViewer
],
"Updaters generation": [
Pathex.Builder.Setter,
Pathex.Builder.ForceUpdater,
Pathex.Builder.SimpleUpdater,
Pathex.Builder.SimpleDeleter
],
"Compostitions generation": [
Pathex.Builder.Composition,
Pathex.Builder.Composition.And,
Pathex.Builder.Composition.Concat,
Pathex.Builder.Composition.Or
],
"Deletion generation": [
Pathex.Builder.SimpleDeleter
],
"Inspection generation": [
Pathex.Builder.Inspector
],
Lenses: [
Pathex.Lenses.All,
Pathex.Lenses.Any,
Pathex.Lenses.Filtering,
Pathex.Lenses.Matching,
Pathex.Lenses.Recur,
Pathex.Lenses.Some,
Pathex.Lenses.Star
],
Utilities: [
Pathex.Common
]
]
end
end