2015-01-07 01:44:59 +00:00
|
|
|
defmodule Thrift.Mixfile do
|
2017-02-07 20:11:03 +00:00
|
|
|
@moduledoc false
|
2015-01-07 01:44:59 +00:00
|
|
|
use Mix.Project
|
|
|
|
|
2016-12-31 00:09:25 +00:00
|
|
|
@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"
|
2016-01-19 02:20:00 +00:00
|
|
|
@project_url "https://github.com/pinterest/elixir-thrift"
|
|
|
|
|
2015-01-07 01:44:59 +00:00
|
|
|
def project do
|
2018-07-30 00:08:22 +00:00
|
|
|
[
|
|
|
|
app: :thrift,
|
|
|
|
version: @version,
|
2020-11-23 18:33:20 +00:00
|
|
|
elixir: "~> 1.7",
|
2018-07-30 00:08:22 +00:00
|
|
|
deps: deps(),
|
2016-01-19 02:20:00 +00:00
|
|
|
|
2018-07-30 00:08:22 +00:00
|
|
|
# Build Environment
|
|
|
|
elixirc_paths: elixirc_paths(Mix.env()),
|
|
|
|
compilers: [:leex, :yecc, :erlang, :elixir, :app],
|
2016-01-19 02:20:00 +00:00
|
|
|
|
2018-07-30 00:08:22 +00:00
|
|
|
# Testing
|
|
|
|
test_coverage: [tool: ExCoveralls],
|
|
|
|
preferred_cli_env: [
|
|
|
|
coveralls: :test,
|
|
|
|
"coveralls.detail": :test,
|
|
|
|
"coveralls.html": :test,
|
|
|
|
"coveralls.post": :test
|
|
|
|
],
|
2016-01-19 02:20:00 +00:00
|
|
|
|
2018-07-30 00:08:22 +00:00
|
|
|
# URLs
|
|
|
|
source_url: @project_url,
|
|
|
|
homepage_url: @project_url,
|
2016-01-19 02:20:00 +00:00
|
|
|
|
2018-07-30 00:08:22 +00:00
|
|
|
# Hex
|
|
|
|
description: @description,
|
|
|
|
package: package(),
|
2016-02-02 18:34:09 +00:00
|
|
|
|
2018-07-30 00:08:22 +00:00
|
|
|
# Dialyzer
|
|
|
|
dialyzer: [
|
2018-08-21 21:53:49 +00:00
|
|
|
plt_add_deps: :app_tree,
|
2018-08-22 20:19:30 +00:00
|
|
|
plt_add_apps: [:mix]
|
2018-07-30 00:08:22 +00:00
|
|
|
],
|
2016-12-30 21:12:41 +00:00
|
|
|
|
2018-07-30 00:08:22 +00:00
|
|
|
# Docs
|
|
|
|
name: "Thrift",
|
|
|
|
docs: [
|
2018-08-01 18:26:26 +00:00
|
|
|
main: "Thrift",
|
2018-09-04 20:41:47 +00:00
|
|
|
extra_section: "Guides",
|
2018-08-29 00:12:45 +00:00
|
|
|
extras: [
|
|
|
|
"ADOPTERS.md": [title: "Adopters"],
|
|
|
|
"CONTRIBUTING.md": [title: "Contributing"],
|
2018-09-04 20:41:47 +00:00
|
|
|
"example/README.md": [filename: "example", title: "Example Project"]
|
2018-08-29 00:12:45 +00:00
|
|
|
],
|
2021-11-22 16:37:43 +00:00
|
|
|
source_ref: "master",
|
2018-08-01 18:26:26 +00:00
|
|
|
source_url: @project_url,
|
|
|
|
groups_for_modules: [
|
2018-08-21 22:45:50 +00:00
|
|
|
"Abstract Syntax Tree": ~r"Thrift.AST.*",
|
2018-08-22 18:45:41 +00:00
|
|
|
Clients: ["Thrift.Binary.Framed.Client"],
|
|
|
|
Servers: ["Thrift.Binary.Framed.Server"]
|
2018-08-01 18:26:26 +00:00
|
|
|
]
|
2018-07-30 00:08:22 +00:00
|
|
|
]
|
|
|
|
]
|
2015-01-07 01:44:59 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
def application do
|
2016-12-25 01:29:44 +00:00
|
|
|
[
|
2018-08-06 18:54:28 +00:00
|
|
|
extra_applications: [:logger]
|
2016-12-25 01:29:44 +00:00
|
|
|
]
|
2016-01-05 04:33:19 +00:00
|
|
|
end
|
|
|
|
|
2016-12-30 22:34:17 +00:00
|
|
|
defp elixirc_paths(:test), do: ["lib", "test/support/lib"]
|
2018-07-30 00:08:22 +00:00
|
|
|
defp elixirc_paths(_), do: ["lib"]
|
2016-11-30 19:31:59 +00:00
|
|
|
|
2016-01-19 02:20:00 +00:00
|
|
|
defp deps do
|
2018-07-30 00:08:22 +00:00
|
|
|
[
|
2018-07-30 14:40:00 +00:00
|
|
|
# Development
|
2019-04-08 13:23:41 +00:00
|
|
|
{:ex_doc, "~> 0.20", only: :dev, runtime: false},
|
2019-11-25 19:14:55 +00:00
|
|
|
{:excoveralls, "~> 0.12", only: :test, runtime: false},
|
2018-11-21 23:23:53 +00:00
|
|
|
{:credo, "~> 1.0", only: :dev, runtime: false},
|
2020-03-16 13:33:01 +00:00
|
|
|
{:dialyxir, "~> 1.0", only: :dev, runtime: false},
|
2018-07-30 14:40:00 +00:00
|
|
|
|
|
|
|
# Runtime
|
2016-12-25 01:29:44 +00:00
|
|
|
{:connection, "~> 1.0"},
|
2020-11-04 22:07:57 +00:00
|
|
|
{:ranch, "~> 1.6"},
|
2021-07-05 13:07:48 +00:00
|
|
|
{:telemetry, "~> 1.0"}
|
2018-07-30 00:08:22 +00:00
|
|
|
]
|
2016-01-05 04:33:19 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
defp package do
|
2018-07-30 00:08:22 +00:00
|
|
|
[
|
2018-07-30 16:34:28 +00:00
|
|
|
maintainers: [
|
|
|
|
"Steve Cohen",
|
|
|
|
"James Fish",
|
|
|
|
"Preston Guillory",
|
|
|
|
"Michael Oliver",
|
|
|
|
"Jon Parise",
|
|
|
|
"Dan Swain"
|
|
|
|
],
|
2016-01-05 04:33:19 +00:00
|
|
|
licenses: ["Apache 2.0"],
|
2016-01-19 02:20:00 +00:00
|
|
|
links: %{"GitHub" => @project_url},
|
2018-07-30 14:40:59 +00:00
|
|
|
files:
|
2018-08-20 18:35:30 +00:00
|
|
|
~w(README.md ADOPTERS.md CONTRIBUTING.md LICENSE mix.exs lib) ++
|
2018-07-30 14:40:59 +00:00
|
|
|
~w(src/thrift_lexer.xrl src/thrift_parser.yrl)
|
2018-07-30 00:08:22 +00:00
|
|
|
]
|
2015-01-07 01:44:59 +00:00
|
|
|
end
|
|
|
|
end
|