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 Fix #259: Move *software-version* from LISP to SYSTEM package
- - - - - 1af08245 by Raymond Toy at 2023-11-24T17:43:45+00:00 Merge branch 'issue-259-b-use-right-software-version' into 'master'
Fix #259: Move *software-version* from LISP to SYSTEM package
Closes #259
See merge request cmucl/cmucl!175 - - - - - 6b9f32f5 by Tarn Burton at 2023-11-29T22:39:39+00:00 Add support for Gray stream implementation of file-length
- - - - - b218d29c by Raymond Toy at 2023-11-29T22:39:54+00:00 Merge branch 'gray-file-length' into 'master'
Add support for Gray stream implementation of file-length
See merge request cmucl/cmucl!179 - - - - - ed1c38a1 by Raymond Toy at 2023-11-29T14:41:33-08:00 Merge branch 'master' into issue-269-unix-get-user-homedir
- - - - -
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:
===================================== .gitlab-ci.yml ===================================== @@ -1,7 +1,8 @@ variables: download_url: "https://common-lisp.net/project/cmucl/downloads/snapshots/2023/08" version: "2023-08-x86" - bootstrap: "" + bootstrap: "-B boot-2023-08" +
stages: - install
===================================== bin/build.sh ===================================== @@ -39,7 +39,7 @@ ENABLE2="yes" ENABLE3="yes" ENABLE4="yes"
-version=21d +version=21e SRCDIR=src BINDIR=bin TOOLDIR=$BINDIR
===================================== src/bootfiles/21e/boot-2023-08.lisp ===================================== @@ -0,0 +1,4 @@ +;; Build with -B boot-2023-08 from the 2023-08 snapshot. We're moving +;; *SOFTWARE-VERSION* from the LISP package to the SYSTEM package. +(ext:without-package-locks + (unintern 'lisp::*software-version* "LISP"))
===================================== src/code/exports.lisp ===================================== @@ -1620,6 +1620,7 @@ "STREAM-ADVANCE-TO-COLUMN" "STREAM-CLEAR-INPUT" "STREAM-CLEAR-OUTPUT" "STREAM-FILE-POSITION" + "STREAM-FILE-LENGTH" "STREAM-FINISH-OUTPUT" "STREAM-FORCE-OUTPUT" "STREAM-FRESH-LINE" "STREAM-LINE-COLUMN" "STREAM-LINE-LENGTH" "STREAM-LISTEN" "STREAM-PEEK-CHAR" "STREAM-READ-BYTE" @@ -2057,7 +2058,9 @@ "%SP-REVERSE-FIND-CHARACTER-WITH-ATTRIBUTE" "%STANDARD-CHAR-P" "*BEEP-FUNCTION*" "*LONG-SITE-NAME*" "*SHORT-SITE-NAME*" - "*SOFTWARE-TYPE*" "*STDERR*" "*STDIN*" "*STDOUT*" "*TASK-DATA*" + "*SOFTWARE-TYPE*" + "*SOFTWARE-VERSION*" + "*STDERR*" "*STDIN*" "*STDOUT*" "*TASK-DATA*" "*TASK-NOTIFY*" "*TASK-SELF*" "*TTY*" "*TYPESCRIPTPORT*" "*XWINDOW-TABLE*" "ADD-FD-HANDLER" "ADD-PORT-DEATH-HANDLER" "ADD-PORT-OBJECT"
===================================== src/code/misc.lisp ===================================== @@ -23,7 +23,7 @@ short-site-name long-site-name dribble compiler-macro))
(in-package "SYSTEM") -(export '(*software-type* *short-site-name* *long-site-name*)) +(export '(*software-type* *software-version* *short-site-name* *long-site-name*))
(in-package "EXT") (export 'featurep)
===================================== src/code/stream.lisp ===================================== @@ -397,7 +397,9 @@ ;; simple-stream (stream::%file-length stream) ;; lisp-stream - (funcall (lisp-stream-misc stream) stream :file-length))) + (funcall (lisp-stream-misc stream) stream :file-length) + ;; fundamental-stream + (stream-file-length stream)))
;;; Input functions:
===================================== src/general-info/release-21f.md ===================================== @@ -20,6 +20,8 @@ public domain. ## New in this release: * Known issues: * Feature enhancements: + * Add support for Gray streams implementation of file-length via + `ext:stream-file-length` generic function. * Changes: * ANSI compliance fixes: * Bug fixes:
===================================== src/pcl/gray-compat.lisp ===================================== @@ -39,6 +39,9 @@ (file-position stream position) (file-position stream)))
+(define-gray-stream-method ext:stream-file-length ((stream simple-stream)) + (file-length stream)) + (define-gray-stream-method ext:stream-clear-output ((stream simple-stream)) (clear-output stream))
===================================== src/pcl/gray-streams.lisp ===================================== @@ -376,6 +376,13 @@ (defmethod (setf stream-file-position) (position (stream character-output-stream)) (file-position (character-output-stream-lisp-stream stream) position))
+(defgeneric stream-file-length (stream) + (:documentation + _N"Implements FILE-LENGTH for the stream.")) + +(defmethod stream-file-length (stream) + (error 'type-error :datum stream :expected-type 'file-stream)) + ;;; Binary streams. ;;;
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/03965083710758630032f1b...