On Tue, Oct 31, 2017 at 11:52 AM, Nicolas Goaziou <m...@nicolasgoaziou.fr> wrote: > Allen Li <vianchielfa...@gmail.com> writes: > >> Can you clarify on the issues the UTC timezone fixes? > > At the moment, I can only give you a pointer, which is commit > 97a1a498956da2e1961df5a0506df4cbb98fff52. Some other commits followed > this one in maint and master. > > You may want to check the ML for the initial bug report.
Bisecting on maint shows that this regression happened at cc5a9bf538a4a7eb1b84d368336c46cead106e01 I tested using this command: find . -name "*.elc" -delete; emacs -Q --batch --eval "(add-to-list 'load-path default-directory)" --eval "(require 'org)" --eval "(princ (current-time-string (org-2ft \"<2017-10-31>\")))" I guess the relevant bug is http://lists.gnu.org/archive/html/emacs-orgmode/2017-07/msg00097.html, but oddly enough, I cannot reproduce that bug at cc5a9bf538a4a7eb1b84d368336c46cead106e01~1 >From what I can glean from the history, 112c5ba479d52c3c36de5c7aafd14ab6bc075005 is where things started to go wrong. UTC timezone was added to tests. From there, a number of commits were added to fix regressions. The problem is that the tests were made to assume UTC timezone and Org mode was changed to also use UTC timezone to make the tests pass; however, this means that org.el no longer works for non-UTC time zones. That commit's message (112c5ba479d52c3c36de5c7aafd14ab6bc075005) also seems suspect. It claims to be removing DST offset by enforcing UTC. That could only be true for people using GMT. In GMT during DST, enforcing UTC would "remove" the DST offset, but that is not true anywhere else. Given my chain of reasoning, the commits following 112c5ba479d52c3c36de5c7aafd14ab6bc075005 to fix "regressions" is really just converting all of Org mode's timestamps to use the "timezone adjusted" Unix timestamps introduced by 112c5ba479d52c3c36de5c7aafd14ab6bc075005