Raymond Toy pushed to branch issue-269-unix-get-user-homedir at cmucl / cmucl
Commits:
-
fb29f7d9
by Raymond Toy at 2023-11-24T17:43:34+00:00
-
1af08245
by Raymond Toy at 2023-11-24T17:43:45+00:00
-
6b9f32f5
by Tarn Burton at 2023-11-29T22:39:39+00:00
-
b218d29c
by Raymond Toy at 2023-11-29T22:39:54+00:00
-
ed1c38a1
by Raymond Toy at 2023-11-29T14:41:33-08:00
9 changed files:
- .gitlab-ci.yml
- bin/build.sh
- + src/bootfiles/21e/boot-2023-08.lisp
- src/code/exports.lisp
- src/code/misc.lisp
- src/code/stream.lisp
- src/general-info/release-21f.md
- src/pcl/gray-compat.lisp
- src/pcl/gray-streams.lisp
Changes:
| 1 | 1 | variables:
|
| 2 | 2 | download_url: "https://common-lisp.net/project/cmucl/downloads/snapshots/2023/08"
|
| 3 | 3 | version: "2023-08-x86"
|
| 4 | - bootstrap: ""
|
|
| 4 | + bootstrap: "-B boot-2023-08"
|
|
| 5 | + |
|
| 5 | 6 | |
| 6 | 7 | stages:
|
| 7 | 8 | - install
|
| ... | ... | @@ -39,7 +39,7 @@ ENABLE2="yes" |
| 39 | 39 | ENABLE3="yes"
|
| 40 | 40 | ENABLE4="yes"
|
| 41 | 41 | |
| 42 | -version=21d
|
|
| 42 | +version=21e
|
|
| 43 | 43 | SRCDIR=src
|
| 44 | 44 | BINDIR=bin
|
| 45 | 45 | TOOLDIR=$BINDIR
|
| 1 | +;; Build with -B boot-2023-08 from the 2023-08 snapshot. We're moving
|
|
| 2 | +;; *SOFTWARE-VERSION* from the LISP package to the SYSTEM package.
|
|
| 3 | +(ext:without-package-locks
|
|
| 4 | + (unintern 'lisp::*software-version* "LISP")) |
| ... | ... | @@ -1620,6 +1620,7 @@ |
| 1620 | 1620 | "STREAM-ADVANCE-TO-COLUMN" "STREAM-CLEAR-INPUT"
|
| 1621 | 1621 | "STREAM-CLEAR-OUTPUT"
|
| 1622 | 1622 | "STREAM-FILE-POSITION"
|
| 1623 | + "STREAM-FILE-LENGTH"
|
|
| 1623 | 1624 | "STREAM-FINISH-OUTPUT" "STREAM-FORCE-OUTPUT"
|
| 1624 | 1625 | "STREAM-FRESH-LINE" "STREAM-LINE-COLUMN" "STREAM-LINE-LENGTH"
|
| 1625 | 1626 | "STREAM-LISTEN" "STREAM-PEEK-CHAR" "STREAM-READ-BYTE"
|
| ... | ... | @@ -2057,7 +2058,9 @@ |
| 2057 | 2058 | "%SP-REVERSE-FIND-CHARACTER-WITH-ATTRIBUTE" "%STANDARD-CHAR-P"
|
| 2058 | 2059 | "*BEEP-FUNCTION*"
|
| 2059 | 2060 | "*LONG-SITE-NAME*" "*SHORT-SITE-NAME*"
|
| 2060 | - "*SOFTWARE-TYPE*" "*STDERR*" "*STDIN*" "*STDOUT*" "*TASK-DATA*"
|
|
| 2061 | + "*SOFTWARE-TYPE*"
|
|
| 2062 | + "*SOFTWARE-VERSION*"
|
|
| 2063 | + "*STDERR*" "*STDIN*" "*STDOUT*" "*TASK-DATA*"
|
|
| 2061 | 2064 | "*TASK-NOTIFY*" "*TASK-SELF*" "*TTY*" "*TYPESCRIPTPORT*"
|
| 2062 | 2065 | "*XWINDOW-TABLE*"
|
| 2063 | 2066 | "ADD-FD-HANDLER" "ADD-PORT-DEATH-HANDLER" "ADD-PORT-OBJECT"
|
| ... | ... | @@ -23,7 +23,7 @@ |
| 23 | 23 | short-site-name long-site-name dribble compiler-macro))
|
| 24 | 24 | |
| 25 | 25 | (in-package "SYSTEM")
|
| 26 | -(export '(*software-type* *short-site-name* *long-site-name*))
|
|
| 26 | +(export '(*software-type* *software-version* *short-site-name* *long-site-name*))
|
|
| 27 | 27 | |
| 28 | 28 | (in-package "EXT")
|
| 29 | 29 | (export 'featurep)
|
| ... | ... | @@ -397,7 +397,9 @@ |
| 397 | 397 | ;; simple-stream
|
| 398 | 398 | (stream::%file-length stream)
|
| 399 | 399 | ;; lisp-stream
|
| 400 | - (funcall (lisp-stream-misc stream) stream :file-length)))
|
|
| 400 | + (funcall (lisp-stream-misc stream) stream :file-length)
|
|
| 401 | + ;; fundamental-stream
|
|
| 402 | + (stream-file-length stream)))
|
|
| 401 | 403 | |
| 402 | 404 | |
| 403 | 405 | ;;; Input functions:
|
| ... | ... | @@ -20,6 +20,8 @@ public domain. |
| 20 | 20 | ## New in this release:
|
| 21 | 21 | * Known issues:
|
| 22 | 22 | * Feature enhancements:
|
| 23 | + * Add support for Gray streams implementation of file-length via
|
|
| 24 | + `ext:stream-file-length` generic function.
|
|
| 23 | 25 | * Changes:
|
| 24 | 26 | * ANSI compliance fixes:
|
| 25 | 27 | * Bug fixes:
|
| ... | ... | @@ -39,6 +39,9 @@ |
| 39 | 39 | (file-position stream position)
|
| 40 | 40 | (file-position stream)))
|
| 41 | 41 | |
| 42 | +(define-gray-stream-method ext:stream-file-length ((stream simple-stream))
|
|
| 43 | + (file-length stream))
|
|
| 44 | + |
|
| 42 | 45 | (define-gray-stream-method ext:stream-clear-output ((stream simple-stream))
|
| 43 | 46 | (clear-output stream))
|
| 44 | 47 |
| ... | ... | @@ -376,6 +376,13 @@ |
| 376 | 376 | (defmethod (setf stream-file-position) (position (stream character-output-stream))
|
| 377 | 377 | (file-position (character-output-stream-lisp-stream stream) position))
|
| 378 | 378 | |
| 379 | +(defgeneric stream-file-length (stream)
|
|
| 380 | + (:documentation
|
|
| 381 | + _N"Implements FILE-LENGTH for the stream."))
|
|
| 382 | + |
|
| 383 | +(defmethod stream-file-length (stream)
|
|
| 384 | + (error 'type-error :datum stream :expected-type 'file-stream))
|
|
| 385 | + |
|
| 379 | 386 | |
| 380 | 387 | ;;; Binary streams.
|
| 381 | 388 | ;;;
|