[Git][cmucl/cmucl][issue-234-make-ascii-format-builtin] 7 commits: Fix #154 - add 'en_US.UTF-8 at piglatin' as locale-alias for 'en at piglatin'
Raymond Toy (@rtoy)
gitlab at common-lisp.net
Wed Jul 5 17:02:03 UTC 2023
Raymond Toy pushed to branch issue-234-make-ascii-format-builtin at cmucl / cmucl
Commits:
b1592289 by Jon Boone at 2023-06-19T00:07:56+00:00
Fix #154 - add 'en_US.UTF-8 at piglatin' as locale-alias for 'en at piglatin'
- - - - -
361c463b by Jon Boone at 2023-06-19T00:08:11+00:00
Merge branch 'issue-154-piglatin-translation-doesnt-work-anymore' into 'master'
Fix #154 - add 'en_US.UTF-8 at piglatin' as locale-alias for 'en at piglatin'
Closes #154 and #216
See merge request cmucl/cmucl!151
- - - - -
d8502e05 by Raymond Toy at 2023-06-19T07:19:00-07:00
Add release notes for 21f
Just pulled in the template and added that #154 has been fixed.
- - - - -
1fcdbdb2 by Raymond Toy at 2023-06-19T14:17:30-07:00
Fix typo in docstring for EQUAL
- - - - -
4e433b83 by Raymond Toy at 2023-07-05T06:40:08-07:00
Set LANG in build.sh
For some reason, on my Mac system, LANG isn't set and sometimes git
messages are in Korean. So for consistency, set LANG in build.sh to a
known value that should work everywhere.
- - - - -
1e08c263 by Raymond Toy at 2023-07-05T09:38:46-07:00
Merge branch 'master' into issue-234-make-ascii-format-builtin
- - - - -
fec52ff6 by Raymond Toy at 2023-07-05T09:59:48-07:00
Fix typo when the format is :ascii
We were incorrectly looking up :utf-8 when given :ascii.
- - - - -
8 changed files:
- .gitlab-ci.yml
- bin/build.sh
- src/code/extfmts.lisp
- src/code/intl.lisp
- src/code/pred.lisp
- + src/general-info/release-21f.md
- src/i18n/locale/cmucl.pot
- tests/issues.lisp
Changes:
=====================================
.gitlab-ci.yml
=====================================
@@ -46,6 +46,7 @@ linux:build:
#- bin/cross-build-world.sh -crl -B boot-2020-04-1 xtarget xcross src/tools/cross-scripts/cross-x86-x86.lisp snapshot/bin/lisp
# Regular build using the cross-compiled result or snapshot
- bin/build.sh $bootstrap -R -C "x86_linux_clang" -o snapshot/bin/lisp
+ # - bin/build.sh $bootstrap -R -C "x86_linux" -o snapshot/bin/lisp
- bin/make-dist.sh -I dist linux-4
linux:test:
=====================================
bin/build.sh
=====================================
@@ -110,6 +110,8 @@ case `uname -s` in
esac ;;
esac
+export LANG=en_US.UTF-8
+
buildit ()
{
if echo $INTERACTIVE_BUILD | grep $BUILD > /dev/null; then
@@ -130,13 +132,11 @@ buildit ()
time $BUILDWORLD $TARGET $OLDLISP $BOOT || { echo "Failed: $BUILDWORLD"; exit 1; }
if [ "$REBUILD_LISP" = "yes" ]; then
$TOOLDIR/rebuild-lisp.sh $TARGET
- else
- # Set the LANG to C. For whatever reason, if I (rtoy) don't
- # do this on my openSuSE system, any messages from gcc are
- # basically garbled. This should be harmless on other
- # systems.
- LANG=C $MAKE -C $TARGET/lisp $MAKE_TARGET || { echo "Failed: $MAKE -C $TARGET/lisp"; exit 1; }
- fi
+ fi
+
+ # Set the LANG to C. For whatever reason, if I (rtoy) don't do this on my openSuSE system,
+ # any messages from gcc are basically garbled. This should be harmless on other systems.
+ LANG=C $MAKE -C $TARGET/lisp $MAKE_TARGET || { echo "Failed: $MAKE -C $TARGET/lisp"; exit 1; }
if [ "$BUILD_WORLD2" = "yes" ];
then
=====================================
src/code/extfmts.lisp
=====================================
@@ -472,7 +472,7 @@
(gethash :utf-8 *external-formats*)))
(when (eq name :ascii)
(return-from %find-external-format
- (gethash :utf-8 *external-formats*)))
+ (gethash :ascii *external-formats*)))
(when (zerop (hash-table-count *external-format-aliases*))
(setf (gethash :latin1 *external-format-aliases*) :iso8859-1)
=====================================
src/code/intl.lisp
=====================================
@@ -51,6 +51,7 @@
Use (INTL:TEXTDOMAIN \"whatever\") in each source file to set this.")
(defvar *loaded-domains* (make-hash-table :test 'equal))
(defvar *locale-aliases* (make-hash-table :test 'equal))
+(setf (gethash "en_US.UTF-8 at piglatin" *locale-aliases*) "en at piglatin")
(defstruct domain-entry
(domain "" :type simple-base-string)
=====================================
src/code/pred.lisp
=====================================
@@ -387,8 +387,8 @@
(defun equal (x y)
"Returns T if X and Y are EQL or if they are structured components
whose elements are EQUAL. Strings and bit-vectors are EQUAL if they
- are the same length and have indentical components. Other arrays must be
- EQ to be EQUAL."
+ are the same length and have identical components. Other arrays
+ must be EQ to be EQUAL."
(cond ((eql x y) t)
((consp x)
(and (consp y)
=====================================
src/general-info/release-21f.md
=====================================
@@ -0,0 +1,40 @@
+# Work in progress
+
+The CMUCL project is pleased to announce the release of CMUCL 21f.
+This is a major release which contains numerous enhancements and bug
+fixes from the <previous> release.
+
+CMUCL is a free, high performance implementation of the Common Lisp
+programming language which runs on most major Unix platforms. It
+mainly conforms to the ANSI Common Lisp standard. CMUCL provides a
+sophisticated native code compiler; a powerful foreign function
+interface; an implementation of CLOS, the Common Lisp Object System,
+which includes multi-methods and a meta-object protocol; a
+source-level debugger and code profiler; and an Emacs-like editor
+implemented in Common Lisp. CMUCL is maintained by a team of
+volunteers collaborating over the Internet, and is mostly in the
+public domain.
+
+## New in this release:
+ * Known issues:
+ * Feature enhancements:
+ * Changes:
+ * ANSI compliance fixes:
+ * Bug fixes:
+ * Gitlab tickets:
+ * ~~#154~~ piglatin translation does not work anymore
+ * Other changes:
+ * Improvements to the PCL implementation of CLOS:
+ * Changes to building procedure:
+
+This release is not binary compatible with code compiled using CMUCL
+21e; you will need to recompile FASL files.
+
+See http://www.cmucl.org or
+https://gitlab.common-lisp.net/cmucl/cmucl for more information,
+See
+https://gitlab.common-lisp.net/cmucl/cmucl/wikis/GettingCmucl
+for obtaining CMUCL, including sources and binaries..
+
+
+We hope you enjoy using this release of CMUCL!
=====================================
src/i18n/locale/cmucl.pot
=====================================
@@ -9083,7 +9083,8 @@ msgstr ""
#: src/code/extfmts.lisp
msgid ""
"The default external format to use if no other external format is\n"
-" specified"
+" specified. This is unaffected by any locale settings or by\n"
+" SET-SYSTEM-EXTERNAL-FORMAT."
msgstr ""
#: src/code/extfmts.lisp
=====================================
tests/issues.lisp
=====================================
@@ -830,7 +830,18 @@
(assert-true (stream::find-external-format :euckr))
(assert-true (stream::find-external-format :cp949))))
-
+(define-test issue.154
+ (:tag :issues)
+ (let ((old-locale intl::*locale*)
+ (locale "en_US.UTF-8 at piglatin")
+ (piglatin-text "Ethay izesay ofway away eamstray inway-ufferbay."))
+ (unwind-protect
+ (progn
+ (assert-equal locale (intl:setlocale "en_US.UTF-8 at piglatin"))
+ (print (intl::find-domain "cmucl" intl::*locale*))
+ (assert-equal piglatin-text (intl:dgettext "cmucl" "The size of a stream in-buffer."))
+ )
+ (intl:setlocale old-locale))))
(define-test issue.158
(:tag :issues)
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/1b030d611bab51f190b877e93ce577d4980a61b0...fec52ff62ad0ea323c245f42b5cea3a09760298d
--
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/1b030d611bab51f190b877e93ce577d4980a61b0...fec52ff62ad0ea323c245f42b5cea3a09760298d
You're receiving this email because of your account on gitlab.common-lisp.net.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20230705/48853639/attachment-0001.html>
More information about the cmucl-cvs
mailing list