~ chicken-core (chicken-5) 4eafceedddf34dff83c05eb6001214461949e7ce


commit 4eafceedddf34dff83c05eb6001214461949e7ce
Author:     Peter Bex <peter.bex@xs4all.nl>
AuthorDate: Sun Sep 22 17:46:49 2013 +0200
Commit:     Mario Domenech Goulart <mario.goulart@gmail.com>
CommitDate: Tue Sep 24 11:20:20 2013 -0300

    Fix #999
    
    Now, unit ports depends on extras.
    The dependency on ports is removed from extras as it doesn't use anything from ports.
    
    Signed-off-by: Mario Domenech Goulart <mario.goulart@gmail.com>

diff --git a/NEWS b/NEWS
index d4e65e98..dc3dd109 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,11 @@
 - Runtime system
   - The procedure trace buffer has been made resizable.
 
+- Core libraries
+  - Unit extras now implicitly depends on ports.  ports no longer
+     implicitly depends on extras.  This may break programs which don't
+     use modules and forgot to require ports but use procedures from it.
+
 4.8.2
 
 - Security fixes
diff --git a/extras.scm b/extras.scm
index 8f17e1f3..613edeef 100644
--- a/extras.scm
+++ b/extras.scm
@@ -27,7 +27,7 @@
 
 (declare
  (unit extras)
- (uses data-structures ports))
+ (uses data-structures))
 
 (declare
   (hide fprintf0 generic-write) )
diff --git a/ports.scm b/ports.scm
index 27bef167..802c6ba3 100644
--- a/ports.scm
+++ b/ports.scm
@@ -32,8 +32,9 @@
 ; OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
-(declare (unit ports))
-
+(declare
+  (unit ports)
+  (uses extras))
 
 (include "common-declarations.scm")
 
diff --git a/tests/library-tests.scm b/tests/library-tests.scm
index 8f3f07b3..aaef6fd1 100644
--- a/tests/library-tests.scm
+++ b/tests/library-tests.scm
@@ -1,6 +1,6 @@
 ;;;; library-tests.scm
 
-(use srfi-1 extras)
+(use srfi-1 extras ports)
 
 (define-syntax assert-fail
   (syntax-rules ()
Trap