Page MenuHomePhorge

No OneTemporary

Size
3 KB
Referenced Files
None
Subscribers
None
diff --git a/Makefile b/Makefile
index fe96642..3652d5e 100644
--- a/Makefile
+++ b/Makefile
@@ -1,11 +1,15 @@
CFLAGS ?= -g
HEADERS = src/colors.h src/font.h
-priv/captcha: priv src/captcha.c $(HEADERS)
+all: priv/captcha
+
+priv:
mkdir -p priv
+
+priv/captcha: src/captcha.c $(HEADERS) | priv
$(CC) $(CPPFLAGS) -std=c99 $(CFLAGS) -o priv/captcha src/captcha.c $(LDFLAGS) $(LDLIBS)
.PHONY: clean
clean:
rm -f priv/captcha $(BEAM_FILES)
diff --git a/changelog.d/rebuild-captcha.fix b/changelog.d/rebuild-captcha.fix
new file mode 100644
index 0000000..a8f7e14
--- /dev/null
+++ b/changelog.d/rebuild-captcha.fix
@@ -0,0 +1 @@
+Do not include a prebuilt captcha executable in the Hex package.
diff --git a/mix.exs b/mix.exs
index f490249..8fd649c 100644
--- a/mix.exs
+++ b/mix.exs
@@ -1,98 +1,97 @@
defmodule Mix.Tasks.Compile.Make do
def run(_) do
{result, error_code} = System.cmd("make", [], stderr_to_stdout: true)
Mix.shell().info(result)
case error_code do
0 -> :ok
_ -> {:error, ["make failed"]}
end
end
end
defmodule Mix.Tasks.Clean.Make do
def run(_) do
{result, error_code} = System.cmd("make", ["clean"], stderr_to_stdout: true)
Mix.shell().info(result)
case error_code do
0 -> :ok
_ -> {:error, ["make clean failed"]}
end
end
end
defmodule Captcha.Mixfile do
use Mix.Project
def project do
[
app: :captcha,
- version: "1.0.1",
+ version: "1.0.2",
elixir: "~> 1.3",
build_embedded: Mix.env() == :prod,
start_permanent: Mix.env() == :prod,
compilers: [:make, :elixir, :app],
description: description(),
aliases: aliases(),
package: package(),
test_coverage: [summary: [threshold: 50]],
deps: deps()
]
end
# Configuration for the OTP application
#
# Type "mix help compile.app" for more information
def application do
[applications: [:logger]]
end
# Dependencies can be Hex packages:
#
# {:mydep, "~> 0.3.0"}
#
# Or git/path repositories:
#
# {:mydep, git: "https://github.com/p-lang/mydep.git", tag: "0.1.0"}
#
# Type "mix help deps" for more examples and options
defp deps do
[{:ex_doc, ">= 0.0.0", only: :dev, runtime: false}]
end
defp aliases do
[clean: ["clean", "clean.make"]]
end
defp description do
"""
This is a Elixir lib for generating captcha. No dependencies. It drawing captcha image with C code. No ImageMagick, No RMagick.
This is the fork used by Pleroma.
"""
end
defp package do
[
name: :pleroma_captcha,
files: [
"lib",
- "priv",
"mix.exs",
"README*",
"LICENSE*",
"src",
"test",
"config",
"Makefile"
],
maintainers: ["pleroma"],
licenses: ["MIT"],
links: %{
"GitHub" => "https://git.pleroma.social/pleroma/elixir-libraries/elixir-captcha",
"Docs" => "https://git.pleroma.social/pleroma/elixir-libraries/elixir-captcha"
}
]
end
end
diff --git a/test/elixir_captcha_test.exs b/test/elixir_captcha_test.exs
index 9977049..cd55e1b 100644
--- a/test/elixir_captcha_test.exs
+++ b/test/elixir_captcha_test.exs
@@ -1,8 +1,15 @@
defmodule CaptchaTest do
use ExUnit.Case
doctest Captcha
test "successfully generates an image" do
assert {:ok, _, _} = Captcha.get()
end
+
+ test "does not package generated captcha executable" do
+ files = Mix.Project.config() |> Keyword.fetch!(:package) |> Keyword.fetch!(:files)
+
+ refute "priv" in files
+ refute "priv/captcha" in files
+ end
end

File Metadata

Mime Type
text/x-diff
Expires
Sun, Aug 9, 4:16 AM (1 d, 11 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1721485
Default Alt Text
(3 KB)

Event Timeline