Packages
ecto
1.0.3
3.14.1
3.14.0
3.13.6
3.13.5
3.13.4
3.13.3
3.13.2
3.13.1
3.13.0
3.12.6
3.12.5
3.12.4
3.12.3
3.12.2
3.12.1
3.12.0
3.11.2
3.11.1
3.11.0
3.10.3
3.10.2
3.10.1
3.10.0
3.9.6
3.9.5
3.9.4
3.9.3
3.9.2
3.9.1
3.9.0
3.8.4
3.8.3
3.8.2
3.8.1
3.8.0
3.7.2
3.7.1
3.7.0
3.6.2
3.6.1
3.6.0
3.5.8
3.5.7
3.5.6
3.5.5
3.5.4
3.5.3
3.5.2
3.5.1
3.5.0
3.5.0-rc.1
3.5.0-rc.0
3.4.6
3.4.5
3.4.4
3.4.3
3.4.2
3.4.1
3.4.0
3.3.4
3.3.3
3.3.2
3.3.1
3.3.0
3.2.5
3.2.4
3.2.3
3.2.2
3.2.1
3.2.0
3.1.7
3.1.6
3.1.5
3.1.4
3.1.3
3.1.2
3.1.1
3.1.0
3.0.9
3.0.8
3.0.7
3.0.6
3.0.5
3.0.4
3.0.3
3.0.2
3.0.1
3.0.0
3.0.0-rc.1
3.0.0-rc.0
2.2.12
2.2.11
2.2.10
2.2.9
2.2.8
2.2.7
2.2.6
2.2.5
2.2.4
2.2.3
2.2.2
2.2.1
2.2.0
2.2.0-rc.1
2.2.0-rc.0
2.1.6
2.1.5
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.1.0-rc.5
2.1.0-rc.4
2.1.0-rc.3
2.1.0-rc.2
2.1.0-rc.1
2.1.0-rc.0
2.0.6
2.0.5
2.0.4
2.0.3
2.0.2
2.0.1
2.0.0
2.0.0-rc.6
2.0.0-rc.5
2.0.0-rc.4
2.0.0-rc.3
2.0.0-rc.2
2.0.0-rc.1
2.0.0-rc.0
2.0.0-beta.2
2.0.0-beta.1
2.0.0-beta.0
1.1.9
1.1.8
1.1.7
1.1.6
1.1.5
1.1.4
1.1.3
1.1.2
1.1.1
1.1.0
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.16.0
0.15.0
0.14.3
0.14.2
0.14.1
0.14.0
0.13.1
0.13.0
0.12.1
0.12.0
0.12.0-rc
0.11.3
0.11.2
0.11.1
0.11.0
0.10.3
0.10.2
0.10.1
0.10.0
0.9.0
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.0
0.5.1
0.5.0
0.4.0
0.3.0
0.2.8
0.2.7
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.0
A toolkit for data mapping and language integrated query for Elixir
Current section
Files
Jump to
Current section
Files
mix.exs
defmodule Ecto.Mixfile do
use Mix.Project
@version "1.0.3"
@adapters [:pg, :mysql]
@pools [:poolboy, :sojourn_timeout, :sojourn_codel]
def project do
[app: :ecto,
version: @version,
elixir: "~> 1.0",
deps: deps,
build_per_environment: false,
test_paths: test_paths(Mix.env),
# Custom testing
aliases: ["test.all": ["test", "test.pools", "test.adapters"],
"test.pools": &test_pools/1,
"test.adapters": &test_adapters/1],
preferred_cli_env: ["test.all": :test],
# Hex
description: description,
package: package,
# Docs
name: "Ecto",
docs: [source_ref: "v#{@version}", main: "Ecto",
source_url: "https://github.com/elixir-lang/ecto"]]
end
def application do
[applications: [:logger, :decimal, :poolboy],
env: [json_library: Poison]]
end
defp deps do
[{:poolboy, "~> 1.4"},
{:sbroker, "~> 0.7", optional: true},
{:decimal, "~> 1.0"},
{:postgrex, "~> 0.9.1", optional: true},
{:mariaex, "~> 0.4.1", optional: true},
{:poison, "~> 1.0", optional: true},
{:ex_doc, "~> 0.7", only: :docs},
{:earmark, "~> 0.1", only: :docs},
{:inch_ex, only: :docs}]
end
defp test_paths(adapter) when adapter in @adapters, do: ["integration_test/#{adapter}"]
defp test_paths(pool) when pool in @pools, do: ["test/pool/#{pool(pool)}"]
defp test_paths(_), do: ["test/ecto", "test/mix"]
defp pool(:sojourn_timeout), do: "sojourn_broker"
defp pool(:sojourn_codel), do: "sojourn_broker"
defp pool(:poolboy), do: "poolboy"
defp description do
"""
Ecto is a domain specific language for writing queries and interacting with databases in Elixir.
"""
end
defp package do
[contributors: ["Eric Meadows-Jönsson", "José Valim"],
licenses: ["Apache 2.0"],
links: %{"GitHub" => "https://github.com/elixir-lang/ecto"},
files: ~w(mix.exs README.md CHANGELOG.md lib) ++
~w(integration_test/cases integration_test/sql integration_test/support)]
end
defp test_pools(args) do
for env <- @pools, do: env_run(env, args)
end
defp test_adapters(args) do
for env <- @adapters, do: env_run(env, args)
end
defp env_run(env, args) do
args = if IO.ANSI.enabled?, do: ["--color"|args], else: ["--no-color"|args]
IO.puts "==> Running tests for MIX_ENV=#{env} mix test"
{_, res} = System.cmd "mix", ["test"|args],
into: IO.binstream(:stdio, :line),
env: [{"MIX_ENV", to_string(env)}]
if res > 0 do
System.at_exit(fn _ -> exit({:shutdown, 1}) end)
end
end
end