Age | Commit message (Collapse) | Author | Files | Lines |
|
This fixes https://lists.gnu.org/archive/html/guile-devel/2021-04/msg00009.html
|
|
Thanks to Eugene Klimov.
|
|
Thanks to Vasilij Schneidermann.
|
|
* module/goops.scm (compute-slots): Fix <redefinable-class> slot
transformation.
* test-suite/tests/goops.test ("slot options on redefinable classes"):
Add a test.
|
|
This mirrors Guix commit b168acae2a01fd84075cc134a6140594a978fde5.
* module/web/client.scm (tls-wrap)[unbuffered]: New procedure.
Pass the result of 'make-custom-binary-input/output-port' to
'unbuffered'.
|
|
This mirrors Guix commit 279d932b1ca7bfbb8657c41a84616dd0dfc6e0a8.
* module/web/client.scm (tls-wrap)[read!]: Read straight into BV
instead of calling 'get-bytevector-some' and 'unget-bytevector'.
|
|
* NEWS: Updates.
|
|
* test-suite/tests/i18n.test ("text collation (French)"): Fix to
actually pass locale arg.
|
|
* libguile/i18n.c (compare_strings): In all cases, convert to a
null-terminated string. While we're doing that, might as well use
utf-8.
* test-suite/tests/i18n.test ("text collation (French)"): Add test.
Thanks again to Rob Browning for the report.
|
|
* test-suite/tests/i18n.test ("text collation (French)"): Punt on
collating if utf8 locale unavailable.
|
|
* libguile/i18n.c (u32_locale_casecoll): Take lengths of incoming
strings as parameters rather than assuming "nul" termination.
(compare_u32_strings_ci): Pass string lengths as computed from the
Scheme strings.
* test-suite/tests/i18n.test ("text collation (English)"): Add a test
case.
Thanks a million to Rob Browning for the report.
|
|
* libguile/jit.c [__MING32__]: add windows.h on Win32
(struct code_arena) [__MINGW32__]: a HANDLE for Win32 mmap
(BIGENDIAN): rename to JIT_BIGENDIAN, to avoid collision with
Win32 BIGENDIAN constant. All users changed
(allocate_code_arena) [__MINGW32__]: add Win32 mmap allocator
(emit_code) [__MINGW32__]: add Win32 munmap
* libguile/lightening/lightening/lightening.c: remove unnecessary mman.h
|
|
When using automake and libtool to build DLLs on Cygwin, libtool
will rename libXXX to cygXXX. 'load-foreign-library' should
emulate libltdl behavior and search for DLLs using that convention.
* module/system/foreign-library.scm (lib->cyg): new helper function
(load-foreign-library): add rename-on-cygwin? option to rename
libraries using Cygwin semantics
* test-suite/tests/foreign.test: new test section 'lib->cyg'
* doc/ref/api-foreign.text: document new rename-on-cygwin? option
for load-foreign-library
|
|
* libguile/guile.c (main): Don't override initial setting of
scm_install_gmp_memory_functions. Thanks to Andrew Whatson for the
fix.
|
|
* module/srfi/srfi-69.scm : fold over second hash table.
|
|
* module/ice-9/suspendable-ports.scm (get-bytevector-some!): Fix
incorrect arguments to bytevector-copy!
|
|
* test-suite/tests/r6rs-ports.test (get-bytevector-n! [short]): add
(get-bytevector-n! [long]): add
|
|
This reverts commit 0f983e3db0c43ad7c89f57ea84f792ede373ba0c.
After discussing with Mike we are going to punt the read-line changes
for now. Open the port in O_TEXT mode if you want to chomp the CR in
CFLF sequences.
|
|
* NEWS: updated
|
|
* libguile/rdelim.c (scm_read_line): handle CRLF, LS and PS
* module/ice-9/suspendable-ports.scm (read-line): handle CRLF, LS, and PS
* module/web/http.scm (read-header-line): take advantage of CRLF in read-line
(read-header): don't need to test for \return
* test-suite/tests/rdelim.test: new tests for read-line CRLF, LS and PS
* doc/ref/api-io.texi: update doc for read-line
|
|
* module/ice-9/ftw.scm (visited?-proc): accept filename for string hash
(file-system-fold): use string hash if ino = 0
(ftw): use new visited?-proc
* test-suite/tests/ftw.test (visited?-proc valid inodes): add filenames to visited?-proc calls
(visited?-proc broken inodes): new tests
(%top-srcdir): canonicalize-path
|
|
* module/ice-9/ftw.scm (getuid-or-false, getgid-or-false): new macros
(stat-dir-readable?-proc): don't overwrite arguments
(ftw, nftw): use new macros
* test-suite/tests/ftw.test (test-EACCES): don't presume getuid exists
|
|
* configure.ac (MINGW_LIBPATH): new automake conditional and test
* libguile/Makefile.am (libpath.h) [MINGW_LIBPATH]: use Windows-style
paths
|
|
* libguile/iselect.h [__MINGW32__]: add winsock2 include
|
|
* test-suite/standalone/Makefile.am (libtest_asmobs_la_LDFLAGS): avoid version
(libtest_ffi_la_LDFLAGS, libtest_extensions_la_LDFLAGS): avoid version
|
|
* libguile/dynl.c [__MING32__] (dlopen, dlsym, dlclose, dlerror): use windows stubs
* libguile/posix-w32.c (dlopen_w32, dlsym_w32, dlclose_w32, dlerror_w32):
new procedures
(dlerror_str): new module-level variable
(DLERROR_LEN): new define
* libguile/posix-w32.h: declare dlopen_w32, dlsym_w32, dlclose_w32, dlerror_w32.
Declare RTLD_NOW, RTLD_LAZY, RTLD_GLOBAL, RTLD_LOCAL
|
|
* doc/ref/posix.texi (File System): Update to document mkstemp only.
* libguile/filesys.c: Make a mkstemp that doesn't modify the input
template. Instead the caller has to get the file name from
port-filename.
(scm_mkstemp): Use the new mkstemp to implement mkstemp!. Can't
deprecate yet though as the replacement hasn't been there for long
enough.
* libguile/posix.c (scm_tempnam): Update to mention mkstemp instead.
* module/system/base/compile.scm (call-with-output-file/atomic): Use
mkstemp.
* test-suite/tests/posix.test:
* test-suite/tests/r6rs-files.test: Use mkstemp.
* NEWS: Update.
|
|
* libguile/posix-w32.h: prefer lowercase windows.h for MinGW cross-builds
* libguile/socket.c [HAVE_WINSOCK2_H]: use only winsock2.h for socket
declarations
|
|
The start_child procedure is used to spawn a child process. If it fails
to launch the given argv[0] as if it were a command, it has logic to
retry using the ComSpec as a command interpreter, treating argv[0] as
a batch file name. Usually, this fails because batch files would have
been handled in the first pass if they were valid. Also, this has
the unfortunate side effect of spawning a shell awaiting user input.
It is safer to remove this attempt.
* libguile/posix-w32.c (start_child): remove fallback processing
|
|
This test, which seems quite complicated to fix, causes the MinGW build
to hang. Disable it for now, but, come back to it later.
* test-suite/tests/popen.test (mingw?): new constant
(no duplicate): disable for mingw, for now
|
|
On some linux cross-builds, Windows.h is windows.h. On MinGW
case is irrelevant.
* libguile/posix-w32.h: modified
|
|
* module/rnrs/base.scm (vector-map vector-for-each): Rewrite to not be
slow.
* NEWS: Update.
|
|
* NEWS: Add doc link.
* doc/ref/api-macros.texi (Syntax Transformer Helpers): Document
syntax-sourcev.
* module/system/syntax.scm: Re-export syntax-sourcev.
|
|
* NEWS: Update.
* doc/ref/api-macros.texi (Syntax Case): Update.
|
|
* NEWS: More words about mini-gmp.
|
|
* libguile/gen-scmconfig.c [!SCM_I_GSC_ENABLE_MINI_GMP]: define
SCM_ENABLE_MINI_GMP as zero, not undef
|
|
* NEWS: Update.
|
|
* libguile/numbers.c (scm_install_gmp_memory_functions): Default to 1
only if mini-gmp is enabled.
|
|
* libguile.h: Don't import anything GMP-related.
* libguile/numbers.h: Import GMP here instead. If we are using
mini-GMP, only import it when building Guile.
(scm_to_mpz, scm_from_mpz): Don't define when mini-gmp is enabled.
|
|
* configure.ac: Mention --enable-mini-gmp if GMP not found.
|
|
* module/ice-9/read.scm (%read): Fix reading #!!#.
* test-suite/tests/reader.test ("reading"): Add some test cases.
|
|
This makes it match the other species of unknown hash object error
when reading number with radix.
* module/ice-9/read.scm (read-sharp): modified
|
|
* module/ice-9/read.scm (read-number-and-radix): modified
|
|
* module/ice-9/read.scm (read-r6rs-hex-escape, read-fixed-hex-escape):
modified
|
|
* module/ice-9/read.scm (%read): Adjust how subexpressions are read to
error on EOF. Improve the error message.
* test-suite/tests/reader.test ("#;"): Adapt expectation.
|
|
* doc/ref/api-debug.texi (Source Properties): Fix wordo, and adapt
text.
|
|
* module/ice-9/read.scm (%read): Fix bad argument order to unread-char.
|
|
* NEWS: Update.
* doc/ref/guile-invoke.texi (Environment Variables): Add entry.
|
|
* NEWS: Update a bit.
* doc/ref/api-debug.texi (Source Properties): Mention read-syntax.
* doc/ref/api-evaluation.texi (Annotated Scheme Read): New section.
* doc/ref/api-macros.texi (Syntax Case): Update for source vectors.
|
|
* module/system/syntax.scm (print-syntax): Print source locations.
|