diff --git a/CHANGELOG.md b/CHANGELOG.md index 08aa381b..2a2da8c6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +2.4.2 / 2020-05-08 +================== + +**Admin Panel** +* Fix Challenge Reset in Admin Panel where Dynamic Challenges prevented resetting Challenges + +**Plugins** +* Add the `CTFd.plugins.migrations` module to allow plugins to handle migrations. Plugins should now call `CTFd.plugins.migrations.upgrade` instead of `app.db.create_all` which will allow the plugin to have database migrations. +* Make Dynamic Challenges have a cascading deletion constraint against their respective Challenge row + +**Miscellaneous** +* Add `app.plugins_dir` object to refer to the directory where plugins are installed + + 2.4.1 / 2020-05-06 ================== diff --git a/CTFd/__init__.py b/CTFd/__init__.py index 72f3361f..4faeda20 100644 --- a/CTFd/__init__.py +++ b/CTFd/__init__.py @@ -31,7 +31,7 @@ if sys.version_info[0] < 3: reload(sys) # noqa: F821 sys.setdefaultencoding("utf-8") -__version__ = "2.4.1" +__version__ = "2.4.2" class CTFdRequest(Request): diff --git a/docs/conf.py b/docs/conf.py index 576d68b0..ae77643f 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -20,13 +20,13 @@ # -- Project information ----------------------------------------------------- project = u"CTFd" -copyright = u"2019, CTFd LLC" +copyright = u"2020, CTFd LLC" author = u"Kevin Chung" # The short X.Y version version = u"" # The full version, including alpha/beta/rc tags -release = u"2.4.1" +release = u"2.4.2" # -- General configuration --------------------------------------------------- diff --git a/package.json b/package.json index 43b4d93f..1e20200a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ctfd", - "version": "2.4.1", + "version": "2.4.2", "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": {