Commit graph

66 commits

Author SHA1 Message Date
636723fc5d Add .gitlab-ci.yml to publish the package 2020-05-13 20:34:46 -07:00
35beacc3d6 Fix indentation of comments, reflow 2020-05-13 11:29:35 -07:00
82edcdb262 Bump version 2020-05-13 11:29:20 -07:00
749665a8ae Add support for the vc-delete command 2020-05-13 11:07:38 -07:00
45af1cbeeb Bump version 2020-03-02 21:11:26 -08:00
774ab55e9e Add simplistic vc-p4-switch-client command 2020-03-02 21:08:23 -08:00
58a8b9efc6 Fix Makefile to work on phone
This should work more generally.
2019-03-06 00:11:08 -08:00
7dcbe804a9 Ignore any directory starting with vc-p4- 2019-03-06 00:10:13 -08:00
5d9cc7c32f Add Makefile to create package 2018-02-06 11:29:03 -08:00
d53eb68743 Fix indentation 2017-06-07 12:34:06 -07:00
94077d5136 Update vc-p4-diff argument list
Newer versions of vc add in an async flag, this is not currently used
by us.
2017-06-07 12:08:30 -07:00
5596f66072 Fix vc-p4-diff for buffer string argument
BUFF may be a string as well as a buffer. In case it is a string it
should use that string to create the buffer for the diff.
2017-06-07 00:12:36 -07:00
600e9e2f71 Update vc-p4-checkout for modern vc
The argument list for the ‘vc-*-checkout’ function doesn’t include
destfile or editable anymore.
2017-06-07 00:09:07 -07:00
47eb5350df Add required vc function
‘vc-p4-revision-granularity’ is a required function that should be
implemented by all vc backends. Perforce has per-file revisions.
2017-06-07 00:05:59 -07:00
e7a25a4fda Fix whitespace 2017-06-07 00:03:49 -07:00
Ben_Key
3cb296d970 Various modifications to vc-p4 that I have been using for years.
Unfortunately I did not document the changes as I made them. I have been able to determine the purpose of most of the changes by code inspection but there are a few changes for which I have not been able to determine a purpose.

* Modifications to support XEmacs.

* Added the p4-lowlevel-locate-p4 function. This function is used to locate the p4 executable on the exec-path. It is used by the vc-p4-registered function to avoid an error on systems on which the Perforce client is not installed. This is useful if the same .emacs file is used on multiple systems, some of which do not have the Perforce client installed.

* Modified the p4-lowlevel-successful-alist-p function so that a command that returns the message "file(s) up-to-date" does not trigger an error. As part of this change I added the p4-lowlevel-ignore-error-list defcustom and the p4-lowlevel-should-ignore-error function.

* Modified the vc-p4-registered function so that it uses the p4-lowlevel-locate-p4 function to verify that the Perforce client is installed.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 12013]
2015-03-10 14:43:47 -08:00
Ben_Key
ff996708d6 Populate -o //guest/magnus_henoch/vc-p4/... //guest/Ben_Key/vc-p4/....
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 12012]
2015-03-10 14:08:38 -08:00
Magnus Henoch
015a4a67dc * vc-p4.el (vc-p4-state): Mark new files as added.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7742]
2010-08-09 09:58:53 -08:00
Magnus Henoch
508d650136 * vc-p4.el (vc-p4-state): Don't compare non-existent files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7741]
2010-08-09 08:46:04 -08:00
Magnus Henoch
0cfe10cab9 * vc-p4.el (vc-p4-workfile-unchanged-p): Return nil for files marked for deletion.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7740]
2010-08-09 08:35:34 -08:00
Magnus Henoch
1674c9ea2a * vc-p4.el (vc-p4-diff): Handle deleted files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7739]
2010-08-09 08:28:09 -08:00
Magnus Henoch
a8fbf9a3b1 * vc-p4.el (vc-p4-state): Mark file as `removed' if action is "delete".
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7738]
2010-08-09 07:53:27 -08:00
Magnus Henoch
6c3758972c * vc-p4.el (vc-p4-previous-revision): New function, shamelessly
copied from vc-svn.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7546]
2010-01-13 09:01:58 -08:00
Magnus Henoch
a546229293 * vc-p4.el (vc-p4-print-log): Accept optional argument revision,
as required by Emacs 23.1.91.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7545]
2010-01-13 08:57:06 -08:00
Magnus Henoch
a0e7fbe5e1 * vc-p4.el (vc-p4-print-log): Accept optional arguments shortlog
and limit, as required by Emacs 23.1.50.

* p4-lowlevel.el (p4-lowlevel-filelog): Accept limit argument.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7487]
2009-11-17 16:35:08 -08:00
Magnus Henoch
af857b4d50 * vc-p4.el (vc-p4-revert): Fix revert of unopened files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7486]
2009-11-17 08:06:39 -08:00
Magnus Henoch
2e8b1f0015 * vc-p4.el (vc-p4-diff): Fix Perforce file headers.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7485]
2009-11-16 14:10:55 -08:00
Magnus Henoch
4667f79c0a * vc-p4.el (vc-p4-diff): Support lists of files. Perform only a
single request to the server in the simplest case (diff edited
file to synced version).

* p4-lowlevel.el (p4-lowlevel-command-into-buffer): Don't reorder
info and text lines.
(p4-lowlevel-diff): Support lists of files as well as a single file.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7484]
2009-11-16 12:56:58 -08:00
Magnus Henoch
5305e9d39e * p4-lowlevel.el (p4-lowlevel-diff): Remove slash from directory name if needed.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7388]
2009-09-16 08:03:08 -08:00
Magnus Henoch
2d9b785e7c * vc-p4.el (vc-p4-state): Avoid error when saving non-Perforce
file inside Perforce working directory.  Still gives incorrect
'up-to-date' status in vc-dir sometimes.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7377]
2009-09-09 06:16:58 -08:00
Magnus Henoch
d4562f9ba7 * vc-p4.el (vc-p4-state): Display files present neither on client
nor in depot head as `up-to-date'.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7362]
2009-08-27 04:24:27 -08:00
Magnus Henoch
c24b959ed3 * vc-p4.el (vc-p4-state): Change if' mess to cond'.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7361]
2009-08-27 04:18:55 -08:00
Magnus Henoch
7292914d99 * vc-p4.el (vc-p4-dir-status): Don't list up-to-date files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7360]
2009-08-27 04:14:59 -08:00
Magnus Henoch
5051f6e818 * p4-lowlevel.el (p4-lowlevel-buffer-to-alist): Strip CR from end
of line.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7331]
2009-07-20 15:37:50 -08:00
Magnus Henoch
876b3ef83c * vc-p4.el: Note that Emacs 23 is required.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7330]
2009-07-20 13:07:17 -08:00
Magnus Henoch
0786aae292 (vc-p4-working-revision): Renamed from
`vc-p4-workfile-version', to avoid deprecation message on commit.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7270]
2009-06-05 11:51:36 -08:00
Magnus Henoch
97229d0b82 (vc-p4-checkin): Multiple files commit.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7269]
2009-06-05 11:47:35 -08:00
Magnus Henoch
c68de18b24 (vc-p4-init-revision): Renamed from `vc-p4-init-version'.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7268]
2009-06-05 11:40:15 -08:00
Magnus Henoch
bbc4dd3ee5 Remove obsolete redefinitions.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7239]
2009-05-27 09:58:25 -08:00
Magnus Henoch
4c98e00c6b * vc-p4.el (vc-p4-annotate-command-internal): s/string-to-int/string-to-number/
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7238]
2009-05-27 09:57:06 -08:00
Magnus Henoch
d1bbfc11ce * vc-p4.el (vc-p4-dir-state): Remove unused function.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7237]
2009-05-27 09:54:56 -08:00
Magnus Henoch
eacbba72bc * vc-p4.el (vc-p4-dir-status): Handle subdirectories. Use
information from vc-p4-state.
(vc-p4-state): New argument: dont-compare-nonopened.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7236]
2009-05-27 09:54:01 -08:00
Magnus Henoch
5c078b4c12 (p4-lowlevel-diff): Handle diff of directories.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7233]
2009-05-27 06:08:50 -08:00
Magnus Henoch
1391eebeb5 (vc-p4-dir-status): Initial implementation.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7232]
2009-05-27 05:53:57 -08:00
Magnus Henoch
b52aaa3e2c Update copyright notices. Update URL; include URL of previous version.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7231]
2009-05-27 03:11:58 -08:00
Magnus Henoch
7e94b5b0ff * vc-p4.el (vc-p4-diff): Reorder let* variables. Don't use
`buffer-file-name'.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7217]
2009-05-19 11:22:59 -08:00
Magnus Henoch
b2d952500c Branched vc-p4 for work on Emacs 23 compatibility.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7216]
2009-05-19 11:18:36 -08:00
Jonathan Kamens
6afc1e6c47 Changes from Dan Nicolaescu:
For vc-p4.el:
- delete a few more vc functions that are identical in emacs
- delete now unused vc-p4-change-times
- make vc-p4-annotate-command default to the internal elisp code
- delete vc-p4-state-heuristic, it's the same as the default
- new function vc-p4-find-version
- make a few functions cope with emacs-23 (not released yet),
  that changes the first argument from FILE to FILE_LIST
- add an internal implementation for vc-annotate, simplify the
  annotate code

For p4-lowlevel.el: 
- fail graciously when offline and trying to access a file that
  is under perforce

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5999]
2007-08-01 18:27:55 -08:00
Jonathan Kamens
0ec70d5f50 Patch from Dan Nicolaescu <dann@ics.uci.edu>: Improve support for
vc-annotate and log-view and make sure that they are interoperable.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5991]
2007-07-27 04:28:08 -08:00
Jonathan Kamens
3f3aa0ac1f Customized vc-mode-line is no longer necessary, since the version that
ships with GNU Emacs is now fixed.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5990]
2007-07-27 04:19:26 -08:00