defmodule Spell.Mixfile do use Mix.Project def project do [app: :spell, version: "0.0.1", name: "Spell", source_url: "https://github.com/MyMedsAndMe/spell", elixir: "~> 1.0", description: description, package: package, deps: deps, aliases: aliases, docs: docs, preferred_cli_env: ["test.unit": :test, "test.integration": :test, docs: :doc] ] end def application do [applications: [:logger, :websocket_client, :poison], mod: {Spell, []}] end defp description do """ Spell is an extensible Elixir WAMP client. Spell supports the client subscriber, publisher, callee, and caller roles. """ end defp package do [files: ["lib", "priv", "mix.exs", "README.md", "LICENSE"], contributors: ["Daniel MarĂ­n", "Thomas Moulia", "Volker Rabe", "Marco Tanzi"], licenses: ["Apache 2.0"], links: %{"Github" => "https://github.com/MyMedsAndMe/spell"}] end # TODO: allow transport/serialization deps to be filtered out defp deps do [ # Req'd by: `Spell.Transport.Websocket` {:websocket_client, github: "jeremyong/websocket_client", tag: "v0.7"}, # Req'd by: `Spell.Serializer.JSON` {:poison, "~> 1.4.0"}, # Doc deps {:earmark, "~> 0.1", only: :doc}, {:ex_doc, "~> 0.7", only: :doc} ] end defp aliases do ["test.unit": "test --exclude integration --exclude pending", "test.integration": "test --only integration --exclude pending", "spell.example.pubsub": "run examples/pubsub.exs", "spell.example.rpc": "run examples/rpc.exs"] end defp docs do [ # TODO: change markdown compiler to once that supports gfm #readme: "README.md" ] end end