all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Michael Albinus <michael.albinus@gmx.de>
Cc: 23006@debbugs.gnu.org, Dmitry Gutov <dgutov@yandex.ru>
Subject: bug#23006: 25.0.92; Loading Tramp breaks pcomplete in eshell-mode
Date: Sun, 20 Mar 2016 18:17:47 -0400	[thread overview]
Message-ID: <jwvfuvkyfim.fsf-monnier+emacsbugs@gnu.org> (raw)
In-Reply-To: <87zitsubm0.fsf@gmx.de> (Michael Albinus's message of "Sun, 20 Mar 2016 21:40:23 +0100")

>> But in that backtrace, it's OK for Tramp to open a new connection, since
>> the user hit TAB.
> Tramp does not know that the user hit TAB. It checks for `non-essential'.

Exactly: pcomplete tells Tramp that it's OK to prompt for a password by
*not* setting non-essential.  That's how Tramp can know.

>>>> And why would it be called `non-essential' instead of `in-completion'?
>>> I wanted to introduce `completion-only'.
>> The crucial distinction to be made is not between "performing
>> completion" and "not performing completion", but between "any normal
>> operation, including completion in response to TAB" and "side-operations
>> like on-the-fly completion à la icomplete or company or background data
>> collection (like semantic might perform)".
> I don't understand.  Tramp does not know where it has been called
> from. It operates stateless.  `non-essential' provides some context,
> that's all.

That's right.  What I'm pointing out is that the context that Tramp
needs is not "are we performing some kind of completion", but "are we
allowed to prompt the user for a password" (admittedly, `non-essential'
is not limited to "passwords" but more generally means that we should
stay discrete.  E.g. it also means we shouldn't block Emacs for too
long).

> I do not care desktop.el just now, it is the case we were discussing 6
> years ago. As of today, there is no other use case for `non-essential'
> in the codebase but the Tramp case.

Admittedly, the fact that the two sides (let-binder and var-reader)
don't agree on what that variable means, reduces its
usefulness significantly.

In my view, Tramp should never prompt the user for a password (nor
signal an error, tho emitting some warning message might be OK in some
cases) when non-essential is non-nil.

BTW, to clarify:
- Someone reported a bug about company's interaction with Tramp
  (presumably via pcomplete).  I suspect this should be fixed by having
  company bind non-essential and IIUC Dmitry did just that (don't know
  if it does/did fix the problem).
- As part of that company bug, this bug#23006 was filed, which has
  nothing to do with non-essential since it's about a user interaction
  which is "essential".  I've pointed out a few issues that have to do
  with the interaction between file-name-all-completions and
  file-name-directory which might lead to fixing this bug, but AFAIK
  this part of the discussion has not been followed yet.
Could we get back to the interaction between file-name-all-completions
and file-name-directory?


        Stefan





  reply	other threads:[~2016-03-20 22:17 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-14  2:01 bug#23006: 25.0.92; Loading Tramp breaks pcomplete in eshell-mode Dmitry Gutov
2016-03-14  2:22 ` Stefan Monnier
2016-03-14  7:34 ` Michael Albinus
2016-03-15  3:31   ` Stefan Monnier
2016-03-15  8:43     ` Michael Albinus
2016-03-15 11:09       ` Dmitry Gutov
2016-03-17  0:42       ` Stefan Monnier
2016-03-17 19:43         ` Michael Albinus
2016-03-17 19:44           ` Dmitry Gutov
2016-03-17 19:54             ` Michael Albinus
2016-03-17 22:55               ` Dmitry Gutov
2016-03-18  8:27                 ` Michael Albinus
2016-03-18 16:13                   ` Stefan Monnier
2016-03-18 17:01                     ` Michael Albinus
2016-03-18 17:53                       ` Stefan Monnier
2016-03-18 20:21                         ` Michael Albinus
2016-03-18 22:41                           ` Stefan Monnier
2016-03-19  8:28                             ` Michael Albinus
2016-03-19 12:35                               ` Stefan Monnier
2016-03-19 15:28                                 ` Michael Albinus
2016-03-19 20:04                                   ` Stefan Monnier
2016-03-20 15:08                                     ` Michael Albinus
2016-03-20 15:23                                       ` Stefan Monnier
2016-03-20 15:46                                         ` Michael Albinus
2016-03-20 16:10                                           ` Stefan Monnier
2016-03-20 20:40                                             ` Michael Albinus
2016-03-20 22:17                                               ` Stefan Monnier [this message]
2016-03-20 22:28                                                 ` Dmitry Gutov
2016-03-21 15:57                                                 ` Michael Albinus
2016-03-20 15:38                                       ` Drew Adams
2016-03-20 15:54                                         ` Michael Albinus
2016-03-20 15:59                                           ` Dmitry Gutov
2016-03-20 20:31                                             ` Michael Albinus
2016-03-20 20:44                                               ` Dmitry Gutov
2016-03-20 20:53                                                 ` Michael Albinus
2016-03-20 21:05                                                   ` Dmitry Gutov
2016-03-20 22:19                                                     ` Stefan Monnier
2016-03-21 15:49                                                       ` Michael Albinus
2016-03-21 19:26                                                         ` Stefan Monnier
2016-03-22  9:27                                                           ` Michael Albinus
2016-03-22 12:02                                                             ` Stefan Monnier
2016-03-22 12:05                                                               ` Michael Albinus
2016-03-22 13:19                                                                 ` Stefan Monnier
2016-03-21 15:46                                                     ` Michael Albinus
2016-03-21 15:49                                                       ` Dmitry Gutov
2016-03-21 16:03                                                         ` Michael Albinus
2016-03-21 16:13                                                           ` Dmitry Gutov
2016-03-21 16:25                                                             ` Michael Albinus
2016-03-21 16:45                                                               ` Dmitry Gutov
2016-03-21 16:55                                                                 ` Michael Albinus
2016-03-21 18:10                                                                   ` Dmitry Gutov
2016-03-21 18:36                                                                     ` Michael Albinus
2016-03-21 21:26                                                                       ` Dmitry Gutov
2016-03-22  9:47                                                                         ` Michael Albinus
2016-03-22 12:05                                                                           ` Stefan Monnier
2016-03-22 12:20                                                                             ` Michael Albinus
2016-03-22 13:37                                                                               ` Stefan Monnier
2016-03-22 13:50                                                                                 ` Michael Albinus
2016-03-22 14:01                                                                                   ` Stefan Monnier
2016-03-24  1:00                                                                           ` Dmitry Gutov
2016-03-21 19:23                                                                   ` Stefan Monnier
2016-03-22  9:25                                                                     ` Michael Albinus
2016-03-22 12:02                                                                       ` Stefan Monnier
2016-03-22 12:08                                                                         ` Michael Albinus
2016-03-22 13:18                                                                           ` Stefan Monnier
2016-03-22 13:35                                                                             ` Michael Albinus
2016-03-22 13:38                                                                               ` Stefan Monnier
2016-03-22 13:50                                                                                 ` Michael Albinus
2016-03-24  0:54                                                                               ` Dmitry Gutov
2016-03-24 13:15                                                                                 ` Stefan Monnier
2016-03-24 13:54                                                                                   ` Dmitry Gutov
2016-03-24 15:56                                                                                     ` Stefan Monnier
2016-03-20 16:38                                           ` Drew Adams
2016-03-20 19:48                                             ` Drew Adams
2016-03-20 20:42                                               ` Michael Albinus
2016-03-18 22:51                         ` Dmitry Gutov
2016-03-17  0:50   ` Stefan Monnier
2016-03-17 19:49     ` Michael Albinus
2016-03-18 16:06       ` Stefan Monnier
2017-03-09 18:52 ` Michael Albinus
2017-03-15 12:42 ` Michael Albinus
2017-03-17 11:30   ` Dmitry Gutov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvfuvkyfim.fsf-monnier+emacsbugs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=23006@debbugs.gnu.org \
    --cc=dgutov@yandex.ru \
    --cc=michael.albinus@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.