Packages
plug
1.13.1
1.20.3
1.20.2
1.20.1
retired
1.20.0
retired
1.19.5
1.19.4
1.19.3
1.19.2
1.19.1
1.19.0
1.18.5
1.18.4
1.18.3
1.18.2
1.18.1
1.18.0
1.17.4
1.17.3
1.17.2
1.17.1
1.17.0
1.16.6
1.16.5
1.16.4
1.16.3
1.16.2
1.16.1
1.16.0
1.15.6
1.15.5
1.15.4
1.15.3
1.15.2
1.15.1
1.15.0
1.14.2
1.14.1
1.14.0
1.13.6
1.13.5
1.13.4
1.13.3
1.13.2
1.13.1
retired
1.13.0
retired
1.12.1
1.12.0
1.11.1
1.11.0
1.10.4
1.10.3
1.10.2
1.10.1
1.10.0
1.9.0
1.8.3
1.8.2
1.8.1
1.8.0
1.7.2
1.7.1
1.7.0
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.1
1.5.0
1.5.0-rc.2
1.5.0-rc.1
1.5.0-rc.0
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.4.0-rc.0
1.3.6
1.3.5
1.3.4
1.3.3
1.3.2
1.3.1
1.3.0
1.2.6
1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
1.2.0-rc.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.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.14.0
0.13.1
0.13.0
0.12.2
0.12.1
0.12.0
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.0
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.0
0.6.0
0.5.3
0.5.2
0.5.1
0.5.0
0.4.4
0.4.3
0.4.2
0.4.1
Compose web applications with functions
Retired package: Release invalid - Package has an incompatible breaking change
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
mix.exs
defmodule Plug.MixProject do
use Mix.Project
@version "1.13.1"
@description "A specification and conveniences for composable modules between web applications"
@xref_exclude [Plug.Cowboy, :telemetry]
def project do
[
app: :plug,
version: @version,
elixir: "~> 1.7",
deps: deps(),
package: package(),
description: @description,
name: "Plug",
xref: [exclude: @xref_exclude],
consolidate_protocols: Mix.env() != :test,
docs: [
extras: [
"README.md",
"guides/https.md"
],
main: "readme",
groups_for_modules: groups_for_modules(),
groups_for_extras: groups_for_extras(),
source_ref: "v#{@version}",
source_url: "https://github.com/elixir-plug/plug"
]
]
end
# Configuration for the OTP application
def application do
[
extra_applications: [:logger, :eex],
mod: {Plug.Application, []},
env: [validate_header_keys_during_test: true]
]
end
def deps do
[
{:mime, "~> 1.0 or ~> 2.0"},
{:plug_crypto, "~> 1.1.1 or ~> 1.2"},
{:telemetry, "~> 0.4.3 or ~> 1.0"},
{:ex_doc, "~> 0.21", only: :docs}
]
end
defp package do
%{
licenses: ["Apache-2.0"],
maintainers: ["Gary Rennie", "José Valim"],
links: %{"GitHub" => "https://github.com/elixir-plug/plug"},
files: ["lib", "mix.exs", "README.md", "CHANGELOG.md", "LICENSE", "src", ".formatter.exs"]
}
end
defp groups_for_modules do
# Ungrouped Modules
#
# Plug
# Plug.Builder
# Plug.Conn
# Plug.HTML
# Plug.Router
# Plug.Test
# Plug.Upload
[
Plugs: [
Plug.BasicAuth,
Plug.CSRFProtection,
Plug.Head,
Plug.Logger,
Plug.MethodOverride,
Plug.Parsers,
Plug.RequestId,
Plug.RewriteOn,
Plug.SSL,
Plug.Session,
Plug.Static,
Plug.Telemetry
],
"Error handling": [
Plug.Debugger,
Plug.ErrorHandler,
Plug.Exception
],
"Plug.Conn": [
Plug.Conn.Adapter,
Plug.Conn.Cookies,
Plug.Conn.Query,
Plug.Conn.Status,
Plug.Conn.Unfetched,
Plug.Conn.Utils
],
"Plug.Parsers": [
Plug.Parsers.JSON,
Plug.Parsers.MULTIPART,
Plug.Parsers.URLENCODED
],
"Plug.Session": [
Plug.Session.COOKIE,
Plug.Session.ETS,
Plug.Session.Store
]
]
end
defp groups_for_extras do
[
Guides: ~r/guides\/[^\/]+\.md/
]
end
end