1. 17 Aug, 2019 8 commits
    • Paul Eggert's avatar
      Update from Gnulib · 9e2ac255
      Paul Eggert authored
      This incorporates:
      2019-08-17 intprops: port to Oracle Developer Studio 12.6
      2019-08-14 intprops: support uchar, ushort _WRAPV dests
      * lib/intprops.h: Copy from Gnulib.
      9e2ac255
    • Eli Zaretskii's avatar
      Improve support of the ancient Egyptian script · c863170f
      Eli Zaretskii authored
      * lisp/international/fontset.el (script-representative-chars)
      (setup-default-fontset): Add Egyptian.  (Bug#15420)
      c863170f
    • Eli Zaretskii's avatar
    • Paul Eggert's avatar
      Have time-add etc. respect CURRENT_TIME_LIST too · 743cc86a
      Paul Eggert authored
      * src/timefns.c (time_arith) [!CURRENT_TIME_LIST]:
      Don’t generate a list, since CURRENT_TIME_LIST is false.
      743cc86a
    • Eli Zaretskii's avatar
      Fix a recent documentation change · 6715e6af
      Eli Zaretskii authored
      * doc/emacs/windows.texi (Other Window): Add a cross-reference
      to "Rebinding".  (Bug#12431)
      6715e6af
    • Paul Eggert's avatar
      More-compatible subsecond calendrical timestamps · 37257d6a
      Paul Eggert authored
      Instead of appending a subseconds member to the result of
      ‘decode-time’, this keeps the format unchanged unless you give
      a new optional argument to ‘decode-time’.  Also, the augmented
      format now puts the subsecond info in the SECONDS element, so
      the total number of elements is unchanged; this is more
      compatible with code that expects the traditional 9 elements,
      such as ‘(pcase decoded-time (`(,SEC ,MIN ,HOUR ,DAY ,MON
      ,YEAR ,DOW ,DST ,ZONE) ...) ...)’.
      * doc/lispref/os.texi, doc/misc/emacs-mime.texi, etc/NEWS:
      * lisp/net/soap-client.el (soap-decode-date-time):
      * lisp/simple.el (decoded-time):
      Document the new behavior.
      * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
      * lisp/calendar/iso8601.el (iso8601-parse)
      (iso8601-parse-time, iso8601-parse-duration)
      (iso8601--decoded-time):
      * lisp/calendar/parse-time.el (parse-time-string):
      * lisp/calendar/time-date.el (decoded-time-add)
      (decoded-time--alter-second):
      * lisp/org/org.el (org-parse-time-string):
      * lisp/simple.el (decoded-time):
      * src/timefns.c (Fdecode_time, Fencode_time):
      * test/lisp/calendar/icalendar-tests.el:
      (icalendar--decode-isodatetime):
      * test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years)
      (test-iso8601-date-dates, test-iso8601-date-obsolete)
      (test-iso8601-date-weeks, test-iso8601-date-ordinals)
      (test-iso8601-time, test-iso8601-combined)
      (test-iso8601-duration, test-iso8601-intervals)
      (standard-test-dates, standard-test-time-of-day-fractions)
      (standard-test-time-of-day-beginning-of-day)
      (standard-test-time-of-day-utc)
      (standard-test-time-of-day-zone)
      (standard-test-date-and-time-of-day, standard-test-interval):
      * test/lisp/calendar/parse-time-tests.el (parse-time-tests):
      * test/src/timefns-tests.el (format-time-string-with-zone)
      (encode-time-dst-numeric-zone):
      Revert recent changes that added a SUBSECS member to
      calendrical timestamps, since that component is no longer
      present (the info, if any, is now in the SECONDS member).
      * lisp/calendar/time-date.el (decoded-time-add)
      (decoded-time--alter-second):
      Support fractional seconds in the new form.  Simplify.
      * src/timefns.c (Fdecode_time): Support new arg FORM.
      (Fencode_time): Support subsecond resolution.
      * test/src/timefns-tests.el (format-time-string-with-zone)
      (decode-then-encode-time): Test subsecond calendrical timestamps.
      37257d6a
    • Paul Eggert's avatar
      Broaden format-seconds to Lisp timestamps · d7c9ed84
      Paul Eggert authored
      * lisp/calendar/time-date.el (format-seconds):
      Accept any Lisp timestamp instead of insisting on a number.
      d7c9ed84
    • Paul Eggert's avatar
      Subtracting “now” from “now” should yield zero · f6dd46cb
      Paul Eggert authored
      * src/timefns.c (time_arith): Arrange for (time-subtract nil
      nil) to yield 0, to be consistent with (time-equal-p nil nil).
      * test/lisp/calendar/time-date-tests.el (test-time-since): New test.
      f6dd46cb
  2. 16 Aug, 2019 14 commits
    • Paul Eggert's avatar
      Fix time-add rounding bug · f9fd12a3
      Paul Eggert authored
      Without this fix, time arithmetic yielded results that were not
      mathematically accurate, even though the exact results were
      representable; for example, (time-add 0 1e-13) yielded a timestamp
      equal to 0 instead of to 1e-13.
      * lisp/timezone.el (timezone-time-from-absolute):
      Let time-add do its thing rather than using floating point
      internally, which has rounding errors.  We now have bignums and so
      don’t need floating point to avoid overflow issues.
      * src/timefns.c (timeform_sub_ps_p): New function.
      (time_arith): If either argument is a float, represent the
      result exactly instead of discarding sub-ps info.
      * test/lisp/timezone-tests.el (timezone-tests-time-from-absolute):
      Don’t assume (HI LO US PS) timestamp format.
      * test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid):
      Don’t assume that time-add discards sub-ns info.
      * test/src/timefns-tests.el (time-rounding-tests):
      Add regression test to detect time-add rounding bug.
      f9fd12a3
    • Lars Ingebrigtsen's avatar
      Mention `next-multiframe-window' when talking about `other-window' · e82923c8
      Lars Ingebrigtsen authored
      * doc/emacs/windows.texi (Other Window): Mention
      the `next-multiframe-window' command here (which is otherwise not
      documented in the manual) (bug#12431).
      e82923c8
    • Lars Ingebrigtsen's avatar
      Add missing skeleton entries in autotype.texi · e90c2176
      Lars Ingebrigtsen authored
      * doc/misc/autotype.texi: Add missing entries found in the doc
      string to `skeleton-insert' (bug#12563).
      e90c2176
    • Alex Branham's avatar
      Make checkdoc check cl-lib function docstrings · 496bab78
      Alex Branham authored
      * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
      Remove calls to delete-region to avoid deleting final " (bug#26328).
      * lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring)
      (checkdoc-defun-info): Include cl-defun, cl-defgeneric,
      cl-defmethod.
      (checkdoc-this-string-valid-engine): Add cl-lib supported
      keywords.
      (checkdoc-defun-info): Ensure function parameters are a
      "flat" list (bug#37034).
      496bab78
    • Alex Branham's avatar
      Avoid deleting closing quotation mark in checkdoc · 91c7c6a6
      Alex Branham authored
      * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
      Remove calls to delete-region to avoid deleting final " (bug#26328).
      91c7c6a6
    • Thomas Fitzsimmons's avatar
      Revert "package.el: Allow Package-Requires to span multiple lines (Bug#36301)" · a9d7ccfa
      Thomas Fitzsimmons authored
      This reverts commit 19c1e4c8.
      
      This commit broke some package tests, reverting for now.
      a9d7ccfa
    • Lars Ingebrigtsen's avatar
      Mention that text properties are removed in substitute-command-keys · 405f851f
      Lars Ingebrigtsen authored
      * src/doc.c (Fsubstitute_command_keys): Restore the bit in the doc
      string that mentions that text properties is removed (bug#17052).
      405f851f
    • Lars Ingebrigtsen's avatar
      Add some examples in "Adding Generalized Variables" · d1d738c8
      Lars Ingebrigtsen authored
      * doc/lispref/variables.texi (Adding Generalized Variables): Add
      examples for `gv-define-expander' and `gv-letplace' (bug#13343).
      d1d738c8
    • Thomas Fitzsimmons's avatar
      package.el: Allow Package-Requires to span multiple lines (Bug#36301) · 19c1e4c8
      Thomas Fitzsimmons authored
      * lisp/emacs-lisp/package.el (lm-header-multiline): Declare
      function.
      (package-buffer-info): Parse Package-Requires with
      lm-header-multiline instead of lm-header.
      (Bug#36301)
      19c1e4c8
    • Thomas Fitzsimmons's avatar
      Do not recreate full URL for proxied HTTPS requests (Bug#35969) · c02f3125
      Thomas Fitzsimmons authored
      * lisp/url/url-http.el (url-http-create-request): Do not recreate
      full URL for proxied HTTPS requests.
      (url-https-proxy-after-change-function): Do not bind
      url-http-proxy to nil before calling url-http-create-request.
      (Bug#35969)
      c02f3125
    • Andreas Merziger's avatar
      Make diary-european-date-forms elements mutually exclusive · 3393364b
      Andreas Merziger authored
      * lisp/calendar/calendar.el (diary-european-date-forms): Make the
      elements mutually exclusive (bug#13536).
      3393364b
    • Lars Ingebrigtsen's avatar
      Fix up previous cl-def* changes in bovine · 1cf489c1
      Lars Ingebrigtsen authored
      * lisp/cedet/semantic/bovine/el.el (lambda): cl-defun* doesn't
      exist (bug#17005).
      (lambda): Add cl-defstruct.
      (semantic-up-context): Add cl- forms.
      1cf489c1
    • Lars Ingebrigtsen's avatar
      Reimplement the `fill-flowed' function to respect space stuffing · ab8a9697
      Lars Ingebrigtsen authored
      * lisp/mail/flow-fill.el (fill-flowed): Reimplement the function
      to respect space-stuffing (bug#17190).
      
      * test/lisp/mail/flow-fill-tests.el
      (fill-flow-tests-fill-flowed-stuffed): New test.
      (fill-flow-tests-fill-flowed-decode): Rename the test so that it
      actually runs.
      ab8a9697
    • Alex Branham's avatar
      Fix eshell-mode-map initialization · 1ee0192b
      Alex Branham authored
      * lisp/eshell/esh-mode.el (eshell-mode-map, eshell-command-map): Set
      up normal keymaps and prefix commands rather than re-initializing them
      in each eshell buffer
      
      * lisp/eshell/em-cmpl.el (eshell-cmpl-mode-map, eshell-cmpl-mode)
      (eshell-cmpl-initialize):
      * lisp/eshell/em-hist.el (eshell-hist-mode-map, eshell-hist-mode)
      (eshell-hist-initialize):
      * lisp/eshell/em-pred.el (eshell-pred-mode-map, eshell-pred-mode)
      (eshell-pred-initialize):
      * lisp/eshell/em-prompt.el (eshell-prompt-mode-map, eshell-prompt-mode)
      (eshell-prompt-initialize):
      * lisp/eshell/em-rebind.el (eshell-rebind-mode-map, eshell-rebind-mode)
      (eshell-rebind-initialize):
      * lisp/eshell/esh-arg.el (eshell-arg-mode-map, eshell-arg-mode)
      (eshell-arg-initialize):
      * lisp/eshell/esh-proc.el (eshell-proc-mode-map, eshell-proc-mode)
      (eshell-proc-initialize):
      * lisp/eshell/esh-var.el (eshell-var-mode-map, eshell-var-mode)
      (eshell-var-initialize): Create a new minor mode with a keymap and
      call it in the module initialization function.
      
      bug#33808
      bug#22792
      1ee0192b
  3. 15 Aug, 2019 18 commits