defmodule Mix.Tasks.Publish do @moduledoc false use Mix.Task alias Expublish.Options def run(_args) do Options.print_help() end defmodule Major do @moduledoc "Release and publish major version for current project." @shortdoc "Publish a major version of your library." use Mix.Task @doc false def run(args) do args |> Options.parse() |> Expublish.major() end end defmodule Minor do @moduledoc "Release and publish minor version for current project." @shortdoc "Publish a minor version of your library." use Mix.Task @doc false def run(args) do args |> Options.parse() |> Expublish.minor() end end defmodule Patch do @moduledoc "Release and publish patch version for current project." @shortdoc "Publish a patch version of your library." use Mix.Task @doc false def run(args) do args |> Options.parse() |> Expublish.patch() end end end