Raymond Toy pushed to branch issue-266-tilde-pathname-support at cmucl / cmucl
Commits:
-
24fd8012
by Raymond Toy at 2023-11-14T23:44:10+00:00
-
cdaa5def
by Raymond Toy at 2023-11-14T23:44:44+00:00
-
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
-
95368634
by Raymond Toy at 2023-11-29T15:44:53-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
|
| ... | ... | @@ -127,8 +128,9 @@ osx:build: |
| 127 | 128 | #- bin/create-target.sh xtarget x86_darwin
|
| 128 | 129 | #- bin/create-target.sh xcross x86_darwin
|
| 129 | 130 | #- bin/cross-build-world.sh -crl -B boot-2020-04-1 xtarget xcross src/tools/cross-scripts/cross-x86-x86.lisp snapshot/bin/lisp
|
| 130 | - # Regular build using the cross-compiled result or snapshot
|
|
| 131 | - - bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp
|
|
| 131 | + # Regular build using the cross-compiled result or snapshot.
|
|
| 132 | + # Need /opt/local/bin to get msgmerge and msgfmt programs.
|
|
| 133 | + - PATH=/opt/local/bin:$PATH bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp
|
|
| 132 | 134 | - bin/make-dist.sh -I dist darwin-4
|
| 133 | 135 | |
| 134 | 136 | osx:test:
|
| ... | ... | @@ -137,12 +139,14 @@ osx:test: |
| 137 | 139 | - osx
|
| 138 | 140 | artifacts:
|
| 139 | 141 | paths:
|
| 142 | + - ansi-test/test.out
|
|
| 140 | 143 | - test.log
|
| 141 | 144 | needs:
|
| 142 | 145 | # Needs artifacts from build (dist/)
|
| 143 | 146 | - job: osx:build
|
| 144 | 147 | artifacts: true
|
| 145 | 148 | script:
|
| 149 | + - echo LANG = $LANG
|
|
| 146 | 150 | - bin/run-unit-tests.sh -l dist/bin/lisp 2>&1 | tee test.log
|
| 147 | 151 | |
| 148 | 152 | osx:ansi-test:
|
| ... | ... | @@ -157,6 +161,9 @@ osx:ansi-test: |
| 157 | 161 | - job: osx:build
|
| 158 | 162 | artifacts: true
|
| 159 | 163 | script:
|
| 164 | + # NB: sometimes we can't clone the ansi-test repo (bad cert!?!).
|
|
| 165 | + # Manually cloning it in the gitlab build dir helps with this
|
|
| 166 | + # issue until we can figure out what's going on.
|
|
| 160 | 167 | - bin/run-ansi-tests.sh -l dist/bin/lisp
|
| 161 | 168 |
|
| 162 | 169 | osx:benchmark:
|
| ... | ... | @@ -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 | ;;;
|