X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=mix.exs;h=50d4b408051775caca63eb8eb04e4453b6798549;hb=8babd796da46975c2d976cf87dad844c13e8a69e;hp=caa86d3954f03d28fc0957570fc6fb69ca2c6dcf;hpb=d2382ab5f4b507b01ae7fbe6d7522e33d073419d;p=akkoma diff --git a/mix.exs b/mix.exs index caa86d395..50d4b4080 100644 --- a/mix.exs +++ b/mix.exs @@ -194,7 +194,7 @@ defmodule Pleroma.Mixfile do {:restarter, path: "./restarter"}, {:majic, git: "https://git.pleroma.social/pleroma/elixir-libraries/majic.git", - ref: "4c692e544b28d1f5e543fb8a44be090f8cd96f80"}, + ref: "289cda1b6d0d70ccb2ba508a2b0bd24638db2880"}, {:open_api_spex, git: "https://git.pleroma.social/pleroma/elixir-libraries/open_api_spex.git", ref: "f296ac0924ba3cf79c7a588c4c252889df4c2edd"}, @@ -229,7 +229,9 @@ defmodule Pleroma.Mixfile do "ecto.reset": ["ecto.drop", "ecto.setup"], test: ["ecto.create --quiet", "ecto.migrate", "test"], docs: ["pleroma.docs", "docs"], - analyze: ["credo --strict --only=warnings,todo,fixme,consistency,readability"] + analyze: ["credo --strict --only=warnings,todo,fixme,consistency,readability"], + copyright: &add_copyright/1, + "copyright.bump": &bump_copyright/1 ] end @@ -332,4 +334,30 @@ defmodule Pleroma.Mixfile do |> Enum.filter(fn string -> string && string != "" end) |> Enum.join() end + + defp add_copyright(_) do + year = NaiveDateTime.utc_now().year + template = ~s[\ +# Pleroma: A lightweight social networking server +# Copyright © 2017-#{year} Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +] |> String.replace("\n", "\\n") + + find = "find lib test priv -type f \\( -name '*.ex' -or -name '*.exs' \\) -exec " + grep = "grep -L '# Copyright © [0-9\-]* Pleroma' {} \\;" + xargs = "xargs -n1 sed -i'' '1s;^;#{template};'" + + :os.cmd(String.to_charlist("#{find}#{grep} | #{xargs}")) + end + + defp bump_copyright(_) do + year = NaiveDateTime.utc_now().year + find = "find lib test priv -type f \\( -name '*.ex' -or -name '*.exs' \\)" + + xargs = + "xargs sed -i'' 's;# Copyright © [0-9\-]* Pleroma.*$;# Copyright © 2017-#{year} Pleroma Authors ;'" + + :os.cmd(String.to_charlist("#{find} | #{xargs}")) + end end