ViewVC logotype

Log of /meta-cvs/F-9AB435A23565E6385CE7F4F347D7A205

Parent Directory Parent Directory | Revision Log Revision Log

Links to HEAD: (view) (annotate)
Links to mcvs-1-0-9: (view) (annotate)
Sticky Tag:

Revision - (view) (annotate) - [select for diffs]
Thu Apr 24 04:02:55 2003 UTC (11 years ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-10, mcvs-1-0-11, mcvs-1-0-12, mcvs-1-0-13, mcvs-1-0-7, mcvs-1-0-8, mcvs-1-0-9, mcvs-1-0-branch~merged-to-HEAD-0, mcvs-1-0-branch~merged-to-HEAD-1
Changes since +8 -21 lines
Diff to previous , to branch point 1.10 , to next main 1.18
Improved error handling again in a flash of sanity. The whole
idea of ``bail'' as a restart is gone. All code which must perform
some complex cleanup action does so as part of normal unwinding.
And so termination becomes safe.

* code/update.lisp (mcvs-update): Change bail restart to continue.

* code/mcvs-main.lisp (*global-options*): Remove "error-bail".
(*usage*): Remove description of --error-bail.
(mcvs-execute): Bind *mcvs-error-treatment* to :terminate rather
than :bail if controlling TTY cannot be opened.

* code/move.lisp (mcvs-move): Change "Undoing move" error message
to "Undoing changes to map".

* code/add.lisp (mcvs-add): Get rid of bail restart; move cleanup
code into unwind-protect block.

* code/error.lisp (*mcvs-error-treatment*): Touch up docstring.
(mcvs-error-handler): Remove anything having to do with :bail.
Change description of `T' command to suggest that it is safe.

* code/options.lisp (filter-mcvs-options): Remove handling of
"error-bail" option.

* code/mapping.lisp (mapping-update): Get rid of outermost
restart-case, which had just a bail restart. Replace it with
unwind-protect block which does exactly the same restoration.

Revision - (view) (annotate) - [select for diffs]
Wed Apr 23 05:37:35 2003 UTC (11 years ago) by kaz
Branch: mcvs-1-0-branch
Changes since +23 -11 lines
Diff to previous , to branch point 1.10
Improved error handling.  Use of tty for user interaction, plus
new global option for selecting non-interactive bail behavior.

* code/mcvs-main.lisp (*global-options*): add --error-bail option.
(*usage*): Describe new option.
(mcvs-execute): Dynamically bind *interactive-error-io* variable
to a stream formed by opening the controlling tty.
Send error message to *error-output* rather than *standard-output*.

* code/unix-bindings/unix.lisp (unix-funcs:ctermid): New function,
FFI interface to mcvs_ctermid.

* code/unix-bindings/wrap.c (mcvs_ctermid): New function.

* code/chatter.lisp (chatter): Chatter now goes to *error-output*
rather than *standard-output*.

* code/error.lisp (*interactive-error-io*): New special variable,
holds stream open to controlling tty.
(mcvs-terminate): New function.
(mcvs-error-handler): Use *interactive-error-io* to print menu
and obtain user input. Support the :bail value of
*mcvs-error-treatment* Plus some cosmetic changes.

* code/options.lisp (filter-mcvs-options): Support --error-bail option.

* code/filt.lisp (mcvs-filt-loop): Bugfix, (read-line t ...)
should be (read-line *standard-input* ...) because t stands
for *terminal-io* rather than *standard-io*, unlike in the
format function!

* code/rcs-utils.lisp (rcs-read-token): Read from *standard-input*
rather than *terminal-io*.

Revision - (view) (annotate) - [select for diffs]
Tue Apr 22 05:53:42 2003 UTC (11 years ago) by kaz
Branch: mcvs-1-0-branch
Changes since 1.10: +12 -0 lines
Diff to previous 1.10
Slightly redesigned error handling protocol.

* code/update.lisp (mcvs-update): Change continue restart to bail.

* code/add.lisp (mcvs-add): Likewise.

* code/error.lisp (mcvs-error-handler): Specially recognize two
additional restart symbols, bail and info. A bail restart performs
any rolling back and cleanup and terminates. Continuation is now
properly reserved for actions that proceed boldly to finish
the job, possibly irretrievably clobbering precious data.
The info restart is now a standard way to indicate that more
details about the error can be obtained, so this does not have
to be represented as a special action with an ad-hoc restart.

* code/create.lisp (mcvs-create): Change show restart to info.

* code/remap.lisp (mcvs-remap): Change ignore restart to continue.

* code/mapping.lisp (mapping-update): Change ignore and do-clobber
restarts to continue, and print-clobbers restart to info.
Change continue restart to bail.

Revision 1.10 - (view) (annotate) - [select for diffs]
Sat Oct 5 18:19:23 2002 UTC (11 years, 6 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-97, mcvs-0-98, mcvs-0-99, mcvs-1-0, mcvs-1-0-1, mcvs-1-0-2, mcvs-1-0-4, mcvs-1-0-5, mcvs-1-0-6, mcvs-1-0-branch~branch-point
Branch point for: mcvs-1-0-branch
Changes since 1.9: +1 -3 lines
Diff to previous 1.9
* code/error.lisp (mcvs-error-handler): Simplify roundabout way
of printing error message.

* code/mapping.lisp (mapping-write): Incorporate the low level error
message into the more informative error message.

Revision 1.9 - (view) (annotate) - [select for diffs]
Sat Oct 5 18:09:48 2002 UTC (11 years, 6 months ago) by kaz
Branch: MAIN
Changes since 1.8: +3 -1 lines
Diff to previous 1.8
Error messages no longer specify prefixes like "mcvs:" or

When no restarts are available, the error handler now adds the "mcvs:"
prefix when dumping the error text to the standard error stream,
and also adds a terminating newline.

The inability to write to the MAP file is converted to a more
informative error message.

New --debug option is supported to set the chatter level to 3.

Revision 1.8 - (view) (annotate) - [select for diffs]
Mon Mar 11 19:34:50 2002 UTC (12 years, 1 month ago) by kaz
Branch: MAIN
CVS Tags: deferred-adds-branch~branch-point, mcvs-0-10, mcvs-0-11, mcvs-0-12, mcvs-0-13, mcvs-0-14, mcvs-0-15, mcvs-0-16, mcvs-0-17, mcvs-0-18, mcvs-0-19, mcvs-0-20, mcvs-0-21, mcvs-0-22, mcvs-0-23, mcvs-0-24, mcvs-0-8, mcvs-0-9, mcvs-0-95, mcvs-0-96, old-convert-hacking-branch~branch-point, partial-sandbox-branch~branch-point, partial-sandbox-branch~merged-to-HEAD-0, symlink-branch~branch-point, symlink-branch~merged-to-HEAD-0
Branch point for: deferred-adds-branch, old-convert-hacking-branch, partial-sandbox-branch, symlink-branch
Changes since 1.7: +5 -17 lines
Diff to previous 1.7
* find-bind.lisp: New file.
(find-bind-extract-vals): New function.
(find-bind): New macro.

* error.lisp (restart-destructure): Macro removed.
(mcvs-error-handler): Uses generic find-bind instead of

Revision 1.7 - (view) (annotate) - [select for diffs]
Thu Feb 14 02:02:56 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-6, mcvs-0-7
Changes since 1.6: +6 -5 lines
Diff to previous 1.6
* error.lisp (mcvs-error-handler): Bugfix. We were closing over
a binding of the iteration variable of a dolist, which has only
one binding over the entire loop.

* mapping.lisp (mapping-update): Gathers up info all local
clobbered files, and then throw the error. Provides restart
which allows user to print the list of clobbered files, and
a restart which allows the user to have those files clobbered.

* checkout.lisp (mcvs-checkout-wrapper): Bugfix for last bugfix.

Revision 1.6 - (view) (annotate) - [select for diffs]
Sun Feb 10 16:55:04 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-5
Changes since 1.5: +1 -1 lines
Diff to previous 1.5
Wording change; don't say termination is graceful when it's not clear
what that means.

Revision 1.5 - (view) (annotate) - [select for diffs]
Sun Feb 10 16:51:20 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.4: +6 -4 lines
Diff to previous 1.4
* error.lisp (mcvs-error-handler): Rearranging the menu,
so "T" is clumped with the main options, and any special restarts
are clearly separated.

Revision 1.4 - (view) (annotate) - [select for diffs]
Sun Feb 10 05:50:00 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.3: +3 -0 lines
Diff to previous 1.3
* error.lisp (*mcvs-errors-occured-p*): New special variable.
(mcvs-error-handler): Set *mcvs-errors-occured-p* to T.
* mcvs-main.lisp (mcvs): Take *mcvs-errors-occured-p* into
account in computing termination status.

Revision 1.3 - (view) (annotate) - [select for diffs]
Sun Feb 10 04:41:02 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.2: +1 -1 lines
Diff to previous 1.2
Remove spurious argument from chatter-terse call.

Revision 1.2 - (view) (annotate) - [select for diffs]
Sun Feb 10 04:39:03 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.1: +8 -2 lines
Diff to previous 1.1
Adding some restarts around cvs update.

* posix.lisp (execute-command-xargs): Bail with nil return
value if any command line fails.

* update.lisp (mcvs-update): Tests return value of execute-program
and signal condition if it's nil. Provides a continue restart
as well as a retry restart to try the command again.

* error.lisp (mcvs-error-handler): Show retry restarts as
a special menu item "R".

Revision 1.1 - (view) (annotate) - [select for diffs]
Sun Feb 10 04:09:51 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Added a much improved error handling routine in anticipation
of better use of restarts.

* error.lisp: New file
(restart-destructure): New macro.
(*mcvs-error-treatment*): Special variable, moved here from
(mcvs-error-handler): New function.

* mcvs-main.lisp (mcvs-top-error-handler): Function removed.
(mcvs-execute): Bind error to new mcvs-error-handler instad
of mcvs-top-error-handler.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5