1998-01-03 Jim Blandy * (cvs-changelog-ours-p): Recognize Emacs 20-style ChangeLog entries. Mon Oct 14 19:19:17 1996 Jim Blandy * pcl-cvs.el (cvs-parse-stderr): Ignore messages about patch hunks failing; CVS will refetch the file. Thu Oct 10 10:20:20 1996 Jim Blandy * Makefile.in: Allow pcl-cvs to find the site-lisp directory where it is installed in modern Emacsen. (Patch thanks to David Kågedal.) Wed Sep 25 05:38:09 1996 Jim Blandy * pcl-cvs.el (cvs-find-program): New function. (cvs-program, cvs-diff-program): Use it to find the executables. (local-path, local-gnu-path): Variables deleted; nobody else was using them, and they didn't do the job right anyway. Wed Sep 11 15:43:50 1996 Jim Blandy * pcl-cvs.el (cvs-parse-stderr): Ignore messages about obtained locks. Fri Aug 9 09:44:53 1996 Jim Blandy * pcl-cvs.el (cvs-parse-stderr): Remove extra paren from regexp matching rcsmerge warnings. Mon Apr 15 01:34:27 1996 Karl Fogel * Makefile: removed. Why was this in the repository in the first place? * Makefile.in (BATCHFLAGS): don't pass -q to Emacs when compiling, because Emacs probably can't find Elib's cookie.el[c] if we do that. (Actually, it still can't, but that may be due to a bug in Emacs). * INSTALL: reflect changed location of elib in the CVS dist. Sun Apr 14 12:18:12 1996 Karl Fogel * pcl-cvs.el (cookie): Changed "(load \"cookie\")" to "(require 'cookie)", since elib is now included again. Moved "(provide 'pcl-cvs)" to the end of the file, so it's not provided if the package didn't load successfully. * Makefile.in (subdir): tools/pcl-cvs now, not contrib/pcl-cvs. (BATCHFLAGS): removed "-n" from BATCHFLAGS. Emacs 19.30 does not know about this flag. (OBJDIR_DISTFILES): don't include .elc files here, add comment explaining why. Thu Apr 11 20:22:34 1996 Karl Fogel * pcl-cvs.el (cvs-mode-map): conform to Emacs 19 keybinding conventions by not binding any regular letters under C-c. Fri Feb 9 14:29:07 1996 Jim Blandy * Makefile.in (mostlyclean clean realclean): Remove 'realclean' from this target list; it's already defined later in the file. Tue Jan 23 13:02:24 1996 Greg A. Woods * pcl-cvs.el (pcl-cvs-bugs-address): change the default address as suggested by Per Cederqvist. * pcl-cvs.el: removed comments refering to Signum, etc. Sun Jan 21 12:51:12 1996 Greg A. Woods * pcl-cvs.el (cvs-parse-stderr): fix typo (missing '\') that was causing occasional un-reported, un-traced, failures that simply said something like "RE missing '\(' or '\\('" -- hopefully this is the last such bug! Tue Jan 16 13:57:16 1996 Jim Kingdon * Makefile.in: Rename "dist" target back to "dist-dir". The latter is what actually gets used. (pcl-cvs.dvi): Restore srcdir to pcl-cvs.texinfo. Fix typo (pcl-cvs.texifo -> pcl-cvs.texinfo). (TEXINDEX,TEX,SET_TEXINPUTS): New variables. (.el.elc): Copy .el file to build dir so .elc file gets put there. (dist-dir): Fix typo (cvs.info -> pcl-cvs.info). * cookie.el: New file, copied from elib 1.0. * README: Remove note about requiring elib; it claimed that CVS contained a copy of elib, but it lied. * pcl-cvs.el: Change (require 'cookie) to (load "cookie.el"). * pcl-cvs-lucid.el: Change (require 'pcl-cvs) to (load "pcl-cvs.el"). Fri Jan 12 10:32:14 1996 Greg A. Woods * pcl-cvs.elc, pcl-cvs-lucid.elc: removed * pcl-cvs.el: run through the spell checker... - noted some free variables in comments (cvs-inhibit-copyright-message): move this above cvs-startup-message to keep the compiler quiet * compile-all.el: removed (use make for dependency checking!) * Makefile.in: tweak various comments and echo messages... (elcfiles): removed this target. (.SUFFIXES, .el.elc): added support for elisp files. (CORE): new macro -- list of files all .elc depend on [still empty] (BATCHFLAGS): new macro -- flags to pass to emacs (OBJDIR_DISTFILES): added ELCFILES to be shipped in distribution * README: fix the RCS Id. * INSTALL: re-copy formatted makeinfo output from pcl-cvs.info, just to keep everything in proper synchronisation. * pcl-cvs.texinfo (Pcl-cvs installation): update to match Karl's new wording from INSTALL. Wed Jan 10 22:04:35 1996 Karl Fogel * INSTALL: make first item read a little more smoothly. * README: note that pcl-cvs has been tested under 19.30. Wed Jan 10 17:59:00 1996 Greg A. Woods * ChangeLog.woods: these are changes integrated in from my own pcl-cvs repository module, and based on the original PCL-CVS Version 1.05 release. They include most, if not all, of the changes from the Cygnus and Cyclic CVS contrib versions of PCL-CVS (i.e. the changes noted below). Sat Dec 30 15:01:45 1995 Karl Fogel * pcl-cvs.el (cvs-changelog-ours-p): check that `add-log-full-name' and `add-log-mailing-address' are non-nil, in addition to checking that they are boundp. Thu Dec 21 16:45:48 1995 Karl Fogel * pcl-cvs.el (cvs-parse-stderr): ignore kerberos connection failure, since CVS will automatically try rsh next. I think this is okay because if a person needs to know that kerberos failed, then chances are the rsh failed too, and *that* error message will clue them in that something's afoot. Wed Nov 22 11:01:50 1995 Joshua Cowan * pcl-cvs.el (cvs-changelog-ours-p): use `user-full-name' if `add-log-full-name' unbound, as not every uses the stuff in add-log.el. Same with `add-log-mailing-address'. (cvs-changelog-entries): change to `change-log-mode' unless already in it. Sun Jul 9 20:57:11 1995 Karl Fogel * "/bin/rmdir" as default, not "/usr/local/bin/rmdir". Fri Jun 16 15:24:34 1995 Jim Kingdon (kingdon@cyclic.com) * pcl-cvs.elc, pcl-cvs-lucid.elc: Added. * Makefile.in: Rename from Makefile and set srcdir. Thu May 18 17:10:27 1995 Jim Blandy Automatically guess CVS log entries from ChangeLog contents. * pcl-cvs.el (cvs-mode-changelog-commit): New command. (cvs-changelog-full-paragraphs): New variable. (cvs-changelog-name, cvs-narrow-changelog, cvs-changelog-paragraph, cvs-changelog-subparagraph, cvs-changelog-entry, cvs-changelog-ours-p, cvs-relative-path, cvs-changelog-entries, cvs-changelog-insert-entries, cvs-union, cvs-insert-changelog-entries, cvs-edit-delete-common-indentation): New functions. (cvs-mode-map): Bind 'C' to cvs-mode-changelog-commit. (cvs-mode): Mention cvs-mode-changelog-commit in docstring. Give the info files names ending in ".info". * Makefile (INFOFILES, install_info): Change pcl-cvs to pcl-cvs.info. (pcl-cvs.info): Target renamed from pcl-cvs. (DISTFILES): pcl-cvs removed; we handle the info files explicitly in the dist-dir target. (dist-dir): Depend on pcl-cvs.info. Distribute pcl-cvs.info*. * pcl-cvs.texinfo: Change @setfilename appropriately. * INSTALL: Updated. * .cvsignore: Correctly ignore the info files. * README: Note that pcl-cvs has been tested under 19.28, and that the "cookie" naming conflict was resolved in 19.11. * Makefile (pcl-cvs-lucid.elc): Changed this target from pcl-cvs-lucid.el. That's a source file, for goodness' sake! Tue May 9 13:56:50 1995 Jim Blandy * Change references to "Cygnus's remote CVS" to "Cyclic CVS". Wed May 3 13:55:27 1995 Jim Blandy * pcl-cvs.el (cvs-parse-stderr): Handle colons after both "rcsmerge" and "warning". Fri Apr 28 22:38:14 1995 Jim Blandy * Makefile (ELFILES): Include pcl-cvs-startup.el. (info, pcl-cvs): Call makeinfo appropriately for modern versions. (pcl-cvs.aux): List dependency on pcl-cvs.texinfo. (pcl-cvs.ps): New target. (DVIPS): New variable. (dist-dir): Renamed from dist, updated to accept DISTDIR value passed from parent. (DISTFILES): New varible. (pcl-cvs.elc, pcl-cvs-lucid.elc): Add targets to elcfiles target. Tue Apr 25 21:33:49 1995 Jim Blandy * pcl-cvs.el: (cvs-parse-stderr): Recognize "conflicts" as well as "overlaps" before "during merge." Thu Feb 16 12:17:20 1995 Jim Blandy * pcl-cvs.el (cvs-parse-stderr): Recognize "conflicts found in..." messages attributed to "cvs server", as well as "cvs update". Sat Feb 4 01:47:01 1995 Jim Blandy * pcl-cvs.el: Deal with the 'P' action, produced by remote CVS. (cvs-parse-stdout): Treat 'P' like 'U' --- file is updated. Tue Jan 31 23:31:39 1995 Jim Blandy * pcl-cvs.el (cvs-cvsroot-required): New variable. (cvs-do-update): If cvs-cvsroot-required is not set, don't complain if CVSROOT and cvs-cvsroot are both unset. Sun Jan 22 21:22:22 1995 Jim Blandy * pcl-cvs.el (cvs-parse-stderr): Some changes for Cygnus's Remote CVS. Treat messages like "cvs server: Updating DIRECTORY" as we treat those like "cvs update: Updating DIRECTORY". Ignore other messages starting with "cvs server". * pcl-cvs.el (cvs-parse-stderr): Re-indent. * .cvsignore: Add ignore list for Texinfo litter. * Makefile (lispdir): Set appropriately for totoro. * pcl-cvs.el (cvs-program, cvs-diff-program, cvs-rmdir-program): Same. Tue Jun 1 00:00:03 1993 Per Cederqvist (ceder@lysator.liu.se) * Release 1.05. (This release was promised before the end of May, but I didn't quite make it. No, I didn't fake the date above). Mon May 31 01:32:25 1993 Per Cederqvist (ceder@lysator.liu.se) * Removed the elib sub-directory. Users must now get the Elib library separately. * pcl-cvs.texinfo: Document it. * pcl-cvs-lucid.el: A new version, supplied by Jamie Zawinsky, added. * pcl-cvs Id 68: Transform RCS keywords * Makefile (pcl-cvs-$(VER)): Remove the $ signs in most files in the distribution. * pcl-cvs Id 76: Extra " in cvs-mode-add. * pcl-cvs.el (cvs-mode-add): Don't add the extra level of quotes around the log message, since it doesn't work with CVS. * pcl-cvs Id 56: '-d ' support in pcl-cvs * pcl-cvs.el (cvs-change-cvsroot): New function. * pcl-cvs Id 77: *cvs* isn't cleared properly * pcl-cvs.el (cvs-do-update): Always erase the *cvs* buffer and re-create the collection. * pcl-cvs.el (cvs-do-update): Set mode-line-process in the *cvs* buffer. * pcl-cvs.el (cvs-mode): Reset mode-line-process. * pcl-cvs Id 59: sort .cvsignore alphabetically! * pcl-cvs.el (cvs-sort-ignore-file): New variable. * pcl-cvs.el (cvs-mode-ignore): Use it. * pcl-cvs.texinfo: Document it. * pcl-cvs Id 75: Require final newline. * pcl-cvs.el (cvs-commit-buffer-require-final-newline): New variable. * pcl-cvs.el (cvs-edit-done): Use it. * pcl-cvs.texinfo: Document it. * pcl-cvs Id 72: make clean deletes lucid-emacs.el * dist-makefile (ELCFILES): Fixed a typo. * pcl-cvs Id 46: "cvs remove f" "touch f" "cvs update f" -> parse err. * pcl-cvs.el (cvs-fileinfo->type): New type: REM-EXIST. * pcl-cvs.el (cvs-shadow-entry-p): A REMOVED that follows a REM-EXIST is a shadow. * pcl-cvs.el (cvs-parse-stderr): Recognize the "should be removed and is still there" message. * pcl-cvs.el (cvs-pp): Recognize REM-EXIST. * pcl-cvs.el (cvs-mode-undo-local-changes): Recognize and complain about REM-EXIST. Defensive test added: complain about unknown types. * pcl-cvs.el (cvs-mode-add): Add an extra level of quotes around the log message. This is apparently needed by RCVS. . * pcl-cvs.el (cvs-parse-stderr): Ignore output from RCVS. Tue Apr 27 00:48:40 1993 Per Cederqvist (ceder@lysator.liu.se) * pcl-cvs.el (cvs-startup-message): Now a defconst instead of a defvar. * pcl-cvs.el (cvs-mode-commit): Add a defvar for it. * dist-makefile (EMACS): Use $(EMACS) instead of hard-coding 'emacs'. Sat Apr 17 12:47:10 1993 Per Cederqvist (ceder@lysator.liu.se) * Release 1.04. * pcl-cvs.texinfo: Updated the Contributors node. * pcl-cvs Id 58: Lucid GNU Emacs support * pcl-cvs-lucid.el: New file, contributed by the people at Lucid. * pcl-cvs.el: Autoload pcl-cvs-lucid if running in an Lucid GNU Emacs. * compile-all.el: (files-to-compile): Add pcl-cvs-lucid. * dist-makefile (ELFILES, ELCFILES): Dito. * pcl-cvs Id 55: cvs-diff-backup swaps old and new version. * pcl-cvs.el (cvs-diff-backup-extractor): Old version should be first. * pcl-cvs.el (cvs-mode-diff-backup): Call cvs-backup-diffable correctly. * pcl-cvs Id 64: elib substitute * dist-makefile (install): Warn about Elib. * pcl-cvs.texinfo: Talk about Elib. * pcl-cvs Id 50: Committing the *commit* buffer twice. * pcl-cvs.el (cvs-edit-done): Report an error if cvs-commit-list is empty, and empty it when the commit is done. * pcl-cvs Id 56: '-d ' support. * pcl-cvs.el (cvs-cvsroot): New variable. * pcl-cvs.el (cvs-do-update, all callers of cvs-execute-list): Use it everywhere CVS is called, to override CVSROOT. * pcl-cvs.texinfo (Customization): Document it. Thu Apr 1 00:34:55 1993 Per Cederqvist (ceder@lysator.liu.se) * pcl-cvs.el (cvs-retrieve-revision-to-tmpfile): Exit status nil from call-process means everything was successful in some Emacs versions. * pcl-cvs.el (cvs-mode-map): Bind "q" to bury-buffer. * pcl-cvs.texinfo: Document it. Thu Mar 11 00:05:03 1993 Per Cederqvist (ceder@lysator.liu.se) * Release 1.03-Emerge (not released). * Makefile (pcl-cvs-$(VER)): Don't includ elib-dll-debug.el in the distribution. (It's included as elib/dll-debug.el). * pcl-cvs.el (cvs-mode): Document the "e" key (cvs-mode-emerge). Tue Mar 9 00:02:57 1993 Per Cederqvist (ceder@lysator.liu.se) * pcl-cvs.texinfo (Emerge): New node. * pcl-cvs.el (cvs-kill-buffer-visiting): New function. * pcl-cvs.el (cvs-mode-emerge): Handle Conflict and Merged files. * pcl-cvs.el (cvs-retrieve-revision-to-tmpfile): Handle any revision. * pcl-cvs.el (cvs-fileinfo-*): Store base-revision instead of backup-file. * pcl-cvs.el (cvs-backup-diffable): The file is only diffable if the backup file is readable. * pcl-cvs.el (cvs-mode-map): Bind "e" to cvs-mode-emerge instead of cvs-mode-find-file (which is anyhow bound to "f"). Mon Mar 8 23:06:52 1993 Per Cederqvist (ceder@lysator.liu.se) * pcl-cvs.el (cvs-mode-emerge): New function. Currently only handles emerge of Modified files. * pcl-cvs.el (cvs-retrieve-revision-to-tmpfile): New function. Sun Jan 24 20:07:18 1993 Per Cederqvist (ceder@lysator.liu.se) * elib-dll-debug.el: Moved to elib. Mon Jan 18 00:35:59 1993 Per Cederqvist (ceder@mauritz) * pcl-cvs.el (cvs-do-update): Added a probably unnecessary sit-for. * Release 1.03-Elib-0.05.1 (not released). * Elib 0.05 compatibility: * elib-dll-debug.el, pcl-cvs-buffer.el, test-dll.el: Fix the require strings. * pcl-cvs.el (cvs-pp): Insert the string. * Release 1.03-Elib-0.05 (not released). * elib: New directory, containing the parts of elib that are required for pcl-cvs. Changes to the files in that directory that are present in Elib are documented in the ChangeLog of Elib, not here. * Makefile (pcl-cvs-$(VER)): Copy the new dir to the distribution. * dist-makefile (ELFILES, ELCFILES): Don't include the Elib files. Fri Jan 8 02:43:49 1993 Per Cederqvist (ceder@konrad) * pcl-cvs.el (cvs-mode-map): Bind "e" to cvs-mode-find-file, like in dired. Sun Jan 3 23:25:13 1993 Per Cederqvist (ceder@konrad) * elib-dll.el, elib-node.el, cookie.el: Moved to the elib package. Pcl-cvs now requires elib. Tue Dec 29 22:06:57 1992 Per Cederqvist (ceder@konrad) * pcl-cvs.el: Tracked the latest (last?) rename of all functions in cookie.el. Thu Sep 24 00:29:16 1992 Per Cederqvist (ceder@robert) * pcl-cvs.texinfo (Archives): This version is not distributed with CVS 1.3, so don't claim that it is. Fri Aug 21 15:17:08 1992 Per Cederqvist (ceder@maskros) * pcl-cvs.el (cvs-parse-stderr): Fixed two "(set head" that should be "(setq head". Thu Aug 20 05:53:58 1992 Per Cederqvist (ceder@robin) * cookie.el: Changes to this file is documented in the ChangeLog of elib in the future. Tue Aug 18 03:30:28 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el: Don't use cookie-last-tin (which no longer exists). * cookie.el: Use prefix cookie:: for internal functions. * cookie.el: (cookie:enter-after, cookie:enter-before, cookie:nth-cookie): Implemented. * cookie.el: No longer define (impl). * cookie.el: More renames: cookie:next-cookie -> cookie:goto-next-tin cookie:previous-cookie -> cookie:goto-previous-tin tin-next -> cookie:next-tin tin-previous -> cookie:previous-tin tin-nth -> cookie:nth-tin tin-delete -> cookie:delete-tin cookie:collect -> cookie:collect-cookies cookie:tin-collect -> cookie:collect-tins (new) -> cookie:tin-collect-cookies (new) -> cookie:tin-collect-tins cookie:refresh -> cookie:refresh-all tin-invalidate-tins -> cookie:invalidate-tins Mon Aug 17 01:39:49 1992 Per Cederqvist (ceder@robin) * cookie.el (cookie:set-buffer-bind-dll-let*): New macro. Used in many places instead of cookie:set-buffer-bind-dll. * cookie.el (cookie:set-buffer-bind-dll): Renamed the macro cookie:set-buffer to this. * pcl-cvs.el (cvs-use-temp-buffer): Set default-directory. Sun Aug 16 20:51:30 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-add-sub): Fixed call to cvs-add-file-update-buffer. Sat Aug 8 20:28:21 1992 Per Cederqvist (ceder@robin) * Release 1.03-Cookie-II (not released). * pcl-cvs.el (cvs-mode-diff-cvs): Don't care about the exit status from ``cvs diff''. * pcl-cvs.el (cvs-mode): Document cvs-mode-undo-local-changes. * pcl-cvs.el (cvs-diffable): New function. * pcl-cvs.el: Use the new cookie package. * pcl-cvs.el (cvs-cookie-handle): New variable. * pcl-cvs.el (cvs-do-update): User the new cookie:create interface, and cookie:clear if the buffer already existed. Make the buffer read-only. * pcl-cvs.el (cvs-mode-next-line, cvs-mode-previous-line): New functions (used instead of cookie:next-cookie and cookie:previous-cookie). * cookie.el: Major redesign. The handle that is passed to all cookie functions is now a new datatype, and not the buffer that the cookies resides in. This way it is possible to have more than one set of cookies in a buffer. Things that used to be buffer-local variables are now fields in the handle data type. cookie-last-tin is no longer available. * cookie.el (cookie:create): The buffer is not cleared, nor set to be read-only. * cookie.el (cookie:next-cookie, cookie:previous-cookie): Since the first argument is now a handle and not a buffer, these can no longer be called interactively. You have to write a small wrapper about them. * cookie.el (cookie:buffer): New function. Tue Aug 4 03:02:25 1992 Per Cederqvist (ceder@robert) * pcl-cvs.texinfo (Bugs): Renamed "Reporting bugs and ideas" to "Bugs" and added a table of known bugs/FAQ:s. Mon Aug 3 00:19:39 1992 Per Cederqvist (ceder@robert) * pcl-cvs.el, pcl-cvs.texinfo: Big Renaming Time! The commands that operate in the *cvs* buffer: cvs-add-change-log-entry-other-window -> cvs-mode-add-change-log-entry-other-window cvs-mark-all-files -> cvs-mode-mark-all-files cvs-revert-updated-buffers -> cvs-mode-revert-updated-buffers cvs-undo-local-changes -> cvs-mode-undo-local-changes cvs-unmark-up -> cvs-mode-unmark-up cvs-acknowledge -> cvs-mode-acknowledge cvs-unmark-all-files -> cvs-mode-unmark-all-files cvs-add -> cvs-mode-add cvs-diff-backup -> cvs-mode-diff-backup cvs-commit -> cvs-mode-commit cvs-diff-cvs -> cvs-mode-diff-cvs cvs-find-file -> cvs-mode-find-file cvs-update-no-prompt -> cvs-mode-update-no-prompt cvs-ignore -> cvs-mode-ignore cvs-log -> cvs-mode-log cvs-mark -> cvs-mode-mark cvs-find-file-other-window -> cvs-mode-find-file-other-window cvs-remove-file -> cvs-mode-remove-file cvs-status -> cvs-mode-status cvs-remove-handled -> cvs-mode-remove-handled cvs-unmark -> cvs-mode-unmark * pcl-cvs.el (cvs-cvs-diff-flags): Variable deleted. * pcl-cvs.el (cvs-diff-cvs): Use cvs-diff-flags instead. * pcl-cvs.texinfo (Customization): Update the doc. * pcl-cvs.el (cvs-diff-cvs): Handle exit status 0 (no diffs), 1 (diffs) and other (error). * pcl-cvs.el (cvs-execute-list): Add support for this kind of thing. * Revert buffers for committed files: * pcl-cvs.el (cvs-auto-revert-after-commit): New variable. * pcl-cvs.texinfo (Committing changes, Customization): Document it. * pcl-cvs.el (cvs-after-commit-function): New function. * pcl-cvs.el (cvs-execute-list): Return the exit status or nil. * pcl-cvs.el (cvs-edit-done, cvs-diff-cvs, cvs-remove-file, cvs-undo-local-changes, cvs-add, cvs-status, cvs-log): Use the exit status to generate an error message. * pcl-cvs.el (cvs-do-update): It should be "cvs -n update -l", not "cvs -l update -n". Put the -n and/or -l in the message that is displayed in the *cvs* buffer during the update. Sat Aug 1 00:55:49 1992 Per Cederqvist (ceder@robert) * cookie.el (cookie-sort): New function. * cookie.el (cookie-clear): Rewritten. No longer clears all local variables. Tue Jul 28 17:21:17 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-parse-stderr): Try to handle the output from RCS when it is compiled without DIFF3_BIN and a conflict occurs. * pcl-cvs.texinfo (Getting Started): Fixed typo. * pcl-cvs-startup.el (cvs-update-other-window): Make the autoload be interactive. Mon Jul 27 19:36:40 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-revert-updated-buffers, cvs-revert-fileinfo): New functions. * pcl-cvs.texinfo (Reverting your buffers): Document it. * pcl-cvs.el (cvs-fileinfo->full-path): New function. * pcl-cvs.el (cvs-full-path): Use it. * cookie.el (cookie-map, cookie-map-reverse): Better doc- string. Removed the unused local variable 'result'. * compile-all.el: Renamed elib-files to files-to-compare. * compile-all.el (compile-pcl-cvs): Bind load-path in a let statement instead of globally. Thu Jul 23 19:02:41 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-do-update): Check that CVSROOT is set. * pcl-cvs.el (cvs-diff-cvs): Check that cvs-cvs-diff-flags is a list. * pcl-cvs.el (cvs-diff-backup): Check that cvs-diff-flags is a list. Tue Jul 21 11:27:39 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-parse-error): Make the *cvs* buffer writeable before trying to write the email message. Require sendmail before trying to switch to mail-mode. * pcl-cvs.el (cvs-do-update): Check that cvs-program exists. * pcl-cvs.el (cvs-skip-line): Fixed bracketing error. Mon Jul 20 10:31:51 1992 Per Cederqvist (ceder@robin) * Release 1.03. * pcl-cvs.el, cookie.el: Indentation fixes. * Makefile (pcl-cvs-$(VER)): Include NEWS in the distribution. * pcl-cvs.el (cvs-rm-program): Deleted. * pcl-cvs.el (cvs-rmdir-program, cvs-lock-file): New variables. * Handle lock files in a nicer way: * pcl-cvs.el (cvs-update-filter, cvs-delete-lock, cvs-lock-file-p): New functions. * pcl-cvs.el (cvs-do-update, cvs-sentinel): Redirect stdout to the temporary file, not stderr. Use cvs-update-filter. * pcl-cvs.el (cvs-parse-update): New arguments. * pcl-cvs.el (cvs-parse-buffer): Renamed to cvs-parse-update. * pcl-cvs.el (cvs-stderr-file): Renamed to cvs-stdout-file. * pcl-cvs.texinfo (Miscellaneous commands, Updating the directory): Document cvs-delete-lock. * pcl-cvs.el (cvs-mode): Don't reset buffer-read-only. * pcl-cvs.el (cvs-find-file-other-window): Don't save-some-buffers. Thu Jul 16 00:19:58 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el, test-cookie-el: Use the new names from cookie.el. * cookie.el: Big Renaming Time! External functions: cookie-next -> tin-next cookie-previous -> tin-previous cookie-nth -> tin-nth cookie-delete -> tin-delete cookie-filter-tins -> tin-filter cookie-get-selection -> tin-get-selection cookie-start-marker -> tin-start-marker cookie-end-marker -> tin-end-marker cookie-invalidate-tins -> tin-invalidate-tins cookie-collect-tins -> tin-collect cookie-collect-cookies -> cookie-collect Internal functions: cookie-create-tin -> cookie-create-wrapper cookie-tin-start-marker -> cookie-wrapper-start-marker cookie-tin-cookie-safe -> cookie-wrapper-cookie-safe cookie-tin-cookie -> cookie-wrapper-cookie set-cookie-tin-start-marker -> cookie-wrapper-set-start-marker set-cookie-tin-cookie -> cookie-wrapper-set-cookie cookie-tin-p -> cookie-wrapper-p cookie-create-tin-and-insert -> cookie-create-wrapper-and-insert * pcl-cvs.el (cvs-find-file, cvs-find-file-other-window): Signal an appropriate error message if the *cvs* buffer is empty. * cookie.el (cookie-create): Make the buffer read-only. * cookie.el (cookie-create-tin-and-insert, cookie-refresh, cookie-delete-tin-internal, cookie-refresh-tin): Bind buffer-read-only to nil while changing the contents of the buffer. * pcl-cvs.el (cvs-byte-compile-files): New function. * pcl-cvs.texinfo (Miscellaneous commands): Document it. * pcl-cvs.el (cvs-diff-ignore-marks): New variable. * pcl-cvs.el (cvs-diff-cvs, cvs-diff-backup): Don't consider marked files to be selected if a prefix argument is given XOR the variable cvs-diff-ignore-marks is non-nil. * pcl-cvs.el (cvs-get-marked): New optional argument `ignore-marks'. * pcl-cvs.texinfo (Customization, Viewing differences): Document this behaviour. * pcl-cvs.el (cvs-undo-local-changes): New function. * pcl-cvs.texinfo (Undoing changes): Document cvs-undo-local-changes. * pcl-cvs.el (cvs-mode-map): cvs-unmark-all-files moved from "U" to "ESC DEL". cvs-undo-local-changes bound to "U". * pcl-cvs.texinfo (Marking files): Document ESC DEL. * pcl-cvs.el (cvs-skip-line): New arguments. All callers updated. Now calls cvs-parse-error if a parse error occurs. * pcl-cvs.el (cvs-parse-error): New function that creates a bug report. * pcl-cvs.el (cvs-parse-stderr, cvs-parse-stdout): New arguments. The only caller (cvs-parse-buffer) updated. Call cvs-parse-error in case of parse error. * pcl-cvs.el (pcl-cvs-version): New variable. * cookie.el (cookie-create): Kill all local variables in the buffer. Fri Jul 10 11:17:40 1992 Per Cederqvist (ceder@robin) * Release 1.03beta1. Thu Jul 9 03:12:00 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-update-running): New variable. * pcl-cvs.el (cvs-do-update): Use it instead of the previous local variable cvs-process (that no longer exists). Make sure that only one `cvs update' runs at any given moment. * pcl-cvs.el (cvs-sentinel): Reset cvs-update-running when the update process exits. * pcl-cvs.el (cvs-update): Switch to the *cvs* buffer. * pcl-cvs.el (cvs-update-other-window): New function. * pcl-cvs-startup.el (cvs-update-other-window): Added a autoload for it. * pcl-cvs.el (cvs-do-update): Don't pop up any buffer in a window - let cvs-update or cvs-update-other-window handle that. Also don't kill the *cvs* buffer, but rather insert a "Running cvs..." message into it. * pcl-cvs.el (cvs-parse-buffer): Don't change the window configuration. * pcl-cvs.el (cvs-create-fileinfo, cvs-pp, cvs-fileninfo->type): New type for a fileinfo: MESSAGE. * pcl-cvs.el (cvs-cvs-buffer): Deleted the variable. Use cvs-buffer-name instead. (I no longer have any plans to allow more than one cvs update to run at the same time - things only get confusing). Changed all places where cvs-cvs-buffer was used. * pcl-cvs.el: Take care of update programs (the -u option in the modules file): * pcl-cvs.el (cvs-update-prog-output-skip-regexp): New variable. * pcl-cvs.el (cvs-parse-stdout): Skip output from the update program (using cvs-update-prog-output-skip-regexp). * pcl-cvs.texinfo (Future enhancements): Document that the solution is not as good as it should be. * pcl-cvs.texinfo (Customization): Document the variable. Wed Jul 8 20:29:44 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-do-update): Check that this-dir really exists and is a directory, and that this-dir/CVS exists and is a directory. Tue Jul 7 01:02:24 1992 Per Cederqvist (ceder@robin) * pcl-cvs.texinfo (Customization): Document TMPDIR. * This chunk of modifications should make it possible to run pcl-cvs on hosts that do not line-buffer stdout (such as DECstation). They work by diverting stdout and stderr from `cvs update' and later sorting them together. * pcl-cvs.el (cvs-parse-stderr): Don't fail to parse conflict data. * pcl-cvs.el (cvs-remove-stdout-shadows, cvs-shadow-entry-p): New functions. * pcl-cvs.el (cvs-parse-buffer): Use it. * pcl-cvs.el (cvs-remove-empty-directories): New function. * pcl-cvs.el (cvs-remove-handled, cvs-parse-buffer): Use it. * pcl-cvs.el (cvs-get-current-dir): New argument ROOT-DIR. All calls to cvs-get-current-dir updated. * pcl-cvs.el (cvs-do-update): Allocate a tmp file. Use cvs-shell (typically /bin/sh) to redirect stderr from CVS to the tmp file. * pcl-cvs.el (cvs-sentinel): Handle the tmp file. Remove it when it is parsed. * pcl-cvs.el (cvs-parse-buffer): New argument STDERR-BUFFER. All calls to cvs-parse-buffer updated. Rewritten to handle the separation of stderr and stdout. * pcl-cvs.el (cvs-shell, cvs-stderr-file): New variables. * pcl-cvs.el (cvs-compare-fileinfos, cvs-parse-stderr, cvs-parse-stdout): New functions. * pcl-cvs.el (cvs-parse-buffer): Some modifications for output from RCS 5.6. Tue Apr 7 09:11:27 1992 Per Cederqvist (ceder@leopold) * Release 1.02. * pcl-cvs.el (cvs-diff-backup, cvs-edit-done, cvs-status): Call save-some-buffers. * pcl-cvs.el (cvs-diff-backup-extractor): Fixed syntax error. * Makefile, README, compile-all.el, dist-makefile, pcl-cvs.el, pcl-cvs.texinfo (XXRELEASEXX): A magic string that is substituted for the current release number when a distribution is made. (Release 1.01 says that it is release 1.00). * pcl-cvs.el (cvs-find-file): Added missing pair of parenthesis. Mon Mar 30 14:25:26 1992 Per Cederqvist (ceder@leopold) * Release 1.01. * pcl-cvs.el (cvs-parse-buffer): The message when waiting for a lock has been changed. Sun Mar 29 05:29:57 1992 Per Cederqvist (ceder@leopold) * Release 1.00. * pcl-cvs.el (cvs-do-update, cvs-sentinel, cvs-parse-buffer): Major rewrite of buffer and window selection and handling. The *cvs* buffer is now killed whenever a new "cvs update" is initiated. The -update buffer is replaced with the *cvs* buffer when the update is completed. Sat Mar 28 21:03:05 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-delete-unused-temporary-buffers): Fixed it. * pcl-cvs.el (cvs-auto-remove-handled): New variable. * pcl-cvs.el (cvs-edit-done): Use it. * pcl-cvs.texinfo (Customization, Removing handled entries): Document it. * pcl-cvs.el (cvs-mode): Turn of the undo feature. It really isn't useful in a cookie buffer... * pcl-cvs.el (cvs-edit-done): Committing a file now looks more like diffing a file. The window handling is better. * pcl-cvs.el (cvs-use-temp-buffer): The &optional switch is no longer needed. Mon Mar 23 00:20:33 1992 Per Cederqvist (ceder@robin) * Release 0.97. * pcl-cvs.el (default-directory): Make sure it always ends in a slash. fileinfo->dir does NOT end in a slash, and I had forgotten to call file-name-as-directory in various places. * pcl-cvs.el (cvs-diff-backup-extractor): Signal an error if a fileinfo without backup file is given. * pcl-cvs.el (cvs-mode): Added documentation. * pcl-cvs.el (cvs-execute-list): Fix the order of files in the same directory. * pcl-cvs.el (cvs-log-flags, cvs-status-flags): New variables. * pcl-cvs.el (cvs-log, cvs-status): Use them. * pcl-cvs.texinfo (Customization): Document them. * pcl-cvs.el (cvs-diff-backup): Filter non-backup-diffable files at an earlier stage, like cvs-commit does. * pcl-cvs.el (cvs-diff-flags): New variable. * pcl-cvs.el (cvs-diff-backup): Use it. * pcl-cvs.texinfo (Customization): Document it. * pcl-cvs.el (cvs-execute-single-file-list): Remove &rest before last argument. No callers needed updating. * pcl-cvs.el (cvs-execute-list): Remove the &rest before the last argument (constant-args). Update all callers of cvs-execute-list to use the new calling convention. * pcl-cvs.el (cvs-cvs-diff-flags): Now a list of strings instead of a string. * pcl-cvs.texinfo (Customization): Document the change to cvs-cvs-diff-flags. * Release 0.96. * pcl-cvs.el (cvs-cvs-diff-flags): New variable. * pcl-cvs.el (cvs-diff-cvs): Use it. * pcl-cvs.texinfo (Customization, Viewing differences): Document it. * pcl-cvs.el (cvs-use-temp-buffe): Don't switch to the temporary buffer. Use display-buffer and set-buffer instead. This way cvs-log, cvs-status, cvs-diff-cvs and friends don't select the temporary buffer. The cursor will remain in the *cvs* buffer. Sun Mar 22 21:50:18 1992 Per Cederqvist (ceder@robin) * pcl-cvs.el (cvs-find-file, cvs-find-file-other-window): Don't prompt when reading in a directory in dired. * Makefile (pcl-cvs-$(VER)): Include pcl-cvs-startup.el in the distribution. * dist-makefile (pcl-cvs.dvi): Don't fail even if texindex does not exist. * pcl-cvs.texinfo (@setchapternewpage): Changed from 'off' to 'on'. * pcl-cvs.texinfo (Variable index): Joined into function index. * pcl-cvs.texinfo (Key index): add a description about the key. * pcl-cvs.texinfo: Many other small changes. Wed Mar 18 01:58:38 1992 Per Cederqvist (ceder@leopold) * Use GNU General Public License version 2.