diff --git a/asdf.asd b/asdf.asd
index af28ada0e5957f8478eb42bdbd031d93bddc5ede..b86cd53eaa55f1026d99f14161a46e7d174c0efd 100644
--- a/asdf.asd
+++ b/asdf.asd
@@ -14,7 +14,7 @@
   :licence "MIT"
   :description "Another System Definition Facility"
   :long-description "ASDF builds Common Lisp software organized into defined systems."
-  :version "2.20.22" ;; to be automatically updated by bin/bump-revision
+  :version "2.21" ;; to be automatically updated by bin/bump-revision
   :depends-on ()
   :components
   ((:file "asdf")
diff --git a/asdf.lisp b/asdf.lisp
index a59c17b73d71d09c256dceeb3688fb0abeb3b5f8..b7ad1dd6bc984bfb4e528b01adfbaca54a8f3092 100644
--- a/asdf.lisp
+++ b/asdf.lisp
@@ -1,5 +1,5 @@
 ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*-
-;;; This is ASDF 2.20.22: Another System Definition Facility.
+;;; This is ASDF 2.21: Another System Definition Facility.
 ;;;
 ;;; Feedback, bug reports, and patches are all welcome:
 ;;; please mail to <asdf-devel@common-lisp.net>.
@@ -116,7 +116,7 @@
          ;; "2.345.6" would be a development version in the official upstream
          ;; "2.345.0.7" would be your seventh local modification of official release 2.345
          ;; "2.345.6.7" would be your seventh local modification of development version 2.345.6
-         (asdf-version "2.20.22")
+         (asdf-version "2.21")
          (existing-asdf (find-class 'component nil))
          (existing-version *asdf-version*)
          (already-there (equal asdf-version existing-version)))
diff --git a/debian/changelog b/debian/changelog
index c259622137e6ca2f071a9f9a5e8e1eccc218f2f1..2f8906886dc1b8d5a2ec94de1f86f4885f632c32 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,45 @@
+cl-asdf (2:2.21-1) unstable; urgency=low
+
+  * New features:
+    * Most importantly, encodings.
+      ASDF now lets you specify an :encoding for a system, module or component,
+      that is used when loading or compiling Lisp files. See the documentation.
+      By default, the only useful value is :utf-8, and
+      we recommend you use UTF-8 everywhere.
+      We intend to make UTF-8 the default in the future
+      (current default is the legacy behavior of using whichever implicit
+      default your underlying implementation is currently configured to use).
+      An extension asdf-encodings is available that supports more encodings,
+      including autodetection of encoding from either emacs-style declaration
+      -*- Mode: Lisp ; coding: utf-8 -*- or content.
+    * require-system works like load-system, but won't try to load or update
+      systems that have already been loaded, as listed by loaded-systems.
+      More generally, you can specify a list of systems as :force-not argument
+      to load-system and the specified systems won't be loaded or updated.
+    * You can specify :force-not and a list of systems when loading a system,
+    * You can now specify :hostname in your asdf-output-translations,
+      so you can easily share a home directory via the network
+      yet split its fasl cache between several subtly different machines.
+  * Bug Fixes:
+    * lp#982285. since 2.014.4, the default source-registry
+      was skipping anything from /usr or XDG_DATA_DIRS,
+      because of a missing test in getenv-absolute-pathnames. Fixed in .15.
+    * In 2.019.9 aka 2.20, ECL support was broken by using
+      a function in the wrong package (defined in cl-user). Fixed in .1.
+    * logical-pathname support was somewhat broken since 2.017.6,
+      due to the way most implementations fail to read physical namestrings
+      when *default-pathname-defaults* is a logical-pathname.
+      Fixed, together with other logical-pathname issues,
+      and a test case was added to the test suite to ensure no further regression.
+      Works great modulo quirks around implementation bugs on CLISP and Allegro.
+    * Make upgrading ASDF more robust on CMUCL, LispWorks, SBCL.
+  * Minor tweaks:
+    * Use :unspecific in pathname components on more implementations.
+    * export and/or document more utilities.
+    * add a few missing compatfmt for Genera.
+
+ -- Francois-Rene Rideau <fare@tunes.org>  Sat, 28 Apr 2012 23:55:23 -0400
+
 cl-asdf (2:2.20-1) unstable; urgency=low
 
   * Portability: support the new CCL fasl numbering API
diff --git a/doc/asdf.texinfo b/doc/asdf.texinfo
index 611c26cf162d022f08ec59fd5d50d21b75c5ceb6..f506edb5ab8e36e8df2a7e9e0f59b86ff34d89f5 100644
--- a/doc/asdf.texinfo
+++ b/doc/asdf.texinfo
@@ -35,11 +35,11 @@ for Common Lisp programs and libraries.
 You can find the latest version of this manual at
 @url{http://common-lisp.net/project/asdf/asdf.html}.
 
-ASDF Copyright @copyright{} 2001-2011 Daniel Barlow and contributors.
+ASDF Copyright @copyright{} 2001-2012 Daniel Barlow and contributors.
 
-This manual Copyright @copyright{} 2001-2011 Daniel Barlow and contributors.
+This manual Copyright @copyright{} 2001-2012 Daniel Barlow and contributors.
 
-This manual revised @copyright{} 2009-2011 Robert P. Goldman and Francois-Rene Rideau.
+This manual revised @copyright{} 2009-2012 Robert P. Goldman and Francois-Rene Rideau.
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
@@ -197,6 +197,7 @@ so you may more easily modify it, we recommend clbuild.
 @vindex *central-registry*
 @cindex link farm
 @findex load-system
+@findex require-system
 @findex compile-system
 @findex test-system
 @cindex system directory designator
@@ -668,6 +669,8 @@ which is reported not to work on some implementations
 
 ASDF provides three commands for the most common system operations:
 @code{load-system}, @code{compile-system} or @code{test-system}.
+It also provides @code{require-system}, a version of @code{load-system}
+that skips trying to update systems that are already loaded.
 
 Because ASDF is an extensible system
 for defining @emph{operations} on @emph{components},
@@ -2082,7 +2085,7 @@ RELATIVE-COMPONENT-DESIGNATOR :=
     STRING | ;; relative directory pathname as interpreted by coerce-pathname.
              ;; In output translations, if last component, **/*.*.* is added
     PATHNAME | ;; pathname; unless last component, directory is assumed.
-    :IMPLEMENTATION | ;; directory based on implementation, e.g. sbcl-1.0.49-linux-x64
+    :IMPLEMENTATION | ;; directory based on implementation, e.g. sbcl-1.0.45-linux-x64
     :IMPLEMENTATION-TYPE | ;; a directory based on lisp-implementation-type only, e.g. sbcl
     :DEFAULT-DIRECTORY | ;; a relativized version of the default directory
     :*/ | ;; any direct subdirectory (since ASDF 2.011.4)
@@ -2992,7 +2995,7 @@ so you can explicitly specify @code{:encoding :latin1}
 in your @code{.asd} file.
 Using the @code{*encoding-detection-hook*} it will also
 eventually implement some autodetection of a file's encoding
-from an emacs-style @code{-*- coding: latin1 -*-} declaration,
+from an emacs-style @code{-*- mode: lisp ; coding: latin1 -*-} declaration,
 or otherwise based on an analysis of octet patterns in the file.
 At this point, asdf-encoding only supports the encodings
 that are supported as part of your implementation.
@@ -3017,7 +3020,7 @@ so they make their packages compatible.
 A survey showed only about a handful few libraries
 are incompatible with non-UTF-8, and then, only in comments,
 and we believe that authors will adopt UTF-8 when prompted.
-See April 2012 discussion on the sbcl-devel mailing-list.
+See the April 2012 discussion on the asdf-devel mailing-list.
 For backwards compatibility with users who insist on a non-UTF-8 encoding,
 but cannot immediately transition to using @code{asdf-encodings}
 (maybe because it isn't ready), it will still be possible to use
diff --git a/doc/index.html b/doc/index.html
index 8df77a2c7d60a572610d15289aa40a8877fa5725..6e74ad5e6de7c26f3ff9e8fb83e3be89d8a43212 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -32,7 +32,7 @@
         <a id="ASDF 2"></a>
         <h3>ASDF 2</h3>
         <p>ASDF 2, initially released on May 31st 2010,
-          is the current successor of Daniel Barlow's ASDF,
+          is the current successor to Daniel Barlow's ASDF,
           made more portable and more robust, with a somewhat improved API.
           It has since been widely adopted by the CL community,
           and is actively maintained.
@@ -70,7 +70,8 @@
           <a href="http://cs-www.cs.yale.edu/homes/dvm/">YTools</a>
           (trying maintain coherence of the current Lisp image at a fine grain),
           or the newcomer
-          <a href="http://lisp.ystok.ru/asdlite/">ASDlite</a>.
+          <a href="http://lisp.ystok.ru/asdlite/">ASDlite</a>
+          (a somewhat improved incompatible variant of ASDF 1).
           Older systems that are not maintained anymore include
           Mark Kantrowitz's <a href="http://www.cliki.net/mk-defsystem">mk-defsystem</a>
           (free software successor of the old proprietary DEFSYSTEM's and predecessor of ASDF),
@@ -228,9 +229,9 @@ Peter Graves <gnooth@gmail.com>
         <dl>
           <dt>In April 2012</dt>
           <dd>
-            ASDF 2.21 will control the character encoding used by Lisp source files.
-            You will be able to specify different encodings
-            in your defsystem, e.g. <kbd>:encoding :latin1</kbd>,
+            ASDF 2.21 now controls the character encoding used by Lisp source files.
+            You can specify different encodings in your defsystem,
+            e.g. <kbd>:encoding :latin1</kbd>,
             if you <kbd>:defsystem-depends-on (:asdf-encodings)</kbd>.
             While the default will remain to load and compile file
             with the <kbd>:default</kbd> external-format,
@@ -245,7 +246,7 @@ Peter Graves <gnooth@gmail.com>
             with notable contributions from Robert P. Goldman, but also
             Juanjo Garcia-Ripoll and James Anderson.
             ASDF 2 released
-            with many clean-ups, better configurability
+            with many clean-ups, better configurability, some new features,
             and updated documentation.
           </dd>
           <dt>May 2006 to November 2009</dt>
@@ -278,7 +279,7 @@ Peter Graves <gnooth@gmail.com>
         <a class="nav" href="http://common-lisp.net/" title="Common-Lisp.net"> <img src="http://common-lisp.net/project/cl-containers/shared/buttons/lisp-lizard.png" width="80" height="15" title="Common-Lisp.net" alt="Common-Lisp.net button" /></a>
         <p><span class="copyright"Copyright &copy; 2001-2012 Daniel Barlow and contributors</span></p>
         <p>ASDF has an <a href="http://www.opensource.org/licenses/mit-license.php">MIT style</a> license</p>
-        <div id="timestamp">Last updated 2012-04-20</div>
+        <div id="timestamp">Last updated 2012-04-28</div>
     </div>
   </body>
 </html>