diff --git a/CHANGELOG.md b/CHANGELOG.md index cf7cdc37..52489754 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +2.3.1 / 2020-02-17 +================== + +**General** +* User confirmation emails now have the correct URL format + + 2.3.0 / 2020-02-17 ================== diff --git a/CTFd/__init__.py b/CTFd/__init__.py index 469323a6..ed0a0880 100644 --- a/CTFd/__init__.py +++ b/CTFd/__init__.py @@ -30,7 +30,7 @@ if sys.version_info[0] < 3: reload(sys) # noqa: F821 sys.setdefaultencoding("utf-8") -__version__ = "2.3.0" +__version__ = "2.3.1" class CTFdRequest(Request): diff --git a/CTFd/auth.py b/CTFd/auth.py index 34a9d16b..133e21ea 100644 --- a/CTFd/auth.py +++ b/CTFd/auth.py @@ -25,7 +25,7 @@ auth = Blueprint("auth", __name__) @auth.route("/confirm", methods=["POST", "GET"]) -@auth.route("/confirm/", methods=["GET"]) +@auth.route("/confirm/", methods=["POST", "GET"]) @ratelimit(method="POST", limit=10, interval=60) def confirm(data=None): if not get_config("verify_emails"): diff --git a/CTFd/utils/email/__init__.py b/CTFd/utils/email/__init__.py index b5ae5d27..45ebe46f 100644 --- a/CTFd/utils/email/__init__.py +++ b/CTFd/utils/email/__init__.py @@ -80,7 +80,9 @@ def verify_email_address(addr): get_config("verification_email_body") or DEFAULT_VERIFICATION_EMAIL_BODY, ctf_name=get_config("ctf_name"), ctf_description=get_config("ctf_description"), - url=url_for("auth.confirm", data=serialize(addr), _external=True), + url=url_for( + "auth.confirm", data=serialize(addr), _external=True, _method="GET" + ), ) subject = safe_format( diff --git a/docs/conf.py b/docs/conf.py index 6463e4fb..6f647961 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -26,7 +26,7 @@ author = u"Kevin Chung" # The short X.Y version version = u"" # The full version, including alpha/beta/rc tags -release = u"2.3.0" +release = u"2.3.1" # -- General configuration --------------------------------------------------- diff --git a/package.json b/package.json index b0bb7363..70c81047 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ctfd", - "version": "2.3.0", + "version": "2.3.1", "description": "CTFd is a Capture The Flag framework focusing on ease of use and customizability. It comes with everything you need to run a CTF and it's easy to customize with plugins and themes.", "main": "index.js", "directories": {