guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, master, updated. release_1-9-11-72-ge4


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, master, updated. release_1-9-11-72-ge44d2e4
Date: Wed, 16 Jun 2010 20:31:59 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=e44d2e4d9884c25b746b95690bcfb601547220fd

The branch, master has been updated
       via  e44d2e4d9884c25b746b95690bcfb601547220fd (commit)
       via  e5602ce73e1b440fe8c70c34d89fd6ff7f8e9d0a (commit)
      from  393929957d9c2db998824e52c0a100b53ac64fe4 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit e44d2e4d9884c25b746b95690bcfb601547220fd
Author: Andy Wingo <address@hidden>
Date:   Wed Jun 16 22:20:28 2010 +0200

    remove encoding of versions into the file system (for now?)
    
    * module/ice-9/boot-9.scm (find-versioned-module): Remove. Still had
      some bugs (e.g. for "." in the path and in finding compiled files),
      did too much computation and statting, and we don't really want to
      promote versioning. Nor do we want to hard-code a particular encoding
      of versions in the file-system. Perhaps the real way to do this is to
      be extensible somehow.
      (try-module-autoload): Just dispatch to primitive-load-path in all cases.
    
    * module/rnrs
    * module/rnrs.scm:
    * module/rnrs/arithmetic/bitwise.scm:
    * module/rnrs/arithmetic/fixnums.scm:
    * module/rnrs/arithmetic/flonums.scm:
    * module/rnrs/base.scm:
    * module/rnrs/conditions.scm:
    * module/rnrs/control.scm:
    * module/rnrs/enums.scm:
    * module/rnrs/eval.scm:
    * module/rnrs/exceptions.scm:
    * module/rnrs/files.scm:
    * module/rnrs/hashtables.scm:
    * module/rnrs/io/simple.scm:
    * module/rnrs/lists.scm:
    * module/rnrs/mutable-pairs.scm:
    * module/rnrs/mutable-strings.scm:
    * module/rnrs/programs.scm:
    * module/rnrs/r5rs.scm:
    * module/rnrs/records/inspection.scm:
    * module/rnrs/records/procedural.scm:
    * module/rnrs/records/syntactic.scm:
    * module/rnrs/sorting.scm:
    * module/rnrs/syntax-case.scm:
    * module/rnrs/unicode.scm: Move these files, eliding the "6/" infix, so
      that they are in the normal (unversioned) module path.

commit e5602ce73e1b440fe8c70c34d89fd6ff7f8e9d0a
Author: Andy Wingo <address@hidden>
Date:   Wed Jun 16 21:32:52 2010 +0200

    set module version in module-export-all!
    
    * module/ice-9/boot-9.scm (module-export-all!): Set the interface
      version as well.

-----------------------------------------------------------------------

Summary of changes:
 module/Makefile.am                         |   48 ++++++++--------
 module/ice-9/boot-9.scm                    |   80 +++------------------------
 module/{6 => }/rnrs.scm                    |    0
 module/rnrs/arithmetic/{6 => }/bitwise.scm |    0
 module/rnrs/arithmetic/{6 => }/fixnums.scm |    0
 module/rnrs/arithmetic/{6 => }/flonums.scm |    0
 module/rnrs/{6 => }/base.scm               |    0
 module/rnrs/{6 => }/conditions.scm         |    0
 module/rnrs/{6 => }/control.scm            |    0
 module/rnrs/{6 => }/enums.scm              |    0
 module/rnrs/{6 => }/eval.scm               |    0
 module/rnrs/{6 => }/exceptions.scm         |    0
 module/rnrs/{6 => }/files.scm              |    0
 module/rnrs/{6 => }/hashtables.scm         |    0
 module/rnrs/io/{6 => }/simple.scm          |    0
 module/rnrs/{6 => }/lists.scm              |    0
 module/rnrs/{6 => }/mutable-pairs.scm      |    0
 module/rnrs/{6 => }/mutable-strings.scm    |    0
 module/rnrs/{6 => }/programs.scm           |    0
 module/rnrs/{6 => }/r5rs.scm               |    0
 module/rnrs/records/{6 => }/inspection.scm |    0
 module/rnrs/records/{6 => }/procedural.scm |    0
 module/rnrs/records/{6 => }/syntactic.scm  |    0
 module/rnrs/{6 => }/sorting.scm            |    0
 module/rnrs/{6 => }/syntax-case.scm        |    0
 module/rnrs/{6 => }/unicode.scm            |    0
 26 files changed, 33 insertions(+), 95 deletions(-)
 rename module/{6 => }/rnrs.scm (100%)
 rename module/rnrs/arithmetic/{6 => }/bitwise.scm (100%)
 rename module/rnrs/arithmetic/{6 => }/fixnums.scm (100%)
 rename module/rnrs/arithmetic/{6 => }/flonums.scm (100%)
 rename module/rnrs/{6 => }/base.scm (100%)
 rename module/rnrs/{6 => }/conditions.scm (100%)
 rename module/rnrs/{6 => }/control.scm (100%)
 rename module/rnrs/{6 => }/enums.scm (100%)
 rename module/rnrs/{6 => }/eval.scm (100%)
 rename module/rnrs/{6 => }/exceptions.scm (100%)
 rename module/rnrs/{6 => }/files.scm (100%)
 rename module/rnrs/{6 => }/hashtables.scm (100%)
 rename module/rnrs/io/{6 => }/simple.scm (100%)
 rename module/rnrs/{6 => }/lists.scm (100%)
 rename module/rnrs/{6 => }/mutable-pairs.scm (100%)
 rename module/rnrs/{6 => }/mutable-strings.scm (100%)
 rename module/rnrs/{6 => }/programs.scm (100%)
 rename module/rnrs/{6 => }/r5rs.scm (100%)
 rename module/rnrs/records/{6 => }/inspection.scm (100%)
 rename module/rnrs/records/{6 => }/procedural.scm (100%)
 rename module/rnrs/records/{6 => }/syntactic.scm (100%)
 rename module/rnrs/{6 => }/sorting.scm (100%)
 rename module/rnrs/{6 => }/syntax-case.scm (100%)
 rename module/rnrs/{6 => }/unicode.scm (100%)

diff --git a/module/Makefile.am b/module/Makefile.am
index d762b62..3668622 100644
--- a/module/Makefile.am
+++ b/module/Makefile.am
@@ -258,32 +258,32 @@ SRFI_SOURCES = \
   srfi/srfi-98.scm
 
 RNRS_SOURCES =                                 \
-  6/rnrs.scm                                   \
-  rnrs/6/base.scm                              \
-  rnrs/6/conditions.scm                                \
-  rnrs/6/control.scm                           \
-  rnrs/6/enums.scm                             \
-  rnrs/6/eval.scm                              \
-  rnrs/6/exceptions.scm                                \
-  rnrs/6/files.scm                             \
-  rnrs/6/hashtables.scm                                \
-  rnrs/6/lists.scm                             \
-  rnrs/6/mutable-pairs.scm                     \
-  rnrs/6/mutable-strings.scm                   \
-  rnrs/6/programs.scm                          \
-  rnrs/6/r5rs.scm                              \
-  rnrs/6/sorting.scm                           \
-  rnrs/6/syntax-case.scm                       \
-  rnrs/6/unicode.scm                           \
-  rnrs/arithmetic/6/bitwise.scm                        \
-  rnrs/arithmetic/6/fixnums.scm                        \
-  rnrs/arithmetic/6/flonums.scm                        \
+  rnrs.scm                                     \
+  rnrs/base.scm                                        \
+  rnrs/conditions.scm                          \
+  rnrs/control.scm                             \
+  rnrs/enums.scm                               \
+  rnrs/eval.scm                                        \
+  rnrs/exceptions.scm                          \
+  rnrs/files.scm                               \
+  rnrs/hashtables.scm                          \
+  rnrs/lists.scm                               \
+  rnrs/mutable-pairs.scm                       \
+  rnrs/mutable-strings.scm                     \
+  rnrs/programs.scm                            \
+  rnrs/r5rs.scm                                        \
+  rnrs/sorting.scm                             \
+  rnrs/syntax-case.scm                         \
+  rnrs/unicode.scm                             \
+  rnrs/arithmetic/bitwise.scm                  \
+  rnrs/arithmetic/fixnums.scm                  \
+  rnrs/arithmetic/flonums.scm                  \
   rnrs/bytevectors.scm                         \
-  rnrs/io/6/simple.scm                         \
+  rnrs/io/simple.scm                           \
   rnrs/io/ports.scm                            \
-  rnrs/records/6/inspection.scm                        \
-  rnrs/records/6/procedural.scm                        \
-  rnrs/records/6/syntactic.scm
+  rnrs/records/inspection.scm                  \
+  rnrs/records/procedural.scm                  \
+  rnrs/records/syntactic.scm
 
 EXTRA_DIST += scripts/ChangeLog-2008
 EXTRA_DIST += scripts/README
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 450a6e4..3d09dfb 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -2196,71 +2196,6 @@ If there is no handler at all, Guile prints an error and 
then exits."
           ((not) (not (matches? (cadr version-ref))))
           (else  (sub-versions-match? version-ref target))))))
 
-(define (find-versioned-module dir-hint name version-ref roots)
-  (define (subdir-pair-less pair1 pair2)
-    (define (numlist-less lst1 lst2)
-      (or (null? lst2) 
-          (and (not (null? lst1))
-               (cond ((> (car lst1) (car lst2)) #t)
-                     ((< (car lst1) (car lst2)) #f)
-                     (else (numlist-less (cdr lst1) (cdr lst2)))))))
-    (not (numlist-less (car pair2) (car pair1))))
-  (define (match-version-and-file pair)
-    (and (version-matches? version-ref (car pair))
-         (let ((filenames                            
-                (filter (lambda (file)
-                          (let ((s (false-if-exception (stat file))))
-                            (and s (eq? (stat:type s) 'regular))))
-                        (map (lambda (ext)
-                               (string-append (cdr pair) name ext))
-                             %load-extensions))))
-           (and (not (null? filenames))
-                (cons (car pair) (car filenames))))))
-    
-  (define (match-version-recursive root-pairs leaf-pairs)
-    (define (filter-subdirs root-pairs ret)
-      (define (filter-subdir root-pair dstrm subdir-pairs)
-        (let ((entry (readdir dstrm)))
-          (if (eof-object? entry)
-              subdir-pairs
-              (let* ((subdir (string-append (cdr root-pair) entry))
-                     (num (string->number entry))
-                     (num (and num (exact? num) (append (car root-pair) 
-                                                        (list num)))))
-                (if (and num (eq? (stat:type (stat subdir)) 'directory))
-                    (filter-subdir
-                     root-pair dstrm (cons (cons num (string-append subdir 
"/"))
-                                           subdir-pairs))
-                    (filter-subdir root-pair dstrm subdir-pairs))))))
-      
-      (or (and (null? root-pairs) ret)
-          (let* ((rp (car root-pairs))
-                 (dstrm (false-if-exception (opendir (cdr rp)))))
-            (if dstrm
-                (let ((subdir-pairs (filter-subdir rp dstrm '())))
-                  (closedir dstrm)
-                  (filter-subdirs (cdr root-pairs) 
-                                  (or (and (null? subdir-pairs) ret)
-                                      (append ret subdir-pairs))))
-                (filter-subdirs (cdr root-pairs) ret)))))
-    
-    (or (and (null? root-pairs) leaf-pairs)
-        (let ((matching-subdir-pairs (filter-subdirs root-pairs '())))
-          (match-version-recursive
-           matching-subdir-pairs
-           (append leaf-pairs (filter pair? (map match-version-and-file 
-                                                 matching-subdir-pairs)))))))
-  (define (make-root-pair root)
-    (cons '() (string-append root "/" dir-hint)))
-
-  (let* ((root-pairs (map make-root-pair roots))
-         (matches (if (null? version-ref) 
-                      (filter pair? (map match-version-and-file root-pairs))
-                      '()))
-         (matches (append matches (match-version-recursive root-pairs '()))))
-    (and (null? matches) (error "No matching modules found."))
-    (cdar (sort matches subdir-pair-less))))
-
 (define (make-fresh-user-module)
   (let ((m (make-module)))
     (beautify-user-module! m)
@@ -2280,7 +2215,7 @@ If there is no handler at all, Guile prints an error and 
then exits."
          ((and already
                (or (not autoload) (module-public-interface already)))
           ;; A hit, a palpable hit.
-          (if (and version 
+          (if (and version
                    (not (version-matches? version (module-version already))))
               (error "incompatible module version already loaded" name))
           already)
@@ -2601,10 +2536,13 @@ module '(ice-9 q) '(make-q q-length))}."
                    ;; The initial environment when loading a module is a fresh
                    ;; user module.
                    (set-current-module (make-fresh-user-module))
-                   (if version
-                       (load (find-versioned-module
-                              dir-hint name version %load-path))
-                       (primitive-load-path (in-vicinity dir-hint name) #f))
+                   ;; Here we could allow some other search strategy (other 
than
+                   ;; primitive-load-path), for example using versions encoded
+                   ;; into the file system -- but then we would have to figure
+                   ;; out how to locate the compiled file, do autocompilation,
+                   ;; etc. Punt for now, and don't use versions when locating
+                   ;; the file.
+                   (primitive-load-path (in-vicinity dir-hint name) #f)
                    (set! didit #t)))))
             (lambda () (set-autoloaded! dir-hint name didit)))
            didit))))
@@ -3107,7 +3045,7 @@ module '(ice-9 q) '(make-q q-length))}."
   (define (fresh-interface!)
     (let ((iface (make-module)))
       (set-module-name! iface (module-name mod))
-      ;; for guile 2: (set-module-version! iface (module-version mod))
+      (set-module-version! iface (module-version mod))
       (set-module-kind! iface 'interface)
       (set-module-public-interface! mod iface)
       iface))
diff --git a/module/6/rnrs.scm b/module/rnrs.scm
similarity index 100%
rename from module/6/rnrs.scm
rename to module/rnrs.scm
diff --git a/module/rnrs/arithmetic/6/bitwise.scm 
b/module/rnrs/arithmetic/bitwise.scm
similarity index 100%
rename from module/rnrs/arithmetic/6/bitwise.scm
rename to module/rnrs/arithmetic/bitwise.scm
diff --git a/module/rnrs/arithmetic/6/fixnums.scm 
b/module/rnrs/arithmetic/fixnums.scm
similarity index 100%
rename from module/rnrs/arithmetic/6/fixnums.scm
rename to module/rnrs/arithmetic/fixnums.scm
diff --git a/module/rnrs/arithmetic/6/flonums.scm 
b/module/rnrs/arithmetic/flonums.scm
similarity index 100%
rename from module/rnrs/arithmetic/6/flonums.scm
rename to module/rnrs/arithmetic/flonums.scm
diff --git a/module/rnrs/6/base.scm b/module/rnrs/base.scm
similarity index 100%
rename from module/rnrs/6/base.scm
rename to module/rnrs/base.scm
diff --git a/module/rnrs/6/conditions.scm b/module/rnrs/conditions.scm
similarity index 100%
rename from module/rnrs/6/conditions.scm
rename to module/rnrs/conditions.scm
diff --git a/module/rnrs/6/control.scm b/module/rnrs/control.scm
similarity index 100%
rename from module/rnrs/6/control.scm
rename to module/rnrs/control.scm
diff --git a/module/rnrs/6/enums.scm b/module/rnrs/enums.scm
similarity index 100%
rename from module/rnrs/6/enums.scm
rename to module/rnrs/enums.scm
diff --git a/module/rnrs/6/eval.scm b/module/rnrs/eval.scm
similarity index 100%
rename from module/rnrs/6/eval.scm
rename to module/rnrs/eval.scm
diff --git a/module/rnrs/6/exceptions.scm b/module/rnrs/exceptions.scm
similarity index 100%
rename from module/rnrs/6/exceptions.scm
rename to module/rnrs/exceptions.scm
diff --git a/module/rnrs/6/files.scm b/module/rnrs/files.scm
similarity index 100%
rename from module/rnrs/6/files.scm
rename to module/rnrs/files.scm
diff --git a/module/rnrs/6/hashtables.scm b/module/rnrs/hashtables.scm
similarity index 100%
rename from module/rnrs/6/hashtables.scm
rename to module/rnrs/hashtables.scm
diff --git a/module/rnrs/io/6/simple.scm b/module/rnrs/io/simple.scm
similarity index 100%
rename from module/rnrs/io/6/simple.scm
rename to module/rnrs/io/simple.scm
diff --git a/module/rnrs/6/lists.scm b/module/rnrs/lists.scm
similarity index 100%
rename from module/rnrs/6/lists.scm
rename to module/rnrs/lists.scm
diff --git a/module/rnrs/6/mutable-pairs.scm b/module/rnrs/mutable-pairs.scm
similarity index 100%
rename from module/rnrs/6/mutable-pairs.scm
rename to module/rnrs/mutable-pairs.scm
diff --git a/module/rnrs/6/mutable-strings.scm b/module/rnrs/mutable-strings.scm
similarity index 100%
rename from module/rnrs/6/mutable-strings.scm
rename to module/rnrs/mutable-strings.scm
diff --git a/module/rnrs/6/programs.scm b/module/rnrs/programs.scm
similarity index 100%
rename from module/rnrs/6/programs.scm
rename to module/rnrs/programs.scm
diff --git a/module/rnrs/6/r5rs.scm b/module/rnrs/r5rs.scm
similarity index 100%
rename from module/rnrs/6/r5rs.scm
rename to module/rnrs/r5rs.scm
diff --git a/module/rnrs/records/6/inspection.scm 
b/module/rnrs/records/inspection.scm
similarity index 100%
rename from module/rnrs/records/6/inspection.scm
rename to module/rnrs/records/inspection.scm
diff --git a/module/rnrs/records/6/procedural.scm 
b/module/rnrs/records/procedural.scm
similarity index 100%
rename from module/rnrs/records/6/procedural.scm
rename to module/rnrs/records/procedural.scm
diff --git a/module/rnrs/records/6/syntactic.scm 
b/module/rnrs/records/syntactic.scm
similarity index 100%
rename from module/rnrs/records/6/syntactic.scm
rename to module/rnrs/records/syntactic.scm
diff --git a/module/rnrs/6/sorting.scm b/module/rnrs/sorting.scm
similarity index 100%
rename from module/rnrs/6/sorting.scm
rename to module/rnrs/sorting.scm
diff --git a/module/rnrs/6/syntax-case.scm b/module/rnrs/syntax-case.scm
similarity index 100%
rename from module/rnrs/6/syntax-case.scm
rename to module/rnrs/syntax-case.scm
diff --git a/module/rnrs/6/unicode.scm b/module/rnrs/unicode.scm
similarity index 100%
rename from module/rnrs/6/unicode.scm
rename to module/rnrs/unicode.scm


hooks/post-receive
-- 
GNU Guile



reply via email to

[Prev in Thread] Current Thread [Next in Thread]