diff --git a/Changes b/Changes
index da18a72..5b56231 100644
--- a/Changes
+++ b/Changes
@@ -12,6 +12,8 @@
 
 =over 3
 
+=item 2.0.13-dev
+
 =item 2.0.12 January 30, 2022
 
 Add bug tracker information to README, and add CONTRIBUTING.md. [Steve Hay]
diff --git a/META.yml b/META.yml
index e4db5c2..d652de7 100644
--- a/META.yml
+++ b/META.yml
@@ -1,5 +1,5 @@
 name:         mod_perl
-version: 2.0.12
+version: 2.0.13
 installdirs:  site
 distribution_type: module
 no_index:
diff --git a/RELEASE b/RELEASE
index 2db1b11..41b7404 100644
--- a/RELEASE
+++ b/RELEASE
@@ -30,7 +30,7 @@
      make sure you give the correct permissions to them.
 
 1. 'make mydist' - to make sure nothing is missing from the manifest,
-   etc. Now test this generated package mod_perl-2.0.12.tar.gz (not
+   etc. Now test this generated package mod_perl-2.0.13.tar.gz (not
    the current build) with as many
    configurations as possible on as many platforms as possible,
    unpacking the package each time afresh.  
@@ -40,7 +40,7 @@
      - edit META.yml to the rc\d version above in the version key
 
   b. commit Changes
-     % svn ci -m "2.0.12 rc1" Changes
+     % svn ci -m "2.0.13 rc1" Changes
 
   c. nuke any preinstalled mod_perl libs and run 'make test'
 
@@ -58,7 +58,7 @@
    candidate alert to the modperl/dev list (may be longer to give most
    people a chance to catch up). no need to tag this package
 
-   Subject: [RELEASE CANDIDATE]: mod_perl-2.0.12 RC\d+
+   Subject: [RELEASE CANDIDATE]: mod_perl-2.0.13 RC\d+
 
 2a. if problems are detected during stage 2, repeat stages 1 and 2.
 
@@ -79,28 +79,28 @@
      % make -n tag
 
   d. commit Changes README Makefile.PL
-     % svn ci -m "2.0.12 release" Changes README Makefile.PL
+     % svn ci -m "2.0.13 release" Changes README Makefile.PL
 
   e. tag
      % make tag
 
   f. Update the svn:externals in the new tag to refer to the new docs tag that
      was created by the previous step:
-     % svn co https://svn.apache.org/repos/asf/perl/modperl/tags/2_0_12
-     % svn propedit svn:externals 2_0_12
+     % svn co https://svn.apache.org/repos/asf/perl/modperl/tags/2_0_13
+     % svn propedit svn:externals 2_0_13
      Update the docs line from:
        ^/perl/modperl/docs/trunk/src/docs/2.0
      to:
-       ^/perl/modperl/docs/tags/2_0_12/src/docs/2.0
+       ^/perl/modperl/docs/tags/2_0_13/src/docs/2.0
      The complete svn:externals should now look like:
-     % svn propget svn:externals 2_0_12
+     % svn propget svn:externals 2_0_13
        Apache-Test      ^/perl/Apache-Test/tags/<X>
        Apache-Reload    ^/perl/Apache-Reload/tags/<Y>
        Apache-SizeLimit ^/perl/Apache-SizeLimit/tags/<Z>
-       docs             ^/perl/modperl/docs/tags/2_0_12/src/docs/2.0
+       docs             ^/perl/modperl/docs/tags/2_0_13/src/docs/2.0
      where <X>, <Y> and <Z> are the tags of the releases of Apache-Test,
      Apache-Reload and Apache-SizeLimit included in this release of mod_perl.
-     % svn ci -m "2.0.12 release"
+     % svn ci -m "2.0.13 release"
 
   g. create the final package
      % make dist
@@ -114,13 +114,13 @@
 
   a. sign your local copy of the tarball:
 
-     % gpg --detach-sign --armor mod_perl-2.0.12.tar.gz
+     % gpg --detach-sign --armor mod_perl-2.0.13.tar.gz
 
-     % pgps -b --armor mod_perl-2.0.12.tar.gz
+     % pgps -b --armor mod_perl-2.0.13.tar.gz
 
   b. create SHA256 and SHA512 checksums of the tarball:
-     % sha256sum mod_perl-2.0.12.tar.gz >mod_perl-2.0.12.tar.gz.sha256
-     % sha512sum mod_perl-2.0.12.tar.gz >mod_perl-2.0.12.tar.gz.sha512
+     % sha256sum mod_perl-2.0.13.tar.gz >mod_perl-2.0.13.tar.gz.sha256
+     % sha512sum mod_perl-2.0.13.tar.gz >mod_perl-2.0.13.tar.gz.sha512
 
 5. Release the package and update links
 
@@ -136,12 +136,12 @@
   d. ask one of the other developers to double check the signature file
      and tarball: download both files and verify the signature:
 
-     https://www.apache.org/dist/perl/mod_perl-2.0.12.tar.gz.asc
-     https://www.apache.org/dist/perl/mod_perl-2.0.12.tar.gz
+     https://www.apache.org/dist/perl/mod_perl-2.0.13.tar.gz.asc
+     https://www.apache.org/dist/perl/mod_perl-2.0.13.tar.gz
 
-     % gpg --verify mod_perl-2.0.12.tar.gz.asc
+     % gpg --verify mod_perl-2.0.13.tar.gz.asc
 
-     % pgpv mod_perl-2.0.12.tar.gz.asc
+     % pgpv mod_perl-2.0.13.tar.gz.asc
 
   e. respond to the automated email that will arrive requesting that release
      data be filled in at https://reporter.apache.org/addrelease.html?perl
@@ -150,7 +150,7 @@
      % vi modperl-docs/src/download/index_top.html 
      % vi modperl-docs/doap_Perl.rdf
      and commit.
-     % svn ci -m "2.0.12 release" \
+     % svn ci -m "2.0.13 release" \
            modperl-docs/src/download/index_top.html \
            modperl-docs/doap_Perl.rdf
 
@@ -176,7 +176,7 @@
 
    Note, to post to announce@, you must be sending from an apache.org address.
 
-   Subject: [ANNOUNCE] mod_perl 2.0.12 
+   Subject: [ANNOUNCE] mod_perl 2.0.13 
 
      include:
      - link at perl.apache.org:
@@ -193,7 +193,7 @@
   c. edit ./Changes:
      - start a new item with incremented version + '-dev'
 
-     =item 2.0.13-dev
+     =item 2.0.14-dev
 
   d. add a release entry in STATUS
 
@@ -202,7 +202,7 @@
      % perl -pi.bak -e 's/(\d+)([._])(\d+)(\2)(\d+)/join($2, $1, $3, $5+1)/eg' RELEASE
 
   f. commit the changed files
-     % svn ci -m "start 2.0.12-dev cycle" Changes META.yml lib/mod_perl2.pm \
+     % svn ci -m "start 2.0.13-dev cycle" Changes META.yml lib/mod_perl2.pm \
        STATUS RELEASE
 
 9. Old Versions
diff --git a/STATUS b/STATUS
index 5554d2a..1083f10 100644
--- a/STATUS
+++ b/STATUS
@@ -3,6 +3,7 @@
 
 Release:
 --------
+   2.000.12   : Released Jan 30, 2022
    2.000.11   : Released Oct 05, 2019
    2.000.10   : Released Oct 27, 2016
    2.000.09   : Released Jun 18, 2015
diff --git a/lib/mod_perl2.pm b/lib/mod_perl2.pm
index fa44d08..b100fe7 100644
--- a/lib/mod_perl2.pm
+++ b/lib/mod_perl2.pm
@@ -20,7 +20,7 @@
 use strict;
 
 BEGIN {
-    our $VERSION = "2.000012";
+    our $VERSION = "2.000013";
     our $VERSION_TRIPLET;
 
     if ($VERSION =~ /(\d+)\.(\d\d\d)(\d+)/) {
