elixir-thrift/mix.exs
Jon Parise 226a1b24ef
Explicitly set source_ref to "master" (#567)
ex_doc 0.26.0 changes this value's default to "main".
2021-11-22 08:37:43 -08:00

112 lines
2.6 KiB
Elixir

defmodule Thrift.Mixfile do
@moduledoc false
use Mix.Project
@description """
Elixir implementation of the Thrift service framework
This package includes support for parsing Thrift IDL files, working with the
Thrift binary protocol, and building high-performance clients and servers.
"""
@version "2.0.0-dev"
@project_url "https://github.com/pinterest/elixir-thrift"
def project do
[
app: :thrift,
version: @version,
elixir: "~> 1.7",
deps: deps(),
# Build Environment
elixirc_paths: elixirc_paths(Mix.env()),
compilers: [:leex, :yecc, :erlang, :elixir, :app],
# Testing
test_coverage: [tool: ExCoveralls],
preferred_cli_env: [
coveralls: :test,
"coveralls.detail": :test,
"coveralls.html": :test,
"coveralls.post": :test
],
# URLs
source_url: @project_url,
homepage_url: @project_url,
# Hex
description: @description,
package: package(),
# Dialyzer
dialyzer: [
plt_add_deps: :app_tree,
plt_add_apps: [:mix]
],
# Docs
name: "Thrift",
docs: [
main: "Thrift",
extra_section: "Guides",
extras: [
"ADOPTERS.md": [title: "Adopters"],
"CONTRIBUTING.md": [title: "Contributing"],
"example/README.md": [filename: "example", title: "Example Project"]
],
source_ref: "master",
source_url: @project_url,
groups_for_modules: [
"Abstract Syntax Tree": ~r"Thrift.AST.*",
Clients: ["Thrift.Binary.Framed.Client"],
Servers: ["Thrift.Binary.Framed.Server"]
]
]
]
end
def application do
[
extra_applications: [:logger]
]
end
defp elixirc_paths(:test), do: ["lib", "test/support/lib"]
defp elixirc_paths(_), do: ["lib"]
defp deps do
[
# Development
{:ex_doc, "~> 0.20", only: :dev, runtime: false},
{:excoveralls, "~> 0.12", only: :test, runtime: false},
{:credo, "~> 1.0", only: :dev, runtime: false},
{:dialyxir, "~> 1.0", only: :dev, runtime: false},
# Runtime
{:connection, "~> 1.0"},
{:ranch, "~> 1.6"},
{:telemetry, "~> 1.0"}
]
end
defp package do
[
maintainers: [
"Steve Cohen",
"James Fish",
"Preston Guillory",
"Michael Oliver",
"Jon Parise",
"Dan Swain"
],
licenses: ["Apache 2.0"],
links: %{"GitHub" => @project_url},
files:
~w(README.md ADOPTERS.md CONTRIBUTING.md LICENSE mix.exs lib) ++
~w(src/thrift_lexer.xrl src/thrift_parser.yrl)
]
end
end