~ chicken-core (chicken-5) e603067dee750ec34f7cf9574377c55d3552e796


commit e603067dee750ec34f7cf9574377c55d3552e796
Author:     Evan Hanson <evhan@foldling.org>
AuthorDate: Mon May 1 17:54:10 2017 +1200
Commit:     Peter Bex <peter@more-magic.net>
CommitDate: Wed May 3 21:01:03 2017 +0200

    Drop extension-information
    
    Signed-off-by: Peter Bex <peter@more-magic.net>

diff --git a/chicken-install.scm b/chicken-install.scm
index 51c406d9..05f26003 100644
--- a/chicken-install.scm
+++ b/chicken-install.scm
@@ -40,7 +40,6 @@
 (import (chicken io))
 (import (chicken time))
 (import (chicken pathname))
-(import (chicken platform))
 (import (chicken process))
 (import (chicken pretty-print))
 
@@ -732,10 +731,9 @@
                                      (cadr a) (car a) (cdr e))))
                          #f))
                       (else
-                       (conc "  " (car e)
-                             " (" (let ((v (assq 'version (extension-information (car e)))))
-                                    (if v (cadr v) "unknown"))
-                             " -> " (cdr e) ")" #\newline))))
+                       (conc "  " (car e) " ("
+                             (or (ext-version (car e)) "unknown") " -> " (cdr e)
+                             ")" #\newline))))
               upgrade))
              ""))
   (let loop ()
diff --git a/chicken.import.scm b/chicken.import.scm
index c2eda1c3..359f5b4f 100644
--- a/chicken.import.scm
+++ b/chicken.import.scm
@@ -66,7 +66,6 @@
    exit
    exit-handler
    (expand . chicken.expand#expand)
-   (extension-information . chicken.platform#extension-information)
    (feature? . chicken.platform#feature?)
    (features . chicken.platform#features)
    file-exists?
diff --git a/library.scm b/library.scm
index 071d85dc..2b98ae93 100644
--- a/library.scm
+++ b/library.scm
@@ -5754,7 +5754,7 @@ EOF
 ;;; Platform configuration inquiry:
 
 (module chicken.platform
-    (build-platform chicken-version chicken-home extension-information
+    (build-platform chicken-version chicken-home
      feature? features machine-byte-order machine-type
      repository-path installation-repository
      register-feature! unregister-feature!
@@ -5844,20 +5844,6 @@ EOF
        (get-environment-variable "CHICKEN_INSTALL_REPOSITORY")
        install-egg-home)))
 
-(define extension-information
-  (let ((with-input-from-file with-input-from-file)
-	(string-append string-append)
-	(read read))
-    (lambda (id)
-      (and-let* ((rp (repository-path)))
-	(let ((p (##sys#canonicalize-extension-path
-		  id 'extension-information)))
-	  (let loop ((rp (##sys#split-path rp)))
-	    (cond ((null? rp) #f)
-		  ((file-exists? (string-append (car rp) "/" p "."
-						setup-file-extension))
-		   => (cut with-input-from-file <> read))
-		  (else (loop (cdr rp))))))))))
 
 ;;; Feature identifiers:
 
diff --git a/manual/Unit eval b/manual/Unit eval
index e00964a7..25e863b8 100644
--- a/manual/Unit eval	
+++ b/manual/Unit eval	
@@ -137,14 +137,6 @@ Contains the name of the directory where extensions are installed
 (as opposed to the possible locations where they can be loaded or
 linked at runtime.)
 
-==== extension-information
-
-<procedure>(extension-information ID)</procedure>
-
-If an extension with the name {{ID}} is installed and if it has a setup-information
-list registered in the extension repository, then the info-list is returned. Otherwise
-{{extension-information}} returns {{#f}}.
-
 ==== require
 
 <procedure>(require ID ...)</procedure>
diff --git a/rules.make b/rules.make
index 7557b078..a539803f 100644
--- a/rules.make
+++ b/rules.make
@@ -666,7 +666,6 @@ chicken-install.c: chicken-install.scm \
 		chicken.format.import.scm \
 		chicken.io.import.scm \
 		chicken.irregex.import.scm \
-		chicken.platform.import.scm \
 		chicken.pathname.import.scm \
 		chicken.port.import.scm \
 		chicken.posix.import.scm \
diff --git a/types.db b/types.db
index 562b85cc..2894975b 100644
--- a/types.db
+++ b/types.db
@@ -1217,7 +1217,6 @@
 (chicken.platform#build-platform (#(procedure #:pure) chicken.platform#build-platform () symbol))
 (chicken.platform#chicken-version (#(procedure #:pure) chicken.platform#chicken-version (#!optional *) string))
 (chicken.platform#chicken-home (#(procedure #:clean) chicken.platform#chicken-home () string))
-(chicken.platform#extension-information (#(procedure #:clean) chicken.platform#extension-information (symbol) *))
 (chicken.platform#feature? (#(procedure #:clean) chicken.platform#feature? (#!rest symbol) boolean))
 (chicken.platform#features (#(procedure #:clean) chicken.platform#features () (list-of symbol)))
 (chicken.platform#software-type (#(procedure #:pure) chicken.platform#software-type () symbol))
Trap