Packages

ComputeRated, a leaky bucket rate limiter optimized for compute time limits. This library allows you to rate-limit operations based on compute time, with support for checking capacity, adding compute time, and waiting for capacity to be available.

Current section

Files

Jump to
Raw

mix.exs

defmodule ComputeRated.Mixfile do
use Mix.Project
def project do
[
app: :compute_rated,
version: "0.1.0",
elixir: "~> 1.7",
description: description(),
package: package(),
deps: deps(),
name: "ComputeRated",
source_url: "https://github.com/HaylockGrant/compute_rated",
aliases: [test: "test --no-start"],
docs: [extras: ["README.md"]]
]
end
def application do
[
extra_applications: [:logger],
env: [timeout: 90_000_000, cleanup_rate: 60_000, ets_table_name: :compute_rated_buckets],
mod: {ComputeRated.App, []}
]
end
defp deps do
[
{:ex2ms, "~> 1.5"},
{:ex_doc, "~> 0.19", only: :dev}
]
end
defp description do
"""
ComputeRated, a leaky bucket rate limiter optimized for compute time limits.
This library allows you to rate-limit operations based on compute time,
with support for checking capacity, adding compute time, and waiting
for capacity to be available.
"""
end
defp package do
[
files: ["lib", "mix.exs", "README.md", "LICENSE"],
licenses: ["Apache-2.0"],
links: %{"GitHub" => "https://github.com/HaylockGrant/compute_rated"}
]
end
end