1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-30 06:50:31 +02:00
Commit graph

1264 commits

Author SHA1 Message Date
Neil Jerram
72553cb0ce Support multiple concurrent instances of Emacs + GDS server
By:

- Making the Unix socket name unique (for each Emacs instance), by
  appending Emacs's PID to it.

- Changing the GDS server to listen on both Unix domain and TCP (and
  not to mind if the TCP bind fails, which will happen if another GDS
  instance has already bound to the TCP port number).

- Adding this unique Unix socket name to the environment (as
  GDS_UNIX_SOCKET_NAME), so that Guile clients started from inside
  Emacs can pick it up.

- Changing the GDS client code to look for GDS_UNIX_SOCKET_NAME in the
  environment, and to connect to the Unix socket with that name
  instead of over TCP.

  Guile clients started outside Emacs will not find
  GDS_UNIX_SOCKET_NAME and so will fall back to using TCP.  This means
  they will connect to whichever Emacs + GDS server instance started
  first.

* emacs/gds-server.el (gds-start-server): Take both Unix socket name
  and TCP port args, instead of just one (which could be either Unix
  or TCP), and pass these on to `run-server'.  Remove unused optional
  bufname arg.

* emacs/gds.el (gds-unix-socket-name, gds-tcp-port): New variables.
  (gds-socket-type-alist): Removed.
  (gds-run-debug-server): Pass gds-unix-socket-name and gds-tcp-port
  to gds-start-server.  Add the Unix socket name to the environment.
  (gds-server-socket-type): Note now obsolete.

* ice-9/gds-client.scm (connect-to-gds): Get Unix socket name from
  environment, and connect to this in preference to using TCP.

* ice-9/gds-server.scm (run-server): Take both Unix socket name and
  TCP port args.  Listen and accept connections on both.
2008-12-13 00:01:34 +00:00
Neil Jerram
69986e21d3 Remove everything to do with GDS Breakpoints
(which I now regard as an unsuccesful experiment)

This commit makes all affected files the same in master as they are in branch_release-1-8.

* doc/ref/api-debug.texi (Breakpoints): Removed.

* doc/ref/scheme-using.texi (GDS Introduction, GDS Getting Started,
  Displaying the Scheme Stack): Remove mentions of breakpoints.
  (Setting Specific Breakpoints, Setting GDS-managed Breakpoints,
  Setting and Managing Breakpoints, Listing and Deleting Breakpoints,
  Moving and Losing Breakpoints): Removed.

* emacs/gds-scheme.el (gds-bufferless-breakpoints,
  gds-bpdef:behaviour, gds-bpdef:type, gds-bpdef:file-name,
  gds-bpdef:proc-name, gds-bpdef:lc, gds-breakpoint-number,
  gds-breakpoint-buffers, gds-breakpoint-programming,
  gds-breakpoint-cache, gds-breakpoint-face,
  gds-breakpoints-file-name, gds-delete-lost-breakpoints,
  gds-bpdefs-cache, gds-read-breakpoints-file, gds-adopt-breakpoints,
  gds-adopt-breakpoint, gds-make-breakpoint-overlay,
  gds-send-breakpoint-to-client, gds-default-breakpoint-type,
  gds-set-breakpoint, gds-defun-name-region,
  gds-breakpoint-overlays-at, gds-write-breakpoints-file,
  gds-fold-breakpoints, gds-delete-breakpoints, gds-delete-breakpoint,
  gds-breakpoint-at-point, gds-union, gds-user-selected-breakpoint,
  gds-describe-breakpoints, gds-describe-breakpoint,
  gds-after-save-update-breakpoints, gds-breakpoint-map): Removed.
  (gds-nondebug-protocol): Removed handling for `breakpoint' and
  `get-breakpoints'.

* emacs/gds.el (gds-scheme-first-load): Removed.

* ice-9/debugging/Makefile.am (ice9_debugging_sources): Removed
  breakpoints.scm and load-hooks.scm.

* ice-9/debugging/breakpoints.scm: Removed.

* ice-9/debugging/load-hooks.scm: Removed.

* ice-9/gds-client.scm (handle-nondebug-protocol): Remove everything
  to do with breakpoints.
  (breakpoints, set-gds-breakpoints): Removed.
  (run-utility): Call `connect-to-gds' instead of `set-gds-breakpoints'.
2008-12-10 00:19:11 +00:00
Ludovic Courtès
c633310265 Fix handling of the FLAGS argument in `fold-matches'.
* ice-9/regex.scm (fold-matches): If FLAGS is non-null, use
  `(car flags)', not `flags'.

* test-suite/tests/regexp.test ("fold-matches"): New test prefix.

* NEWS: Update.
2008-09-25 21:07:06 +02:00
Ludovic Courtès
61db429e25 Add `ChangeLog-2008' files to the distribution. 2008-09-12 21:57:52 +02:00
Ludovic Courtès
afb59d75b8 Rename ChangeLog' files to ChangeLog-2008'. 2008-09-12 21:49:58 +02:00
Ludovic Courtès
85ca88c68b Remove `.cvsignore' files. 2008-09-11 21:28:21 +02:00
Ludovic Courtès
242ebeaf08 Get rid of Automake's "maintainer mode".
* NEWS: Update.
* configure.in: Remove `AM_MAINTAINER_MODE' invocation.
* doc/Makefile.am, ice-9/Makefile.am: Ignore `MAINTAINER_MODE'
  conditional.
2008-09-09 18:06:37 +02:00
Neil Jerram
091baf9edf Single stepping through code from Emacs
When you use GDS to evaluate Scheme code from Emacs, you can now use
`C-u' to indicate that you want to single step through that code. See
`Evaluating Scheme Code' in the manual for more details.

	* scheme-using.texi (Evaluating Scheme Code): Document use of
        `C-u' prefix with evaluation commands.

        * gds-scheme.el (gds-eval-region, gds-eval-expression)
        (gds-eval-defun, gds-eval-last-sexp): Support `C-u' prefix,
        meaning that user wants to single step through the code.

        * gds-client.scm (handle-nondebug-protocol): Add support for
        setting a trap on code that is about to be evaluated.
2008-07-17 23:05:57 +01:00
Neil Jerram
b1860cb342 * gds-client.scm (gds-debug-trap): Ensure that frame index passed to Emacs is always positive. 2008-04-16 00:12:52 +01:00
Neil Jerram
09499546b9 (command-loop): Use
needed modules.
2008-03-19 22:56:17 +00:00
Ludovic Courtès
e27d249537 Fix `(ice-9 match)' for lists of lists. 2008-02-22 16:05:30 +00:00
Neil Jerram
7df13834d4 * LICENSE: Change COPYING.LIB to COPYING.LESSER.
* COPYING.LESSER: Renamed, previously COPYING.LIB.

* COPYING: Removed.

* COPYING: Removed.

* COPYING: Removed.

* COPYING: Removed.

* COPYING: Removed.

* COPYING: Removed.

* COPYING: Removed.

* COPYING: Removed.
2008-01-22 21:46:24 +00:00
Ludovic Courtès
dc061a74fd Changes from arch/CVS synchronization 2007-10-02 03:16:28 +00:00
Ludovic Courtès
d7c0c26d88 Changes from arch/CVS synchronization 2007-09-01 16:54:26 +00:00
Ludovic Courtès
3ba9acb1b4 Changes from arch/CVS synchronization 2007-08-08 14:56:02 +00:00
Ludovic Courtès
608860a5b3 Changes from arch/CVS synchronization 2007-05-05 20:38:57 +00:00
Neil Jerram
169ccff576 (connect-to-gds): Break generation of client name
into ...
(client-name): New procedure.
(client-name): Put something from (program-arguments) in the
client name that GDS displays in Emacs.
(connect-to-gds, client-name): Add application-name arg to allow
caller to specify client name.
2007-02-18 23:03:35 +00:00
Ludovic Courtès
e6ee0d484f Changes from arch/CVS synchronization 2007-02-09 16:25:50 +00:00
Ludovic Courtès
a2f00b9b36 Changes from arch/CVS synchronization 2007-01-31 20:58:20 +00:00
Kevin Ryde
9a18d8d431 merge from 1.8 2007-01-15 23:22:36 +00:00
Ludovic Courtès
5b3a39c7ff Added missing files for `(ice-9 i18n)'. 2006-11-18 18:18:23 +00:00
Neil Jerram
31b6212e9d (environment-module): Change eval-closure-module call
back to procedure-property lookup.  (This completes the reversion
of the change made on 2005-06-10, which was only partially undone
by the change on 2005-08-01.)
2006-11-13 22:22:06 +00:00
Neil Jerram
e2d23cc0f8 * gds.el (gds-run-debug-server): Use variable
gds-server-port-or-path instead of hardcoded 8333.
(gds-server-port-or-path): New.

* gds-server.el (gds-start-server): Change port arg to
port-or-path, to support Unix domain sockets.

* gds-client.scm (connect-to-gds): Try to connect by Unix domain
socket if TCP connection fails.

* gds-server.scm (run-server): Update to support listening on a
Unix domain socket.
2006-10-12 23:24:02 +00:00
Kevin Ryde
afc4ccd4dd merge from 1.8 branch 2006-10-09 22:59:10 +00:00
Neil Jerram
83a5b41b47 (run-utility): Remove unnecessary
`connect-to-gds' call.
2006-10-03 19:21:48 +00:00
Neil Jerram
63258dc9a1 (debug-trap): Use
`debugger-command-loop' instead of `read-and-dispatch-commands',
which isn't actually available.  Thanks to Carlos Pita for
reporting this.
(debugger-command-loop): Define here for 1.6.x.
2006-09-30 17:21:52 +00:00
Neil Jerram
ee6be719ce * scheme-using.texi (Error Handling, Interactive Debugger): Minor
editorial improvements.
(Leave Debugger): Removed.
(Display Backtrace): Minor updates.
(Frame Selection, Frame Information, Frame Evaluation) : Minor
editorial improvements.
(Stepping and Continuing): Merged from three previous nodes; plus
minor improvements.  Removed doc for `trace-finish', which no
longer exists.

* debugging/ice-9-debugger-extensions.scm (debugger:step):
Docstring improvements.
(debugger:next): Docstring improvements.
(debugger:continue): Docstring improvements.

* debugger/commands.scm (up, down): Docstring corrections.
(info-args, info-frame, position, evaluate): Docstring
improvements.
2006-09-25 21:05:46 +00:00
Neil Jerram
e741cbb2ed .cvsignore file 2006-08-18 13:43:09 +00:00
Neil Jerram
8746959cd3 * configure.in: Generate Makefile for ice-9/debugging.
* debugging/trc.scm: New file.

* debugging/traps.scm: New file.

* debugging/trace.scm: New file.

* debugging/steps.scm: New file.

* debugging/load-hooks.scm: New file.

* debugging/ice-9-debugger-extensions.scm: New file.

* debugging/example-fns.scm: New file.

* debugging/breakpoints.scm: New file.

* debugging/Makefile.am: New.

* Makefile.am (SUBDIRS): Add debugging.
2006-08-18 13:41:45 +00:00
Neil Jerram
ea19f0b3cf * Makefile.am (ice9_sources): Add new files.
* gds-client.scm, gds-server.scm: New files.
2006-06-19 22:37:13 +00:00
Kevin Ryde
5be9f7290b merge from 1.8 branch 2006-06-17 22:53:04 +00:00
Kevin Ryde
cd5fea8dbe merge from 1.8 branch 2006-04-16 23:43:48 +00:00
Marius Vollmer
1aaa1c171e * deprecated.scm (make-uniform-array): Don't pass the prototype as
the fill value, dimensions->uniform-array will do the right thing
now.  See scm_dimensions_to_uniform_array why we need to be tricky
about the fill value.

* unif.c (scm_dimensions_to_uniform_array): Use the prototype for
filling when the fill parameter is omitted, as documented, but
turn #\nul into 0 since s8 arrays (signified by a #\nul prototype)
can not store characters.
2006-02-12 01:01:46 +00:00
Neil Jerram
2328328f85 * boot-9.scm (try-module-autoload): Make sure that module code is
loaded with the default reader (current-reader #f).  Thanks to
Ludovic Courtès for pointing this problem out.
2006-02-04 15:57:16 +00:00
Neil Jerram
56658166b2 * stack-catch.scm (stack-catch): Use catch pre-unwind handler
instead of lazy-catch.

* boot-9.scm (error-catching-loop): Use catch pre-unwind handler
instead of lazy-catch.
2006-02-04 14:36:06 +00:00
Kevin Ryde
1443643fd8 copyright year for marius' last change 2006-02-02 21:13:15 +00:00
Kevin Ryde
7a5e7cba5e *** empty log message *** 2006-02-02 20:59:54 +00:00
Kevin Ryde
1d314ec23b 2006-02-01 Ludovic Courtès <ludovic.courtes@laas.fr>
* deprecated.scm (make-uniform-array): Fill the returned vector with
	PROT, per guile 1.6 behaviour.
2006-02-02 20:48:44 +00:00
Marius Vollmer
e28cd808dc *** empty log message *** 2006-01-29 22:44:52 +00:00
Marius Vollmer
680d514090 Export %thread-handler.
It's join-thread, not thread-join.
2006-01-29 22:44:15 +00:00
Marius Vollmer
a64d058951 Replaced 'futures' with threads. 2006-01-29 19:44:45 +00:00
Neil Jerram
27d64e2b4a (repl-reader): Use value of current-reader fluid to
do the read, if set.  (Thanks to Ludovic Courtès for the patch.)
2006-01-13 17:36:52 +00:00
Neil Jerram
ec3a8ace63 * api-evaluation.texi (Loading): Document custom reader.
* boot-9.scm (load-module): Support an optional custom reader arg,
implemented by passing on to r4rs's load.

* r4rs.scm (load): Support an optional custom reader arg,
implemented by passing on to primitive-load.

* load.c (the_reader, the_reader_fluid_num): New.
(scm_primitive_load): Support custom reader.
(scm_init_load): Init the_reader and the_reader_fluid_num; export
the_reader as `current-reader'.
2005-12-14 00:21:11 +00:00
Marius Vollmer
9d9ce2b576 *** empty log message *** 2005-12-06 21:34:10 +00:00
Marius Vollmer
08b609aa1f (%cond-expand-features): Add srfi-61. 2005-12-06 21:32:09 +00:00
Kevin Ryde
551387fd6d *** empty log message *** 2005-10-31 23:33:58 +00:00
Kevin Ryde
8acfc848a5 2005-10-27 Ludovic Courtès <ludovic.courtes@laas.fr>
* networking.scm (sockaddr:flowinfo, sockaddr:scopeid): New functions.
2005-10-31 23:33:07 +00:00
Neil Jerram
25bdfbb6cf Export write-frame-long. 2005-08-31 23:05:29 +00:00
Marius Vollmer
7f278dc67a *** empty log message *** 2005-07-31 23:37:03 +00:00
Marius Vollmer
6169fe26f3 (set-module-eval-closure!): Undone change from 2005-06-10; with the
new weak hashtable semantics, cyclic references are no longer a
problem.
2005-07-31 23:36:50 +00:00