1. 23 Dec, 2018 1 commit
    • Michael Albinus's avatar
      Handle `make-process' in Tramp and ange-ftp · 3ea89aca
      Michael Albinus authored
      * doc/lispref/processes.texi (Asynchronous Processes):
      Explain, that not all file name handlers support `make-process'.
      
      * lisp/net/ange-ftp.el:
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
      * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      * lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
      * lisp/net/tramp.el (tramp-file-name-for-operation): Add `make-process'.
      
      * lisp/vc/ediff-util.el:
      * src/process.c:
      * test/src/process-tests.el: Use "file name handler" consequently.
      3ea89aca
  2. 17 Dec, 2018 1 commit
    • Michael Albinus's avatar
      Reduce autoloaded objects in Tramp · 3e9ecaec
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-program)
      (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
      Remove autoload cookie.
      
      * lisp/net/tramp-cache.el (tramp-connection-properties)
      (tramp-persistency-file-name): Remove autoload cookie.
      
      * lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
      Use `tramp-autoload' cookie.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-zeroconf-domain):
      Remove autoload cookie.
      
      * lisp/net/tramp-rclone.el (tramp-rclone-program): Remove autoload
      cookie.
      (tramp-set-completion-function): Use `tramp--with-startup'.
      
      * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
      (tramp-copy-size-limit, tramp-histfile-override)
      (tramp-use-ssh-controlmaster-options, tramp-remote-path)
      (tramp-remote-process-environment, tramp-sh-extra-args):
      Remove autoload cookie.
      (tramp-stat-marker, tramp-stat-quoted-marker): Move to tramp.el.
      
      * lisp/net/tramp-smb.el (tramp-smb-program)
      (tramp-smb-acl-program, tramp-smb-conf)
      (tramp-smb-winexe-program, tramp-smb-winexe-shell-command)
      (tramp-smb-winexe-shell-command-switch): Remove autoload cookie.
      
      * lisp/net/tramp-sudoedit.el (server, tramp-sh): Do not require.
      
      * lisp/net/tramp.el (tramp--startup-hook): Define.
      (tramp-stat-marker, tramp-stat-quoted-marker): New defconsts,
      taken from tramp-sh.el.
      
      * test/lisp/net/tramp-archive-tests.el (tramp-copy-size-limit)
      (tramp-persistency-file-name): Declare.
      
      * test/lisp/net/tramp-tests.el (tramp-connection-properties)
      (tramp-display-escape-sequence-regexp)
      (tramp-inline-compress-start-size, tramp-remote-path): Declare.
      3e9ecaec
  3. 16 Dec, 2018 2 commits
    • Stefan Monnier's avatar
      * lisp/net/tramp: Rework mutual dependencies · 07d88279
      Stefan Monnier authored
      Functionally split tramp-loaddefs.el into two parts: one part run
      while loading it at the very beginning of loading tramp.el (holding plain
      autoloads and declarations), and another run at the very end of loading
      tramp.el (holding setup code).
      This should reduce infinite-recursion problems while loading.
      
      * lisp/net/tramp.el: Require tramp-loaddefs at beginning.
      Run (new and internal) tramp--startup-hook at the end.
      Remove all tramp-autoloads.  Prefer tramp--with-startup over
      eval-after-load.
      (tramp--with-startup): New macro.
      (tramp-set-syntax): Show the new value rather than the old value in the
      error message.
      (tramp-syntax-values): Explicitly return 'values'.
      (tramp-prefix-format, tramp-prefix-regexp, tramp-method-regexp)
      (tramp-postfix-method-format, tramp-postfix-method-regexp)
      (tramp-prefix-ipv6-format, tramp-prefix-ipv6-regexp)
      (tramp-postfix-ipv6-format, tramp-postfix-ipv6-regexp)
      (tramp-postfix-host-format, tramp-postfix-host-regexp)
      (tramp-remote-file-name-spec-regexp, tramp-file-name-structure)
      (tramp-completion-file-name-regexp): Don't initialize in the declaration,
      since it's recomputed at the end anyway.
      (tramp-time-dont-know, tramp-time-doesnt-exist): Move before first use.
      
      * lisp/net/tramp-compat.el: Don't require tramp-loaddefs any more.
      (tramp-compat-tramp-syntax): Declare tramp-syntax.
      
      * lisp/net/tramp-smb.el:
      * lisp/net/tramp-rclone.el:
      * lisp/net/tramp-gvfs.el:
      * lisp/net/tramp-ftp.el:
      * lisp/net/tramp-adb.el: Wrap all autoloaded setup operations within
      tramp--with-startup.
      
      * lisp/net/tramp-sh.el: Wrap all autoloaded setup operations within
      tramp--with-startup.
      (tramp-display-escape-sequence-regexp)
      (tramp-device-escape-sequence-regexp): Don't tramp-autoload any more.
      (tramp-stat-marker): Use eval-and-compile rather than tramp-autoload.
      
      * lisp/net/tramp-sudoedit.el: Wrap all autoloaded setup operations within
      tramp--with-startup.
      Require tramp-sh at compile-time to precompute some regexps based on
      tramp-stat-marker.
      07d88279
    • Michael Albinus's avatar
      Add Tramp sudoedit method · e8199e76
      Michael Albinus authored
      * doc/misc/tramp.texi (Quick Start Guide): New section "Using sudoedit".
      (External methods) <sudoedit>: Describe.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
      * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      Add handler.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-uid-gid): Rename from
      `tramp-sh-handle-set-file-uid-gid'.  Handle only remote file names.
      
      * lisp/net/tramp-sudoedit.el: New file.
      
      * lisp/net/tramp.el (tramp-file-name-for-operation): Handle also
      `tramp-set-file-uid-gid'.
      (tramp-set-file-uid-gid): New defun.
      (tramp-get-local-uid, tramp-get-local-gid): Cache result.
      
      * test/lisp/net/tramp-tests.el (tramp--test-sudoedit-p): New defun.
      (tramp-test20-file-modes, tramp-test22-file-times)
      (tramp--test-sudoedit-p): Use it.
      e8199e76
  4. 07 Dec, 2018 1 commit
    • Michael Albinus's avatar
      Refactor some Tramp functions · 294b2c2b
      Michael Albinus authored
      * lisp/net/tramp-compat.el (tramp-compat-file-local-name): New defsubst.
      (tramp-compat-file-name-quoted-p, tramp-compat-file-name-quote)
      (tramp-compat-file-name-unquote):
      * lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p)
      (tramp-handle-file-truename, tramp-get-remote-tmpdir):
      * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
      (tramp-adb-handle-rename-file, tramp-adb-handle-exec-path):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly)
      (tramp-sh-handle-exec-path, tramp-find-inline-encoding)
      (tramp-get-remote-touch): Use it.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      Use `tramp-handle-expand-file-name'.
      (tramp-adb-handle-expand-file-name): Move to tramp.el.
      (tramp-adb-handle-file-writable-p): Adapt docstring.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      Use `tramp-handle-file-local-copy', `tramp-handle-file-writable-p'
      and `tramp-handle-write-region'.
      (tramp-gvfs-handle-file-local-copy)
      (tramp-gvfs-handle-file-writable-p)
      (tramp-gvfs-handle-write-region): Move to tramp.el.
      
      * lisp/net/tramp-rclone.el: Dont't require `tramp-adb' and
      `tramp-gvfs' anymore.
      (tramp-rclone-file-name-handler-alist):
      Use `tramp-handle-expand-file-name', `tramp-handle-file-local-copy',
      `tramp-handle-file-writable-p' and `tramp-handle-write-region'.
      (tramp-rclone-handle-directory-files): Simplify.
      
      * lisp/net/tramp.el (tramp-methods): Extend docstring.
      (tramp-parse-netrc): Require `netrc'.
      (tramp-handle-expand-file-name, tramp-handle-file-local-copy)
      (tramp-handle-file-writable-p, tramp-handle-write-region): New defuns.
      294b2c2b
  5. 06 Dec, 2018 1 commit
    • Michael Albinus's avatar
      Rework Tramp wrt string-match-p, looking-at-p, save-match-data · 66b49fc1
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-find-method, tramp-find-user)
      (tramp-find-host, tramp-dissect-file-name, tramp-make-tramp-file-name)
      (tramp-completion-make-tramp-file-name, tramp-debug-message)
      (tramp-message, tramp-progress-reporter-update)
      (tramp-set-completion-function)
      (tramp-rfn-eshadow-update-overlay)
      (tramp-find-file-name-coding-system-alist)
      (tramp-file-name-for-operation)
      (tramp-use-absolute-autoload-file-names)
      (tramp-get-completion-methods, tramp-get-completion-user-host)
      (tramp-handle-directory-files)
      (tramp-handle-file-name-case-insensitive-p)
      (tramp-handle-file-name-completion, tramp-handle-file-truename)
      (tramp-handle-insert-directory, tramp-handle-load)
      (tramp-handle-shell-command, tramp-action-yesno)
      (tramp-action-yn, tramp-process-actions)
      (tramp-mode-string-to-int, tramp-get-local-locale)
      (tramp-local-host-p):
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info)
      (tramp-adb-handle-directory-files-and-attributes)
      (tramp-adb--gnu-switches-to-ash, tramp-adb-sh-fix-ls-output)
      (tramp-adb-handle-file-name-all-completions)
      (tramp-adb-handle-shell-command)
      (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-archive.el (tramp-archive-dissect-file-name):
      * lisp/net/tramp-cache.el (tramp-get-hash-table)
      (tramp-flush-directory-properties, tramp-flush-file-function):
      * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
      (tramp-append-tramp-buffers):
      * lisp/net/tramp-compat.el (tramp-compat-process-running-p):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
      (tramp-gvfs-get-file-attributes)
      (tramp-gvfs-handle-file-attributes)
      (tramp-gvfs-monitor-process-filter)
      (tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec-entry)
      (tramp-gvfs-mount-spec, tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
      (tramp-do-file-attributes-with-stat)
      (tramp-sh-handle-file-selinux-context)
      (tramp-sh-handle-directory-files-and-attributes)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-file-name-all-completions)
      (tramp-sh-handle-dired-compress-file)
      (tramp-sh-handle-insert-directory)
      (tramp-sh-handle-expand-file-name)
      (tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-sh-handle-write-region)
      (tramp-sh-handle-file-notify-add-watch)
      (tramp-sh-gio-monitor-process-filter)
      (tramp-sh-gvfs-monitor-dir-process-filter)
      (tramp-sh-inotifywait-process-filter)
      (tramp-sh-handle-file-system-info, tramp-maybe-send-script)
      (tramp-find-executable, tramp-open-shell, tramp-find-shell)
      (tramp-open-connection-setup-interactive-shell)
      (tramp-find-inline-encoding, tramp-call-local-coding-command)
      (tramp-compute-multi-hops, tramp-maybe-open-connection)
      (tramp-convert-file-attributes)
      (tramp-make-copy-program-file-name, tramp-get-remote-locale)
      (tramp-get-test-nt-command, tramp-get-remote-stat)
      (tramp-get-inline-coding):
      * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files)
      (tramp-smb-action-get-acl, tramp-smb-handle-file-attributes)
      (tramp-smb-handle-file-name-all-completions)
      (tramp-smb-handle-file-system-info)
      (tramp-smb-handle-file-writable-p)
      (tramp-smb-handle-insert-directory)
      (tramp-smb-handle-make-directory)
      (tramp-smb-handle-make-directory-internal)
      (tramp-smb-handle-start-file-process, tramp-smb-get-localname)
      (tramp-smb-read-file-entry): Use `string-match-p' and
      `looking-at-p'.  Remove superfluous `save-match-data'.  Apply
      `eval-when-compile' on constant concat data.
      
      * lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p-p):
      Use `string-prefix-p'.
      (tramp-compat-file-name-unquote): Do not use match data.
      66b49fc1
  6. 24 Nov, 2018 1 commit
  7. 22 Nov, 2018 1 commit
    • Michael Albinus's avatar
      Some minor Tramp cleanups · a344d993
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-file-name-p):
      * lisp/net/tramp-ftp.el (tramp-ftp-file-name-p):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-p): Make it more robust.
      
      * lisp/net/tramp.el (tramp-handle-file-truename): Cache only the
      localname.
      a344d993
  8. 29 Sep, 2018 1 commit
    • Michael Albinus's avatar
      Rework time-* functions in Tramp · ce0da8a4
      Michael Albinus authored
      * doc/misc/emacs-mime.texi (time-date): Add time-equal-p.
      
      * lisp/net/tramp-compat.el (tramp-compat-time-equal-p): New defsubst.
      
      * lisp/net/tramp.el (tramp-file-name-handler): Remove `debug'
      error handler.
      (tramp-half-a-year): Remove.
      (tramp-time-dont-know, tramp-time-doesnt-exist): New defconst.
      (tramp-time-diff): Remove compat code.
      (tramp-handle-set-visited-file-modtime)
      (tramp-handle-verify-visited-file-modtime):
      * lisp/net/tramp-adb.el (tramp-do-parse-file-attributes-with-ls)
      (tramp-adb-handle-set-file-times):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
      (tramp-sh-handle-set-visited-file-modtime)
      (tramp-sh-handle-verify-visited-file-modtime)
      (tramp-sh-handle-set-file-times)
      (tramp-sh-handle-file-newer-than-file-p):
      Use `tramp-time-dont-know', `tramp-time-doesnt-exist' and
      `tramp-compat-time-equal-p'.
      (tramp-sh-handle-verify-visited-file-modtime): Simplify check.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-attributes)
      (tramp-smb-read-file-entry): Use `tramp-time-dont-know'.
      (tramp-smb-handle-insert-directory): Adapt half-a-year check.
      
      * src/editfns.c (Ftime_equal_p): Adapt docstring.
      
      * test/lisp/net/tramp-tests.el
      (tramp-test19-directory-files-and-attributes)
      (tramp-test22-file-times): Use `tramp-compat-time-equal-p' and
      `tramp-time-dont-know'.
      (tramp-test23-visited-file-modtime): Extend test.
      ce0da8a4
  9. 28 Aug, 2018 1 commit
    • Michael Albinus's avatar
      Add bignum support in Tramp · adcf904b
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-system-info):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-stat)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-file-system-info):
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): Do
      not add "e0" to integers.
      
      * lisp/net/tramp-sh.el (tramp-perl-file-attributes)
      (tramp-convert-file-attributes): Do not use a consp for the inode
      if there is bignum support.
      adcf904b
  10. 20 Jul, 2018 1 commit
    • Michael Albinus's avatar
      Fix (Bug#32218). Do not merge with master · 61de292c
      Michael Albinus authored
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.3.4.26.2".
      (customize-package-emacs-version-alist): Add Tramp version
      integrated in Emacs 26.2.
      
      * lisp/net/tramp.el (tramp-handle-file-truename):
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename): Fix problem
      with trailing slash.  (Bug#32218)
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Remove `tramp--test-emacs27-p' check.
      61de292c
  11. 22 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Improve backward compatibility of Tramp · e6476c91
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path):
      * lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): Use ´file-remote-p'.
      (tramp-get-ls-command-with): Handle busybox specially.
      
      * test/lisp/net/tramp-tests.el (tramp-test34-exec-path): Check for
      `fboundp'.  Use `file-remote-p'.  Hide compiler warning for older
      Emacsen.
      e6476c91
  12. 20 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Implement command completion in remote shells. (Bug#31704) · 6f649e77
      Michael Albinus authored
      * doc/lispref/files.texi (Locating Files): Describe optional
      argument REMOTE of `executable-find'.
      (Magic File Names): Add `exec-path'.
      
      * doc/lispref/processes.texi (Subprocess Creation): Describe
      function `exec-path'.
      
      * doc/misc/tramp.texi (Remote programs): Explain refresh of search
      paths by `tramp-cleanup-this-connection'.
      
      * etc/NEWS: Mention 'exec-path' and 'executable-find'.
      
      * lisp/files.el (exec-path): New defun.
      (executable-find): Add optional argument REMOTE.
      
      * lisp/shell.el (shell-completion-vars): Set `comint-file-name-prefix'.
      (shell--command-completion-data): Use `(exec-path)'.  (Bug#31704)
      
      * lisp/net/ange-ftp.el (exec-path):
      * lisp/net/tramp.el (tramp-file-name-for-operation):
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
      <exec-path>: Add handler.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path): New defun.
      (tramp-adb-maybe-open-connection): Do not set "remote-path"
      connection property.
      
      * lisp/net/tramp-compat.el (tramp-compat-exec-path): New defun.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): New defun.
      
      * lisp/net/tramp.el (tramp-eshell-directory-change): Use it.
      
      * test/lisp/net/tramp-archive-tests.el
      (tramp-archive-test38-make-nearby-temp-file)
      (tramp-archive-test41-file-system-info)
      (tramp-archive-test43-auto-load)
      (tramp-archive-test43-delay-load): Rename.
      
      * test/lisp/net/tramp-tests.el (tramp-test34-exec-path): New test.
      (tramp-test36-make-auto-save-file-name)
      (tramp-test37-find-backup-file-name)
      (tramp-test38-make-nearby-temp-file)
      (tramp-test39-special-characters)
      (tramp-test39-special-characters-with-stat)
      (tramp-test39-special-characters-with-perl)
      (tramp-test39-special-characters-with-ls, tramp-test40-utf8)
      (tramp-test40-utf8-with-stat, tramp-test40-utf8-with-perl)
      (tramp-test40-utf8-with-ls, tramp-test41-file-system-info)
      (tramp-test42-asynchronous-requests, tramp-test43-auto-load)
      (tramp-test43-delay-load, tramp-test43-recursive-load)
      (tramp-test43-remote-load-path, tramp-test44-unload): Rename.
      6f649e77
  13. 29 May, 2018 1 commit
    • Michael Albinus's avatar
      Sync with Tramp 2.3.4-pre · e8912d5b
      Michael Albinus authored
      * doc/misc/trampver.texi: Change version to "2.3.4-pre
      
      * lisp/net/tramp.el (tramp-mode, tramp-verbose)
      (tramp-backup-directory-alist, tramp-auto-save-directory)
      (tramp-encoding-shell, tramp-encoding-command-switch)
      (tramp-encoding-command-interactive, tramp-default-method)
      (tramp-default-method-alist, tramp-default-user)
      (tramp-default-user-alist, tramp-default-host)
      (tramp-default-host-alist, tramp-default-proxies-alist)
      (tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
      (tramp-local-end-of-line, tramp-rsh-end-of-line)
      (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
      (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
      (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
      (tramp-terminal-prompt-regexp)
      (tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
      (tramp-process-alive-regexp, tramp-chunksize)
      (tramp-process-connection-type, tramp-connection-timeout)
      (tramp-connection-min-time-diff)
      (tramp-completion-reread-directory-timeout):
      * lisp/net/tramp-adb.el (tramp-adb-program)
      (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
      * lisp/net/tramp-cache.el (tramp-connection-properties)
      (tramp-persistency-file-name):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
      (tramp-gvfs-zeroconf-domain, tramp-bluez-discover-devices-timeout):
      * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
      (tramp-copy-size-limit, tramp-terminal-type)
      (tramp-histfile-override, tramp-use-ssh-controlmaster-options)
      (tramp-remote-path, tramp-remote-process-environment)
      (tramp-sh-extra-args):
      * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
      (tramp-smb-conf, tramp-smb-winexe-program)
      (tramp-smb-winexe-shell-command)
      (tramp-smb-winexe-shell-command-switch):
      Dont't require 'tramp.  (Bug#31558)
      
      * lisp/net/tramp.el (tramp-accept-process-output):
      * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-start-file-process):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-handle-start-file-process): Suppress timers.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
      * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
      * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
      Write proper message.
      
      * lisp/net/tramp-cmds.el (tramp-change-syntax):
      Use `customize-set-variable'.
      
      * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
      Ensure proper EOL handling for Darwin.
      (tramp-find-inline-compress): Improve command quoting for w32.
      Reported by Chris Zheng <chriszheng99@gmail.com>.
      (tramp-open-connection-setup-interactive-shell): Wrap both echo
      calls in parentheses, in order to avoid double prompt.
      
      * lisp/net/tramp-smb.el (tramp-smb-errors):
      Add "NT_STATUS_RESOURCE_NAME_NOT_FOUND".
      
      * lisp/net/tramp.el (tramp-default-user-alist)
      (tramp-default-host-alist): Fix docstring.
      (tramp-dissect-file-name): Adapt docstring.  (Bug#30904)
      (tramp-make-tramp-file-name): Check, that method is
      not empty.  (Bug#30038)
      (tramp-message-show-message): Change default.
      
      * lisp/net/trampver.el: Change version to "2.3.4-pre".
      
      * test/lisp/net/tramp-tests.el (ert-x): Require it.
      (tramp-test10-write-region): Extend test.
      (tramp--test-emacs27-p, tramp--test-windows-nt): New defuns.
      (tramp-test11-copy-file, tramp-test12-rename-file)
      (tramp-test21-file-links, tramp-test24-file-acl)
      (tramp-test25-file-selinux, tramp--test-check-files): Use them.
      (tramp-test21-file-links): Do not call `make-symbolic-link' on w32.
      Fix file name quoting test.
      (tramp-test32-environment-variables-and-port-numbers):
      Adapt check for systems which do not support "echo -n".  (Bug#29712)
      (tramp-test36-find-backup-file-name): Call also
      `convert-standard-filename' due to w32.
      (tramp-test41-asynchronous-requests):
      Use $REMOTE_PARALLEL_PROCESSES.  Flush cache prior file operations.
      (tramp-test42-auto-load, tramp-test42-delay-load)
      (tramp-test42-recursive-load, tramp-test42-remote-load-path):
      Quote command due to w32.
      e8912d5b
  14. 24 May, 2018 1 commit
    • Michael Albinus's avatar
      Fix Bug#31558 · 5444cb5f
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-mode, tramp-verbose)
      (tramp-backup-directory-alist, tramp-auto-save-directory)
      (tramp-encoding-shell, tramp-encoding-command-switch)
      (tramp-encoding-command-interactive, tramp-default-method)
      (tramp-default-method-alist, tramp-default-user)
      (tramp-default-user-alist, tramp-default-host)
      (tramp-default-host-alist, tramp-default-proxies-alist)
      (tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
      (tramp-local-host-regexp, tramp-local-end-of-line)
      (tramp-rsh-end-of-line, tramp-login-prompt-regexp)
      (tramp-shell-prompt-pattern, tramp-password-prompt-regexp)
      (tramp-wrong-passwd-regexp, tramp-yesno-prompt-regexp)
      (tramp-yn-prompt-regexp, tramp-terminal-prompt-regexp)
      (tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
      (tramp-process-alive-regexp, tramp-ignored-file-name-regexp)
      (tramp-chunksize, tramp-process-connection-type)
      (tramp-connection-timeout, tramp-connection-min-time-diff)
      (tramp-completion-reread-directory-timeout)
      * lisp/net/tramp-adb.el (tramp-adb-program)
      (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
      * lisp/net/tramp-cache.el (tramp-connection-properties)
      (tramp-persistency-file-name):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
      (tramp-gvfs-zeroconf-domain)
      (tramp-bluez-discover-devices-timeout):
      * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
      (tramp-copy-size-limit, tramp-terminal-type)
      (tramp-histfile-override, tramp-use-ssh-controlmaster-options)
      (tramp-remote-path, tramp-remote-process-environment)
      (tramp-sh-extra-args):
      * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
      (tramp-smb-conf, tramp-smb-winexe-program)
      (tramp-smb-winexe-shell-command)
      (tramp-smb-winexe-shell-command-switch):
      Dont't require 'tramp.  (Bug#31558)
      
      * lisp/net/tramp.el (tramp-ignored-file-name-regexp): Use type regexp.
      5444cb5f
  15. 29 Mar, 2018 1 commit
    • Michael Albinus's avatar
      Fix Bug#30946 · b9340aad
      Michael Albinus authored
      * doc/misc/tramp.texi (Multi-hops): Mention host name checks.
      
      * lisp/net/tramp.el (tramp-set-syntax, tramp-dissect-file-name)
      (tramp-debug-message, tramp-handle-shell-command):
      * lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
      * lisp/net/tramp-archive.el (tramp-archive-file-name-handler)
      (tramp-archive-dissect-file-name):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler): Adapt callees.
      
      * lisp/net/tramp-compat.el (tramp-compat-user-error): Move defsubst ---
      
      * lisp/net/tramp-sh.el (tramp-compute-multi-hops): Check for proper
      host names in multi-hop.  (Bug#30946)
      
      * lisp/net/tramp.el (tramp-user-error): ... here.  Make it a defun.
      
      * test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
      New test.
      b9340aad
  16. 26 Mar, 2018 1 commit
    • Michael Albinus's avatar
      Fix problem with trailing slash in Tramp · f5834c9b
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-handle-file-truename):
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
      Fix problem with trailing slash.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Test also quoted directories.
      f5834c9b
  17. 05 Mar, 2018 1 commit
    • Paul Eggert's avatar
      Spelling fixes (Bug#10068) · 0e10b6fc
      Paul Eggert authored
      * lisp/gnus/gnus-score.el (gnus-score-find-favorite-words):
      Rename from gnus-score-find-favourite-words.
      * lisp/hfy-cmap.el (hfy-fallback-color-map)
      (hfy-rgb-txt-color-map, hfy-fallback-color-values):
      * lisp/htmlfontify.el (hfy-color-vals, hfy-color):
      Rename from names that used 'colour' instead of 'color'.
      0e10b6fc
  18. 28 Feb, 2018 1 commit
    • Michael Albinus's avatar
      Some minor Tramp tweaks · 51537b9e
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-get-ls-command): Fix docstring.
      
      * lisp/net/tramp-sh.el (tramp-vc-registered-read-file-names):
      Quote file.
      
      * lisp/net/tramp.el (tramp-handle-substitute-in-file-name):
      Make it more robust.
      51537b9e
  19. 27 Feb, 2018 1 commit
    • Mathieu Othacehe's avatar
      Add coreutils 'ls' support for tramp adb · bc08ffbd
      Mathieu Othacehe authored
      * lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp): Allow '.'
      character in file permissions. It indicates an SELinux security
      context.
      (tramp-adb-get-ls-command): Detect Coreutils version of 'ls'.
      Use 'ls -1' instead of passing COLUMNS=1 env variable. This is
      isofunctional.  (Bug#30594)
      
      Copyright-paperwork-exempt: yes
      bc08ffbd
  20. 13 Jan, 2018 1 commit
    • Michael Albinus's avatar
      Improve Tramp robustness · 1a5293e7
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-message, tramp-process-actions)
      (tramp-read-passwd, tramp-interrupt-process):
      * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch)
      (tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-process-sentinel)
      (tramp-sh-handle-file-notify-add-watch)
      (tramp-barf-if-no-shell-prompt, tramp-maybe-open-connection)
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
      (tramp-smb-maybe-open-connection): Use process property rather
      than connection property "vector".
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
      Fix scoping error.  Let error traces use process buffer.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
      Move "inotifywait" up.  GVFS based monitoring is not stable.
      Let error traces use process buffer.
      (tramp-sh-gvfs-monitor-dir-process-filter): Check more error
      messages.
      (tramp-get-remote-gvfs-monitor-dir): Search also for "gio".
      
      * lisp/net/tramp.el (tramp-get-debug-buffer):
      Use `special-mode-map' as parent map in debug buffer.
      (tramp-message): Ensure, that proper process buffer is dumped
      in error case.
      1a5293e7
  21. 04 Jan, 2018 1 commit
    • Michael Albinus's avatar
      Write proper `write-region' message in Tramp backends · 13d38482
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
      * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
      * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
      Write proper message.
      
      * lisp/net/tramp.el (tramp-message-show-message): Change default.
      
      * test/lisp/net/tramp-tests.el (ert-x): Require it.
      (tramp-test10-write-region): Extend test.
      13d38482
  22. 01 Jan, 2018 1 commit
  23. 16 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Suppress timers in Tramp operations · f63d9f86
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-accept-process-output):
      * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-start-file-process):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-handle-start-file-process): Suppress timers.
      
      * test/lisp/net/tramp-tests.el (tramp-test41-asynchronous-requests):
      Use $REMOTE_PARALLEL_PROCESSES.  Flush cache prior file operations.
      Add instrumentation messages.
      f63d9f86
  24. 12 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Extend tramp-cache.el interface · 95a2a74d
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-handle-add-name-to-file)
      (tramp-handle-dired-uncache):
      * lisp/net/tramp-adb.el (tramp-adb-handle-make-directory)
      (tramp-adb-handle-delete-directory, tramp-adb-handle-delete-file)
      (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
      (tramp-adb-handle-set-file-times, tramp-adb-handle-copy-file)
      (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
      (tramp-adb-handle-start-file-process, tramp-adb-get-device)
      (tramp-adb-maybe-open-connection):
      * lisp/net/tramp-cache.el (tramp-flush-file-properties)
      (tramp-flush-directory-properties, tramp-flush-file-function):
      * lisp/net/tramp-cmds.el (tramp-cleanup-connection):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
      (tramp-gvfs-handle-delete-directory, tramp-gvfs-handle-delete-file)
      (tramp-gvfs-handle-file-system-info, tramp-gvfs-handle-make-directory)
      (tramp-gvfs-handle-write-region, tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-send-command):
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
      (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
      (tramp-sh-handle-set-file-selinux-context, tramp-sh-handle-set-file-acl)
      (tramp-sh-handle-add-name-to-file, tramp-sh-handle-copy-directory)
      (tramp-do-copy-or-rename-file, tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-make-directory, tramp-sh-handle-delete-directory)
      (tramp-sh-handle-delete-file, tramp-sh-handle-dired-compress-file)
      (tramp-process-sentinel, tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-sh-handle-write-region):
      * lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
      (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
      (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file)
      (tramp-smb-handle-file-acl, tramp-smb-handle-make-directory-internal)
      (tramp-smb-handle-make-symbolic-link, tramp-smb-handle-process-file)
      (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
      (tramp-smb-handle-set-file-modes, tramp-smb-handle-start-file-process)
      (tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
      Use them.
      
      * lisp/net/tramp-cache.el (tramp-flush-file-properties)
      (tramp-flush-directory-properties, tramp-flush-connection-properties):
      Rename from `tramp-flush-file-property',`tramp-flush-directory-property'
      and `tramp-flush-connection-property', respectively.
      (tramp-flush-file-property, tramp-flush-connection-property):
      New defuns.
      95a2a74d
  25. 09 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Sync with Tramp 2.4.0-pre · 34bedf5d
      Michael Albinus authored
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.4.0-pre".
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      Use `tramp-handle-file-directory-p'.
      (tramp-adb-parse-device-names)
      (tramp-adb-handle-expand-file-name)
      (tramp-adb-handle-file-truename, tramp-adb-handle-process-file):
      Adapt `tramp-make-tramp-file-name' call.
      (tramp-adb-handle-file-directory-p): Remove.
      (tramp-adb-maybe-open-connection): Do not set
      tramp-current-*.
      
      * lisp/net/tramp-cache.el (tramp-get-hash-table):
      Adapt `tramp-make-tramp-file-name' call.
      
      * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Do not set
      tramp-current-*.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      Use `tramp-handle-file-directory-p'.
      (tramp-gvfs-dbus-event-error): Trace with verbosity 6.
      (tramp-gvfs-do-copy-or-rename-file): Use `file-truename'.
      (tramp-gvfs-handle-file-directory-p): Remove.
      (tramp-gvfs-handler-askpassword): Do not set tramp-current-*.
      
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-start-file-process)
      (tramp-maybe-open-connection, tramp-get-remote-path): Do not
      set tramp-current-*.
      (tramp-maybe-open-connection): Set "password-vector" property.
      
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      Use `tramp-handle-file-accessible-directory-p' and
      `tramp-handle-file-directory-p'.
      (tramp-smb-handle-copy-directory, tramp-smb-handle-file-acl)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-maybe-open-connection): Do not set tramp-current-*.
      (tramp-smb-handle-file-directory-p): Remove.
      (tramp-smb-handle-make-symbolic-link):
      Use `tramp-get-connection-buffer' rather than `buffer-name'.
      
      * lisp/net/tramp.el (tramp-current-method, tramp-current-user)
      (tramp-current-domain, tramp-current-host)
      (tramp-current-port): Remove.
      (tramp-dissect-file-name): No special handling of localname anymore.
      (tramp-make-tramp-file-name): Reimplemnt with new signature.
      (tramp-completion-make-tramp-file-name): Fix docstring.
      (tramp-get-buffer, tramp-handle-file-name-as-directory)
      (tramp-handle-file-name-directory)
      (tramp-check-cached-permissions, tramp-local-host-p)
      (tramp-get-remote-tmpdir, tramp-clear-passwd):
      Adapt `tramp-make-tramp-file-name' call.
      (tramp-completion-handle-file-name-all-completions)
      (tramp-action-login, tramp-read-passwd): Do not set
      tramp-current-*.
      (tramp-handle-file-directory-p): New defun.
      (tramp-handle-verify-visited-file-modtime): Remove superfluous
      `with-parsed-tramp-file-name'.
      (tramp-process-actions, tramp-read-passwd):
      Use "password-vector" property.
      (tramp-call-process, tramp-call-process-region): No special
      setting of vec.
      (tramp-read-passwd): Handle "login-as" property.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Special code for "smb".
      34bedf5d
  26. 29 Nov, 2017 1 commit
    • Michael Albinus's avatar
      Some minor Tramp corrections · 3dd25aee
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-handle-directory-file-name):
      Handle several trailing slashes correctly.
      (tramp-handle-file-selinux-context): New defun.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      Use `tramp-handle-file-selinux-context'.
      
      * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
      Extend test.
      (tramp-test17-insert-directory): Make check more robust.
      (tramp-test42-auto-load): Combine several let forms.
      (tramp-test42-delay-load, tramp-test42-recursive-load)
      (tramp-test42-remote-load-path, tramp-test43-unload): Rename.
      3dd25aee
  27. 20 Oct, 2017 1 commit
    • Michael Albinus's avatar
      Fix Bug#28896 · b500e06f
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-rename-file):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file): Handle FILENAME
      being a directory.  (Bug#28896)
      
      * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
      (tramp-test12-rename-file): Test also FILENAME being a directory.
      b500e06f
  28. 08 Oct, 2017 1 commit
  29. 03 Oct, 2017 1 commit
    • Michael Albinus's avatar
      Add support for `file-system-info' in Tramp · a9ac20c1
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-file-name-for-operation):
      Add `file-system-info'.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info): New defun.
      (tramp-adb-file-name-handler-alist): Use it.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-system-attributes)
      (tramp-gvfs-file-system-attributes-regexp): New defconst.
      (tramp-gvfs-handle-file-system-info): New defun.
      (tramp-gvfs-file-name-handler-alist): Use it.
      (tramp-gvfs-get-directory-attributes): Fix property name.
      (tramp-gvfs-get-root-attributes): Support also file system attributes.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-system-info): New defun.
      (tramp-sh-file-name-handler-alist): Use it.
      (tramp-sh-handle-insert-directory): Insert size information.
      (tramp-get-remote-df): New defun.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): New defun.
      (tramp-smb-file-name-handler-alist): Use it.
      (tramp-smb-handle-insert-directory): Insert size information.
      
      * test/lisp/net/tramp-tests.el (tramp-test37-file-system-info):
      New test.
      (tramp-test38-asynchronous-requests)
      (tramp-test39-recursive-load, tramp-test40-remote-load-path)
      (tramp-test41-unload): Rename.
      a9ac20c1
  30. 17 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Fix compatibility problem in Tramp · 57249fb2
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-interrupt-process): Better error handling.
      
      * lisp/net/tramp-compat.el (default-toplevel-value): Move up.
      (top): Do not call `tramp-change-syntax' anymore.
      (tramp-compat-directory-name-p): New defalias.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
      * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-copy-file): Use it.
      
      * test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
      Modify test.
      57249fb2
  31. 15 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Improve Tramp behaviour according to bug#27986 · 7911ebc6
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
      * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-copy-file): Check, that NEWNAME is a
      directory name when existing.  Use `file-name-as-directory'
      where appropriate.
      7911ebc6
  32. 13 Sep, 2017 1 commit
    • Paul Eggert's avatar
      Prefer HTTPS to FTP and HTTP in documentation · bc511a64
      Paul Eggert authored
      Most of this change is to boilerplate commentary such as license URLs.
      This change was prompted by ftp://ftp.gnu.org's going-away party,
      planned for November.  Change these FTP URLs to https://ftp.gnu.org
      instead.  Make similar changes for URLs to other organizations moving
      away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
      fsf.org when this works, as this will further help defend against
      man-in-the-middle attacks (for this part I omitted the MS-DOS and
      MS-Windows sources and the test tarballs to keep the workload down).
      HTTPS is not fully working to lists.gnu.org so I left those URLs alone
      for now.
      bc511a64
  33. 04 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Work on Tramp's (symbolic) links · 8a65d7a7
      Michael Albinus authored
      * doc/misc/tramp.texi (Traces and Profiles): Mention the
      backtrace when tramp-verbose is greater than or equal to 10.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      Use `tramp-handle-add-name-to-file'.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Use
      `tramp-handle-add-name-to-file' and `tramp-handle-file-truename'.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link): Improve.
      
      * lisp/net/tramp-smb.el (tramp-smb-errors):
      Add "NT_STATUS_CONNECTION_DISCONNECTED" and
      "NT_STATUS_OBJECT_PATH_SYNTAX_BAD".
      (tramp-smb-file-name-handler-alist): Use `tramp-handle-file-truename'.
      (tramp-smb-do-file-attributes-with-stat): Return non-nil only
      if one of the attributes is non-nil.
      (tramp-smb-handle-file-local-copy): Use `file-truename'.
      (tramp-smb-handle-file-truename): Move to tramp.el.
      (tramp-smb-handle-insert-directory): Show symlinks.
      (tramp-smb-handle-make-symbolic-link): Improve.
      (tramp-smb-read-file-entry): Handle extended file modes in Samba.
      
      * lisp/net/tramp.el (tramp-handle-add-name-to-file)
      (tramp-handle-file-truename): New defuns.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
      (tramp--test-check-files): Make check for "smb".
      8a65d7a7
  34. 12 Aug, 2017 1 commit
    • Michael Albinus's avatar
      Implement EXCL of write-region for Tramp · ec5cfaa4
      Michael Albinus authored
      * lisp/net/ange-ftp.el (ange-ftp-write-region):
      * lisp/net/tramp-adb.el (tramp-adb-handle-write-region)
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
      * lisp/net/tramp-sh.el (tramp-sh-handle-write-region)
      * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
      Implement MUSTBENEW.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
      (tramp-sh-handle-add-name-to-file)
      (tramp-do-copy-or-rename-file)
      * lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
      Adapt error message for `file-already-exists'.
      
      * src/lisp.h:
      * src/eval.c (call8): New function.
      
      * src/fileio.c (write_region): Pass also lockname and
      mustbenew to the file name handler.
      
      * test/lisp/net/tramp-tests.el (tramp-test10-write-region):
      Add tests for MUSTBENEW.
      ec5cfaa4
  35. 25 Jun, 2017 1 commit
    • Michael Albinus's avatar
      Fix Android 6/7 problems in Tramp · 68e03d1e
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp): Fix link part.
      (tramp-adb-handle-directory-files-and-attributes)
      (tramp-adb-handle-file-name-all-completions): Insert "."  and
      ".." only when needed.
      (tramp-adb-get-ls-command): Force one column output for toybox.
      68e03d1e
  36. 28 May, 2017 2 commits
    • Michael Albinus's avatar
      Some tweaks, almost all for Tramp adb method · e7bb7cc2
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
      Use `make-tramp-file-name'.
      (tramp-adb-get-device): Use `tramp-file-name-port-or-default'.
      (tramp-adb-maybe-open-connection): Set "prompt" property.
      (tramp-adb-wait-for-output): Use it.
      
      * lisp/net/tramp-cache.el (tramp-cache-print): Use `elt'.
      (tramp-dump-connection-properties): Check also that there are
      properties to be saved.  Don't save "started" property of
      "ftp" method.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name):
      Use `make-tramp-file-name'.
      
      * lisp/net/tramp.el (tramp-remote-file-name-spec-regexp):
      Host could be empty.
      (tramp-file-name-port-or-default): New defun.
      (tramp-dissect-file-name): Simplify `make-tramp-file-name' call.
      (tramp-handle-file-name-case-insensitive-p): Use a progress reporter.
      (tramp-call-process, tramp-call-process-region):
      Use `make-tramp-file-name'.
      
      * test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
      Revert change from 2017-05-24.
      (tramp-test05-expand-file-name-relative): Let it also pass for
      "adb" method.
      e7bb7cc2
    • Jürgen Hötzel's avatar
      Fix Tramp for Android 7 · 288b3ca2
      Jürgen Hötzel authored
      * tramp-adb.el (tramp-adb-ls-toolbox-regexp):
      Username part of prompt is empty on Android 7.
      (tramp-adb-ls-toolbox-regexp):
      Ignore addition links column on Android 7.
      (tramp-adb-get-ls-command):
      Dont use --color=none when using toybox (Android 7).  It's not
      possible to disable coloring explicitly for toybox ls.
      288b3ca2
  37. 26 May, 2017 1 commit
    • Michael Albinus's avatar
      Remove Emacs 23 compat code from Tramp · b3032988
      Michael Albinus authored
      * doc/misc/tramp.texi (Remote processes): Don't mention
      Emacs 24 explicitely.
      (Frequently Asked Questions): Remove Emacs 23 from
      compatibility list.
      
      * lisp/net/tramp.el:
      * lisp/net/tramp-adb.el:
      * lisp/net/tramp-cache.el:
      * lisp/net/tramp-gvfs.el:
      * lisp/net/tramp-sh.el:
      * lisp/net/tramp-smb.el: Replace compat function calls.
      
      * lisp/net/tramp-compat.el (remote-file-name-inhibit-cache)
      (tramp-compat-condition-case-unless-debug)
      (tramp-compat-copy-file, tramp-compat-copy-directory)
      (tramp-compat-delete-file, tramp-compat-delete-directory)
      (tramp-compat-process-live-p): Remove them.
      
      * lisp/net/trampver.el: Make version check fit for Emacs 24.
      b3032988
  38. 24 May, 2017 1 commit
    • Michael Albinus's avatar
      Introduce a defstruct `tramp-file-name' as central data structure. · dca22e86
      Michael Albinus authored
      This solves also Bug#27009.
      
      * lisp/net/tramp.el (tramp-current-domain)
      (tramp-current-port): New defvars.
      (tramp-file-name): New defstruct.
      (tramp-file-name-user-domain, tramp-file-name-host-port)
      (tramp-file-name-equal-p): New defuns.
      (tramp-file-name-p, tramp-file-name-method)
      (tramp-file-name-user, tramp-file-name-host)
      (tramp-file-name-localname, tramp-file-name-hop)
      (tramp-file-name-real-user, tramp-file-name-domain)
      (tramp-file-name-real-host, tramp-file-name-port):
      Remove defuns.  They are provided by the defstruct, or not
      needed anymore.
      (tramp-dissect-file-name, tramp-buffer-name)
      (tramp-make-tramp-file-name, tramp-get-buffer)
      (tramp-set-connection-local-variables)
      (tramp-debug-buffer-name, tramp-message)
      (tramp-error-with-buffer, with-parsed-tramp-file-name)
      (tramp-completion-dissect-file-name1)
      (tramp-handle-file-name-as-directory)
      (tramp-handle-file-name-directory)
      (tramp-handle-file-remote-p, tramp-handle-file-symlink-p)
      (tramp-handle-find-backup-file-name)
      (tramp-handle-insert-file-contents, tramp-process-actions)
      (tramp-check-cached-permissions, tramp-local-host-p)
      (tramp-get-remote-tmpdir, tramp-call-process)
      (tramp-call-process-region, tramp-read-passwd)
      (tramp-clear-passwd):
      * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
      (tramp-adb-handle-expand-file-name)
      (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file)
      (tramp-adb-handle-process-file)
      (tramp-adb-maybe-open-connection):
      * lisp/net/tramp-cache.el (tramp-get-hash-table)
      (tramp-get-file-property, tramp-set-file-property)
      (tramp-flush-file-property, tramp-flush-directory-property)
      (tramp-get-connection-property)
      (tramp-set-connection-property, tramp-connection-property-p)
      (tramp-flush-connection-property, tramp-cache-print)
      (tramp-list-connections, tramp-dump-connection-properties)
      (tramp-parse-connection-properties):
      * lisp/net/tramp-cmds.el (tramp-cleanup-connection):
      * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
      (tramp-gvfs-url-file-name, tramp-gvfs-handler-askpassword)
      (tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-mount-spec, tramp-gvfs-get-remote-uid)
      (tramp-gvfs-get-remote-gid)
      (tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
      (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-expand-file-name)
      (tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-compute-multi-hops)
      (tramp-maybe-open-connection)
      (tramp-make-copy-program-file-name, tramp-get-remote-path)
      (tramp-get-inline-coding):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-expand-file-name)
      (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-maybe-open-connection): Adapt according to defstruct.
      dca22e86