1. 26 Jul, 2020 3 commits
    • Philipp Stephani's avatar
      Add another test for global module references · 73a2f510
      Philipp Stephani authored
      * test/src/emacs-module-tests.el (mod-test-globref-reordered): New
      unit test.
      
      * test/data/emacs-module/mod-test.c (Fmod_test_globref_reordered): New
      test module function.
      (emacs_module_init): Export it.
      73a2f510
    • Philipp Stephani's avatar
      Backport: add another test case for module assertions. · 3838aeb7
      Philipp Stephani authored
      This backports commit 9f01ce63 from master.  Since the bug isn’t
      present on emacs-27, just backport the new test case.
      
      * test/data/emacs-module/mod-test.c (Fmod_test_globref_invalid_free):
      New test module function.
      (emacs_module_init): Export it.
      
      * test/src/emacs-module-tests.el
      (module--test-assertions--globref-invalid-free): New unit test.
      3838aeb7
    • Philipp Stephani's avatar
      Backport: Add module test for edge case. · bde5f5f8
      Philipp Stephani authored
      This backports commit 6355a3ec from master.  Since the bug isn’t
      present in emacs-27, just backport the test case.
      
      * test/data/emacs-module/mod-test.c
      (Fmod_test_invalid_store_copy): New test module function.
      (emacs_module_init): Export it.
      
      * test/src/emacs-module-tests.el
      (module--test-assertions--load-non-live-object-with-global-copy):
      New unit test.
      bde5f5f8
  2. 25 Jul, 2020 2 commits
    • Philipp Stephani's avatar
      Make checking for liveness of global values more precise. · 9f01ce63
      Philipp Stephani authored
      We can't just use a hash lookup because a global and a local reference
      might refer to the same Lisp object.
      
      * src/emacs-module.c (module_free_global_ref): More precise check for
      global liveness.
      
      * test/data/emacs-module/mod-test.c (Fmod_test_globref_invalid_free):
      New test module function.
      (emacs_module_init): Export it.
      
      * test/src/emacs-module-tests.el
      (module--test-assertions--globref-invalid-free): New unit test.
      9f01ce63
    • Philipp Stephani's avatar
      Fix subtle bug when checking liveness of module values. · 6355a3ec
      Philipp Stephani authored
      We can't simply look up the Lisp object in the global reference table
      because an invalid local and a valid global reference might refer to
      the same object.  Instead, we have to test the address of the global
      reference against the stored references.
      
      * src/emacs-module.c (module_global_reference_p): New helper function.
      (value_to_lisp): Use it.
      
      * test/data/emacs-module/mod-test.c
      (Fmod_test_invalid_store_copy): New test module function.
      (emacs_module_init): Export it.
      
      * test/src/emacs-module-tests.el
      (module--test-assertions--load-non-live-object-with-global-copy):
      New unit test.
      6355a3ec
  3. 11 Jul, 2020 1 commit
    • Michael Albinus's avatar
      Fix multibyte chars of file names in tramp-adb.el · af4f3a87
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-execute-adb-command): Revert return
      value meaning.  Insert the result into the connection buffer.
      (tramp-adb-handle-file-local-copy)
      (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
      (tramp-adb-get-device): Adapt calls.
      (tramp-adb-send-command): Use "adb shell ..." in case the command
      contains multibyte chars.
      
      * test/lisp/net/tramp-tests.el (tramp--test-utf8): Extend test.
      af4f3a87
  4. 10 Jul, 2020 1 commit
    • Basil L. Contovounesios's avatar
      Consistently stylize eldoc as ElDoc in prose · 6290850d
      Basil L. Contovounesios authored
      * doc/emacs/custom.texi (Specifying File Variables):
      * doc/emacs/modes.texi (Major Modes):
      * doc/emacs/programs.texi (Lisp Doc):
      * etc/NEWS.22:
      * etc/NEWS.23:
      * lisp/progmodes/python.el:
      (python-eldoc-function):
      * test/lisp/progmodes/python-tests.el: Consistently capitalize eldoc
      as ElDoc rather than Eldoc.
      6290850d
  5. 09 Jul, 2020 3 commits
    • Paul Eggert's avatar
      Fix out-of-source ‘make check’ emacs-module-tests · c86f3fe0
      Paul Eggert authored
      Problem reported by Koki Fukuda in:
      https://lists.gnu.org/r/emacs-devel/2020-07/msg00169.html
      * test/Makefile.in (MODULE_CFLAGS):
      Include from the same directories included from in ../src.
      * test/src/emacs-module-tests.el (module/describe-function-1):
      Strip path to source directory.
      c86f3fe0
    • Paul Eggert's avatar
      Use Gnulib libgmp module · c8b6006d
      Paul Eggert authored
      Instead of doing GMP by hand, use the Gnulib libgmp module.
      * .gitignore: Add lib/gmp.h.
      * admin/merge-gnulib (GNULIB_MODULES): Add libgmp.
      * configure.ac (GMP_LIB, GMP_OBJ): Remove.  Gnulib uses the name
      LIB_GMP, so all uses changed.  All uses of GMP_OBJ removed.
      (HAVE_GMP): Set this from Gnulib’s variables.
      * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
      * lib/mini-gmp-gnulib.c, lib/mini-gmp.c, lib/mini-gmp.h, m4/libgmp.m4:
      New files, copied from Gnulib.
      * src/bignum.h, test/data/emacs-module/mod-test.c:
      Include gmp.h unconditionally.
      * src/mini-gmp-emacs.c, src/mini-gmp.c, src/mini-gmp.h:
      Remove.  This moves these files from src to lib, and
      updates them to the current GMP version.
      * test/Makefile.in (GMP_H): New macro.
      ($(test_module)): Use it to decide whether to compile
      mini-gmp-gnulib.c too.
      c8b6006d
    • Glenn Morris's avatar
      Update tests for recent changes · ef8bd7d8
      Glenn Morris authored
      * test/lisp/descr-text-tests.el (descr-text-test-desc):
      Update for recent change to describe-char-eldoc.
      * test/lisp/progmodes/elisp-mode-tests.el
      (elisp--highlight-function-argument-indexed)
      (elisp--highlight-function-argument-keyed-1)
      (elisp--highlight-function-argument-keyed-2):
      Update for recent change to elisp--highlight-function-argument.
      ef8bd7d8
  6. 05 Jul, 2020 1 commit
    • Mattias Engdegård's avatar
      Don't confuse errors with nil in bytecomp-tests.el · 58e27ebb
      Mattias Engdegård authored
      * test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-check-1)
      (bytecomp-explain-1, test-byte-opt-arithmetic, bytecomp-lexbind-check-1)
      (bytecomp-lexbind-explain-1):
      If an expression raises an error when evaluated, don't treat it as if
      it had succeeded with the value nil; use 'bytecomp-check-error' as the
      result instead.
      58e27ebb
  7. 29 Jun, 2020 2 commits
  8. 23 Jun, 2020 1 commit
    • Michael Albinus's avatar
      Fix problem in tramp-smb.el · 35e881c5
      Michael Albinus authored
      * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
      Use `directory-file-name'.
      
      * test/lisp/net/tramp-tests.el (trace): Require it.
      (tramp--test-instrument-test-case): Print also function traces.
      (tramp--test-smb-p): New defun.
      (tramp-test03-file-name-method-rules)
      (tramp-test05-expand-file-name-relative)
      (tramp-test21-file-links, tramp--test-windows-nt-or-smb-p)
      (tramp--test-check-files): Use it.
      35e881c5
  9. 22 Jun, 2020 3 commits
  10. 21 Jun, 2020 5 commits
    • Mattias Engdegård's avatar
      Consolidate #RGB string parsers · 9fe2bdb8
      Mattias Engdegård authored
      Use a single parser of color strings in the #RGB, rgb:R/G/B and
      rgbi:R/G/B formats, replacing four existing ones.  Previously,
      error-checking was spotty, handling of the rgbi: format not always
      present, and normalization of the result was sometimes incorrect.
      
      * src/dispextern.h: New prototype.
      * src/xfaces.c (parse_hex_color_comp, parse_float_color_comp)
      (parse_color_spec, Finternal-color_values_from_color_spec): New functions.
      * test/src/xfaces-tests.el (xfaces-internal-color-values-from-color-spec):
      New test.
      * lisp/term/tty-colors.el (tty-color-standard-values):
      Use internal-color-values-from-color-spec, replacing old parser.
      * src/nsterm.m (ns_get_color):
      * src/w32fns.c (x_to_w32_color):
      * src/xterm.c (x_parse_color): Use parse_color_spec, replacing old
      parsers.
      (HEX_COLOR_NAME_LENGTH): Remove #define.
      9fe2bdb8
    • Basil L. Contovounesios's avatar
      Replace some uses of cl-mapcan with mapcan · a4d3897d
      Basil L. Contovounesios authored
      * lisp/progmodes/project.el (project-files, project-files):
      * lisp/progmodes/xref.el (xref-backend-references)
      (xref--convert-hits):
      * test/lisp/emacs-lisp/package-tests.el
      (package-test-strip-version): Replace cl-mapcan with equivalent
      calls to mapcan.
      a4d3897d
    • Michael Albinus's avatar
      Fix remaining problems with tramp-crypt.el · f18b0357
      Michael Albinus authored
      * lisp/net/tramp-compat.el (tramp-compat-make-temp-file):
      Simplify implementation.
      
      * lisp/net/tramp-crypt.el (tramp-crypt-handle-delete-file)
      (tramp-crypt-handle-file-attributes, tramp-crypt-handle-file-system-info)
      (tramp-crypt-handle-make-directory): Let-bind `tramp-crypt-enabled' to nil.
      
      * lisp/net/tramp.el (tramp-file-name-for-operation): Fix for operations
      with two arguments.
      (tramp-handle-load): Suppress `signal-hook-function' when NOERROR
      is non-nil.
      
      * test/lisp/net/tramp-tests.el (tramp-test41-utf8)
      (tramp-test41-utf8-with-stat, tramp-test41-utf8-with-perl)
      (tramp-test41-utf8-with-ls): Skip if needed.
      f18b0357
    • Basil L. Contovounesios's avatar
      Evaluate some unnecessarily quoted lambdas · 1ecd350f
      Basil L. Contovounesios authored
      * lisp/cedet/semantic/complete.el
      (semantic-displayer-tooltip-max-tags):
      * lisp/emacs-lisp/benchmark.el (benchmark-run-compiled):
      * lisp/emacs-lisp/package.el (package--default-summary)
      (package-menu-filter-by-version):
      * lisp/eshell/em-pred.el (eshell-pred-file-time):
      * lisp/progmodes/verilog-mode.el (verilog-auto-lineup)
      (verilog-auto-reset-widths, verilog-auto-arg-format)
      (verilog-auto-inst-vector, verilog-auto-inst-template-numbers):
      * lisp/textmodes/bibtex.el (bibtex-dialect):
      * test/lisp/autoinsert-tests.el
      (autoinsert-tests-define-auto-insert-before)
      (autoinsert-tests-define-auto-insert-after): Remove some unnecessary
      quoting around anonymous functions.
      1ecd350f
    • Basil L. Contovounesios's avatar
      Silence some warnings in tests · 4cc6854c
      Basil L. Contovounesios authored
      * test/lisp/emacs-lisp/package-tests.el
      (package-test-suffix-matches): Evaluate lambda.
      (package-test-list-filter-marked):
      * test/lisp/vc/vc-tests.el
      (vc-test--run-maybe-unsupported-function):
      * test/src/undo-tests.el (undo-test-skip-invalidated-markers):
      Silence "unused local variable" warnings.
      * test/lisp/imenu-tests.el (imenu-simple-scan-deftest): Fix
      docstring.  Don't shadow global major-mode.
      4cc6854c
  11. 18 Jun, 2020 4 commits
    • Basil L. Contovounesios's avatar
      Improve battery.el UPower support · 453d30d9
      Basil L. Contovounesios authored
      For discussion, see the following threads:
      https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00843.html
      https://lists.gnu.org/archive/html/emacs-devel/2020-02/msg00042.html
      https://lists.gnu.org/archive/html/emacs-devel/2020-02/msg00282.html
      
      * etc/NEWS: Announce that battery-upower is enabled by default.
      
      * lisp/battery.el (battery-upower-device): Accept both battery and
      line power device names, or a list thereof (bug#39491).
      (battery-upower-line-power-device): Remove user option; superseded
      by battery-upower-device.
      (battery-upower-subscribe): New user option.
      (battery-status-function): Check whether a UPower service is
      provided without activating it.
      (display-battery-mode): Subscribe to UPower signals when using
      battery-upower.
      (battery-upower): Merge data from multiple power sources.  Calculate
      terse battery status %b based on average battery load percentage
      rather than coarse and often missing BatteryLevel (bug#39491).  Add
      support for average temperature %d.
      
      (battery-upower-dbus-service)
      (battery-upower-dbus-interface)
      (battery-upower-dbus-path)
      (battery-upower-dbus-device-interface)
      (battery-upower-dbus-device-path)
      (battery-upower-device-all-properties): Rename to...
      (battery-upower-service)
      (battery-upower-interface)
      (battery-upower-path)
      (battery-upower-device-interface)
      (battery-upower-device-path)
      (battery--upower-device-properties): ...these, respectively.
      
      (battery-upower-device-list): Rename to...
      (battery--upower-devices) ...this.  Return a flat list of device
      names determined by battery-upower-device.
      (battery-upower-types, battery-upower-states)
      (battery-upower-device-property, battery-upower-device-autodetect):
      Remove.
      (battery--upower-signals): New variable.
      (battery--upower-signal-handler, battery--upower-props-changed)
      (battery--upower-unsubscribe, battery--upower-subsribe)
      (battery--upower-state): New functions.
      
      * test/lisp/battery-tests.el (battery-upower-state)
      (battery-upower-state-unknown): New tests.
      453d30d9
    • Basil L. Contovounesios's avatar
      Various battery.el improvements (bug#41808) · 23a148c9
      Basil L. Contovounesios authored
      * lisp/battery.el: Mention BSD support in Commentary.  Don't load
      preloaded lisp/emacs-lisp/timer.el.
      (battery--files): New function.
      (battery--find-linux-sysfs-batteries): Use it and make fewer
      syscalls.
      (battery-status-function): Perform GNU/Linux checks in increasing
      order of obsolescence: sysfs, ACPI, and then APM.  Simplify Darwin
      check.  Add :version tag now that battery-upower is the default.
      (battery-echo-area-format, battery-mode-line-format): Mention %s.
      (battery-load-low, battery-load-critical): New faces.
      (battery-update): Display battery-mode-line-format even if
      percentage is N/A.  Apply faces battery-load-low or
      battery-load-critical according to the percentage, but append them
      so they don't override user customizations.  Update all mode lines
      since we are in global-mode-string.
      (battery-linux-proc-apm-regexp): Mark as obsolete, replacing with...
      (battery--linux-proc-apm): ...this new rx definition.
      (battery-linux-proc-apm): Use it.  Fix indentation.  Simplify.
      (battery--acpi-rate, battery--acpi-capacity): New rx definitions.
      (battery-linux-proc-acpi): Use them.  Fix pathological whitespace
      regexps.  Simplify.
      (battery-linux-sysfs): Fix docstring and indentation.  Reduce number
      of file searches.  Simplify.
      (battery-bsd-apm): Fix docstring.  Simplify.
      (battery-pmset): Fix docstring.  Simplify ID regexp.
      
      * lisp/emacs-lisp/rx.el (rx-define): Indent as a defun.
      
      * test/lisp/battery-tests.el (battery-linux-proc-apm-regexp): Test
      new battery--linux-proc-apm rx definition.
      (battery-acpi-rate-regexp, battery-acpi-capacity-regexp): New tests.
      23a148c9
    • Basil L. Contovounesios's avatar
      Fix and extend format-spec (bug#41758) · 0185d76e
      Basil L. Contovounesios authored
      * lisp/format-spec.el: Use lexical-binding.  Remove dependence on
      subr-x.el.
      (format-spec-make): Clarify docstring.
      (format-spec--parse-modifiers): Rename to...
      (format-spec--parse-flags): ...this and simplify.  In particular,
      don't bother parsing :space-pad which is redundant and unused.
      (format-spec--pad): Remove, replacing with...
      (format-spec--do-flags): ...this new helper function which performs
      more of format-spec's supported text manipulation.
      (format-spec): Autoload.  Allow optional argument to take on special
      values 'ignore' and 'delete' for more control over what happens when
      a replacement for a format specification isn't provided.  Bring back
      proper support for a precision modifier similar to that of 'format'.
      
      * lisp/battery.el (battery-format): Rewrite in terms of format-spec.
      (battery-echo-area-format, battery-mode-line-format): Mention
      support of format-spec syntax in docstrings.
      
      * doc/lispref/strings.texi (Custom Format Strings):
      * etc/NEWS: Document and announce these changes.
      
      * lisp/dired-aux.el (dired-do-compress-to):
      * lisp/erc/erc-match.el (erc-log-matches):
      * lisp/erc/erc.el (erc-update-mode-line-buffer):
      * lisp/gnus/gnus-sieve.el (gnus-sieve-update):
      * lisp/gnus/gssapi.el (open-gssapi-stream):
      * lisp/gnus/mail-source.el (mail-source-fetch-file)
      (mail-source-fetch-directory, mail-source-fetch-pop)
      (mail-source-fetch-imap):
      * lisp/gnus/message.el (message-insert-formatted-citation-line):
      * lisp/image-dired.el:
      * lisp/net/eww.el:
      * lisp/net/imap.el (imap-kerberos4-open, imap-gssapi-open)
      (imap-shell-open):
      * lisp/net/network-stream.el (network-stream-open-shell):
      * lisp/obsolete/tls.el (open-tls-stream):
      * lisp/textmodes/tex-mode.el:
      Remove extraneous loads and autoloads of format-spec now that it is
      autoloaded and simplify its uses where possible.
      
      * test/lisp/battery-tests.el (battery-format): Test new format-spec
      support.
      * test/lisp/format-spec-tests.el (test-format-spec): Rename to...
      (format-spec) ...this, extending test cases.
      (test-format-unknown): Rename to...
      (format-spec-unknown): ...this, extending test cases.
      (test-format-modifiers): Rename to...
      (format-spec-flags): ...this.
      (format-spec-make, format-spec-parse-flags, format-spec-do-flags)
      (format-spec-do-flags-truncate, format-spec-do-flags-pad)
      (format-spec-do-flags-chop, format-spec-do-flags-case): New tests.
      0185d76e
    • Basil L. Contovounesios's avatar
      Various dbus.el cleanups (bug#41744) · 97d1f672
      Basil L. Contovounesios authored
      * etc/NEWS: Announce removal of aliases obsolete since Emacs 24.3.
      
      * lisp/net/dbus.el: Remove unneeded dependency on cl-lib.el.  Quote
      function symbols as such.
      (dbus-ignore-errors): Don't add macro name to font-lock keywords, as
      emacs-lisp-mode now dynamically fontifies new macro definitions.
      (dbus-event-error-hooks, dbus-call-method-non-blocking): Remove
      aliases obsolete since Emacs 24.3.
      (dbus-register-signal, dbus-escape-as-identifier): Simplify.  Use
      regexp \` and \' in place of ^ and $.
      (dbus--parse-xml-buffer): New function for libxml2 compatibility.
      (dbus-introspect-xml): Use it.
      
      (dbus-string-to-byte-array, dbus-byte-array-to-string)
      (dbus-unescape-from-identifier, dbus-list-known-names)
      (dbus-introspect-get-all-nodes, dbus-get-all-properties)
      (dbus-get-all-managed-objects): Simplify.
      
      (dbus--introspect-names, dbus--introspect-name): New convenience
      functions.
      (dbus-introspect-get-node-names)
      (dbus-introspect-get-interface-names)
      (dbus-introspect-get-interface, dbus-introspect-get-method-names)
      (dbus-introspect-get-method, dbus-introspect-get-signal-names)
      (dbus-introspect-get-signal, dbus-introspect-get-property-names)
      (dbus-introspect-get-property)
      (dbus-introspect-get-annotation-names)
      (dbus-introspect-get-annotation)
      (dbus-introspect-get-argument-names, dbus-introspect-get-argument):
      Use them to DRY.
      
      * test/lisp/net/dbus-tests.el (dbus-test-all): Quote function
      symbols as such.
      97d1f672
  12. 17 Jun, 2020 1 commit
    • Basil L. Contovounesios's avatar
      Fix some Texinfo markup · 229995ba
      Basil L. Contovounesios authored
      * doc/misc/gnus-faq.texi (FAQ 3-11):
      * doc/emacs/frames.texi (Tab Bars): Consistently use @var with
      lower-case metasyntactic variables and @minus instead of a dash.
      (Text-Only Mouse):
      * doc/emacs/files.texi (Auto Revert):
      * doc/emacs/misc.texi (emacsclient Options)
      (Embedded WebKit Widgets):
      * doc/lispref/control.texi (pcase Macro):
      * doc/lispref/debugging.texi (Backtraces):
      * doc/lispref/files.texi (Truenames):
      * doc/lispref/frames.texi (Management Parameters):
      * doc/lispref/os.texi (Time Calculations):
      * doc/lispref/text.texi (Parsing JSON):
      * doc/misc/efaq-w32.texi (Other versions of Emacs, Debugging)
      (Swap Caps NT, Printing, Bash, Developing with Emacs):
      * doc/misc/efaq.texi (New in Emacs 25):
      * doc/misc/emacs-gnutls.texi (Help For Users):
      * doc/misc/message.texi (Using S/MIME, Passphrase caching):
      * test/manual/etags/tex-src/gzip.texi (Overview): Use @. when a
      sentence in the middle of a paragraph ends with an upper-case letter
      as per "(texinfo) Ending a Sentence".
      229995ba
  13. 14 Jun, 2020 3 commits
    • Philipp Stephani's avatar
      Band-aid for edebugging generator bodies (Bug#40434). · e96f78fc
      Philipp Stephani authored
      Edebug doesn't support them well.  Rather than trying to fix Edebug,
      disable instrumentation for now to prevent annoying bugs.
      
      * lisp/emacs-lisp/generator.el (iter-defun, iter-lambda, iter-make)
      (iter-do): Don't attempt to instrument bodies that are mangled by the
      CPS transformer.
      
      * test/lisp/emacs-lisp/generator-tests.el
      (generator-tests-edebug): New regression test.
      e96f78fc
    • Philipp Stephani's avatar
      Ensure that getters and setters can be edebugged at the same time. · 62cf8f16
      Philipp Stephani authored
      It's necessary to add a name suffix to setters defined with
      'gv-define-setter' so that Edebug can distinguish between the getter
      and the setter (Bug#41853).
      
      * lisp/emacs-lisp/gv.el (gv-define-setter): Add a name suffix to
      setter definitions.
      
      * test/lisp/emacs-lisp/gv-tests.el (gv-setter-edebug): New regression
      test.
      62cf8f16
    • Michael Albinus's avatar
      Rearrange detecting remote uid and gid in Tramp · b3e7d046
      Michael Albinus authored
      * 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-rclone.el (tramp-rclone-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
      
      * lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
      Add `file-ownership-preserved-p'.
      (tramp-crypt-add-directory): Check, that NAME is not quoted.
      (tramp-crypt-handle-file-ownership-preserved-p): New defun.
      (tramp-crypt-handle-insert-directory): Fix docstring.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
      (tramp-gvfs-handle-file-readable-p): Call `tramp-get-remote-uid'.
      (tramp-gvfs-handle-get-remote-uid)
      (tramp-gvfs-handle-get-remote-gid): Rename from
      `tramp-gvfs-get-remote-{uid,gid}'.  Do not cache result.
      (tramp-gvfs-maybe-open-connection): No special handling for remote
      uid and gid.
      
      * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
      Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
      (tramp-sh-handle-get-remote-uid, tramp-sh-handle-get-remote-gid):
      Rename from `tramp-get-remote-{uid,gid}'.  Do not cache result.
      (tramp-sh-handle-file-ownership-preserved-p): Distinguish by GROUP
      when caching.
      
      * lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
      Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
      (tramp-sudoedit-handle-get-remote-uid)
      (tramp-sudoedit-handle-get-remote-gid): Rename from
      `tramp-sudoedit-get-remote-{uid,gid}'.  Do not cache result.
      (tramp-sudoedit-handle-set-file-uid-gid)
      (tramp-sudoedit-handle-write-region): Call `tramp-get-remote-uid'
      and `tramp-get-remote-gid'.
      (tramp-sudoedit-maybe-open-connection): No special handling for
      remote uid and gid.
      
      * lisp/net/tramp.el (tramp-file-name-for-operation):
      Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
      (tramp-handle-write-region, tramp-check-cached-permissions):
      Call `tramp-get-remote-uid' and `tramp-get-remote-gid'.
      (tramp-get-remote-uid, tramp-get-remote-gid): New defuns.
      (tramp-local-host-p): Simplify `tramp-get-remote-uid' call.
      
      * test/lisp/net/tramp-tests.el (tramp-test17-dired-with-wildcards)
      Skip if needed.
      b3e7d046
  14. 13 Jun, 2020 2 commits
    • Michael R. Mauger's avatar
      2020-03-29 Michael R. Mauger <michael@mauger.com> · 82a632ed
      Michael R. Mauger authored
             * lisp/progmodes/sql.el (sql-add-product): Re-correct argument
             spec.  Previous change was due to my mistake; I have
             resolved back to the prior behavior (Bug#39960).
             * test/lisp/progmodes/sql-tests.el (sql-test-add-product): Added
             test to insure I don't make the same mistake again.
      82a632ed
    • Glenn Morris's avatar
      Tag a test as unstable · 4823fa10
      Glenn Morris authored
      * test/lisp/calendar/lunar-tests.el (lunar-test-phase-list):
      Mark as unstable.  Eg fails on hydra.nixos.org.
      4823fa10
  15. 12 Jun, 2020 1 commit
    • Michael Albinus's avatar
      Further fixes while testing tramp-crypt · 459bd56f
      Michael Albinus authored
      * doc/misc/tramp.texi (External methods): Remove experimental note
      for rclone.
      (Keeping files encrypted): Mark file encryption as experimental.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      Use `tramp-handle-file-truename'.
      (tramp-adb-handle-file-truename): Remove.
      
      * lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
      Add `file-writable-p'.
      (tramp-crypt-send-command): Return t if no error.
      (tramp-crypt-do-encrypt-or-decrypt-file-name)
      (tramp-crypt-do-encrypt-or-decrypt-file): Raise an error if it fails.
      (tramp-crypt-do-copy-or-rename-file): Flush file properties also
      when copying a directory.
      (tramp-crypt-handle-file-writable-p): New defun.
      (tramp-crypt-handle-insert-directory): Check for library
      `text-property-search'.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-set-file-uid-gid):
      Rename from `tramp-gvfs-set-file-uid-gid'.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
      Use `tramp-handle-file-truename' as fallback.
      
      * lisp/net/tramp.el (tramp-handle-file-truename):
      Let-bind `tramp-crypt-enabled' to nil.
      (tramp-handle-write-region): Set also file ownership.
      
      * test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
      Skip if needed.
      459bd56f
  16. 10 Jun, 2020 3 commits
  17. 09 Jun, 2020 1 commit
    • Michael Albinus's avatar
      Continue implementation of tramp-crypt.el · 4b21759b
      Michael Albinus authored
      * lisp/net/tramp-crypt.el (tramp-crypt-do-encrypt-or-decrypt-file):
      Add leading "/" to infile.
      (tramp-crypt-add-directory): Fix docstring.  Expand NAME.
      (tramp-crypt-remove-directory)
      (tramp-crypt-handle-file-name-all-completions)
      (tramp-crypt-handle-set-file-times): New defuns.
      (tramp-crypt-handle-file-executable-p)
      (tramp-crypt-handle-file-readable-p)
      (tramp-crypt-handle-file-system-info)
      (tramp-crypt-handle-set-file-modes): Fix implementation.
      
      * test/lisp/net/tramp-tests.el: Adapt call convention
      for (tramp--test-crypt-p).
      4b21759b
  18. 08 Jun, 2020 1 commit
    • Michael Albinus's avatar
      Add autoload problem in tramp-crypt.el. · 46304c47
      Michael Albinus authored
      * lisp/net/tramp-crypt.el (tramp-crypt-encfs-config):
      Add ;;;###tramp-autoload cookie.
      (tramp-crypt-directories): Move it up.
      (tramp-crypt-file-name-p): Move it up.  Add ;;;###tramp-autoload
      cookie.  Make it a defsubst.
      
      * test/lisp/net/tramp-tests.el (tramp-crypt): Do not require.
      46304c47
  19. 07 Jun, 2020 2 commits