Files
emacs/doc/misc
Paul Eggert 93fe420942 New (TICKS . HZ) timestamp format
This follows on a suggestion by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00991.html
(Bug#32902).
* doc/lispref/buffers.texi (Modification Time):
* doc/lispref/os.texi (Processor Run Time, Time Calculations)
* doc/lispref/processes.texi (System Processes):
* doc/lispref/text.texi (Undo):
Let the "Time of Day" section cover timestamp format details.
* doc/lispref/os.texi (Time of Day):
Say that timestamp internal format should not be assumed.
Document new (ticks . hz) format.  Omit mention of seconds-to-time
since it is now just an alias for encode-time.
(Time Conversion): Document encode-time extension.
* etc/NEWS: Mention changes.
* lisp/calendar/cal-dst.el (calendar-system-time-basis): Now const.
* lisp/calendar/cal-dst.el (calendar-absolute-from-time)
(calendar-time-from-absolute)
(calendar-next-time-zone-transition):
* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
Simplify by using bignums, (TICKS . HZ), and new encode-time.
* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
Simplify by using bignums and new encode-time.
* lisp/calendar/parse-time.el (parse-iso8601-time-string):
Handle DST more accurately, by using new encode-time.
* lisp/calendar/time-date.el (seconds-to-time):
* lisp/calendar/timeclock.el (timeclock-seconds-to-time):
Now just an alias for encode-time.
* lisp/calendar/time-date.el (days-to-time):
* lisp/emacs-lisp/timer.el (timer--time-setter):
* lisp/net/ntlm.el (ntlm-compute-timestamp):
* lisp/obsolete/vc-arch.el (vc-arch-add-tagline):
* lisp/org/org-id.el (org-id-uuid, org-id-time-to-b36):
* lisp/tar-mode (tar-octal-time):
Don't assume timestamps default to list form.
* lisp/tar-mode.el (tar-parse-octal-long-integer):
Now an obsolete alias for tar-parse-octal-integer.
* src/keyboard.c (decode_timer): Adjust to changes to
time decoding functions elsewhere.
* src/timefns.c: Include bignum.h, limits.h.
(FASTER_TIMEFNS): New macro.
(WARN_OBSOLETE_TIMESTAMPS, CURRENT_TIME_LIST)
(timespec_hz, trillion, ztrillion):
New constants.
(make_timeval): Use TIME_T_MAX instead of its definiens.
(check_time_validity, time_add, time_subtract):
Remove.  All uses removed.
(disassemble_lisp_time): Remove; old code now folded into
decode_lisp_time.  All callers changed.
(invalid_hz, s_ns_to_double, ticks_hz_list4, mpz_set_time)
(timespec_mpz, timespec_ticks, time_hz_ticks)
(lisp_time_hz_ticks, lisp_time_seconds)
(time_form_stamp, lisp_time_form_stamp, decode_ticks_hz)
(decode_lisp_time, mpz_time, list4_to_timespec):
New functions.
(decode_float_time, decode_time_components, lisp_to_timespec):
Adjust to new struct lisp_time, which does not lose
information like the old one did.
(enum timeform): New enum.
(decode_time_components): New arg FORM.  All callers changed.
RESULT and DRESULT are now mutually exclusive; no callers need
to change because of this.
(decode_time_components, lisp_time_struct)
(lisp_seconds_argument, time_arith, make_lisp_time, Ffloat_time)
(Fencode_time):
Add support for (TICKS . HZ) form.
(DECODE_SECS_ONLY): New constant.
(lisp_time_struct): 2nd arg is now enum timeform, not int.
All callers changed.
(check_tm_member): Support bignums.m
(Fencode_time): Add new two-arg functionality.
* src/systime.h (struct lisp_time): Now ticks+hz rather than
hi+lo+us+ps, since ticks+hz does not lose info.
* test/src/systime-tests.el (time-equal-p-nil-nil):
New test.
2018-10-06 23:31:04 -07:00
..
2018-01-01 01:02:09 -08:00
2018-09-28 07:54:24 -07:00
2018-03-04 17:10:34 -08:00
2018-01-01 00:57:59 -08:00
2018-08-21 13:44:32 -07:00
2018-03-01 09:25:55 +01:00
2018-09-20 07:50:34 -07:00
2018-02-28 09:40:40 -08:00
2018-04-19 12:21:06 +03:00
2018-02-26 13:53:37 +01:00
2018-09-15 09:20:32 -07:00
2018-02-24 20:52:21 +01:00
2018-01-01 01:02:09 -08:00
2018-02-25 16:29:39 +01:00
2018-02-26 13:53:37 +01:00
2018-09-28 07:54:24 -07:00
2018-01-01 01:02:09 -08:00
2018-01-01 01:02:09 -08:00
2018-01-01 01:02:09 -08:00
2018-09-28 07:54:24 -07:00
2018-03-13 14:47:41 -04:00
2018-02-26 13:53:37 +01:00
2018-04-19 12:21:06 +03:00
2018-01-01 01:02:09 -08:00
2018-01-01 01:02:09 -08:00
2018-10-03 09:25:26 -07:00
2018-01-01 01:02:09 -08:00
2018-09-27 18:48:06 +03:00
2018-01-01 01:02:09 -08:00
2018-01-01 01:02:09 -08:00
2018-04-19 12:21:06 +03:00
2018-02-24 20:52:21 +01:00
2018-02-21 20:13:01 +01:00
2018-02-26 13:53:37 +01:00
2018-09-27 18:48:06 +03:00
2018-09-27 18:48:06 +03:00
2018-06-29 17:32:35 -07:00
2018-01-01 00:57:59 -08:00
2018-10-04 09:46:14 +02:00
2018-09-28 07:54:24 -07:00
2018-09-27 18:48:06 +03:00
2018-04-19 12:21:06 +03:00
2018-01-01 01:02:09 -08:00