diff --git a/Makefile b/Makefile
index 2d3f2d4661bc91102ceba3e3770db16eb621f5bc..e3d4dee77d572f63699b52b09e335c78577bff28 100644
--- a/Makefile
+++ b/Makefile
@@ -167,11 +167,10 @@ replace-sbcl-asdf: build/asdf.lisp
 replace-ccl-asdf: build/asdf.lisp
 	${CCL} --eval '(progn(compile-file "$<" :output-file (compile-file-pathname (format nil "~Atools/asdf.lisp" (ccl::ccl-directory))))(quit))'
 
-WRONGFUL_TAGS := 1.37 1.1720 README RELEASE STABLE
+WRONGFUL_TAGS := 1.37 1.1720 README RELEASE STABLE # It's not 1.37, it's 1.85! 1.37 is for the README.
 # Delete wrongful tags from local repository
 fix-local-git-tags:
 	for i in ${WRONGFUL_TAGS} ; do git tag -d $$i ; done
-	git tag 1.37 c7738c62 # restore the *correct* 1.37 tag.
 
 # Delete wrongful tags from remote repository
 fix-remote-git-tags:
diff --git a/TODO b/TODO
index 78fb19069e8cf160cfc7e17fcabdeb2ba36686f7..8f1dc7ae0c47d887a6d7232b404929d986fcd365 100644
--- a/TODO
+++ b/TODO
@@ -1,14 +1,12 @@
-* Bug found by fe[nl]ix: infinite loop if the definitions in an asd file
-  are not in strict dependency order.
 * fix upgrade on (abcl, clisp, cmucl)
 ** Extract minimal test case
+* Bug found by fe[nl]ix: infinite loop if the definitions in an asd file
+  are not in strict defsystem-depends-on dependency order. Document the issue.
+* fe[nl]ix: Defer evaluation of defsystem forms?
 * Learn to use cl-grid-test, to make sure ASDF changes don't break stuff,
  and that breakage gets fixed quickly.
 * Test stassats's thing:
    (asdf:enable-asdf-binary-locations-compatibility :centralize-lisp-binaries t :default-toplevel-directory *fasl-dir*)
-* Get package upgrade right
-   Try a newer CLISP than 2.44.1, and if it still breaks, try harder,
-   by e.g. having ensure-package return a working defpackage form.
 * Make load-op a generic operation that selects the proper strategy
   for each system, module or file, according to component properties and user-configuration:
   compile the lisp file then load the fasl (load-compiled-op),
diff --git a/asdf.asd b/asdf.asd
index 47ce7862662ddaa6744ca542912e69c3deae7355..642a03423e8eca2dafee49b504d9eac88cdd3e9c 100644
--- a/asdf.asd
+++ b/asdf.asd
@@ -57,7 +57,7 @@
   :licence "MIT"
   :description "Another System Definition Facility"
   :long-description "ASDF builds Common Lisp software organized into defined systems."
-  :version "2.26.142" ;; to be automatically updated by make bump-version
+  :version "2.26.143" ;; to be automatically updated by make bump-version
   :depends-on ()
   :components
   ((:module "build"
diff --git a/header.lisp b/header.lisp
index b113fe0018e0bbba7aaa0aa8836a7c68d20b1984..610b41554b23036be3fe268bbd14c81032745a39 100644
--- a/header.lisp
+++ b/header.lisp
@@ -1,5 +1,5 @@
 ;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
-;;; This is ASDF 2.26.142: Another System Definition Facility.
+;;; This is ASDF 2.26.143: Another System Definition Facility.
 ;;;
 ;;; Feedback, bug reports, and patches are all welcome:
 ;;; please mail to <asdf-devel@common-lisp.net>.
@@ -59,9 +59,12 @@
   (unless (member :asdf2.27 *features*)
     (let* ((existing-version
              (when (find-package :asdf)
-               (or (symbol-value (or (find-symbol (string :*asdf-version*) :asdf)
-                                     (find-symbol (string :*asdf-revision*) :asdf)))
-                   (string :1.x))))
+               (or (symbol-value (find-symbol (string :*asdf-version*) :asdf))
+                   (let ((ver (symbol-value (find-symbol (string :*asdf-revision*) :asdf))))
+                     (etypecase ver
+                       (string ver)
+                       (cons (format nil "~{~D~^.~}" ver))
+                       (null "1.0"))))))
            (away (format nil "~A-~A" :asdf existing-version)))
       (when existing-version
         (rename-package :asdf away)
diff --git a/test/run-tests.sh b/test/run-tests.sh
index a6cd2c43025d59fdf27d7bf2b10440abbaf646e5..71ef084a45f9b13b87e3f178c2636aa1fe0b3a19 100755
--- a/test/run-tests.sh
+++ b/test/run-tests.sh
@@ -235,12 +235,12 @@ upgrade_tags () {
         echo $ASDF_UPGRADE_TEST_TAGS ; return
     fi
     # REQUIRE is a magic tag meaning whatever your implementation provides
-    # 1.37 is the last release by Daniel Barlow
+    # 1.85 is the last release by Daniel Barlow (not 1.37, which is the README revision!)
     # 1.97 is the last release before Gary King takes over
     # 1.369 is the last release by Gary King
     # 2.000 to 2.019 and 2.20 to 2.27 and beyond are Faré's "stable" releases
     # 2.26.61 is the last single-package ASDF.
-    echo REQUIRE 1.37 1.97 1.369
+    echo REQUIRE 1.85 1.97 1.369
     git tag -l '2.0??'
     git tag -l '2.??'
 }
diff --git a/test/script-support.lisp b/test/script-support.lisp
index 8c4f3df7be82f4dfdfc2f8f1d1fb4ac75c0ec558..cd7f171bd62d9c2701c258d52eedcec392abe813 100644
--- a/test/script-support.lisp
+++ b/test/script-support.lisp
@@ -357,12 +357,12 @@ is bound, write a message and exit on an error.  If
 
 (defun get-asdf-version ()
   (when (find-package :asdf)
-    (let ((ver (symbol-value (or (find-symbol (string :*asdf-version*) :asdf)
-                                 (find-symbol (string :*asdf-revision*) :asdf)))))
-      (typecase ver
-        (string ver)
-        (cons (format nil "~{~D~^.~}" ver))
-        (null "1.0")))))
+    (or (symbol-value (find-symbol (string :*asdf-version*) :asdf))
+        (let ((ver (symbol-value (find-symbol (string :*asdf-revision*) :asdf))))
+          (etypecase ver
+            (string ver)
+            (cons (format nil "~{~D~^.~}" ver))
+            (null "1.0"))))))
 
 
 (defun test-upgrade (old-method new-method tag) ;; called by run-test
diff --git a/upgrade.lisp b/upgrade.lisp
index 98eda9e80603d6a1d0594c752d19751229156016..928c30d66132e19003172b02ef60aa2664fa7be7 100644
--- a/upgrade.lisp
+++ b/upgrade.lisp
@@ -35,7 +35,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.26.142")
+         (asdf-version "2.26.143")
          (existing-asdf (find-class (find-symbol* :component :asdf nil) nil))
          (existing-version *asdf-version*)
          (already-there (equal asdf-version existing-version))
diff --git a/version.lisp-expr b/version.lisp-expr
index 89382cd4a3e6554b928909fde79aea9040a18054..8518bc64e9d42359bca2ad841dba56b0b175fe9d 100644
--- a/version.lisp-expr
+++ b/version.lisp-expr
@@ -1 +1 @@
-"2.26.142"
+"2.26.143"