* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) @ 2013-05-22 22:22 Dmitry Gutov 2013-05-23 7:25 ` Glenn Morris 0 siblings, 1 reply; 11+ messages in thread From: Dmitry Gutov @ 2013-05-22 22:22 UTC (permalink / raw) To: 14443 1. find-file //lisp/progmodes/ruby-mode.el 2. Press C-x v L, C-x v l or C-x v g. 3. Pick a revision, press d or D. 4. See something like either of the following: === modified file 'lisp/progmodes/ruby-mode.el' bzr: ERROR: [Error 2] The system cannot find the file specified === modified file 'lisp/ChangeLog' bzr: ERROR: [Error 2] The system cannot find the file specified In GNU Emacs 24.3.50.4 (i686-pc-mingw32) of 2013-05-23 on SOL Bzr revision: 112672 monnier@iro.umontreal.ca-20130522213500-10ibn1m9ze3b0pgc Windowing system distributor `Microsoft Corp.', version 6.1.7601 ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-22 22:22 bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) Dmitry Gutov @ 2013-05-23 7:25 ` Glenn Morris 2013-05-23 12:09 ` Dmitry Gutov 2013-05-23 16:23 ` Eli Zaretskii 0 siblings, 2 replies; 11+ messages in thread From: Glenn Morris @ 2013-05-23 7:25 UTC (permalink / raw) To: Dmitry Gutov; +Cc: 14443 Dmitry Gutov wrote: > 1. find-file //lisp/progmodes/ruby-mode.el > > 2. Press C-x v L, C-x v l or C-x v g. > > 3. Pick a revision, press d or D. > > 4. See something like either of the following: > > === modified file 'lisp/progmodes/ruby-mode.el' > bzr: ERROR: [Error 2] The system cannot find the file specified Works fine on GNU/Linux. Does '//' (in step 1) mean something special on MS Windows? ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 7:25 ` Glenn Morris @ 2013-05-23 12:09 ` Dmitry Gutov 2013-05-23 16:09 ` Glenn Morris 2013-05-23 16:23 ` Eli Zaretskii 1 sibling, 1 reply; 11+ messages in thread From: Dmitry Gutov @ 2013-05-23 12:09 UTC (permalink / raw) To: Glenn Morris; +Cc: 14443 On 23.05.2013 11:25, Glenn Morris wrote: > Dmitry Gutov wrote: > >> 1. find-file //lisp/progmodes/ruby-mode.el >> >> 2. Press C-x v L, C-x v l or C-x v g. >> >> 3. Pick a revision, press d or D. >> >> 4. See something like either of the following: >> >> === modified file 'lisp/progmodes/ruby-mode.el' >> bzr: ERROR: [Error 2] The system cannot find the file specified > > Works fine on GNU/Linux. Yes, sorry, next time instead of "on w32" I'll write "w32-only". I usually test these kind of bugs in both. > Does '//' (in step 1) mean something special on MS Windows? Nope, just an abbreviation. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 12:09 ` Dmitry Gutov @ 2013-05-23 16:09 ` Glenn Morris 2013-05-23 16:46 ` Dmitry Gutov 0 siblings, 1 reply; 11+ messages in thread From: Glenn Morris @ 2013-05-23 16:09 UTC (permalink / raw) To: Dmitry Gutov; +Cc: 14443 Can you edebug it and find out exactly what filename is passed to the OS? Presumably it doesn't like it for some reason. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 16:09 ` Glenn Morris @ 2013-05-23 16:46 ` Dmitry Gutov 2013-05-23 16:52 ` Eli Zaretskii 2013-05-23 16:59 ` Glenn Morris 0 siblings, 2 replies; 11+ messages in thread From: Dmitry Gutov @ 2013-05-23 16:46 UTC (permalink / raw) To: Glenn Morris; +Cc: 14443 On 23.05.2013 20:09, Glenn Morris wrote: > > Can you edebug it and find out exactly what filename is passed to the OS? > Presumably it doesn't like it for some reason. vc-bzr.el uses lexical-binding, so `edebug-eval-expression' doesn't help. Putting a `message' call in `vc-bzr-diff' yields this: files: (~/vc/emacs-bzr/trunk/) buffer: *vc-diff* rev1: 112671 rev2: 112672 > Dmitry, you will have to dig deeper. E.g., what command is sent down > to bzr in this case and barfs? I'm not sure how to find out. `vc-do-command' receives the following arguments: buffer: *vc-diff* command: bzr file-or-list: nil flags: (diff --diff-options -u -r 112671..112672) By the way, here's a (somewhat related) command that fails when invoked from command line: bzr diff --diff-options -U0 (`bzr diff' works fine.) Does Bazaar require additional programs to be installed? After recent overhaul of my MinGW installation, a number of Unix utilities became unavailable globally, including `diff'. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 16:46 ` Dmitry Gutov @ 2013-05-23 16:52 ` Eli Zaretskii 2013-05-23 19:53 ` Dmitry Gutov 2013-05-23 16:59 ` Glenn Morris 1 sibling, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2013-05-23 16:52 UTC (permalink / raw) To: Dmitry Gutov; +Cc: 14443 > Date: Thu, 23 May 2013 20:46:07 +0400 > From: Dmitry Gutov <dgutov@yandex.ru> > CC: 14443@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org> > > I'm not sure how to find out. You could put a breakpoint on call-process and examine its arguments, for example. > `vc-do-command' receives the following arguments: > > buffer: *vc-diff* command: bzr file-or-list: nil flags: (diff > --diff-options -u -r 112671..112672) Why do you use --diff-options? "bzr diff" works as if -u was specified anyway, and will use its internal emulation of Diff if you don't pass --diff-options. > By the way, here's a (somewhat related) command that fails when invoked > from command line: > > bzr diff --diff-options -U0 > > (`bzr diff' works fine.) > > Does Bazaar require additional programs to be installed? Only if you use --diff-options. > After recent overhaul of my MinGW installation, a number of Unix > utilities became unavailable globally, including `diff'. That's probably related. So restore your diff.exe, and things will work again. They do for me, because my diff.exe is in perfect working order. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 16:52 ` Eli Zaretskii @ 2013-05-23 19:53 ` Dmitry Gutov 2013-05-23 20:17 ` Eli Zaretskii 0 siblings, 1 reply; 11+ messages in thread From: Dmitry Gutov @ 2013-05-23 19:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 14443 On 23.05.2013 20:52, Eli Zaretskii wrote: >> Date: Thu, 23 May 2013 20:46:07 +0400 >> From: Dmitry Gutov <dgutov@yandex.ru> >> CC: 14443@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org> >> >> I'm not sure how to find out. > > You could put a breakpoint on call-process and examine its arguments, > for example. I've rummaged around the manual a bit, and still don't understand what the recommended workflow is. Should I normally do `edebug-defun' before adding a breakpoint? How do I display the value of a local variable? Even after breakpoint hits, using `edebug-eval-expression' with the variable name still gives me "variable is void". How do I un-instrument a function? AFAICS, there are no commands like `edebug-cancel-', `-reset-' or `-remove-'. Please point me at any relevant documentation. >> `vc-do-command' receives the following arguments: >> >> buffer: *vc-diff* command: bzr file-or-list: nil flags: (diff >> --diff-options -u -r 112671..112672) > > Why do you use --diff-options? "bzr diff" works as if -u was > specified anyway, and will use its internal emulation of Diff if you > don't pass --diff-options. `vc-bzr-diff' does that automatically because `diff-switches' is '-u' here. If I remove that explicit setting from my config, it falls back to "-c", and that (when external diff program is present, of course) makes vc-bzr produce context diffs. Curiously, vc-git still uses the unified format in that case. Setting it to nil works as you expected. >> After recent overhaul of my MinGW installation, a number of Unix >> utilities became unavailable globally, including `diff'. > > That's probably related. So restore your diff.exe, and things will > work again. They do for me, because my diff.exe is in perfect working > order. I've done that, works fine now. Sorry for the false alarm, I should have investigated it more myself first. Using diff.exe from the GnuWin32 collection is recommended, right? ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 19:53 ` Dmitry Gutov @ 2013-05-23 20:17 ` Eli Zaretskii 2013-05-23 20:25 ` Dmitry Gutov 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2013-05-23 20:17 UTC (permalink / raw) To: Dmitry Gutov; +Cc: 14443 > Date: Thu, 23 May 2013 23:53:52 +0400 > From: Dmitry Gutov <dgutov@yandex.ru> > CC: rgm@gnu.org, 14443@debbugs.gnu.org > > On 23.05.2013 20:52, Eli Zaretskii wrote: > >> Date: Thu, 23 May 2013 20:46:07 +0400 > >> From: Dmitry Gutov <dgutov@yandex.ru> > >> CC: 14443@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org> > >> > >> I'm not sure how to find out. > > > > You could put a breakpoint on call-process and examine its arguments, > > for example. > > I've rummaged around the manual a bit, and still don't understand what > the recommended workflow is. > > Should I normally do `edebug-defun' before adding a breakpoint? Actually, I meant GDB on the C level, but since you asked... Yes, at least that's what I do. > How do I display the value of a local variable? C-x C-e with point after it, I guess. I'm quite sure it worked for me when I used that last. > How do I un-instrument a function? AFAICS, there are no commands like > `edebug-cancel-', `-reset-' or `-remove-'. Reload the .el file. > Using diff.exe from the GnuWin32 collection is recommended, right? That's what I use, yes. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 20:17 ` Eli Zaretskii @ 2013-05-23 20:25 ` Dmitry Gutov 0 siblings, 0 replies; 11+ messages in thread From: Dmitry Gutov @ 2013-05-23 20:25 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 14443 On 24.05.2013 0:17, Eli Zaretskii wrote: >>> You could put a breakpoint on call-process and examine its arguments, >>> for example. >> >> I've rummaged around the manual a bit, and still don't understand what >> the recommended workflow is. >> >> Should I normally do `edebug-defun' before adding a breakpoint? > > Actually, I meant GDB on the C level, but since you asked... Oh. Though I believe it's called something like `Fcall_process' there. >> How do I display the value of a local variable? > > C-x C-e with point after it, I guess. I'm quite sure it worked for me > when I used that last. Then I guess you've used it in a buffer without lexical-binding. >> How do I un-instrument a function? AFAICS, there are no commands like >> `edebug-cancel-', `-reset-' or `-remove-'. > > Reload the .el file. Thanks! It's kind of an obvious solution, but I could've spent quite a while looking for a specialized command. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 16:46 ` Dmitry Gutov 2013-05-23 16:52 ` Eli Zaretskii @ 2013-05-23 16:59 ` Glenn Morris 1 sibling, 0 replies; 11+ messages in thread From: Glenn Morris @ 2013-05-23 16:59 UTC (permalink / raw) To: Dmitry Gutov; +Cc: 14443 Dmitry Gutov wrote: > bzr diff --diff-options -U0 > > (`bzr diff' works fine.) > > Does Bazaar require additional programs to be installed? bzr help diff: --diff-options=ARG Pass these options to the external diff program. So, don't specify --diff-options if you don't have a working "diff" executable. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) 2013-05-23 7:25 ` Glenn Morris 2013-05-23 12:09 ` Dmitry Gutov @ 2013-05-23 16:23 ` Eli Zaretskii 1 sibling, 0 replies; 11+ messages in thread From: Eli Zaretskii @ 2013-05-23 16:23 UTC (permalink / raw) To: Glenn Morris; +Cc: 14443, dgutov > From: Glenn Morris <rgm@gnu.org> > Date: Thu, 23 May 2013 03:25:29 -0400 > Cc: 14443@debbugs.gnu.org > > Dmitry Gutov wrote: > > > 1. find-file //lisp/progmodes/ruby-mode.el > > > > 2. Press C-x v L, C-x v l or C-x v g. > > > > 3. Pick a revision, press d or D. > > > > 4. See something like either of the following: > > > > === modified file 'lisp/progmodes/ruby-mode.el' > > bzr: ERROR: [Error 2] The system cannot find the file specified > > Works fine on GNU/Linux. Works fine for me on w32 as well. Dmitry, you will have to dig deeper. E.g., what command is sent down to bzr in this case and barfs? ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2013-05-23 20:25 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-05-22 22:22 bug#14443: 24.3.50; log-view-diff and log-view-diff-changeset broken in vc-bzr-change-log-mode and vc-annotate-mode (on w32) Dmitry Gutov 2013-05-23 7:25 ` Glenn Morris 2013-05-23 12:09 ` Dmitry Gutov 2013-05-23 16:09 ` Glenn Morris 2013-05-23 16:46 ` Dmitry Gutov 2013-05-23 16:52 ` Eli Zaretskii 2013-05-23 19:53 ` Dmitry Gutov 2013-05-23 20:17 ` Eli Zaretskii 2013-05-23 20:25 ` Dmitry Gutov 2013-05-23 16:59 ` Glenn Morris 2013-05-23 16:23 ` Eli Zaretskii
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).