bug-groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #57218] [PATCH] groff implicitly embeds time zone offset in generat


From: G. Branden Robinson
Subject: [bug #57218] [PATCH] groff implicitly embeds time zone offset in generated files
Date: Sun, 3 Jan 2021 17:49:41 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0

Update of bug #57218 (project groff):

                  Status:               Need Info => Fixed                  
             Open/Closed:                    Open => Closed                 
         Planned Release:                    None => 1.23.0                 

    _______________________________________________________

Follow-up Comment #17:


commit 7cf56b8eea7d66d36f3a8c910e13e3be74e48324
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Sun Jan 3 17:28:01 2021 +1100

    Document use of SOURCE_DATE_EPOCH and TZ.
    
    The semantics of SOURCE_DATE_EPOCH to groff were not established with
    respect to time zone selection, prompting divergent interpretations;
    Debian and distributions derived from it have for several years patched
    groff to implicitly use UTC as the time zone when interpreting the
    current time (or SOURCE_DATE_EPOCH) as a local time.  While a convenient
    and defensible choice for reproducible build efforts[1], it runs against
    the grain of user expectations.  Systems programmers like monotonically
    increasing clocks; the broader user base usually prefers a clock that
    follows an applicable civil calendar.  To the latter audience, a
    difference between
      $ date "+%Y-%M-%d %H:%m:%S"
    and
      $ groff <<EOF
      .af year 0000
      .af mo 00
      .af dy 00
      .af hours 00
      .af minutes 00
      .af seconds 00
      .tm \n[year]-\n[mo]-\n[dy] \n[hours]:\n[minutes]:\n[seconds]
      EOF
    is difficult to explain.
    
    * doc/groff.texi (Environment):
    * src/devices/grohtml/grohtml.1.man (Environment):
    * src/devices/gropdf/gropdf.1.man (Environment):
    * src/devices/grops/grops.1.man (Environment):
    * src/roff/groff/groff.1.man (Environment):
    * src/roff/troff/troff.1.man (Environment): Expand description of use of
      SOURCE_DATE_EPOCH to note that it converts the time (as seconds since
      the Epoch) to local time, which motivates documentation of the TZ
      environment variable.  Explain what the time stamps are used for:
      troff merely stores the human-readable time components in registers;
      the grohtml, gropdf, and grops output drivers write the information to
      the output in comments.
    
    Fixes <https://savannah.gnu.org/bugs/?57218>.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?57218>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]