/[meta-cvs]/meta-cvs/F-FFF16CA4956A36F19290AC9E1EBAFFD8
ViewVC logotype

Log of /meta-cvs/F-FFF16CA4956A36F19290AC9E1EBAFFD8

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Links to asdf-import-branch~branch-point: (view) (annotate)
Sticky Tag:

Revision 1.66 - (view) (annotate) - [select for diffs]
Tue Nov 28 07:47:22 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
CVS Tags: HEAD, asdf-import-branch~branch-point, asdf-import-branch~merged-to-HEAD-0, mcvs-1-1-98
Branch point for: asdf-import-branch
Changes since 1.65: +18 -18 lines
Diff to previous 1.65
More renaming to get rid of mcvs- prefix.

* code/chatter.lisp (*mcvs-debug*): Renamed to *chatter-debug*.
(*mcvs-info*, *mcvs-terse*, *mcvs-silent*): Similarly.
(*mcvs-chatter-level*): Renamed to *chatter-level*.

* code/unix.lisp (*mcvs-editor*): Renamed to *edit-program*.

* code/types.lisp (*mcvs-types-name*): Renamed to *types-file*.
(*mcvs-types*): Renamed to *types-path*.
(*mcvs-new-types*): Renamed to *types-new-path*.

* code/mapping.lisp (*mcvs-dir*): Renamed to *admin-dir*.
(*mcvs-map-name*): Renamed to *map-file*.
(*mcvs-map-local-name*): Renamed to *map-local-file*.
(*mcvs-displaced-name*): Renamed to *displaced-file*.
(*mcvs-map*): Renamed to *map-path*.
(*mcvs-map-local*): Renamed to *map-local-path*.
(*mcvs-displaced*): Renamed to *displaced-path*.

Revision 1.65 - (view) (annotate) - [select for diffs]
Tue Nov 28 04:12:08 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.64: +2 -2 lines
Diff to previous 1.64
Getting rid of mcvs- prefixes.

* code/package.lisp (defpackage): shadow the merge symbol.

* code/purge.lisp (mcvs-purge): renamed to purge
(mcvs-purge-wrapper): renamed to purge-wrapper

* code/restore.lisp (mcvs-restore): renamed to restore
(mcvs-restore-wrapper): renamed to restore-wrapper

* code/update.lisp (mcvs-update): renamed to update
(mcvs-update-wrapper): renamed to update-wrapper

* code/main.lisp (mcvs-help): renamed to help
(*mcvs-command-table*): renamed to *command-table*
(mcvs-terminate catch): renamed to terminate.

* code/execute.lisp (mcvs-execute): renamed to execute

* code/move.lisp (mcvs-move): renamed to move
(mcvs-move-wrapper): renamed to move-wrapper

* code/grab.lisp (mcvs-grab): renamed to grab
(mcvs-grab-wrapper): renamed to grab-wrapper

* code/prop.lisp (mcvs-prop): renamed to prop
(mcvs-prop-wrapper): renamed to prop-wrapper

* code/filt.lisp (mcvs-filt-loop): renamed to filt-loop
(mcvs-filt): renamed to filt
(mcvs-remote-filt): renamed to remote-filt
(mcvs-filt-wrapper): renamed to filt-wrapper
(mcvs-remote-filt-wrapper): renamed to remote-filt-wrapper

* code/branch.lisp (mcvs-branch): renamed to branch
(mcvs-branch-wrapper): renamed to branch-wrapper
(mcvs-merge): renamed to merge
(mcvs-list-branches): renamed to list-branches
(mcvs-merge-wrapper): renamed to merge-wrapper
(mcvs-remerge-wrapper): renamed to remerge-wrapper
(mcvs-list-branches-wrapper): renamed to list-branches-wrapper
(mcvs-switch-wrapper): renamed to switch-wrapper

* code/link.lisp (mcvs-link): renamed to ln
(mcvs-link-wrapper): renamed to link-wrapper

* code/watch.lisp (mcvs-watch): renamed to watch
(mcvs-watch-wrapper): renamed to watch-wrapper

* code/add.lisp (mcvs-add): renamed to add
(mcvs-add-wrapper): renamed to add-wrapper

* code/remove.lisp (mcvs-remove): renamed to rm
(mcvs-remove-wrapper): renamed to remove-wrapper

* code/convert.lisp (mcvs-convert): renamed to convert
(mcvs-convert-wrapper): renamed to convert-wrapper

* code/error.lisp (mcvs-terminate): renamed to terminate
(mcvs-error-handler): renamed to error-handler
(*mcvs-error-treatment*): renamed to *error-treatment*
(*mcvs-errors-occured-p*): renamed to *errors-occured-p*

* code/checkout.lisp (mcvs-checkout): renamed to checkout
(mcvs-checkout-wrapper): renamed to checkout-wrapper
(mcvs-export-wrapper): renamed to export-wrapper

* code/generic.lisp (mcvs-generic): renamed to generic
(mcvs-commit-wrapper): renamed to commit-wrapper
(mcvs-diff-wrapper): renamed to diff-wrapper
(mcvs-tag-wrapper): renamed to tag-wrapper
(mcvs-log-wrapper): renamed to log-wrapper
(mcvs-status-wrapper): renamed to status-wrapper
(mcvs-annotate-wrapper): renamed to annotate-wrapper
(mcvs-watchers-wrapper): renamed to watchers-wrapper
(mcvs-edit-wrapper): renamed to edit-wrapper
(mcvs-unedit-wrapper): renamed to unedit-wrapper
(mcvs-editors-wrapper): renamed to editors-wrapper
(mcvs-sync-to-wrapper): renamed to sync-to-wrapper
(mcvs-sync-from-wrapper): renamed to sync-from-wrapper

* code/create.lisp (mcvs-create): renamed to create
(mcvs-create-wrapper): renamed to create-wrapper

* code/remap.lisp (mcvs-remap): renamed to remap
(mcvs-remap-wrapper): renamed to remap-wrapper

* code/mapping.lisp (mcvs-locate): renamed to locate

Revision 1.64 - (view) (annotate) - [select for diffs]
Fri Nov 24 04:53:50 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.63: +1 -1 lines
Diff to previous 1.63
Stylistic change.

* code/add.lisp: Change in-package calls not to use the all-caps
"META-CVS" string string, but rather the :meta-cvs keyword.
* code/branch.lisp: Likewise.
* code/chatter.lisp: Likewise.
* code/checkout.lisp: Likewise.
* code/clisp-unix.lisp: Likewise.
* code/cmucl-unix.lisp: Likewise.
* code/convert.lisp: Likewise.
* code/create.lisp: Likewise.
* code/dirwalk.lisp: Likewise.
* code/error.lisp: Likewise.
* code/execute.lisp: Likewise.
* code/filt.lisp: Likewise.
* code/find-bind.lisp: Likewise.
* code/generic.lisp: Likewise.
* code/grab.lisp: Likewise.
* code/link.lisp: Likewise.
* code/main.lisp: Likewise.
* code/mapping.lisp: Likewise.
* code/memoize.lisp: Likewise.
* code/move.lisp: Likewise.
* code/multi-hash.lisp: Likewise.
* code/options.lisp: Likewise.
* code/paths.lisp: Likewise.
* code/print.lisp: Likewise.
* code/prop.lisp: Likewise.
* code/purge.lisp: Likewise.
* code/rcs-utils.lisp: Likewise.
* code/remap.lisp: Likewise.
* code/remove.lisp: Likewise.
* code/restart.lisp: Likewise.
* code/restore.lisp: Likewise.
* code/seqfuncs.lisp: Likewise.
* code/slot-refs.lisp: Likewise.
* code/split.lisp: Likewise.
* code/sync.lisp: Likewise.
* code/types.lisp: Likewise.
* code/unix.lisp: Likewise.
* code/update.lisp: Likewise.
* code/watch.lisp: Likewise.

Revision 1.63 - (view) (annotate) - [select for diffs]
Mon Mar 8 06:11:41 2004 UTC (10 years, 1 month ago) by kaz
Branch: MAIN
CVS Tags: mcvs-1-1-0
Changes since 1.62: +0 -10 lines
Diff to previous 1.62
Revamped loading system. Got rid of require/provide in all
Lisp source files.

* code/mcvs.lisp: New file. Responsible for compiling and loading
everything in the right order.

* code/mcvs-main.lisp: File renamed to main.lisp.

* code/mcvs-package.lisp: File renamed to package.lisp.

* code/system.lisp: File removed.

Revision 1.62 - (view) (annotate) - [select for diffs]
Thu Apr 24 04:14:42 2003 UTC (10 years, 11 months ago) by kaz
Branch: MAIN
Changes since 1.61: +7 -8 lines
Diff to previous 1.61
Merging from mcvs-1-0-branch.

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 1.61 - (view) (annotate) - [select for diffs]
Tue Apr 22 06:28:16 2003 UTC (10 years, 11 months ago) by kaz
Branch: MAIN
Changes since 1.60: +4 -4 lines
Diff to previous 1.60
Merging from mcvs-1-0-branch.

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.60 - (view) (annotate) - [select for diffs]
Sun Apr 13 14:39:13 2003 UTC (11 years ago) by kaz
Branch: MAIN
Changes since 1.59: +15 -8 lines
Diff to previous 1.59
Merging from mcvs-1-0-branch.

* code/mapping.lisp (mapping-read): Provide a restart for
file errors, which lets the user interactively substitute an
empty map if the file can't be read. This is intended to handle
the case when MCVS/MAP is missing; for example, the user
updated to a sticky date for which no revision of the MAP
exists. The effect of continuing will be that all files
will disappear.
(mapping-synchronize): New :direction key
parameter, passed down to synchronize-filed. The new :no-sync
return value from synchronize-files is handled.
(mapping-update): Select the :right direction for synchronizing
moves, adds or rollbacks.

Revamped the synchronization logic. Synchronization now happens
in a specific direction.  For example, if we are doing a diff,
we just need to push changes from the tree to the MCVS directory,
not the other way around. Or: before an update or commit, we push from
the tree to MCVS, then after the update, in the other direction.

* code/update.lisp (mcvs-update): The before update is done
in the :left direction only, and the after update in the :right.

* code/move.lisp (mcvs-move): The just-in-case sync is done
in the :left direction only.

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

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

* code/add.lisp (mcvs-add): Get rid of mapping-synchronize call;
it's completely unnecessary, since the new files are not even
in the MAP-LOCAL, and the add logic explicitly links them into
the MCVS directory.

* code/generic.lisp (mcvs-generic): New keyword parameter,
need-sync-before. Before-synchronization done in :left direction,
after-synchronization in :right direction. Before-synchronization
is now not done by default; need-sync-before must be specified.
(mcvs-commit-wrapper): Specify before and after sync.
(mcvs-diff-wrapper, mcvs-status-wrapper,
mcvs-edit-wrapper): Explicitly specify before sync.
(mcvs-tag-wrapper, mcvs-annotate-wrapper): Implicitly specify no sync.
(mcvs-unedit-wrapper): Add before sync.

* code/sync.lisp (synchronize-files):  New key parameter :direction,
values can be :left, :right or :either. Default is :either.
If the value is :left or :right, then a sync is done only in that
direction, otherwise the value :no-sync is returned.
Behavior change: if the left file is missing (F- file in MCVS
directory) it is not re-created, but rather :no-sync is returned.
Also, if both files exist, have the same timestamp, and are
distinct objects, if the direction is :left or :right, then
the appropriate restart is automatically chosen. So this will
do the right thing on filesystems where link() is performed by
copying, without bothering the user with the error.

Revision 1.59 - (view) (annotate) - [select for diffs]
Tue Mar 4 05:55:11 2003 UTC (11 years, 1 month ago) by kaz
Branch: MAIN
Changes since 1.58: +16 -25 lines
Diff to previous 1.58
Merging from mcvs-1-0-branch.

* code/mapping.lisp (mapping-update): Rewrite restart-bind
block using super-restart-case.

Revision 1.58 - (view) (annotate) - [select for diffs]
Thu Feb 13 07:22:35 2003 UTC (11 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-1-0-3
Changes since 1.57: +6 -2 lines
Diff to previous 1.57
Merging from mcvs-1-0-branch.

New --up option added for escaping out of nested sandboxes.

* code/mcvs-main.lisp (*cvs-options*): Added "up" 1 arg option.

* code/options.lisp (*nesting-escape-option*): New global,
default value 0.
(filter-mcvs-options): Filter new option, parse out and validate
integer argument.

* code/mapping.lisp (mcvs-locate): When searching for MCVS
directory, skip N matches, where N is the value of
*nesting-escape-option*.

Revision 1.57 - (view) (annotate) - [select for diffs]
Thu Jan 30 11:06:44 2003 UTC (11 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.56: +4 -4 lines
Diff to previous 1.56
Merging from mcvs-1-0-branch.

* code/paths.lisp: Move some (declaim inline) to the correct
location, before the function to be inlined.

* code/clisp-unix.lisp: Likewise.
* code/cmucl-unix.lisp: Likewise.
* code/mapping.lisp: Likewise.

Revision 1.56 - (view) (annotate) - [select for diffs]
Sun Jan 12 20:52:31 2003 UTC (11 years, 3 months ago) by kaz
Branch: MAIN
Changes since 1.55: +2 -2 lines
Diff to previous 1.55
Merging from mcvs-1-0-branch.

Hard link sync optimization.

* code/mapping.lisp (mapping-synchronize): New optional parameter,
specifies map to use instead of reading *map-local*.

* code/mcvs-generic.lisp (mcvs-generic): Pass extra parameter to
mapping-synchronize to only sync the selected subset of files.

Revision 1.55 - (view) (annotate) - [select for diffs]
Thu Nov 21 06:15:15 2002 UTC (11 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.54: +9 -7 lines
Diff to previous 1.54
Merging from mcvs-1-0-branch.

Some security fixes.  Funny I didn't think of this sooner!

* code/types.lisp (types-read): Make sure *read-eval* is bound to
nil when calling READ.

* code/mapping.lisp (mapping-read-raw-map, displaced-path-read):
Likewise.

Revision 1.54 - (view) (annotate) - [select for diffs]
Mon Nov 4 02:09:17 2002 UTC (11 years, 5 months ago) by kaz
Branch: MAIN
Changes since 1.53: +28 -15 lines
Diff to previous 1.53
Merging from mcvs-1-0-branch.

Revision 1.53 - (view) (annotate) - [select for diffs]
Thu Oct 31 04:06:01 2002 UTC (11 years, 5 months ago) by kaz
Branch: MAIN
Changes since 1.52: +4 -1 lines
Diff to previous 1.52
* code/mcvs-package.lisp: New file, defines META-CVS package.

* code/purge.lisp: Put all symbols in new package.
* code/restore.lisp: Likewise.
* code/paths.lisp: Likewise.
* code/install.sh: Likewise.
* code/restart.lisp: Likewise.
* code/update.lisp: Likewise.
* code/move.lisp: Likewise.
* code/grab.lisp: Likewise.
* code/unix.lisp: Likewise.
* code/slot-refs.lisp: Likewise.
* code/prop.lisp: Likewise.
* code/multi-hash.lisp: Likewise.
* code/rcs-utils.lisp: Likewise.
* code/branch.lisp: Likewise.
* code/find-bind.lisp: Likewise.
* code/execute.lisp: Likewise.
* code/link.lisp: Likewise.
* code/split.lisp: Likewise.
* code/watch.lisp: Likewise.
* code/clisp-unix.lisp: Likewise.
* code/add.lisp: Likewise.
* code/chatter.lisp: Likewise.
* code/print.lisp: Likewise.
* code/types.lisp: Likewise.
* code/remove.lisp: Likewise.
* code/convert.lisp: Likewise.
* code/error.lisp: Likewise.
* code/options.lisp: Likewise.
* code/dirwalk.lisp: Likewise.
* code/checkout.lisp: Likewise.
* code/generic.lisp: Likewise.
* code/sync.lisp: Likewise.
* code/create.lisp: Likewise.
* code/memoize.lisp: Likewise.
* code/seqfuncs.lisp: Likewise.
* code/cmucl-unix.lisp: Likewise.
* code/remap.lisp: Likewise.

* code/mapping.lisp: Put symbols in new package. Replace use
of CLISP specific substring function with subseq.
* code/filt.lisp: Likewise.

* code/mcvs-main.lisp: Put symbols in new package. The mcvs
function is renamed to main.

* code/install.sh: Generate mcvs script that uses qualified name
of new startup functiont to start the software.

Revision 1.52 - (view) (annotate) - [select for diffs]
Mon Oct 28 04:01:15 2002 UTC (11 years, 5 months ago) by kaz
Branch: MAIN
Changes since 1.51: +1 -1 lines
Diff to previous 1.51
Merging from mcvs-1-0-branch.

Bugfix to the directory restructuring code. A clobbering
file add was not actually removing the clobbered file, but leaving
it up to the synchronization algorithm, so the time-stamp would
decide whether the local file gets clobbered by the repository one,
or whether it wins.

* code/mapping.lisp (mapping-update): Logic for handling added
file ensures that a clobbered local file is removed first.

Revision 1.51 - (view) (annotate) - [select for diffs]
Sat Oct 26 18:56:29 2002 UTC (11 years, 5 months ago) by kaz
Branch: MAIN
Changes since 1.50: +3 -0 lines
Diff to previous 1.50
Merging from mcvs-1-0-branch.

* code/mcvs-main.lisp (*usage*): Expand tabs to spaces.

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

* code/remove.lisp (*remove-help*): Likewise.

* code/create.lisp (*create-help*): Likewise.

* code/purge.lisp (mcvs-purge): Get rid the processing of the
nonexistent -n option from purge code.  The global option -n does an
adequate job of implementing a dry run.

* code/mapping.lisp (mapping-removed-files): Skip over the MCVS/CVS
directory, which can contain CVS-generated files with F- names and a ,t
suffix. These trip up the algorithm.

Revision 1.50 - (view) (annotate) - [select for diffs]
Mon Oct 21 04:48:14 2002 UTC (11 years, 6 months ago) by kaz
Branch: MAIN
Changes since 1.49: +12 -6 lines
Diff to previous 1.49
Merging from mcvs-1-0-branch

Fix broken ``filt -r''.

* code/mapping.lisp (mapping-read-raw-map): New function; reads
map from stream and does sanity check.
(mapping-read): Argument can be a filename or stream. Call to
mapping-read-raw-map to factor out common code for both cases.

* code/filt.lisp (filt-select-map): This was still just
reading the raw structure from the cvs coprocess, which worked under
the old map format, when the internal and external representations
were the same. Now it calls mapping-read on the stream.

* UPGRADE-EXISTING: New file.

* code/mcvs-main.lisp: Clear out *modules* list before requiring
modules. This is needed so that mcvs-upgrade works, because there
is already a populated list in the Lisp image.

Revision 1.49 - (view) (annotate) - [select for diffs]
Sun Oct 6 08:17:28 2002 UTC (11 years, 6 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-97, mcvs-0-98, mcvs-1-0-branch~branch-point
Branch point for: mcvs-1-0-branch
Changes since 1.48: +3 -2 lines
Diff to previous 1.48
* code/remap.lisp (mcvs-remap): Preserve property lists of
mapping entries, and pick up changes in execute permission.

* code/mapping.lisp (mapping-convert-out): If the mapping entry's
executable flag is nil, then remove the :exec entry from the property
list.

Revision 1.48 - (view) (annotate) - [select for diffs]
Sun Oct 6 07:56:00 2002 UTC (11 years, 6 months ago) by kaz
Branch: MAIN
Changes since 1.47: +3 -2 lines
Diff to previous 1.47
* code/mapping.lisp (equal-filemaps): Repair completely broken
function.

* code/move.lisp (mcvs-move): Added little hack for turning
no-op moves into errors. Without this the behavior is confusing,
since the program appears to do nothing.

Revision 1.47 - (view) (annotate) - [select for diffs]
Sat Oct 5 18:19:23 2002 UTC (11 years, 6 months ago) by kaz
Branch: MAIN
Changes since 1.46: +1 -1 lines
Diff to previous 1.46
* 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.46 - (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.45: +15 -13 lines
Diff to previous 1.45
Error messages no longer specify prefixes like "mcvs:" or
"mcvs-remove:".

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.45 - (view) (annotate) - [select for diffs]
Fri Sep 6 04:09:46 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-24, mcvs-0-95, mcvs-0-96
Changes since 1.44: +4 -4 lines
Diff to previous 1.44
New prop command for manipulating property lists.

* code/mcvs-main.lisp (*prop-options*): New constant.
(*mcvs-command-table*): New entry.
(*usage*): Update.

* code/mapping.lisp (mapping-entry-parse-plist): Just unconditionally
set execute slot based on :exec property.

* code/prop.lisp: New file.

Revision 1.44 - (view) (annotate) - [select for diffs]
Fri Sep 6 03:19:07 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
Changes since 1.43: +17 -10 lines
Diff to previous 1.43
Be transparent with respect to mapping entry property lists:
preserve unrecognized indicators and values.

* code/mapping.lisp (mapping-entry): New slot, raw-plist,
records raw property list from external mapping representation.
(mapping-entry-parse-attributes): Renamed to mapping-entry-parse-plist.
Argument dropped; parses raw-plist slot instead.
(mapping-convert-in): Set raw-plist slot to value of fourth list
element of :FILE entry, or fifth list element of :SYMLINK entry.
(mapping-convert-out): Unify any slot values that are represented as
properties into raw-plist, and insert any non-empty plists into
external representation.

Revision 1.43 - (view) (annotate) - [select for diffs]
Fri Sep 6 02:17:27 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
Changes since 1.42: +27 -15 lines
Diff to previous 1.42
Low level support for versioning executable bit.

* code/unix-bindings/unix.lisp (unix-funcs:chmod): New callout
function.

* code/clisp-unix.lisp (executable-p, make-executable,
make-non-executable): New generic functions.
(executable-p (file-info), make-executable (file-info),
make-executable (string), make-non-executable (file-info),
make-non-executable (string)): New methods.

* code/add.lisp (mcvs-add): Record whether new file is
executable or not, by setting executable slot in mapping-entry.

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

* code/sync.lisp (synchronize-files): New parameter,
should-be-executable, tells function which way to set
permissions after synchronizing files.

* code/mapping.lisp (mapping-entry): New slot, executable.
(mapping-entry-parse-attributes): New function, parses
new optional property list from :FILE entries in a mapping.
(mapping-convert-in): Parse property list that may be present in fourth
list element of a :FILE entry.
(mapping-convert-out): Write out executable flag as
:EXEC property, if true.
(mapping-synchronize): Pass executable flag down to synchronize-files.

Revision 1.42 - (view) (annotate) - [select for diffs]
Sat Aug 31 20:53:14 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-22, mcvs-0-23
Changes since 1.41: +244 -131 lines
Diff to previous 1.41
Merging symlink-branch to main trunk.

Revision 1.41 - (view) (annotate) - [select for diffs]
Sat Aug 24 22:32:35 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
Changes since 1.40: +2 -2 lines
Diff to previous 1.40
* mapping.lisp (mapping-update): Bugfix
in logic which prints clobbering moves. The functions
abstract-to-real-path and second were applied in the wrong order.

Revision 1.40 - (view) (annotate) - [select for diffs]
Mon Aug 5 19:19:58 2002 UTC (11 years, 8 months ago) by kaz
Branch: MAIN
CVS Tags: symlink-branch~branch-point
Branch point for: symlink-branch
Changes since 1.39: +10 -13 lines
Diff to previous 1.39
Use getcwd to to implement mcvs-locate.

* code/unix-bindings/unix.lisp (getcwd): New call out,
invokes impl_getcwd.

* code/unix-bindings/impl.c (impl_getcwd): New function,
use getcwd() to obtain current working directory, resizing dynamic
buffer if necessary to get the entire path.

* code/clisp-unix.lisp (getcwd): New wrapper function.

* code/dirwalk.lisp (go-up): Function removed.

* code/mapping.lisp (mcvs-locate): Rewritten to obtain
path using getcwd, then try looking for MCVS directory
in successively shorter prefixes of that path.

Revision 1.39 - (view) (annotate) - [select for diffs]
Mon Jul 8 05:20:42 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-19, mcvs-0-20, mcvs-0-21
Changes since 1.38: +4 -4 lines
Diff to previous 1.38
* seqfuncs.lisp (intersection-difference): Support a new
keyword parameter :squash-nil.

* mapping.lisp (mapping-difference): Filter non-moved pairs
directly in intersection-difference call using :squash-nil,
eliminating the need to do a second remove-if pass.

Revision 1.38 - (view) (annotate) - [select for diffs]
Mon Jul 8 05:11:10 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
Changes since 1.37: +11 -21 lines
Diff to previous 1.37
* mapping.lisp (mapping-difference): Rewrite using
intersection-difference.

Revision 1.37 - (view) (annotate) - [select for diffs]
Sat Jul 6 17:15:02 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-18
Changes since 1.36: +122 -59 lines
Diff to previous 1.36
Merging from partial-sandbox-branch.

Revision 1.36 - (view) (annotate) - [select for diffs]
Tue Jul 2 18:32:52 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-17, partial-sandbox-branch~branch-point
Branch point for: partial-sandbox-branch
Changes since 1.35: +15 -0 lines
Diff to previous 1.35
* purge.lisp (mcvs-purge): Factor out code for computing
deleted files.

* mapping.lisp (mapping-removed-files): New function, contains
code factored from mcvs-purge.

* restore.lisp: New file.
(mcvs-restore, mcvs-restore-wrapper): New functions.

Revision 1.35 - (view) (annotate) - [select for diffs]
Mon Jul 1 16:16:25 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
Changes since 1.34: +8 -7 lines
Diff to previous 1.34
Grab no longer synchronizes to recreate deleted files immediately
before blowing them away.

* grab.lisp (mcvs-grab): Specify :no-sync t when calling mcvs-remove.

* remove.lisp (mcvs-remove): Support new no-sync keyword. This tells
mcvs-remove that the files being removed from the mapping,
don't exist in the sandbox. So it's not necessary to call
mapping-synchronize, and mapping-update can be told via
:no-delete-removed t not to try to remove deleted files.

* mapping.lisp (mapping-update): New no-delete-removed keyword
parameter.

Revision 1.34 - (view) (annotate) - [select for diffs]
Fri Jun 28 21:39:50 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-16, old-convert-hacking-branch~branch-point
Branch point for: old-convert-hacking-branch
Changes since 1.33: +6 -6 lines
Diff to previous 1.33
* grab.lisp (read-word-hash): Use #'equalp test for case-insensitive
string comparisons.
(added-removed): Use string< instead of string-lessp for comparing
paths.
(determine-common-words, eliminate-common-words): New functions.
(move-candidates): Acceptance threshold reduced to 50%, since
elimination of common words reduces the similarity correlation.
(mcvs-grab): Use string< instead of string-lessp when sorting paths.
Do the common words computation.

* mapping.lisp (mapping-dupe-check, mapping-write,
mapping-difference): Use string< instead of string-lessp.

Revision 1.33 - (view) (annotate) - [select for diffs]
Mon May 6 18:12:46 2002 UTC (11 years, 11 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-13, mcvs-0-14, mcvs-0-15
Changes since 1.32: +1 -1 lines
Diff to previous 1.32
* mapping.lisp (in-sandbox-root-dir): Fix symbol macro
sandbox-down-path; it was referring to the (quote #:DOWNPATH-NNN)
rather than #:DOWNPATH-NNN.

Revision 1.32 - (view) (annotate) - [select for diffs]
Sat May 4 17:52:48 2002 UTC (11 years, 11 months ago) by kaz
Branch: MAIN
Changes since 1.31: +3 -1 lines
Diff to previous 1.31
* mapping.lisp (mapping-update): Provide restart that allows
user to ignore file removal error.

Revision 1.31 - (view) (annotate) - [select for diffs]
Fri Apr 19 18:56:58 2002 UTC (12 years ago) by kaz
Branch: MAIN
Changes since 1.30: +6 -7 lines
Diff to previous 1.30
Porting to CMUCL.

* system.lisp: Conditionally load new module cmucl-unix.

* mapping.lisp (mapping-dupe-check, mapping-write,
mapping-difference): Fixes related to sort function; we were
relying on CLISP's preservation of the cons cell order.

* cmucl-unix.lisp: New file.

Revision 1.30 - (view) (annotate) - [select for diffs]
Fri Apr 5 02:25:36 2002 UTC (12 years ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-11, mcvs-0-12
Changes since 1.29: +3 -1 lines
Diff to previous 1.29
Absolute paths resolved against sandbox root.

* posix.lisp (path-absolute-p): New function. Predicate to
test whether a path is absolute.

* mapping.lisp (in-sandbox-root-dir): sandbox-translate-paths
function detects absolute path, and treats it as relative to
sandbox root.

Revision 1.29 - (view) (annotate) - [select for diffs]
Wed Mar 13 21:46:39 2002 UTC (12 years, 1 month ago) by kaz
Branch: MAIN
CVS Tags: deferred-adds-branch~branch-point, mcvs-0-10, mcvs-0-9
Branch point for: deferred-adds-branch
Changes since 1.28: +13 -1 lines
Diff to previous 1.28
* mapping.lisp (malformed-map): New function.
(mapping-dupe-check): Perform extra error checks when reading
mapping, and turn them into a condition with a ``nice'' error message.

Revision 1.28 - (view) (annotate) - [select for diffs]
Tue Mar 12 23:34:25 2002 UTC (12 years, 1 month ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-8
Changes since 1.27: +1 -1 lines
Diff to previous 1.27
Minor adjustment to chatter level.

Revision 1.27 - (view) (annotate) - [select for diffs]
Tue Mar 12 19:59:37 2002 UTC (12 years, 1 month ago) by kaz
Branch: MAIN
Changes since 1.26: +5 -5 lines
Diff to previous 1.26
* mapping.lisp (mapping-update): Messages related to moving,
adding or removing files promoted to terse level, so only -Q
can suppress them.

Revision 1.26 - (view) (annotate) - [select for diffs]
Tue Mar 12 19:54:59 2002 UTC (12 years, 1 month ago) by kaz
Branch: MAIN
Changes since 1.25: +2 -2 lines
Diff to previous 1.25
* update.lisp (mcvs-update): Changing level of chatter messages.
* move.lisp (mcvs-move): Likewise.
* add.lisp (mcvs-add): Likewise.
* remove.lisp (mcvs-remove): Likewise.
* checkout.lisp (mcvs-checkout): Likewise.
* generic.lisp (mcvs-generic): Likewise.
* import.lisp (mcvs-import): Likewise.
* mapping.lisp (mapping-dupe-check): Likewise.
(mapping-update): Likewise.

Revision 1.25 - (view) (annotate) - [select for diffs]
Sat Feb 16 19:41:43 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-7
Changes since 1.24: +6 -2 lines
Diff to previous 1.24
Support for filetypes in import.

* posix.lisp (suffix): Separator character parameter is optional;
multiple occurences of character lead to one big suffix like
".tar.gz" instead of ".gz".  A leading dot means it's not a suffix but
a hidden file like ".exrc".
(edit-file): New function, brings up text editor for specified file.

* clisp-linux.lisp (env-lookup): New function for environment
variable lookup.

* types.lisp: New source file.
(*mcvs-types-name*, *mcvs-types*): New constants for TYPES filename.
(types-read, types-write, types-sanity-check,
types-to-import-wrapper-args): New functions.

* import.lisp (*types-comments*): New constant.
(mcvs-import): Restructured to build up list of file suffixes,
allow the user to edit the file which determines how they
are treated, filter out ignored files and pass -W options to cvs import
to handle the rest. Failed cvs import is turned into restartable
condition.

* mapping.lisp (mapping-generate-name): Takes a suffix parameter.
The F-files now carry a suffix obtained from the original file,
because I have concluded that this was the only reasonable way
to integrate with CVS.

Revision 1.24 - (view) (annotate) - [select for diffs]
Thu Feb 14 02:26:29 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-6
Changes since 1.23: +3 -2 lines
Diff to previous 1.23
* move.lisp (mcvs-move): If the mapping-update operation returns
nil, or terminates by a non-local jump, restore the filemap.
* mapping.lisp (mapping-update): When returning normally,
return t. When returning after doing a rollback, return nil.

Revision 1.23 - (view) (annotate) - [select for diffs]
Thu Feb 14 02:02:56 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.22: +38 -14 lines
Diff to previous 1.22
* 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.22 - (view) (annotate) - [select for diffs]
Sun Feb 10 19:28:27 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-5
Changes since 1.21: +58 -37 lines
Diff to previous 1.21
* mapping.lisp (mapping-difference): Reformatted documentation string.
(mapping-update): Implemented a continue restart which rolls back
the changes done to the local filesystem.

Revision 1.21 - (view) (annotate) - [select for diffs]
Sun Feb 10 05:09:16 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.20: +1 -1 lines
Diff to previous 1.20
Remove spurious newlines from error messages.

Revision 1.20 - (view) (annotate) - [select for diffs]
Sat Feb 9 03:34:18 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.19: +9 -5 lines
Diff to previous 1.19
* convert.lisp: New file. Contains conversion utility
to make an Meta-CVS repository from an ordinary CVS repository,
while preserving all history, tags and branches.
(remove-attic-component, classify-tags, read-tags,
mcvs-convert): New functions.

* posix.lisp (suffix): New function. Computes suffix of file.
(execute-program-xargs): New optional parameter, for specifying
fixed part added at the end of each generated command line.

* mapping.lisp (*mcvs-map-name*, *mcvs-local-map-name*): New constants.
(*mcvs-map*, *mcvs-map-local*): Redefined in terms of new constants.
(mapping-generate-name): New key parameter no-dir for not adding
the directory prefix.

Revision 1.19 - (view) (annotate) - [select for diffs]
Fri Feb 8 06:51:45 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: latest-patch
Changes since 1.18: +32 -11 lines
Diff to previous 1.18
* sync.lisp (synchronize-files): Return :dir symbol when either
argument is a directory.
* mapping.lisp (mapping-synchronize): Chatter output messages
are shorter. Handles :dir return value from synchronize-files.
(mapping-update): New sanity checks for moved and added
files, to avoid clobbering local files. Removed redundant
call to ensure-directories-exit in move logic, because
synchronize-files will do it anyway. Chatter messages reordered
to occur before their corresponding action is done.

* mcvs-main.lisp (*mcvs-error-treatment*): Special variable
can have new domain value, namely :decline.
(mcvs-top-error-handler): Print error message when terminating
non-restartable error. Handle new :decline treatment by
simply returning.
(mcvs-debug-shell): Set *mcvs-error-treatment* to :decline
so that errors are caught by debugger.

Revision 1.18 - (view) (annotate) - [select for diffs]
Tue Feb 5 03:19:03 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-4
Changes since 1.17: +3 -4 lines
Diff to previous 1.17
* mapping.lisp (mapping-sort): Removed function.
(mapping-write): Sort written map by F- file names,
not by path names. This is far better for merging, because
files stay in the same place when they are renamed.

Revision 1.17 - (view) (annotate) - [select for diffs]
Sat Feb 2 22:07:13 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-3
Changes since 1.16: +60 -21 lines
Diff to previous 1.16
Algorithmic efficiency improvements. No longer using
abstract set operations to update file structure or find
duplicates in the maps. Could still streamline the sorting.

* mapping.lisp (mapping-sort): Express more succinctly using key.
(mapping-dupe-check): Rewrite using loop over sorted lists.
(mapping-difference): New function for computing mapping change.
(mapping-update): Modify to use mapping-difference.

Revision 1.16 - (view) (annotate) - [select for diffs]
Sat Feb 2 11:39:36 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.15: +1 -0 lines
Diff to previous 1.15
* mapping.lisp (mapping-update): When moving files, ensure
that the target is unlinked if it exists.

* move.lisp (simple-rename): No longer do target unlinking
here. Also bugfix: it wasn't handling renames of directories
containing just one file.

Revision 1.15 - (view) (annotate) - [select for diffs]
Sat Feb 2 10:12:57 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.14: +1 -1 lines
Diff to previous 1.14
Error message change.

Revision 1.14 - (view) (annotate) - [select for diffs]
Sat Feb 2 10:05:48 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.13: +1 -1 lines
Diff to previous 1.13
Oops, correcting little function name mismatch.

Revision 1.13 - (view) (annotate) - [select for diffs]
Sat Feb 2 09:55:55 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.12: +15 -11 lines
Diff to previous 1.12
* mapping.lisp (mapping-dupe-check): New function for
detecting duplicate objects or paths in a mapping.
(mapping-sane-p): Function removed.
(mapping-read): Use mapping-dupe-check to verify a map
when asked by the sanity-check keyword.
(mapping-update): Specify sanity check when reading MCVS/MAP.

Revision 1.12 - (view) (annotate) - [select for diffs]
Fri Feb 1 02:23:46 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.11: +22 -22 lines
Diff to previous 1.11
Renamed all ``filemap-'' functions to ``mapping-'' prefix.

* mapping.lisp (filemap-generate-name, filemap-sort,
filemap-extract-paths, filemap-lookup, filemap-prefix-lookup,
filemap-prefix-matches, filemap-object-lookup,
filemap-same-object-p, filemap-same-path-p, filemap-moved-p,
filemap-rename-files, filemap-sane-p): Old names removed.
(mapping-generate-name, mapping-sort,
mapping-extract-paths, mapping-lookup, mapping-prefix-lookup,
mapping-prefix-matches, mapping-object-lookup,
mapping-same-object-p, mapping-same-path-p, mapping-moved-p,
mapping-rename-files, mapping-sane-p): New names created.
(mapping-read, mapping-write, mapping-synchronize,
mapping-update): Edit calls to renamed functions.
* add.lisp (mcvs-add): Likewise.
* diff.lisp (mcvs-diff): Likewise.
* filt.lisp (mcvs-filt): Likewise.
* import.lisp (mcvs-import): Likewise.
* move.lisp (simple-rename, simple-move-to-dir, move-guts): Likewise.
* remove.lisp (mcvs-remove): Likewise.

Revision 1.11 - (view) (annotate) - [select for diffs]
Thu Jan 31 06:17:50 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-2
Changes since 1.10: +18 -14 lines
Diff to previous 1.10
Factored out repeated code for reading and writing of the MAP and
MAP-LOCAL files.

* mapping.lisp (mapping-read, mapping-write): New functions.
(mapping-synchronize, mapping-update): Use new functions.
* move.lisp (mcvs-move): Likewise.
* filt.lisp (mcvs-filt): Likewise.
* add.lisp (mcvs-add): Likewise.
* remove.lisp (mcvs-remove): Likewise.
* checkout.lisp (mcvs-checkout): Likewise.
* diff.lisp (mcvs-diff): Likewise.
* import.lisp (mcvs-import): Likewise.

Revision 1.10 - (view) (annotate) - [select for diffs]
Thu Jan 31 05:35:02 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.9: +6 -6 lines
Diff to previous 1.9
MCVS is being renamed to Meta-CVS.

Revision 1.9 - (view) (annotate) - [select for diffs]
Sat Jan 26 02:37:53 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: cvs-options-passthrough, mcvs-0-0, mcvs-0-1
Changes since 1.8: +4 -0 lines
Diff to previous 1.8
Copyright notices.

Revision 1.8 - (view) (annotate) - [select for diffs]
Sat Jan 26 02:08:18 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.7: +1 -8 lines
Diff to previous 1.7
Fixing compiler errors.

Revision 1.7 - (view) (annotate) - [select for diffs]
Sat Jan 26 01:41:49 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.6: +0 -1 lines
Diff to previous 1.6
Oops, removed forgotten (break).

Revision 1.6 - (view) (annotate) - [select for diffs]
Sat Jan 26 01:38:38 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.5: +15 -8 lines
Diff to previous 1.5
Moving closer toward delivery.

Revision 1.5 - (view) (annotate) - [select for diffs]
Fri Jan 25 03:24:02 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.4: +0 -2 lines
Diff to previous 1.4
Removing debugging diagnostic.

Revision 1.4 - (view) (annotate) - [select for diffs]
Fri Jan 25 02:04:45 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.3: +41 -20 lines
Diff to previous 1.3
A bit of refactoring.
Added mcvs-move.

Revision 1.3 - (view) (annotate) - [select for diffs]
Wed Jan 23 07:01:28 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.2: +39 -1 lines
Diff to previous 1.2
Sort map in mcvs-remove before writing it out.
New routines in mapping, in preparation for file deletion.

Revision 1.2 - (view) (annotate) - [select for diffs]
Sun Jan 20 20:33:04 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.1: +6 -0 lines
Diff to previous 1.1
Adding mcvs-diff.

Revision 1.1 - (view) (annotate) - [select for diffs]
Sun Jan 20 07:12:03 2002 UTC (12 years, 3 months ago) by kaz
Branch: MAIN
Adding all existing source files.

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