head 1.1; branch 1.1.1; access; symbols netbsd-11-0-RC4:1.1.1.14.4.1 TZDATA2026BGTZ:1.1.1.15 netbsd-11-0-RC3:1.1.1.14.4.1 TZDATA2026AGTZ:1.1.1.15 netbsd-11-0-RC2:1.1.1.14 netbsd-11-0-RC1:1.1.1.14 TZDATA2025CGTZ:1.1.1.15 perseant-exfatfs-base-20250801:1.1.1.14 netbsd-11:1.1.1.14.0.4 netbsd-11-base:1.1.1.14 TZDATA2025BGTZ:1.1.1.14 TZDATA2025AGTZ:1.1.1.14 TZDATA2025A:1.1.1.14 netbsd-10-1-RELEASE:1.1.1.12.6.2 TZDATA2024BGTZ:1.1.1.14 perseant-exfatfs-base-20240630:1.1.1.14 perseant-exfatfs:1.1.1.14.0.2 perseant-exfatfs-base:1.1.1.14 netbsd-8-3-RELEASE:1.1.1.5.8.7 netbsd-9-4-RELEASE:1.1.1.8.2.6 netbsd-10-0-RELEASE:1.1.1.12.6.2 netbsd-10-0-RC6:1.1.1.12.6.2 netbsd-10-0-RC5:1.1.1.12.6.2 netbsd-10-0-RC4:1.1.1.12.6.2 TZDATA2024AGTZ:1.1.1.14 netbsd-10-0-RC3:1.1.1.12.6.1 netbsd-10-0-RC2:1.1.1.12.6.1 TZDATA2023DGTZ:1.1.1.13 netbsd-10-0-RC1:1.1.1.12.6.1 TZDATA2023CGTZ:1.1.1.13 TZDATA2023BGTZ:1.1.1.13 TZDATA2023AGTZ:1.1.1.13 netbsd-10:1.1.1.12.0.6 netbsd-10-base:1.1.1.12 TZDATA2022GGTZ:1.1.1.12 TZDATA2022FGTZ:1.1.1.12 TZDATA2022EGTZ:1.1.1.12 TZDATA2022DGTZ:1.1.1.12 TZDATA2022CGTZ:1.1.1.12 netbsd-9-3-RELEASE:1.1.1.8.2.4 TZDATA2022AGTZ:1.1.1.12 cjep_sun2x-base1:1.1.1.12 cjep_sun2x:1.1.1.12.0.4 cjep_sun2x-base:1.1.1.12 cjep_staticlib_x-base1:1.1.1.12 netbsd-9-2-RELEASE:1.1.1.8.2.4 cjep_staticlib_x:1.1.1.12.0.2 cjep_staticlib_x-base:1.1.1.12 TZDATA2021A:1.1.1.12 TZDATA2020F:1.1.1.12 TZDATA2020D:1.1.1.11 TZDATA2020C:1.1.1.11 netbsd-9-1-RELEASE:1.1.1.8.2.3 TZDATA2020B:1.1.1.11 TZDATA2020A:1.1.1.10 phil-wifi-20200421:1.1.1.9 phil-wifi-20200411:1.1.1.9 is-mlppp:1.1.1.9.0.2 is-mlppp-base:1.1.1.9 phil-wifi-20200406:1.1.1.9 netbsd-8-2-RELEASE:1.1.1.5.8.3 netbsd-9-0-RELEASE:1.1.1.8.2.1 netbsd-9-0-RC2:1.1.1.8.2.1 netbsd-9-0-RC1:1.1.1.8.2.1 phil-wifi-20191119:1.1.1.9 TZDATA2019C:1.1.1.9 netbsd-9:1.1.1.8.0.2 netbsd-9-base:1.1.1.8 phil-wifi-20190609:1.1.1.8 netbsd-8-1-RELEASE:1.1.1.5.8.3 netbsd-8-1-RC1:1.1.1.5.8.3 TZDATA2019A:1.1.1.8 pgoyette-compat-merge-20190127:1.1.1.6.2.2 pgoyette-compat-20190127:1.1.1.8 pgoyette-compat-20190118:1.1.1.8 TZDATA2018I:1.1.1.8 TZDATA2018H:1.1.1.8 pgoyette-compat-1226:1.1.1.7 pgoyette-compat-1126:1.1.1.7 TZDATA2018G:1.1.1.7 pgoyette-compat-1020:1.1.1.7 TZDATA2018F:1.1.1.7 pgoyette-compat-0930:1.1.1.6 pgoyette-compat-0906:1.1.1.6 netbsd-7-2-RELEASE:1.1.1.1.4.5 pgoyette-compat-0728:1.1.1.6 netbsd-8-0-RELEASE:1.1.1.5.8.1 phil-wifi:1.1.1.6.0.4 phil-wifi-base:1.1.1.6 pgoyette-compat-0625:1.1.1.6 netbsd-8-0-RC2:1.1.1.5.8.1 pgoyette-compat-0521:1.1.1.6 TZDATA2018E:1.1.1.6 pgoyette-compat-0502:1.1.1.6 pgoyette-compat-0422:1.1.1.6 netbsd-8-0-RC1:1.1.1.5.8.1 pgoyette-compat-0415:1.1.1.6 pgoyette-compat-0407:1.1.1.6 pgoyette-compat-0330:1.1.1.6 TZDATA2018D:1.1.1.6 pgoyette-compat-0322:1.1.1.6 pgoyette-compat-0315:1.1.1.6 netbsd-7-1-2-RELEASE:1.1.1.1.4.4.4.1 pgoyette-compat:1.1.1.6.0.2 pgoyette-compat-base:1.1.1.6 TZDATA2018C:1.1.1.6 netbsd-7-1-1-RELEASE:1.1.1.1.4.4.4.1 matt-nb8-mediatek:1.1.1.5.8.1.0.2 matt-nb8-mediatek-base:1.1.1.5.8.1 TZDATA2017C:1.1.1.6 perseant-stdc-iso10646:1.1.1.5.0.10 perseant-stdc-iso10646-base:1.1.1.5 netbsd-8:1.1.1.5.0.8 netbsd-8-base:1.1.1.5 prg-localcount2-base3:1.1.1.5 prg-localcount2-base2:1.1.1.5 prg-localcount2-base1:1.1.1.5 prg-localcount2:1.1.1.5.0.6 prg-localcount2-base:1.1.1.5 pgoyette-localcount-20170426:1.1.1.5 bouyer-socketcan-base1:1.1.1.5 TZDATA2017B:1.1.1.5 pgoyette-localcount-20170320:1.1.1.5 netbsd-7-1:1.1.1.1.4.4.0.4 netbsd-7-1-RELEASE:1.1.1.1.4.4 TZDATA2017A:1.1.1.5 netbsd-7-1-RC2:1.1.1.1.4.4 netbsd-7-nhusb-base-20170116:1.1.1.1.4.4 bouyer-socketcan:1.1.1.5.0.4 bouyer-socketcan-base:1.1.1.5 pgoyette-localcount-20170107:1.1.1.5 netbsd-7-1-RC1:1.1.1.1.4.4 TZDATA2016J:1.1.1.5 pgoyette-localcount-20161104:1.1.1.5 TZDATA2016I:1.1.1.5 netbsd-7-0-2-RELEASE:1.1.1.1.4.3.2.1 TZDATA2016H:1.1.1.5 TZDATA2016G:1.1.1.5 localcount-20160914:1.1.1.5 netbsd-7-nhusb:1.1.1.1.4.4.0.2 netbsd-7-nhusb-base:1.1.1.1.4.4 TZDATA2016F:1.1.1.5 pgoyette-localcount-20160806:1.1.1.5 pgoyette-localcount-20160726:1.1.1.5 pgoyette-localcount:1.1.1.5.0.2 pgoyette-localcount-base:1.1.1.5 TZDATA2016D:1.1.1.5 netbsd-7-0-1-RELEASE:1.1.1.1.4.3.2.1 TZDATA2016B:1.1.1.5 netbsd-7-0:1.1.1.1.4.3.0.2 netbsd-7-0-RELEASE:1.1.1.1.4.3 TZDATA2015F:1.1.1.4 netbsd-7-0-RC3:1.1.1.1.4.3 netbsd-7-0-RC2:1.1.1.1.4.3 TZDATA2015E:1.1.1.4 netbsd-7-0-RC1:1.1.1.1.4.3 TZDATA2015B:1.1.1.4 TZDATA2015A:1.1.1.4 TZDATA2014J:1.1.1.3 TZDATA2014I:1.1.1.2 TZDATA2014H:1.1.1.2 TZDATA2014G:1.1.1.2 tls-maxphys-base:1.1.1.1 tls-maxphys:1.1.1.1.0.6 netbsd-7:1.1.1.1.0.4 netbsd-7-base:1.1.1.1 tls-earlyentropy:1.1.1.1.0.2 tls-earlyentropy-base:1.1.1.1 TZDATA2014F:1.1.1.1 TZDATA:1.1.1; locks; strict; comment @# @; 1.1 date 2014.08.08.08.56.50; author apb; state Exp; branches 1.1.1.1; next ; commitid iGXhXh3Wpi6OlxLx; 1.1.1.1 date 2014.08.08.08.56.50; author apb; state Exp; branches 1.1.1.1.2.1 1.1.1.1.4.1 1.1.1.1.6.1; next 1.1.1.2; commitid iGXhXh3Wpi6OlxLx; 1.1.1.2 date 2014.08.31.06.46.24; author apb; state Exp; branches; next 1.1.1.3; commitid 97niuh41EisdTtOx; 1.1.1.3 date 2014.11.16.07.08.12; author apb; state Exp; branches; next 1.1.1.4; commitid 3SkT3wPXTpSexnYx; 1.1.1.4 date 2015.01.31.18.23.15; author apb; state Exp; branches; next 1.1.1.5; commitid bjXoHWtuRrKnPc8y; 1.1.1.5 date 2016.03.15.17.10.28; author christos; state Exp; branches 1.1.1.5.8.1; next 1.1.1.6; commitid LgY9iK53zwvbgLYy; 1.1.1.6 date 2017.10.24.01.27.51; author kre; state Exp; branches 1.1.1.6.2.1 1.1.1.6.4.1; next 1.1.1.7; commitid mbHKYe3Y2Ihs9fcA; 1.1.1.7 date 2018.10.19.04.31.48; author kre; state Exp; branches; next 1.1.1.8; commitid iPAtPIMEH88HBwWA; 1.1.1.8 date 2018.12.30.00.40.52; author kre; state Exp; branches 1.1.1.8.2.1; next 1.1.1.9; commitid 2NsExeiOIm301L5B; 1.1.1.9 date 2019.10.08.02.44.05; author kre; state Exp; branches; next 1.1.1.10; commitid 1AlmCKr6wQbiD0GB; 1.1.1.10 date 2020.04.25.12.17.00; author kre; state Exp; branches; next 1.1.1.11; commitid ABpciWj76gKinL5C; 1.1.1.11 date 2020.10.08.04.27.35; author kre; state Exp; branches; next 1.1.1.12; commitid tv1N52yw9rdnr3rC; 1.1.1.12 date 2020.12.31.07.50.14; author kre; state Exp; branches 1.1.1.12.6.1; next 1.1.1.13; commitid ZiQZHrT9SnNrRRBC; 1.1.1.13 date 2023.03.23.16.31.21; author kre; state Exp; branches; next 1.1.1.14; commitid Wi2azCEtD4c2EgiE; 1.1.1.14 date 2024.02.05.21.34.46; author kre; state Exp; branches 1.1.1.14.4.1; next 1.1.1.15; commitid Ig2l9D6xJLMl4iXE; 1.1.1.15 date 2025.12.19.00.58.42; author kre; state Exp; branches; next ; commitid VAKtOMN53YKehXmG; 1.1.1.1.2.1 date 2014.08.08.08.56.50; author tls; state dead; branches; next 1.1.1.1.2.2; commitid igbBQGexpTfGAMLx; 1.1.1.1.2.2 date 2014.08.10.06.51.01; author tls; state Exp; branches; next ; commitid igbBQGexpTfGAMLx; 1.1.1.1.4.1 date 2014.09.21.18.50.41; author snj; state Exp; branches; next 1.1.1.1.4.2; commitid VVDYrvzaZp7ccfRx; 1.1.1.1.4.2 date 2014.11.18.18.32.29; author snj; state Exp; branches; next 1.1.1.1.4.3; commitid 9Tbhffn21gxrfHYx; 1.1.1.1.4.3 date 2015.03.25.17.09.59; author snj; state Exp; branches 1.1.1.1.4.3.2.1; next 1.1.1.1.4.4; commitid Wjq3hLIIKowiH0fy; 1.1.1.1.4.4 date 2016.04.11.09.59.00; author snj; state Exp; branches 1.1.1.1.4.4.4.1; next 1.1.1.1.4.5; commitid t5XKjevTgDnb1c2z; 1.1.1.1.4.5 date 2017.11.05.20.42.18; author snj; state Exp; branches; next 1.1.1.1.4.6; commitid lUyNKQaJmTIaaTdA; 1.1.1.1.4.6 date 2018.10.30.19.29.39; author martin; state Exp; branches; next 1.1.1.1.4.7; commitid ezVFlUIpUFyOd1YA; 1.1.1.1.4.7 date 2019.01.07.14.00.31; author martin; state Exp; branches; next ; commitid N8FDNZdjMEmmbR6B; 1.1.1.1.4.3.2.1 date 2016.04.11.09.59.57; author snj; state Exp; branches; next 1.1.1.1.4.3.2.2; commitid TSwDz64NMxnG1c2z; 1.1.1.1.4.3.2.2 date 2017.11.05.20.44.41; author snj; state Exp; branches; next 1.1.1.1.4.3.2.3; commitid CwYTRqFsgKE0bTdA; 1.1.1.1.4.3.2.3 date 2018.10.30.19.36.52; author martin; state Exp; branches; next 1.1.1.1.4.3.2.4; commitid jr5eATXwdQGhg1YA; 1.1.1.1.4.3.2.4 date 2019.01.07.14.04.55; author martin; state Exp; branches; next ; commitid hXICEH5aawLUcR6B; 1.1.1.1.4.4.4.1 date 2017.11.05.20.43.37; author snj; state Exp; branches; next 1.1.1.1.4.4.4.2; commitid 4GjqsuHWRN3DaTdA; 1.1.1.1.4.4.4.2 date 2018.10.30.19.31.48; author martin; state Exp; branches; next 1.1.1.1.4.4.4.3; commitid umzgDrJ1I3mze1YA; 1.1.1.1.4.4.4.3 date 2019.01.07.14.03.21; author martin; state Exp; branches; next ; commitid fL1PAPiDXb9mcR6B; 1.1.1.1.6.1 date 2014.08.08.08.56.50; author tls; state dead; branches; next 1.1.1.1.6.2; commitid jTnpym9Qu0o4R1Nx; 1.1.1.1.6.2 date 2014.08.20.00.00.21; author tls; state Exp; branches; next ; commitid jTnpym9Qu0o4R1Nx; 1.1.1.5.8.1 date 2017.11.02.21.02.06; author snj; state Exp; branches; next 1.1.1.5.8.2; commitid FmNdBv7Bu0C8mvdA; 1.1.1.5.8.2 date 2018.10.21.12.10.23; author martin; state Exp; branches; next 1.1.1.5.8.3; commitid Npq23L3YyCtN4PWA; 1.1.1.5.8.3 date 2019.01.02.15.48.01; author martin; state Exp; branches; next 1.1.1.5.8.4; commitid wMtLNC4aT7jwUd6B; 1.1.1.5.8.4 date 2020.12.07.19.52.53; author martin; state Exp; branches; next 1.1.1.5.8.5; commitid CQwaCiST8CPxCQyC; 1.1.1.5.8.5 date 2021.04.30.14.26.39; author martin; state Exp; branches; next 1.1.1.5.8.6; commitid pZkzbpzoDpNRbkRC; 1.1.1.5.8.6 date 2023.12.30.19.00.33; author martin; state Exp; branches; next 1.1.1.5.8.7; commitid QBjvTBDay8GbpwSE; 1.1.1.5.8.7 date 2024.02.17.15.55.09; author martin; state Exp; branches; next ; commitid UCxcewhi2jVCNNYE; 1.1.1.6.2.1 date 2018.10.20.06.58.21; author pgoyette; state Exp; branches; next 1.1.1.6.2.2; commitid mTSoqZEZ4arHnFWA; 1.1.1.6.2.2 date 2019.01.18.08.50.09; author pgoyette; state Exp; branches; next ; commitid Lmlzg3OVT2cd6f8B; 1.1.1.6.4.1 date 2019.06.10.22.05.05; author christos; state Exp; branches; next 1.1.1.6.4.2; commitid jtc8rnCzWiEEHGqB; 1.1.1.6.4.2 date 2020.04.13.08.03.06; author martin; state Exp; branches; next ; commitid X01YhRUPVUDaec4C; 1.1.1.8.2.1 date 2019.11.24.08.30.28; author martin; state Exp; branches; next 1.1.1.8.2.2; commitid 8LxyeqV11U4P15MB; 1.1.1.8.2.2 date 2020.06.07.13.15.06; author martin; state Exp; branches; next 1.1.1.8.2.3; commitid 0KB7pZxieJ8LiibC; 1.1.1.8.2.3 date 2020.10.11.11.26.25; author martin; state Exp; branches; next 1.1.1.8.2.4; commitid PwOzakCxTuLGEtrC; 1.1.1.8.2.4 date 2021.04.06.18.01.21; author martin; state Exp; branches; next 1.1.1.8.2.5; commitid FREP6fQiFE5c9gOC; 1.1.1.8.2.5 date 2023.12.30.18.35.32; author martin; state Exp; branches; next 1.1.1.8.2.6; commitid vv46SLJIoTsCgwSE; 1.1.1.8.2.6 date 2024.02.17.11.32.20; author martin; state Exp; branches; next ; commitid friNK1b3ratclMYE; 1.1.1.12.6.1 date 2023.04.25.15.58.37; author martin; state Exp; branches; next 1.1.1.12.6.2; commitid AZ8cpWX7dh1BovmE; 1.1.1.12.6.2 date 2024.02.06.12.22.42; author martin; state Exp; branches; next ; commitid pTARKyvqsnBQYmXE; 1.1.1.14.4.1 date 2026.04.02.16.33.43; author martin; state Exp; branches; next ; commitid aup4agd012686pAG; desc @@ 1.1 log @Initial revision @ text @# Generate the 'leapseconds' file from 'leap-seconds.list'. # This file is in the public domain. BEGIN { print "# Allowance for leapseconds added to each timezone file." print "" print "# This file is in the public domain." print "" print "# This file is generated automatically from the data in the public-domain" print "# leap-seconds.list file available from most NIST time servers." print "# If the URL does not work," print "# you should be able to pick up leap-seconds.list from a secondary NIST server." print "# For more about leap-seconds.list, please see" print "# The NTP Timescale and Leap Seconds" print "# ." print "" print "# The International Earth Rotation Service periodically uses leap seconds" print "# to keep UTC to within 0.9 s of UT1" print "# (which measures the true angular orientation of the earth in space); see" print "# Terry J Quinn, The BIPM and the accurate measure of time," print "# Proc IEEE 79, 7 (July 1991), 894-905 ." print "# There were no leap seconds before 1972, because the official mechanism" print "# accounting for the discrepancy between atomic time and the earth's rotation" print "# did not exist until the early 1970s." print "" print "# The correction (+ or -) is made at the given time, so lines" print "# will typically look like:" print "# Leap YEAR MON DAY 23:59:60 + R/S" print "# or" print "# Leap YEAR MON DAY 23:59:59 - R/S" print "" print "# If the leapsecond is Rolling (R) the given time is local time." print "# If the leapsecond is Stationary (S) the given time is UTC." print "" print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S" } /^ *$/ { next } /^#/ { next } { NTP_timestamp = $1 TAI_minus_UTC = $2 hash_mark = $3 one = $4 month = $5 year = $6 if (old_TAI_minus_UTC) { if (old_TAI_minus_UTC < TAI_minus_UTC) { sign = "23:59:60\t+" } else { sign = "23:59:59\t-" } if (month == "Jan") { year--; month = "Dec"; day = 31 } else if (month == "Jul") { month = "Jun"; day = 30 } printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign } old_TAI_minus_UTC = TAI_minus_UTC } @ 1.1.1.1 log @Import tzdata2014f from ftp://ftp.iana.org/tz/releases/tzdata2014f.tar.gz and NEWS file from https://github.com/eggert/tz/raw/2014f/NEWS. NetBSD's tzdata code is being moved from src/share/zoneinfo to src/external/public-domain/tz/dist, to simplify future maintenance. This is the same version of tzata that was previously imported to src/share/zoneinfo. The NEWS file has been added to the import, although it is not distributed in the tzdata2014f.tar.gz file. @ text @@ 1.1.1.1.4.1 log @Pull up following revision(s) (requested by apb in ticket #107): doc/3RDPARTY: patch external/public-domain/tz/tzdata2netbsd: patch external/public-domain/tz/dist/CONTRIBUTING: patch external/public-domain/tz/dist/Makefile: patch external/public-domain/tz/dist/NEWS: patch external/public-domain/tz/dist/README: patch external/public-domain/tz/dist/Theory: patch external/public-domain/tz/dist/africa: patch external/public-domain/tz/dist/antarctica: patch external/public-domain/tz/dist/asia: patch external/public-domain/tz/dist/australasia: patch external/public-domain/tz/dist/backward: patch external/public-domain/tz/dist/backzone: patch external/public-domain/tz/dist/checktab.awk: patch external/public-domain/tz/dist/europe: patch external/public-domain/tz/dist/leapseconds: patch external/public-domain/tz/dist/leapseconds.awk: patch external/public-domain/tz/dist/northamerica: patch external/public-domain/tz/dist/southamerica: patch external/public-domain/tz/dist/zone.tab: patch external/public-domain/tz/dist/zone1970.tab: patch external/public-domain/tz/dist/zoneinfo2tdf.pl: patch Import tzdata2014g from ftp://ftp.iana.org/tz/releases/tzdata2014g.tar.gz This includes changes for Turks & Caicos that will take effect on 2014-11-02, changes that affect times in the past, and some re-organisation of the source files. See src/external/public-domain/tz/dist/NEWS for more details. @ text @d6 1 a6 1 print "# Allowance for leap seconds added to each time zone file." d16 1 a16 1 print "# http://www.eecis.udel.edu/~mills/leap.html" @ 1.1.1.1.4.2 log @Apply patch (requested by apb in ticket #245): Update tzdata from 2014g to 2014j. Some of the changes are: * A new Zone Pacific/Bougainville, for the part of Papua New Guinea that plans to switch from UTC+10 to UTC+11 on 2014-12-28 at 02:00. * Changes for Fiji, Belarus, and Turks & Caicos that take effect at various times in 2014. * Changes to historical data. @ text @d18 2 a19 2 print "# The International Earth Rotation and Reference Systems Service" print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1" @ 1.1.1.1.4.3 log @Pull up following revision(s) (requested by apb in ticket #638): doc/3RDPARTY: patch external/public-domain/tz/dist/Makefile: up to revision 1.1.1.7 external/public-domain/tz/dist/NEWS: up to revision 1.1.1.7 external/public-domain/tz/dist/Theory: up to revision 1.1.1.3 external/public-domain/tz/dist/antarctica: up to revision 1.1.1.3 external/public-domain/tz/dist/asia: up to revision 1.1.1.7 external/public-domain/tz/dist/australasia: up to revision 1.1.1.5 external/public-domain/tz/dist/backward: up to revision 1.1.1.3 external/public-domain/tz/dist/backzone: up to revision 1.1.1.6 external/public-domain/tz/dist/checklinks.awk: up to revision 1.1.1.1 external/public-domain/tz/dist/checktab.awk: up to revision 1.1.1.6 external/public-domain/tz/dist/europe: up to revision 1.1.1.7 external/public-domain/tz/dist/leap-seconds.list: up to revision 1.1.1.3 external/public-domain/tz/dist/leapseconds: up to revision 1.1.1.4 external/public-domain/tz/dist/leapseconds.awk: up to revision 1.1.1.4 external/public-domain/tz/dist/northamerica: up to revision 1.1.1.7 external/public-domain/tz/dist/southamerica: up to revision 1.1.1.5 external/public-domain/tz/dist/zone.tab: up to revision 1.1.1.4 external/public-domain/tz/dist/zone1970.tab: up to revision 1.1.1.5 Update tzdata from 2014j to 2015b. Some of the changes are: * Mongolia will start observing DST in 2015. * Changes to Palestine DST dates in 2014 and 2015. * The Mexican state of Quintana Roo, represented by America/Cancun, changed time zone in Feb 2015. * Chile's new standard time from 2015 will be its old DST. * New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49. * Corrections to historic times in Iceland and Easter Island. * Some more zones have been turned into links, when they differed from existing zones only for times before 1970. @ text @a39 5 /^#\tUpdated through/ || /^#\tFile expires on:/ { last_lines = last_lines $0 "\n" } a66 4 END { printf "\n%s", last_lines } @ 1.1.1.1.4.3.2.1 log @Pull up following revision(s) (requested by christos in ticket #1143): external/public-domain/tz/dist/CONTRIBUTING: up to 1.1.1.2 external/public-domain/tz/dist/LICENSE: up to 1.1.1.1 external/public-domain/tz/dist/Makefile: up to 1.1.1.10 external/public-domain/tz/dist/NEWS: up to 1.1.1.10 external/public-domain/tz/dist/README: up to 1.1.1.3 external/public-domain/tz/dist/Theory: up to 1.1.1.5 external/public-domain/tz/dist/asia: up to 1.1.1.9 external/public-domain/tz/dist/australasia: up to 1.1.1.6 external/public-domain/tz/dist/backward: up to 1.1.1.5 external/public-domain/tz/dist/backzone: up to 1.1.1.8 external/public-domain/tz/dist/checklinks.awk: up to 1.1.1.2 external/public-domain/tz/dist/checktab.awk: up to 1.1.1.8 external/public-domain/tz/dist/europe: up to 1.1.1.10 external/public-domain/tz/dist/iso3166.tab: up to 1.1.1.3 external/public-domain/tz/dist/leap-seconds.list: up to 1.1.1.5 external/public-domain/tz/dist/leapseconds.awk: up to 1.1.1.5 external/public-domain/tz/dist/leapseconds: up to 1.1.1.6 external/public-domain/tz/dist/northamerica: up to 1.1.1.10 external/public-domain/tz/dist/zone.tab: up to 1.1.1.6 external/public-domain/tz/dist/zone1970.tab: up to 1.1.1.8 external/public-domain/tz/tzdata2netbsd: up to 1.8 Update tzdata to 2016b. @ text @a13 1 print "# See for a list of secondary servers." @ 1.1.1.1.4.3.2.2 log @Pull up following revision(s) (requested by kre in ticket #1519): distrib/sets/lists/base/mi: 1.1164 doc/3RDPARTY: 1.2326 via patch external/public-domain/tz/dist/CONTRIBUTING: up to 1.1.1.4 external/public-domain/tz/dist/LICENSE: up to 1.1.1.3 external/public-domain/tz/dist/Makefile: up to 1.1.1.18 external/public-domain/tz/dist/NEWS: up to 1.1.1.19 external/public-domain/tz/dist/TZDATA_VERSION: up to 1.9 external/public-domain/tz/dist/Theory: delete external/public-domain/tz/dist/africa: up to 1.1.1.12 external/public-domain/tz/dist/antarctica: up to 1.1.1.9 external/public-domain/tz/dist/asia: up to 1.1.1.17 external/public-domain/tz/dist/australasia: up to 1.1.1.12 external/public-domain/tz/dist/backward: up to 1.1.1.8 external/public-domain/tz/dist/backzone: up to 1.1.1.12 external/public-domain/tz/dist/calendars: up to 1.1.1.1 external/public-domain/tz/dist/checklinks.awk: up to 1.1.1.3 external/public-domain/tz/dist/europe: up to 1.1.1.18 external/public-domain/tz/dist/leap-seconds.list: up to 1.1.1.8 external/public-domain/tz/dist/leapseconds: up to 1.1.1.9 external/public-domain/tz/dist/leapseconds.awk: up to 1.1.1.6 external/public-domain/tz/dist/northamerica: up to 1.1.1.17 external/public-domain/tz/dist/southamerica: up to 1.1.1.12 external/public-domain/tz/dist/theory.html: up to 1.1.1.1 external/public-domain/tz/dist/version: up to 1.1.1.6 external/public-domain/tz/dist/zishrink.awk: up to 1.1.1.1 external/public-domain/tz/dist/zone.tab: up to 1.1.1.12 external/public-domain/tz/dist/zone1970.tab: up to 1.1.1.14 Update tzdata to 2017c. @ text @d11 4 a14 2 print "# leap-seconds.list file, which is copied from:" print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list" d17 1 a17 1 print "# https://www.eecis.udel.edu/~mills/leap.html" d22 2 a23 3 print "# Levine J. Coordinated Universal Time and the leap second." print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995" print "# http://ieeexplore.ieee.org/document/7909995/" @ 1.1.1.1.4.3.2.3 log @Sync external/public-domain/tz/dist to current, requested by kre in ticket #1644: external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.6 external/public-domain/tz/dist/Makefile up to 1.1.1.22 external/public-domain/tz/dist/NEWS up to 1.1.1.24 external/public-domain/tz/dist/README up to 1.1.1.7 external/public-domain/tz/dist/TZDATA_VERSION up to 1.14 external/public-domain/tz/dist/africa up to 1.1.1.17 external/public-domain/tz/dist/antarctica up to 1.1.1.11 external/public-domain/tz/dist/asia up to 1.1.1.21 external/public-domain/tz/dist/australasia up to 1.1.1.16 external/public-domain/tz/dist/backward up to 1.1.1.9 external/public-domain/tz/dist/backzone up to 1.1.1.15 external/public-domain/tz/dist/etcetera up to 1.1.1.3 external/public-domain/tz/dist/europe up to 1.1.1.23 external/public-domain/tz/dist/factory up to 1.1.1.3 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.10 external/public-domain/tz/dist/leapseconds up to 1.1.1.11 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.7 external/public-domain/tz/dist/northamerica up to 1.1.1.21 external/public-domain/tz/dist/pacificnew up to 1.1.1.2 external/public-domain/tz/dist/southamerica up to 1.1.1.15 external/public-domain/tz/dist/systemv up to 1.1.1.2 external/public-domain/tz/dist/theory.html up to 1.1.1.6 external/public-domain/tz/dist/version up to 1.1.1.11 external/public-domain/tz/dist/yearistype.sh up to 1.1.1.2 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.3 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.5 external/public-domain/tz/dist/zone.tab up to 1.1.1.15 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.17 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.2 doc/3RDPARTY (apply patch) Import tzdata2018f from ftp://ftp.iana.org/tz/releases/tzdata2018f.tar.gz Volgograd moves from +03 to +04 on 2018-10-28. Fiji ends DST 2019-01-13, not 2019-01-20. Most of Chile changes DST dates, effective 2019-04-06. Plus corrections to North Korea's 2018-05-05 and China's April 1988 updates (getting the actual time/date of the transition correct) Corrections for Macau pre 1992, Japan in late 1940's - early 1950's, and China (Shanghai) 1940's. The Phillipines get their timezone name abbreviations back. - Import tzdata2018g from ftp://ftp.iana.org/tz/releases/tzdata2018g.tar.gz Summary of changes in tzdata2018g (2018-10-26 22:22:45 -0700): Morocco switches to permanent +01 on 2018-10-27. @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 1 print "# ." d25 1 a25 1 print "# did not exist." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.1.4.3.2.4 log @Pull up the following, requested by kre in ticket #1670: external/public-domain/tz/dist/Makefile up to 1.1.1.23 external/public-domain/tz/dist/NEWS up to 1.1.1.26 external/public-domain/tz/dist/TZDATA_VERSION up to 1.16 external/public-domain/tz/dist/africa up to 1.1.1.19 external/public-domain/tz/dist/asia up to 1.1.1.22 external/public-domain/tz/dist/australasia up to 1.1.1.17 external/public-domain/tz/dist/leapseconds up to 1.1.1.12 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.8 external/public-domain/tz/dist/northamerica up to 1.1.1.22 external/public-domain/tz/dist/theory.html up to 1.1.1.7 external/public-domain/tz/dist/version up to 1.1.1.13 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.4 external/public-domain/tz/dist/zone.tab up to 1.1.1.16 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.18 distrib/sets/lists/base/mi (patch) doc/3RDPARTY (patch) Import tzdata2018h from ftp://ftp.iana.org/tz/releases/tzdata2018h.tar.gz Summary of changes in tzdata2018h (2018-12-23 17:59:32 -0800): Qyzylorda (aka Kyzylorda) oblast in Kazakhstan moved from +06 to +05 on 2018-12-21. This is a zone split as Qostanay (aka Kostanay) did not switch, so create a zone Asia/Qostanay. Metlakatla, Alaska observes PST this winter only. Add predictions for Iran from 2038 through 2090. Changes to some old timestamps for Nauru (1979) Guam (1959-77), Hong Kong (1904, 1941, 1945, 1952) (others in Pacific during WWII) --- Merge tzdata2018h --- Update to tzdata2018h (new zone Asia/Qostanay) --- Import tzdata2018i from ftp://ftp.iana.org/tz/releases/tzdata2018i.tar.gz Summary of changes in tzdata2018i (2018-12-30 11:05:43 -0800): Due to a change in government, Sao Tome and Principe switches back from +01 to +00 on 2019-01-01 at 02:00. --- Merge tzdata2018i --- Update to tzdata2018i @ text @a26 1 print "" d29 1 a29 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." @ 1.1.1.1.4.4 log @Pull up following revision(s) (requested by christos in ticket #1143): external/public-domain/tz/dist/CONTRIBUTING: up to 1.1.1.2 external/public-domain/tz/dist/LICENSE: up to 1.1.1.1 external/public-domain/tz/dist/Makefile: up to 1.1.1.10 external/public-domain/tz/dist/NEWS: up to 1.1.1.10 external/public-domain/tz/dist/README: up to 1.1.1.3 external/public-domain/tz/dist/Theory: up to 1.1.1.5 external/public-domain/tz/dist/asia: up to 1.1.1.9 external/public-domain/tz/dist/australasia: up to 1.1.1.6 external/public-domain/tz/dist/backward: up to 1.1.1.5 external/public-domain/tz/dist/backzone: up to 1.1.1.8 external/public-domain/tz/dist/checklinks.awk: up to 1.1.1.2 external/public-domain/tz/dist/checktab.awk: up to 1.1.1.8 external/public-domain/tz/dist/europe: up to 1.1.1.10 external/public-domain/tz/dist/iso3166.tab: up to 1.1.1.3 external/public-domain/tz/dist/leap-seconds.list: up to 1.1.1.5 external/public-domain/tz/dist/leapseconds.awk: up to 1.1.1.5 external/public-domain/tz/dist/leapseconds: up to 1.1.1.6 external/public-domain/tz/dist/northamerica: up to 1.1.1.10 external/public-domain/tz/dist/zone.tab: up to 1.1.1.6 external/public-domain/tz/dist/zone1970.tab: up to 1.1.1.8 external/public-domain/tz/tzdata2netbsd: up to 1.8 Update tzdata to 2016b. @ text @a13 1 print "# See for a list of secondary servers." @ 1.1.1.1.4.4.4.1 log @Pull up following revision(s) (requested by kre in ticket #1519): distrib/sets/lists/base/mi: 1.1164 doc/3RDPARTY: 1.2326 via patch external/public-domain/tz/dist/CONTRIBUTING: up to 1.1.1.4 external/public-domain/tz/dist/LICENSE: up to 1.1.1.3 external/public-domain/tz/dist/Makefile: up to 1.1.1.18 external/public-domain/tz/dist/NEWS: up to 1.1.1.19 external/public-domain/tz/dist/TZDATA_VERSION: up to 1.9 external/public-domain/tz/dist/Theory: delete external/public-domain/tz/dist/africa: up to 1.1.1.12 external/public-domain/tz/dist/antarctica: up to 1.1.1.9 external/public-domain/tz/dist/asia: up to 1.1.1.17 external/public-domain/tz/dist/australasia: up to 1.1.1.12 external/public-domain/tz/dist/backward: up to 1.1.1.8 external/public-domain/tz/dist/backzone: up to 1.1.1.12 external/public-domain/tz/dist/calendars: up to 1.1.1.1 external/public-domain/tz/dist/checklinks.awk: up to 1.1.1.3 external/public-domain/tz/dist/europe: up to 1.1.1.18 external/public-domain/tz/dist/leap-seconds.list: up to 1.1.1.8 external/public-domain/tz/dist/leapseconds: up to 1.1.1.9 external/public-domain/tz/dist/leapseconds.awk: up to 1.1.1.6 external/public-domain/tz/dist/northamerica: up to 1.1.1.17 external/public-domain/tz/dist/southamerica: up to 1.1.1.12 external/public-domain/tz/dist/theory.html: up to 1.1.1.1 external/public-domain/tz/dist/version: up to 1.1.1.6 external/public-domain/tz/dist/zishrink.awk: up to 1.1.1.1 external/public-domain/tz/dist/zone.tab: up to 1.1.1.12 external/public-domain/tz/dist/zone1970.tab: up to 1.1.1.14 Update tzdata to 2017c. @ text @d11 4 a14 2 print "# leap-seconds.list file, which is copied from:" print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list" d17 1 a17 1 print "# https://www.eecis.udel.edu/~mills/leap.html" d22 2 a23 3 print "# Levine J. Coordinated Universal Time and the leap second." print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995" print "# http://ieeexplore.ieee.org/document/7909995/" @ 1.1.1.1.4.4.4.2 log @Sync external/public-domain/tz/dist to current, requested by kre in ticket #1644: external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.6 external/public-domain/tz/dist/Makefile up to 1.1.1.22 external/public-domain/tz/dist/NEWS up to 1.1.1.24 external/public-domain/tz/dist/README up to 1.1.1.7 external/public-domain/tz/dist/TZDATA_VERSION up to 1.14 external/public-domain/tz/dist/africa up to 1.1.1.17 external/public-domain/tz/dist/antarctica up to 1.1.1.11 external/public-domain/tz/dist/asia up to 1.1.1.21 external/public-domain/tz/dist/australasia up to 1.1.1.16 external/public-domain/tz/dist/backward up to 1.1.1.9 external/public-domain/tz/dist/backzone up to 1.1.1.15 external/public-domain/tz/dist/etcetera up to 1.1.1.3 external/public-domain/tz/dist/europe up to 1.1.1.23 external/public-domain/tz/dist/factory up to 1.1.1.3 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.10 external/public-domain/tz/dist/leapseconds up to 1.1.1.11 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.7 external/public-domain/tz/dist/northamerica up to 1.1.1.21 external/public-domain/tz/dist/pacificnew up to 1.1.1.2 external/public-domain/tz/dist/southamerica up to 1.1.1.15 external/public-domain/tz/dist/systemv up to 1.1.1.2 external/public-domain/tz/dist/theory.html up to 1.1.1.6 external/public-domain/tz/dist/version up to 1.1.1.11 external/public-domain/tz/dist/yearistype.sh up to 1.1.1.2 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.3 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.5 external/public-domain/tz/dist/zone.tab up to 1.1.1.15 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.17 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.2 doc/3RDPARTY (apply patch) Import tzdata2018f from ftp://ftp.iana.org/tz/releases/tzdata2018f.tar.gz Volgograd moves from +03 to +04 on 2018-10-28. Fiji ends DST 2019-01-13, not 2019-01-20. Most of Chile changes DST dates, effective 2019-04-06. Plus corrections to North Korea's 2018-05-05 and China's April 1988 updates (getting the actual time/date of the transition correct) Corrections for Macau pre 1992, Japan in late 1940's - early 1950's, and China (Shanghai) 1940's. The Phillipines get their timezone name abbreviations back. - Import tzdata2018g from ftp://ftp.iana.org/tz/releases/tzdata2018g.tar.gz Summary of changes in tzdata2018g (2018-10-26 22:22:45 -0700): Morocco switches to permanent +01 on 2018-10-27. @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 1 print "# ." d25 1 a25 1 print "# did not exist." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.1.4.4.4.3 log @Pull up the following, requested by kre in ticket #1670: external/public-domain/tz/dist/Makefile up to 1.1.1.23 external/public-domain/tz/dist/NEWS up to 1.1.1.26 external/public-domain/tz/dist/TZDATA_VERSION up to 1.16 external/public-domain/tz/dist/africa up to 1.1.1.19 external/public-domain/tz/dist/asia up to 1.1.1.22 external/public-domain/tz/dist/australasia up to 1.1.1.17 external/public-domain/tz/dist/leapseconds up to 1.1.1.12 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.8 external/public-domain/tz/dist/northamerica up to 1.1.1.22 external/public-domain/tz/dist/theory.html up to 1.1.1.7 external/public-domain/tz/dist/version up to 1.1.1.13 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.4 external/public-domain/tz/dist/zone.tab up to 1.1.1.16 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.18 distrib/sets/lists/base/mi (patch) doc/3RDPARTY (patch) Import tzdata2018h from ftp://ftp.iana.org/tz/releases/tzdata2018h.tar.gz Summary of changes in tzdata2018h (2018-12-23 17:59:32 -0800): Qyzylorda (aka Kyzylorda) oblast in Kazakhstan moved from +06 to +05 on 2018-12-21. This is a zone split as Qostanay (aka Kostanay) did not switch, so create a zone Asia/Qostanay. Metlakatla, Alaska observes PST this winter only. Add predictions for Iran from 2038 through 2090. Changes to some old timestamps for Nauru (1979) Guam (1959-77), Hong Kong (1904, 1941, 1945, 1952) (others in Pacific during WWII) --- Merge tzdata2018h --- Update to tzdata2018h (new zone Asia/Qostanay) --- Import tzdata2018i from ftp://ftp.iana.org/tz/releases/tzdata2018i.tar.gz Summary of changes in tzdata2018i (2018-12-30 11:05:43 -0800): Due to a change in government, Sao Tome and Principe switches back from +01 to +00 on 2019-01-01 at 02:00. --- Merge tzdata2018i --- Update to tzdata2018i @ text @a26 1 print "" d29 1 a29 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." @ 1.1.1.1.4.5 log @Pull up following revision(s) (requested by kre in ticket #1519): distrib/sets/lists/base/mi: 1.1164 doc/3RDPARTY: 1.2326 via patch external/public-domain/tz/dist/CONTRIBUTING: up to 1.1.1.4 external/public-domain/tz/dist/LICENSE: up to 1.1.1.3 external/public-domain/tz/dist/Makefile: up to 1.1.1.18 external/public-domain/tz/dist/NEWS: up to 1.1.1.19 external/public-domain/tz/dist/TZDATA_VERSION: up to 1.9 external/public-domain/tz/dist/Theory: delete external/public-domain/tz/dist/africa: up to 1.1.1.12 external/public-domain/tz/dist/antarctica: up to 1.1.1.9 external/public-domain/tz/dist/asia: up to 1.1.1.17 external/public-domain/tz/dist/australasia: up to 1.1.1.12 external/public-domain/tz/dist/backward: up to 1.1.1.8 external/public-domain/tz/dist/backzone: up to 1.1.1.12 external/public-domain/tz/dist/calendars: up to 1.1.1.1 external/public-domain/tz/dist/checklinks.awk: up to 1.1.1.3 external/public-domain/tz/dist/europe: up to 1.1.1.18 external/public-domain/tz/dist/leap-seconds.list: up to 1.1.1.8 external/public-domain/tz/dist/leapseconds: up to 1.1.1.9 external/public-domain/tz/dist/leapseconds.awk: up to 1.1.1.6 external/public-domain/tz/dist/northamerica: up to 1.1.1.17 external/public-domain/tz/dist/southamerica: up to 1.1.1.12 external/public-domain/tz/dist/theory.html: up to 1.1.1.1 external/public-domain/tz/dist/version: up to 1.1.1.6 external/public-domain/tz/dist/zishrink.awk: up to 1.1.1.1 external/public-domain/tz/dist/zone.tab: up to 1.1.1.12 external/public-domain/tz/dist/zone1970.tab: up to 1.1.1.14 Update tzdata to 2017c. @ text @d11 4 a14 2 print "# leap-seconds.list file, which is copied from:" print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list" d17 1 a17 1 print "# https://www.eecis.udel.edu/~mills/leap.html" d22 2 a23 3 print "# Levine J. Coordinated Universal Time and the leap second." print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995" print "# http://ieeexplore.ieee.org/document/7909995/" @ 1.1.1.1.4.6 log @Sync external/public-domain/tz/dist to current, requested by kre in ticket #1644: external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.6 external/public-domain/tz/dist/Makefile up to 1.1.1.22 external/public-domain/tz/dist/NEWS up to 1.1.1.24 external/public-domain/tz/dist/README up to 1.1.1.7 external/public-domain/tz/dist/TZDATA_VERSION up to 1.14 external/public-domain/tz/dist/africa up to 1.1.1.17 external/public-domain/tz/dist/antarctica up to 1.1.1.11 external/public-domain/tz/dist/asia up to 1.1.1.21 external/public-domain/tz/dist/australasia up to 1.1.1.16 external/public-domain/tz/dist/backward up to 1.1.1.9 external/public-domain/tz/dist/backzone up to 1.1.1.15 external/public-domain/tz/dist/etcetera up to 1.1.1.3 external/public-domain/tz/dist/europe up to 1.1.1.23 external/public-domain/tz/dist/factory up to 1.1.1.3 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.10 external/public-domain/tz/dist/leapseconds up to 1.1.1.11 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.7 external/public-domain/tz/dist/northamerica up to 1.1.1.21 external/public-domain/tz/dist/pacificnew up to 1.1.1.2 external/public-domain/tz/dist/southamerica up to 1.1.1.15 external/public-domain/tz/dist/systemv up to 1.1.1.2 external/public-domain/tz/dist/theory.html up to 1.1.1.6 external/public-domain/tz/dist/version up to 1.1.1.11 external/public-domain/tz/dist/yearistype.sh up to 1.1.1.2 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.3 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.5 external/public-domain/tz/dist/zone.tab up to 1.1.1.15 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.17 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.2 doc/3RDPARTY (apply patch) Import tzdata2018f from ftp://ftp.iana.org/tz/releases/tzdata2018f.tar.gz Volgograd moves from +03 to +04 on 2018-10-28. Fiji ends DST 2019-01-13, not 2019-01-20. Most of Chile changes DST dates, effective 2019-04-06. Plus corrections to North Korea's 2018-05-05 and China's April 1988 updates (getting the actual time/date of the transition correct) Corrections for Macau pre 1992, Japan in late 1940's - early 1950's, and China (Shanghai) 1940's. The Phillipines get their timezone name abbreviations back. - Import tzdata2018g from ftp://ftp.iana.org/tz/releases/tzdata2018g.tar.gz Summary of changes in tzdata2018g (2018-10-26 22:22:45 -0700): Morocco switches to permanent +01 on 2018-10-27. @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 1 print "# ." d25 1 a25 1 print "# did not exist." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.1.4.7 log @Pull up the following, requested by kre in ticket #1670: external/public-domain/tz/dist/Makefile up to 1.1.1.23 external/public-domain/tz/dist/NEWS up to 1.1.1.26 external/public-domain/tz/dist/TZDATA_VERSION up to 1.16 external/public-domain/tz/dist/africa up to 1.1.1.19 external/public-domain/tz/dist/asia up to 1.1.1.22 external/public-domain/tz/dist/australasia up to 1.1.1.17 external/public-domain/tz/dist/leapseconds up to 1.1.1.12 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.8 external/public-domain/tz/dist/northamerica up to 1.1.1.22 external/public-domain/tz/dist/theory.html up to 1.1.1.7 external/public-domain/tz/dist/version up to 1.1.1.13 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.4 external/public-domain/tz/dist/zone.tab up to 1.1.1.16 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.18 distrib/sets/lists/base/mi (patch) doc/3RDPARTY (patch) Import tzdata2018h from ftp://ftp.iana.org/tz/releases/tzdata2018h.tar.gz Summary of changes in tzdata2018h (2018-12-23 17:59:32 -0800): Qyzylorda (aka Kyzylorda) oblast in Kazakhstan moved from +06 to +05 on 2018-12-21. This is a zone split as Qostanay (aka Kostanay) did not switch, so create a zone Asia/Qostanay. Metlakatla, Alaska observes PST this winter only. Add predictions for Iran from 2038 through 2090. Changes to some old timestamps for Nauru (1979) Guam (1959-77), Hong Kong (1904, 1941, 1945, 1952) (others in Pacific during WWII) --- Merge tzdata2018h --- Update to tzdata2018h (new zone Asia/Qostanay) --- Import tzdata2018i from ftp://ftp.iana.org/tz/releases/tzdata2018i.tar.gz Summary of changes in tzdata2018i (2018-12-30 11:05:43 -0800): Due to a change in government, Sao Tome and Principe switches back from +01 to +00 on 2019-01-01 at 02:00. --- Merge tzdata2018i --- Update to tzdata2018i @ text @a26 1 print "" d29 1 a29 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." @ 1.1.1.2 log @Import tzdata2014g from ftp://ftp.iana.org/tz/releases/tzdata2014g.tar.gz Summary of changes in tzdata2014g (2014-08-28 12:31:23 -0700): * Turks & Caicos is switching from US eastern time to UTC-4 year-round, modeled as a switch from EST/EDT to AST on 2014-11-02 at 02:00. * Time in Russia or the USSR before 1926 or so has been corrected by a few seconds for several zones, and a few minutes for Asia/Yekaterinburg. * The Portuguese decree of 1911-05-26 took effect on 1912-01-01, not on the date of the decree. This affects 1911 time stamps in Africa/Bissau, Africa/Luanda, Atlantic/Azores, and Atlantic/Madeira. * Lisbon's pre-1912 GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32. * Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59. * A new file 'backzone' contains data which may appeal to connoisseurs of old time stamps, although it is out of scope for the tz database, is often poorly sourced, and contains some data that is known to be incorrect. * Some more zones have been turned into links, when they differed from existing zones only for older time stamps. As usual, these changes affect UTC offsets in pre-1970 time stamps only. Their old contents have been moved to the 'backzone' file. * Changes affecting documentation and commentary. @ text @d6 1 a6 1 print "# Allowance for leap seconds added to each time zone file." d16 1 a16 1 print "# http://www.eecis.udel.edu/~mills/leap.html" @ 1.1.1.3 log @Import tzdata2014j from ftp://ftp.iana.org/tz/releases/tzdata2014j.tar.gz Summary of changes in tzdata2014j (2014-11-10 17:37:11 -0800): * Turks & Caicos' switch from US eastern time to UTC-4 year-round did not occur on 2014-11-02 at 02:00. * Many pre-1989 time stamps have been corrected for Asia/Seoul and Asia/Pyongyang, based on sources for the Korean-language Wikipedia entry for time in Korea. * Some more zones have been turned into links, when they differed from existing zones only for older (pre-1970) time stamps. * Changes affecting commentary. Summary of changes in tzdata2014i (2014-10-21 22:04:57 -0700): * Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00. * A new Zone Pacific/Bougainville, for the part of Papua New Guinea that plans to switch from UTC+10 to UTC+11 on 2014-12-28 at 02:00. * Since Belarus is not changing its clocks even though Moscow is, the time zone abbreviation in Europe/Minsk is changing from FET to its more-traditional value MSK on 2014-10-26 at 01:00. * The new abbreviation IDT stands for the pre-1976 use of UT+8 in Indochina, to distinguish it better from ICT (UT+7). * Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976. Asia/Ho_Chi_Minh has been added to zone1970.tab, to give tzselect users in Vietnam two choices, since north and south Vietnam disagreed after our 1970 cutoff. * Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as they differed from existing zones only for older (pre-1970) time stamps. * Changes affecting commentary. @ text @d18 2 a19 2 print "# The International Earth Rotation and Reference Systems Service" print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1" @ 1.1.1.4 log @Import tzdata2015a from ftp://ftp.iana.org/tz/releases/tzdata2015a.tar.gz Summary of changes in tzdata2015a (2015-01-29 22:35:20 -0800): * The Mexican state of Quintana Roo, represented by America/Cancun, will shift from Central Time with DST to Eastern Time without DST on 2015-02-01 at 02:00. * Chile will not change clocks in April or thereafter; its new standard time will be its old daylight saving time. This affects America/Santiago, Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.) * New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49. * Iceland observed DST in 1919 and 1921, and its 1939 fallback transition was Oct. * Some more zones have been turned into links, when they differed from existing zones only for older time stamps. * Changes affecting commentary. @ text @a39 5 /^#\tUpdated through/ || /^#\tFile expires on:/ { last_lines = last_lines $0 "\n" } a66 4 END { printf "\n%s", last_lines } @ 1.1.1.5 log @Import tzdata2016b from ftp://ftp.iana.org/tz/releases/tzdata2016b.tar.gz Summary of changes in tzdata2016b (2016-03-12 17:30:14 -0800): * New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on 2016-03-27 at 02:00 local time. * As a trial of a new system that needs less information to be made up, the new zones use numeric time zone abbreviations like "+04" instead of invented abbreviations like "ASTT". * Haiti will not observe DST in 2016. * Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00. * Europe/Chisinau observed DST during 1990, and switched from +04 to +03 at 1990-05-06 02:00, instead of switching from +03 to +02. * 1991 abbreviations in Europe/Samara should be SAMT/SAMST, not KUYT/KUYST. * tzselect's diagnostics and checking, and checktab.awk's checking, have been improved. * tzcode now builds under MinGW. * tzselect now tests Julian-date TZ settings more accurately. * Comments in zone tables have been improved. * tzselect again limits its menu comments so that menus fit on a 24x80 alphanumeric display. * A new web page tz-how-to.html. * In the Theory file, the description of possible time zone abbreviations in tzdata has been cleaned up, as the old description was unclear and inconsistent. Summary of changes in tzdata2016a (2016-01-26 23:28:02 -0800): * America/Cayman will not observe daylight saving this year after all. * Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00. * Asia/Tehran now has DST predictions for the year 2038 and later, to be March 21 00:00 to September 21 00:00. * America/Metlakatla switched from PST all year to AKST/AKDT on 2015-11-01 at 02:00. * America/Santa_Isabel has been removed, and replaced with a backward compatibility link to America/Tijuana. * Asia/Karachi's two transition times in 2002 were off by a minute. * Changes affecting documentation and commentary. Summary of changes in tzdata2015g (2015-10-01 00:39:51 -0700): * Turkey's 2015 fall-back transition is scheduled for Nov. * Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time. * Fiji's 2016 fall-back transition is scheduled for January 17, not 24. * Fort Nelson, British Columbia will not fall back on 2015-11-01. * Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00. * Changes affecting documentation. @ text @a13 1 print "# See for a list of secondary servers." @ 1.1.1.5.8.1 log @Pull up following revision(s) (requested by kre in ticket #333): doc/3RDPARTY: 1.1479 distrib/sets/lists/base/mi: 1.1164 external/public-domain/tz/dist/CONTRIBUTING: up to 1.1.1.4 external/public-domain/tz/dist/LICENSE: up to 1.1.1.3 external/public-domain/tz/dist/Makefile: up to 1.1.1.18 external/public-domain/tz/dist/NEWS: up to 1.1.1.19 external/public-domain/tz/dist/TZDATA_VERSION: up to 1.9 external/public-domain/tz/dist/Theory: delete external/public-domain/tz/dist/africa: up to 1.1.1.12 external/public-domain/tz/dist/antarctica: up to 1.1.1.9 external/public-domain/tz/dist/asia: up to 1.1.1.17 external/public-domain/tz/dist/australasia: up to 1.1.1.12 external/public-domain/tz/dist/backward: up to 1.1.1.8 external/public-domain/tz/dist/backzone: up to 1.1.1.12 external/public-domain/tz/dist/calendars: up to 1.1.1.1 external/public-domain/tz/dist/checklinks.awk: up to 1.1.1.3 external/public-domain/tz/dist/europe: up to 1.1.1.18 external/public-domain/tz/dist/leap-seconds.list: up to 1.1.1.8 external/public-domain/tz/dist/leapseconds: up to 1.1.1.9 external/public-domain/tz/dist/leapseconds.awk: up to 1.1.1.6 external/public-domain/tz/dist/northamerica: up to 1.1.1.17 external/public-domain/tz/dist/southamerica: up to 1.1.1.12 external/public-domain/tz/dist/theory.html: up to 1.1.1.1 external/public-domain/tz/dist/version: up to 1.1.1.6 external/public-domain/tz/dist/zishrink.awk: up to 1.1.1.1 external/public-domain/tz/dist/zone.tab: up to 1.1.1.12 external/public-domain/tz/dist/zone1970.tab: up to 1.1.1.14 Update tzdata to 2017c. @ text @d11 4 a14 2 print "# leap-seconds.list file, which is copied from:" print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list" d17 1 a17 1 print "# https://www.eecis.udel.edu/~mills/leap.html" d22 2 a23 3 print "# Levine J. Coordinated Universal Time and the leap second." print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995" print "# http://ieeexplore.ieee.org/document/7909995/" @ 1.1.1.5.8.2 log @Sync the following with current, requested by kre in ticket #1068 external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.6 external/public-domain/tz/dist/Makefile up to 1.1.1.22 external/public-domain/tz/dist/NEWS up to 1.1.1.23 external/public-domain/tz/dist/README up to 1.1.1.7 external/public-domain/tz/dist/TZDATA_VERSION up to 1.13 external/public-domain/tz/dist/africa up to 1.1.1.16 external/public-domain/tz/dist/antarctica up to 1.1.1.11 external/public-domain/tz/dist/asia up to 1.1.1.21 external/public-domain/tz/dist/australasia up to 1.1.1.16 external/public-domain/tz/dist/backward up to 1.1.1.9 external/public-domain/tz/dist/backzone up to 1.1.1.15 external/public-domain/tz/dist/etcetera up to 1.1.1.3 external/public-domain/tz/dist/europe up to 1.1.1.22 external/public-domain/tz/dist/factory up to 1.1.1.3 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.10 external/public-domain/tz/dist/leapseconds up to 1.1.1.11 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.7 external/public-domain/tz/dist/northamerica up to 1.1.1.20 external/public-domain/tz/dist/pacificnew up to 1.1.1.2 external/public-domain/tz/dist/southamerica up to 1.1.1.15 external/public-domain/tz/dist/systemv up to 1.1.1.2 external/public-domain/tz/dist/theory.html up to 1.1.1.5 external/public-domain/tz/dist/version up to 1.1.1.10 external/public-domain/tz/dist/yearistype.sh up to 1.1.1.2 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.4 external/public-domain/tz/dist/zone.tab up to 1.1.1.15 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.17 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.2 doc/3RDPARTY 1.1568 (patch Import tzdata2018f from ftp://ftp.iana.org/tz/releases/tzdata2018f.tar.gz Volgograd moves from +03 to +04 on 2018-10-28. Fiji ends DST 2019-01-13, not 2019-01-20. Most of Chile changes DST dates, effective 2019-04-06. Plus corrections to North Korea's 2018-05-05 and China's April 1988 updates (getting the actual time/date of the transition correct) Corrections for Macau pre 1992, Japan in late 1940's - early 1950's, and China (Shanghai) 1940's. The Phillipines get their timezone name abbreviations back. @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 1 print "# ." d25 1 a25 1 print "# did not exist." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.5.8.3 log @Pull up the following, requested by kre in ticket #1150: doc/3RDPARTY 1.1581 (patch) distrib/sets/lists/base/mi 1.1196 (patch) external/public-domain/tz/dist/Makefile up to 1.1.1.23 external/public-domain/tz/dist/NEWS up to 1.1.1.26 external/public-domain/tz/dist/TZDATA_VERSION up to 1.16 external/public-domain/tz/dist/africa up to 1.1.1.19 external/public-domain/tz/dist/asia up to 1.1.1.22 external/public-domain/tz/dist/australasia up to 1.1.1.17 external/public-domain/tz/dist/leapseconds up to 1.1.1.12 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.8 external/public-domain/tz/dist/northamerica up to 1.1.1.22 external/public-domain/tz/dist/theory.html up to 1.1.1.7 external/public-domain/tz/dist/version up to 1.1.1.13 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.4 external/public-domain/tz/dist/zone.tab up to 1.1.1.16 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.18 Import tzdata2018h from ftp://ftp.iana.org/tz/releases/tzdata2018h.tar.gz Summary of changes in tzdata2018h (2018-12-23 17:59:32 -0800): Qyzylorda (aka Kyzylorda) oblast in Kazakhstan moved from +06 to +05 on 2018-12-21. This is a zone split as Qostanay (aka Kostanay) did not switch, so create a zone Asia/Qostanay. Metlakatla, Alaska observes PST this winter only. Add predictions for Iran from 2038 through 2090. Changes to some old timestamps for Nauru (1979) Guam (1959-77), Hong Kong (1904, 1941, 1945, 1952) (others in Pacific during WWII) Summary of changes in tzdata2018i (2018-12-30 11:05:43 -0800): Due to a change in government, Sao Tome and Principe switches back from +01 to +00 on 2019-01-01 at 02:00. @ text @a26 1 print "" d29 1 a29 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." @ 1.1.1.5.8.4 log @Pull up the following, requested by kre in ticket #1631: external/public-domain/tz/dist/systemv delete external/public-domain/tz/dist/pacificnew delete external/public-domain/tz/dist/yearistype.sh delete external/public-domain/tz/dist/Makefile up to 1.1.1.29 external/public-domain/tz/dist/NEWS up to 1.1.1.32 external/public-domain/tz/dist/README up to 1.1.1.9 external/public-domain/tz/dist/TZDATA_VERSION up to 1.22 external/public-domain/tz/dist/africa up to 1.1.1.23 external/public-domain/tz/dist/antarctica up to 1.1.1.13 external/public-domain/tz/dist/asia up to 1.1.1.27 external/public-domain/tz/dist/australasia up to 1.1.1.20 external/public-domain/tz/dist/backward up to 1.1.1.11 external/public-domain/tz/dist/backzone up to 1.1.1.19 external/public-domain/tz/dist/checktab.awk up to 1.1.1.10 external/public-domain/tz/dist/etcetera up to 1.1.1.4 external/public-domain/tz/dist/europe up to 1.1.1.29 external/public-domain/tz/dist/factory up to 1.1.1.4 external/public-domain/tz/dist/iso3166.tab up to 1.1.1.6 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.14 external/public-domain/tz/dist/leapseconds up to 1.1.1.16 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.11 external/public-domain/tz/dist/northamerica up to 1.1.1.26 external/public-domain/tz/dist/southamerica up to 1.1.1.17 external/public-domain/tz/dist/theory.html up to 1.1.1.11 external/public-domain/tz/dist/version up to 1.1.1.19 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.5 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.7 external/public-domain/tz/dist/zone.tab up to 1.1.1.18 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.20 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.4 distrib/sets/lists/base/mi (apply patch) doc/3RDPARTY (apply patch) external/public-domain/tz/share/zoneinfo/Makefile (apply patch) Update tzdate from 2018i to 2020d @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST format 'leap-seconds.list'. a4 13 # This program uses awk arithmetic. POSIX requires awk to support # exact integer arithmetic only through 10**10, which means for NTP # timestamps this program works only to the year 2216, which is the # year 1900 plus 10**10 seconds. However, in practice # POSIX-conforming awk implementations invariably use IEEE-754 double # and so support exact integers through 2**53. By the year 2216, # POSIX will almost surely require at least 2**53 for awk, so for NTP # timestamps this program should be good until the year 285,428,681 # (the year 1900 plus 2**53 seconds). By then leap seconds will be # long obsolete, as the Earth will likely slow down so much that # there will be more than 25 hours per day and so some other scheme # will be needed. d11 1 a11 1 print "# NIST format leap-seconds.list file, which can be copied from" d13 2 a14 1 print "# or ." d19 1 a19 6 print "# The rules for leap seconds are specified in Annex 1 (Time scales) of:" print "# Standard-frequency and time-signal emissions." print "# International Telecommunication Union - Radiocommunication Sector" print "# (ITU-R) Recommendation TF.460-6 (02/2002)" print "# ." print "# The International Earth Rotation and Reference Systems Service (IERS)" d21 1 a21 1 print "# (a proxy for Earth's angle in space as measured by astronomers)" d28 3 a30 3 print "# There were no leap seconds before 1972, as no official mechanism" print "# accounted for the discrepancy between atomic time (TAI) and the earth's" print "# rotation. The first (\"1 Jan 1972\") data line in leap-seconds.list" d32 7 a38 1 print "# of UTC." d40 1 a40 6 print "# All leap-seconds are Stationary (S) at the given UTC time." print "# The correction (+ or -) is made at the given time, so in the unlikely" print "# event of a negative leap second, a line would look like this:" print "# Leap YEAR MON DAY 23:59:59 - S" print "# Typical lines look like this:" print "# Leap YEAR MON DAY 23:59:60 + S" d54 6 a59 2 sstamp_init() d62 1 a62 4 # In case the input has CRLF form a la NIST. { sub(/\r$/, "") } /^#[ \t]*[Uu]pdated through/ || /^#[ \t]*[Ff]ile expires on/ { d69 1 a69 1 /^[ \t]*#/ { next } d74 4 d84 9 a92 3 sstamp_to_ymdhMs(NTP_timestamp - 1, ss_NTP) printf "Leap\t%d\t%s\t%d\t%s\tS\n", \ ss_year, monthabbr[ss_month], ss_mday, sign a97 13 sstamp_to_ymdhMs(expires, ss_NTP) print "" print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec d105 2 a106 9 sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec a108 103 # sstamp_to_ymdhMs - convert seconds timestamp to date and time # # Call as: # # sstamp_to_ymdhMs(sstamp, epoch_days) # # where: # # sstamp - is the seconds timestamp. # epoch_days - is the timestamp epoch in Gregorian days since 1600-03-01. # ss_NTP is appropriate for an NTP sstamp. # # Both arguments should be nonnegative integers. # On return, the following variables are set based on sstamp: # # ss_year - Gregorian calendar year # ss_month - month of the year (1-January to 12-December) # ss_mday - day of the month (1-31) # ss_hour - hour (0-23) # ss_min - minute (0-59) # ss_sec - second (0-59) # ss_wday - day of week (0-Sunday to 6-Saturday) # # The function sstamp_init should be called prior to using sstamp_to_ymdhMs. function sstamp_init() { # Days in month N, where March is month 0 and January month 10. ss_mon_days[ 0] = 31 ss_mon_days[ 1] = 30 ss_mon_days[ 2] = 31 ss_mon_days[ 3] = 30 ss_mon_days[ 4] = 31 ss_mon_days[ 5] = 31 ss_mon_days[ 6] = 30 ss_mon_days[ 7] = 31 ss_mon_days[ 8] = 30 ss_mon_days[ 9] = 31 ss_mon_days[10] = 31 # Counts of days in a Gregorian year, quad-year, century, and quad-century. ss_year_days = 365 ss_quadyear_days = ss_year_days * 4 + 1 ss_century_days = ss_quadyear_days * 25 - 1 ss_quadcentury_days = ss_century_days * 4 + 1 # Standard day epochs, suitable for epoch_days. # ss_MJD = 94493 # ss_POSIX = 135080 ss_NTP = 109513 } function sstamp_to_ymdhMs(sstamp, epoch_days, \ quadcentury, century, quadyear, year, month, day) { ss_hour = int(sstamp / 3600) % 24 ss_min = int(sstamp / 60) % 60 ss_sec = sstamp % 60 # Start with a count of days since 1600-03-01 Gregorian. day = epoch_days + int(sstamp / (24 * 60 * 60)) # Compute a year-month-day date with days of the month numbered # 0-30, months (March-February) numbered 0-11, and years that start # start March 1 and end after the last day of February. A quad-year # starts on March 1 of a year evenly divisible by 4 and ends after # the last day of February 4 years later. A century starts on and # ends before March 1 in years evenly divisible by 100. # A quad-century starts on and ends before March 1 in years divisible # by 400. While the number of days in a quad-century is a constant, # the number of days in each other time period can vary by 1. # Any variation is in the last day of the time period (there might # or might not be a February 29) where it is easy to deal with. quadcentury = int(day / ss_quadcentury_days) day -= quadcentury * ss_quadcentury_days ss_wday = (day + 3) % 7 century = int(day / ss_century_days) century -= century == 4 day -= century * ss_century_days quadyear = int(day / ss_quadyear_days) day -= quadyear * ss_quadyear_days year = int(day / ss_year_days) year -= year == 4 day -= year * ss_year_days for (month = 0; month < 11; month++) { if (day < ss_mon_days[month]) break day -= ss_mon_days[month] } # Convert the date to a conventional day of month (1-31), # month (1-12, January-December) and Gregorian year. ss_mday = day + 1 if (month <= 9) { ss_month = month + 3 } else { ss_month = month - 9 year++ } ss_year = 1600 + quadcentury * 400 + century * 100 + quadyear * 4 + year } @ 1.1.1.5.8.5 log @Pull up the following, requested by kre in ticket #1676: external/public-domain/tz/dist/Makefile up to 1.1.1.30 external/public-domain/tz/dist/NEWS up to 1.1.1.34 external/public-domain/tz/dist/TZDATA_VERSION up to 1.24 external/public-domain/tz/dist/africa up to 1.1.1.25 external/public-domain/tz/dist/asia up to 1.1.1.28 external/public-domain/tz/dist/australasia up to 1.1.1.21 external/public-domain/tz/dist/backward up to 1.1.1.12 external/public-domain/tz/dist/backzone up to 1.1.1.20 external/public-domain/tz/dist/etcetera up to 1.1.1.5 external/public-domain/tz/dist/europe up to 1.1.1.30 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.15 external/public-domain/tz/dist/leapseconds up to 1.1.1.18 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.12 external/public-domain/tz/dist/northamerica up to 1.1.1.27 external/public-domain/tz/dist/theory.html up to 1.1.1.12 external/public-domain/tz/dist/version up to 1.1.1.21 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.6 external/public-domain/tz/dist/zone.tab up to 1.1.1.19 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.21 doc/3RDPARTY (apply patch) Update from tzdata2020d to tzdata2021a. The significant changes are: Volgograd switched to Moscow time on 2020-12-27 at 02:00. (2020e) South Sudan changes from +03 to +02 on 2021-02-01 at 00:00. (2021a) @ text @a26 4 print "# The NIST file is used instead of its IERS upstream counterpart" print "# " print "# because under US law the NIST file is public domain" print "# whereas the IERS file's copyright and license status is unclear." @ 1.1.1.5.8.6 log @Pull up the following, requested by kry in ticket #1928: external/public-domain/tz/dist/checknow.awk up to 1.1.1.1 external/public-domain/tz/dist/zonenow.tab up to 1.1.1.1 external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.8 external/public-domain/tz/dist/Makefile up to 1.1.1.37 external/public-domain/tz/dist/NEWS up to 1.1.1.44 external/public-domain/tz/dist/README up to 1.1.1.11 external/public-domain/tz/dist/TZDATA_VERSION up to 1.36 external/public-domain/tz/dist/africa up to 1.1.1.32 external/public-domain/tz/dist/antarctica up to 1.1.1.18 external/public-domain/tz/dist/asia up to 1.11 external/public-domain/tz/dist/australasia up to 1.8 external/public-domain/tz/dist/backward up to 1.11 external/public-domain/tz/dist/backzone up to 1.1.1.27 external/public-domain/tz/dist/checklinks.awk up to 1.1.1.4 external/public-domain/tz/dist/checktab.awk up to 1.1.1.13 external/public-domain/tz/dist/etcetera up to 1.1.1.7 external/public-domain/tz/dist/europe up to 1.1.1.38 external/public-domain/tz/dist/iso3166.tab up to 1.1.1.9 external/public-domain/tz/dist/leap-seconds.list up to 1.6 external/public-domain/tz/dist/leapseconds up to 1.6 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.13 external/public-domain/tz/dist/northamerica up to 1.1.1.34 external/public-domain/tz/dist/southamerica up to 1.1.1.24 external/public-domain/tz/dist/theory.html up to 1.1.1.18 external/public-domain/tz/dist/version up to 1.11 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.10 external/public-domain/tz/dist/zone.tab up to 1.1.1.26 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.27 distrib/sets/lists/base/mi (apply patch) doc/3RDPARTY (apply patch) Update tzdata to tzdata2023dgtz. @ text @d107 2 d110 5 a114 15 if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec } else { print "# (No Expires line, since the expires time is unknown.)" d116 3 d127 9 a135 16 if (updated) { sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(updated time unknown)" } if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(expires time unknown)" } @ 1.1.1.5.8.7 log @Pull up the following, requested by kre in ticket #1935: external/public-domain/tz/dist/Makefile up to 1.1.1.38 external/public-domain/tz/dist/NEWS up to 1.1.1.45 external/public-domain/tz/dist/TZDATA_VERSION up to 1.37 external/public-domain/tz/dist/africa up to 1.1.1.33 external/public-domain/tz/dist/asia up to 1.12 external/public-domain/tz/dist/australasia up to 1.9 external/public-domain/tz/dist/checknow.awk up to 1.1.1.2 external/public-domain/tz/dist/etcetera up to 1.1.1.8 external/public-domain/tz/dist/europe up to 1.1.1.39 external/public-domain/tz/dist/leap-seconds.list up to 1.7 external/public-domain/tz/dist/leapseconds up to 1.7 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.14 external/public-domain/tz/dist/northamerica up to 1.1.1.35 external/public-domain/tz/dist/southamerica up to 1.1.1.25 external/public-domain/tz/dist/theory.html up to 1.1.1.19 external/public-domain/tz/dist/version up to 1.12 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.9 external/public-domain/tz/dist/zonenow.tab up to 1.1.1.2 doc/3RDPARTY apply patch Updated tzdata to 2024a @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST/IERS format 'leap-seconds.list'. d24 4 a27 1 print "# NIST/IERS format leap-seconds.list file, which can be copied from" d29 2 a30 2 print "# or, in a variant with different comments, from" print "# ." @ 1.1.1.6 log @Import tzdata2017c from ftp://ftp.iana.org/tz/releases/tzdata2017c.tar.gz Northern Cyprus switches from +03 to +02/+03 on 2017-10-29. Fiji ends DST 2018-01-14, not 2018-01-21. Namibia switches from +01/+02 to +02 on 2018-04-01. Sudan switches from +03 to +02 on 2017-11-01. Tonga likely switches from +13/+14 to +13 on 2017-11-05. Turks & Caicos switches from -04 to -05/-04 on 2018-11-04. Some corrections to (mostly ancient) historical data. @ text @d11 4 a14 2 print "# leap-seconds.list file, which is copied from:" print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list" d17 1 a17 1 print "# https://www.eecis.udel.edu/~mills/leap.html" d22 2 a23 3 print "# Levine J. Coordinated Universal Time and the leap second." print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995" print "# http://ieeexplore.ieee.org/document/7909995/" @ 1.1.1.6.4.1 log @Sync with HEAD @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 2 print "# ." print "" d25 1 a25 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.6.4.2 log @Mostly merge changes from HEAD upto 20200411 @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST format 'leap-seconds.list'. a4 13 # This program uses awk arithmetic. POSIX requires awk to support # exact integer arithmetic only through 10**10, which means for NTP # timestamps this program works only to the year 2216, which is the # year 1900 plus 10**10 seconds. However, in practice # POSIX-conforming awk implementations invariably use IEEE-754 double # and so support exact integers through 2**53. By the year 2216, # POSIX will almost surely require at least 2**53 for awk, so for NTP # timestamps this program should be good until the year 285,428,681 # (the year 1900 plus 2**53 seconds). By then leap seconds will be # long obsolete, as the Earth will likely slow down so much that # there will be more than 25 hours per day and so some other scheme # will be needed. d11 1 a11 1 print "# NIST format leap-seconds.list file, which can be copied from" d13 2 a14 1 print "# or ." d19 1 a19 6 print "# The rules for leap seconds are specified in Annex 1 (Time scales) of:" print "# Standard-frequency and time-signal emissions." print "# International Telecommunication Union - Radiocommunication Sector" print "# (ITU-R) Recommendation TF.460-6 (02/2002)" print "# ." print "# The International Earth Rotation and Reference Systems Service (IERS)" d21 1 a21 1 print "# (a proxy for Earth's angle in space as measured by astronomers)" d28 3 a30 3 print "# There were no leap seconds before 1972, as no official mechanism" print "# accounted for the discrepancy between atomic time (TAI) and the earth's" print "# rotation. The first (\"1 Jan 1972\") data line in leap-seconds.list" d32 7 a38 1 print "# of UTC." d40 1 a40 6 print "# All leap-seconds are Stationary (S) at the given UTC time." print "# The correction (+ or -) is made at the given time, so in the unlikely" print "# event of a negative leap second, a line would look like this:" print "# Leap YEAR MON DAY 23:59:59 - S" print "# Typical lines look like this:" print "# Leap YEAR MON DAY 23:59:60 + S" d54 6 a59 5 # Strip trailing CR, in case the input has CRLF form a la NIST. RS = "\r?\n" sstamp_init() d62 1 a62 1 /^#[ \t]*[Uu]pdated through/ || /^#[ \t]*[Ff]ile expires on/ { d69 1 a69 1 /^[ \t]*#/ { next } d74 4 d84 9 a92 3 sstamp_to_ymdhMs(NTP_timestamp - 1, ss_NTP) printf "Leap\t%d\t%s\t%d\t%s\tS\n", \ ss_year, monthabbr[ss_month], ss_mday, sign d105 2 a106 9 sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec a108 103 # sstamp_to_ymdhMs - convert seconds timestamp to date and time # # Call as: # # sstamp_to_ymdhMs(sstamp, epoch_days) # # where: # # sstamp - is the seconds timestamp. # epoch_days - is the timestamp epoch in Gregorian days since 1600-03-01. # ss_NTP is appropriate for an NTP sstamp. # # Both arguments should be nonnegative integers. # On return, the following variables are set based on sstamp: # # ss_year - Gregorian calendar year # ss_month - month of the year (1-January to 12-December) # ss_mday - day of the month (1-31) # ss_hour - hour (0-23) # ss_min - minute (0-59) # ss_sec - second (0-59) # ss_wday - day of week (0-Sunday to 6-Saturday) # # The function sstamp_init should be called prior to using sstamp_to_ymdhMs. function sstamp_init() { # Days in month N, where March is month 0 and January month 10. ss_mon_days[ 0] = 31 ss_mon_days[ 1] = 30 ss_mon_days[ 2] = 31 ss_mon_days[ 3] = 30 ss_mon_days[ 4] = 31 ss_mon_days[ 5] = 31 ss_mon_days[ 6] = 30 ss_mon_days[ 7] = 31 ss_mon_days[ 8] = 30 ss_mon_days[ 9] = 31 ss_mon_days[10] = 31 # Counts of days in a Gregorian year, quad-year, century, and quad-century. ss_year_days = 365 ss_quadyear_days = ss_year_days * 4 + 1 ss_century_days = ss_quadyear_days * 25 - 1 ss_quadcentury_days = ss_century_days * 4 + 1 # Standard day epochs, suitable for epoch_days. # ss_MJD = 94493 # ss_POSIX = 135080 ss_NTP = 109513 } function sstamp_to_ymdhMs(sstamp, epoch_days, \ quadcentury, century, quadyear, year, month, day) { ss_hour = int(sstamp / 3600) % 24 ss_min = int(sstamp / 60) % 60 ss_sec = sstamp % 60 # Start with a count of days since 1600-03-01 Gregorian. day = epoch_days + int(sstamp / (24 * 60 * 60)) # Compute a year-month-day date with days of the month numbered # 0-30, months (March-February) numbered 0-11, and years that start # start March 1 and end after the last day of February. A quad-year # starts on March 1 of a year evenly divisible by 4 and ends after # the last day of February 4 years later. A century starts on and # ends before March 1 in years evenly divisible by 100. # A quad-century starts on and ends before March 1 in years divisible # by 400. While the number of days in a quad-century is a constant, # the number of days in each other time period can vary by 1. # Any variation is in the last day of the time period (there might # or might not be a February 29) where it is easy to deal with. quadcentury = int(day / ss_quadcentury_days) day -= quadcentury * ss_quadcentury_days ss_wday = (day + 3) % 7 century = int(day / ss_century_days) century -= century == 4 day -= century * ss_century_days quadyear = int(day / ss_quadyear_days) day -= quadyear * ss_quadyear_days year = int(day / ss_year_days) year -= year == 4 day -= year * ss_year_days for (month = 0; month < 11; month++) { if (day < ss_mon_days[month]) break day -= ss_mon_days[month] } # Convert the date to a conventional day of month (1-31), # month (1-12, January-December) and Gregorian year. ss_mday = day + 1 if (month <= 9) { ss_month = month + 3 } else { ss_month = month - 9 year++ } ss_year = 1600 + quadcentury * 400 + century * 100 + quadyear * 4 + year } @ 1.1.1.6.2.1 log @Sync with head @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 1 print "# ." d25 1 a25 1 print "# did not exist." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.6.2.2 log @Synch with HEAD @ text @a26 1 print "" d29 1 a29 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." @ 1.1.1.7 log @Import tzdata2018f from ftp://ftp.iana.org/tz/releases/tzdata2018f.tar.gz Volgograd moves from +03 to +04 on 2018-10-28. Fiji ends DST 2019-01-13, not 2019-01-20. Most of Chile changes DST dates, effective 2019-04-06. Plus corrections to North Korea's 2018-05-05 and China's April 1988 updates (getting the actual time/date of the transition correct) Corrections for Macau pre 1992, Japan in late 1940's - early 1950's, and China (Shanghai) 1940's. The Phillipines get their timezone name abbreviations back. @ text @d11 2 a12 4 print "# leap-seconds.list file, which can be copied from" print "# " print "# or " print "# or ." d15 1 a15 1 print "# ." d19 2 a20 4 print "# (which measures the true angular orientation of the earth in space)" print "# and publishes leap second data in a copyrighted file" print "# ." print "# See: Levine J. Coordinated Universal Time and the leap second." d22 1 a22 1 print "# ." d25 1 a25 1 print "# did not exist." d33 5 a37 1 print "# If the leap second is Rolling (R) the given time is local time (unused here)." d39 1 a39 19 monthabbr[ 1] = "Jan" monthabbr[ 2] = "Feb" monthabbr[ 3] = "Mar" monthabbr[ 4] = "Apr" monthabbr[ 5] = "May" monthabbr[ 6] = "Jun" monthabbr[ 7] = "Jul" monthabbr[ 8] = "Aug" monthabbr[ 9] = "Sep" monthabbr[10] = "Oct" monthabbr[11] = "Nov" monthabbr[12] = "Dec" for (i in monthabbr) { monthnum[monthabbr[i]] = i monthlen[i] = 31 } monthlen[2] = 28 monthlen[4] = monthlen[6] = monthlen[9] = monthlen[11] = 30 } a44 3 /^#[$][ \t]/ { updated = $2 } /^#[@@][ \t]/ { expires = $2 } d60 1 a60 2 m = monthnum[month] - 1 if (m == 0) { d62 5 a66 1 m = 12 a67 3 month = monthabbr[m] day = monthlen[m] day += m == 2 && year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) a73 9 # The difference between the NTP and POSIX epochs is 70 years # (including 17 leap days), each 24 hours of 60 minutes of 60 # seconds each. epoch_minus_NTP = ((1970 - 1900) * 365 + 17) * 24 * 60 * 60 print "" print "# POSIX timestamps for the data in this file:" printf "#updated %s\n", updated - epoch_minus_NTP printf "#expires %s\n", expires - epoch_minus_NTP @ 1.1.1.8 log @Import tzdata2018h from ftp://ftp.iana.org/tz/releases/tzdata2018h.tar.gz Summary of changes in tzdata2018h (2018-12-23 17:59:32 -0800): Qyzylorda (aka Kyzylorda) oblast in Kazakhstan moved from +06 to +05 on 2018-12-21. This is a zone split as Qostanay (aka Kostanay) did not switch, so create a zone Asia/Qostanay. Metlakatla, Alaska observes PST this winter only. Add predictions for Iran from 2038 through 2090. Changes to some old timestamps for Nauru (1979) Guam (1959-77), Hong Kong (1904, 1941, 1945, 1952) (others in Pacific during WWII) @ text @a26 1 print "" d29 1 a29 3 print "# did not exist. The first (\"1 Jan 1972\") data line in leap-seconds.list" print "# does not denote a leap second; it denotes the start of the current definition" print"# of UTC." @ 1.1.1.8.2.1 log @Pull up the following revisions, requested by kre in ticket #468: external/public-domain/tz/dist/Makefile up to 1.1.1.25 external/public-domain/tz/dist/NEWS up to 1.1.1.28 external/public-domain/tz/dist/TZDATA_VERSION up to 1.18 external/public-domain/tz/dist/africa up to 1.1.1.21 external/public-domain/tz/dist/antarctica up to 1.1.1.12 external/public-domain/tz/dist/asia up to 1.1.1.24 external/public-domain/tz/dist/australasia up to 1.1.1.18 external/public-domain/tz/dist/backzone up to 1.1.1.17 external/public-domain/tz/dist/checktab.awk up to 1.1.1.10 external/public-domain/tz/dist/europe up to 1.1.1.25 external/public-domain/tz/dist/factory up to 1.1.1.4 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.12 external/public-domain/tz/dist/leapseconds up to 1.1.1.14 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.9 external/public-domain/tz/dist/northamerica up to 1.1.1.24 external/public-domain/tz/dist/pacificnew up to 1.1.1.3 external/public-domain/tz/dist/southamerica up to 1.1.1.16 external/public-domain/tz/dist/systemv up to 1.1.1.3 external/public-domain/tz/dist/theory.html up to 1.1.1.9 external/public-domain/tz/dist/version up to 1.1.1.15 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.6 external/public-domain/tz/dist/zone.tab up to 1.1.1.17 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.19 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.3 doc/3RDPARTY 1.1655 (patch) Import tzdata2019c from ftp://ftp.iana.org/tz/releases/tzdata2019c.tar.gz Summary of changes in tzdata2019c (2019-09-11 08:59:48 -0700): Fiji observes DST from 2019-11-10 to 2020-01-12 Norfolk Island starts observing Australian-style DST Plus historic corrections to time in Turkey (1940-85) South Korea (1948-51) Detroit (US) (1967-8), Perry County (Indiana, US) (pre 1970) Edmonton (CA) (1967, 1969) Vancouver (CA) (1946), Vienna (AT) (1946), Kaliningrad (1945-6). Louisville (US) (1946-50). Brussles (BE) (1892). Hong Kong Winter Time (1941) now listed as being "DST". Summary of changes in tzdata2019b (2019-07-01 00:09:53 -0700): Brazil no longer observes DST Predictions for Morocco extended to 2087. Panestine (March 2019) time zone change date corrected (and guesses for future transitions revised). Historic updates: Honk Kong (1941 - 1947), Italy (1866). @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST format 'leap-seconds.list'. a4 13 # This program uses awk arithmetic. POSIX requires awk to support # exact integer arithmetic only through 10**10, which means for NTP # timestamps this program works only to the year 2216, which is the # year 1900 plus 10**10 seconds. However, in practice # POSIX-conforming awk implementations invariably use IEEE-754 double # and so support exact integers through 2**53. By the year 2216, # POSIX will almost surely require at least 2**53 for awk, so for NTP # timestamps this program should be good until the year 285,428,681 # (the year 1900 plus 2**53 seconds). By then leap seconds will be # long obsolete, as the Earth will likely slow down so much that # there will be more than 25 hours per day and so some other scheme # will be needed. d11 1 a11 1 print "# NIST format leap-seconds.list file, which can be copied from" d13 2 a14 1 print "# or ." d19 1 a19 6 print "# The rules for leap seconds are specified in Annex 1 (Time scales) of:" print "# Standard-frequency and time-signal emissions." print "# International Telecommunication Union - Radiocommunication Sector" print "# (ITU-R) Recommendation TF.460-6 (02/2002)" print "# ." print "# The International Earth Rotation and Reference Systems Service (IERS)" d21 1 a21 1 print "# (a proxy for Earth's angle in space as measured by astronomers)" d28 3 a30 3 print "# There were no leap seconds before 1972, as no official mechanism" print "# accounted for the discrepancy between atomic time (TAI) and the earth's" print "# rotation. The first (\"1 Jan 1972\") data line in leap-seconds.list" d32 7 a38 1 print "# of UTC." d40 1 a40 6 print "# All leap-seconds are Stationary (S) at the given UTC time." print "# The correction (+ or -) is made at the given time, so in the unlikely" print "# event of a negative leap second, a line would look like this:" print "# Leap YEAR MON DAY 23:59:59 - S" print "# Typical lines look like this:" print "# Leap YEAR MON DAY 23:59:60 + S" d54 6 a59 5 # Strip trailing CR, in case the input has CRLF form a la NIST. RS = "\r?\n" sstamp_init() d62 1 a62 1 /^#[ \t]*[Uu]pdated through/ || /^#[ \t]*[Ff]ile expires on/ { d69 1 a69 1 /^[ \t]*#/ { next } d74 4 d84 9 a92 3 sstamp_to_ymdhMs(NTP_timestamp - 1, ss_NTP) printf "Leap\t%d\t%s\t%d\t%s\tS\n", \ ss_year, monthabbr[ss_month], ss_mday, sign d105 2 a106 9 sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec a108 103 # sstamp_to_ymdhMs - convert seconds timestamp to date and time # # Call as: # # sstamp_to_ymdhMs(sstamp, epoch_days) # # where: # # sstamp - is the seconds timestamp. # epoch_days - is the timestamp epoch in Gregorian days since 1600-03-01. # ss_NTP is appropriate for an NTP sstamp. # # Both arguments should be nonnegative integers. # On return, the following variables are set based on sstamp: # # ss_year - Gregorian calendar year # ss_month - month of the year (1-January to 12-December) # ss_mday - day of the month (1-31) # ss_hour - hour (0-23) # ss_min - minute (0-59) # ss_sec - second (0-59) # ss_wday - day of week (0-Sunday to 6-Saturday) # # The function sstamp_init should be called prior to using sstamp_to_ymdhMs. function sstamp_init() { # Days in month N, where March is month 0 and January month 10. ss_mon_days[ 0] = 31 ss_mon_days[ 1] = 30 ss_mon_days[ 2] = 31 ss_mon_days[ 3] = 30 ss_mon_days[ 4] = 31 ss_mon_days[ 5] = 31 ss_mon_days[ 6] = 30 ss_mon_days[ 7] = 31 ss_mon_days[ 8] = 30 ss_mon_days[ 9] = 31 ss_mon_days[10] = 31 # Counts of days in a Gregorian year, quad-year, century, and quad-century. ss_year_days = 365 ss_quadyear_days = ss_year_days * 4 + 1 ss_century_days = ss_quadyear_days * 25 - 1 ss_quadcentury_days = ss_century_days * 4 + 1 # Standard day epochs, suitable for epoch_days. # ss_MJD = 94493 # ss_POSIX = 135080 ss_NTP = 109513 } function sstamp_to_ymdhMs(sstamp, epoch_days, \ quadcentury, century, quadyear, year, month, day) { ss_hour = int(sstamp / 3600) % 24 ss_min = int(sstamp / 60) % 60 ss_sec = sstamp % 60 # Start with a count of days since 1600-03-01 Gregorian. day = epoch_days + int(sstamp / (24 * 60 * 60)) # Compute a year-month-day date with days of the month numbered # 0-30, months (March-February) numbered 0-11, and years that start # start March 1 and end after the last day of February. A quad-year # starts on March 1 of a year evenly divisible by 4 and ends after # the last day of February 4 years later. A century starts on and # ends before March 1 in years evenly divisible by 100. # A quad-century starts on and ends before March 1 in years divisible # by 400. While the number of days in a quad-century is a constant, # the number of days in each other time period can vary by 1. # Any variation is in the last day of the time period (there might # or might not be a February 29) where it is easy to deal with. quadcentury = int(day / ss_quadcentury_days) day -= quadcentury * ss_quadcentury_days ss_wday = (day + 3) % 7 century = int(day / ss_century_days) century -= century == 4 day -= century * ss_century_days quadyear = int(day / ss_quadyear_days) day -= quadyear * ss_quadyear_days year = int(day / ss_year_days) year -= year == 4 day -= year * ss_year_days for (month = 0; month < 11; month++) { if (day < ss_mon_days[month]) break day -= ss_mon_days[month] } # Convert the date to a conventional day of month (1-31), # month (1-12, January-December) and Gregorian year. ss_mday = day + 1 if (month <= 9) { ss_month = month + 3 } else { ss_month = month - 9 year++ } ss_year = 1600 + quadcentury * 400 + century * 100 + quadyear * 4 + year } @ 1.1.1.8.2.2 log @Pull up the following, requested by kre in ticket #942: external/public-domain/tz/dist/Makefile up to 1.1.1.26 external/public-domain/tz/dist/NEWS up to 1.1.1.29 external/public-domain/tz/dist/TZDATA_VERSION up to 1.19 external/public-domain/tz/dist/africa up to 1.1.1.22 external/public-domain/tz/dist/asia up to 1.1.1.25 external/public-domain/tz/dist/backward up to 1.1.1.11 external/public-domain/tz/dist/backzone up to 1.1.1.18 external/public-domain/tz/dist/europe up to 1.1.1.26 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.13 external/public-domain/tz/dist/leapseconds up to 1.1.1.15 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.10 external/public-domain/tz/dist/northamerica up to 1.1.1.25 external/public-domain/tz/dist/theory.html up to 1.1.1.10 external/public-domain/tz/dist/version up to 1.1.1.16 external/public-domain/tz/dist/zone.tab up to 1.1.1.18 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.20 doc/3RDPARTY (apply patch) distrib/sets/lists/base/mi (apply patch) Import tzdata2020a from ftp://ftp.iana.org/tz/releases/tzdata2020a.tar.gz Summary of changes in tzdata2020a (2020-04-23 16:03:47 -0700): Morocco resumes summer time on 2020-05-31, not 2020-05-24. Canada's Yukon advanced to -07 year-round on 2020-03-08 (summer time will not end this year).. America/Nuuk renamed from America/Godthab (both names now exist). @ text @d71 3 a76 3 # In case the input has CRLF form a la NIST. { sub(/\r$/, "") } a102 11 sstamp_to_ymdhMs(expires, ss_NTP) print "" print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec @ 1.1.1.8.2.3 log @Pull up the following, requested by kre in #1108: external/public-domain/tz/dist/systemv delete external/public-domain/tz/dist/pacificnew delete external/public-domain/tz/dist/yearistype.sh delete external/public-domain/tz/dist/Makefile up to 1.1.1.27 external/public-domain/tz/dist/NEWS up to 1.1.1.30 external/public-domain/tz/dist/README up to 1.1.1.9 external/public-domain/tz/dist/TZDATA_VERSION up to 1.20 external/public-domain/tz/dist/africa up to 1.1.1.23 external/public-domain/tz/dist/antarctica up to 1.1.1.13 external/public-domain/tz/dist/asia up to 1.1.1.26 external/public-domain/tz/dist/australasia up to 1.1.1.19 external/public-domain/tz/dist/backzone up to 1.1.1.19 external/public-domain/tz/dist/europe up to 1.1.1.27 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.14 external/public-domain/tz/dist/leapseconds up to 1.1.1.16 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.11 external/public-domain/tz/dist/northamerica up to 1.1.1.26 external/public-domain/tz/dist/southamerica up to 1.1.1.17 external/public-domain/tz/dist/theory.html up to 1.1.1.11 external/public-domain/tz/dist/version up to 1.1.1.17 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.7 external/public-domain/tz/dist/zoneinfo2tdf.pl up to 1.1.1.4 external/public-domain/tz/share/zoneinfo/Makefile 1.4 distrib/sets/lists/base/mi 1.1266 doc/3RDPARTY 1.1750 (patch) Import tzdata2020b: Revised predictions for Morocco's changes starting in 2023. Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08. Macquarie Island has stayed in sync with Tasmania since 2011. Casey, Antarctica is at +08 in winter and +11 in summer. @ text @d108 2 a109 4 if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } @ 1.1.1.8.2.4 log @Pull up the following, requested by kre in ticket #1243: external/public-domain/tz/dist/Makefile up to 1.1.1.30 external/public-domain/tz/dist/NEWS up to 1.1.1.34 external/public-domain/tz/dist/TZDATA_VERSION up to 1.24 external/public-domain/tz/dist/africa up to 1.1.1.25 external/public-domain/tz/dist/asia up to 1.1.1.28 external/public-domain/tz/dist/australasia up to 1.1.1.21 external/public-domain/tz/dist/backward up to 1.1.1.12 external/public-domain/tz/dist/backzone up to 1.1.1.20 external/public-domain/tz/dist/etcetera up to 1.1.1.5 external/public-domain/tz/dist/europe up to 1.1.1.30 external/public-domain/tz/dist/leap-seconds.list up to 1.1.1.15 external/public-domain/tz/dist/leapseconds up to 1.1.1.18 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.12 external/public-domain/tz/dist/northamerica up to 1.1.1.27 external/public-domain/tz/dist/theory.html up to 1.1.1.12 external/public-domain/tz/dist/version up to 1.1.1.21 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.6 external/public-domain/tz/dist/zone.tab up to 1.1.1.19 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.21 doc/3RDPARTY apply patch Import tzdata2020f from ftp://ftp.iana.org/tz/releases/tzdata2020f.tar.gz Release 2020f - 2020-12-29 00:17:46 -0800 No changes to tzdata, just to a part of the build procedure not used on NetBSD Release 2020e - 2020-12-22 15:14:34 -0800 Volgograd switched to Moscow time on 2020-12-27 at 02:00. Correct many pre-1986 transitions, fixing entries originally derived from Shanks. The fixes include changes to: Australia, Bahamas, Bermuda, Belize, Ghana, Israel and Palestine, Kenya and adjacent, Nigeria and adjacent, Seychelles, Vanuatu Australia/Currie has been moved to the 'backward' file and its corrected data moved to the 'backzone' file. To better match legislation in Turks and Caicos, the 2015 shift to year-round observance of -04 is now modeled as AST throughout before returning to Eastern Time with US DST in 2018, rather than as maintaining EDT until 2015-11-01. @ text @a26 4 print "# The NIST file is used instead of its IERS upstream counterpart" print "# " print "# because under US law the NIST file is public domain" print "# whereas the IERS file's copyright and license status is unclear." @ 1.1.1.8.2.5 log @Pull up the following, requested by kre in ticket #1782: external/public-domain/tz/dist/checknow.awk up to 1.1.1.1 external/public-domain/tz/dist/zonenow.tab up to 1.1.1.1 external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.8 external/public-domain/tz/dist/Makefile up to 1.1.1.37 external/public-domain/tz/dist/NEWS up to 1.1.1.44 external/public-domain/tz/dist/README up to 1.1.1.11 external/public-domain/tz/dist/TZDATA_VERSION up to 1.36 external/public-domain/tz/dist/africa up to 1.1.1.32 external/public-domain/tz/dist/antarctica up to 1.1.1.18 external/public-domain/tz/dist/asia up to 1.11 external/public-domain/tz/dist/australasia up to 1.8 external/public-domain/tz/dist/backward up to 1.11 external/public-domain/tz/dist/backzone up to 1.1.1.27 external/public-domain/tz/dist/checklinks.awk up to 1.1.1.4 external/public-domain/tz/dist/checktab.awk up to 1.1.1.13 external/public-domain/tz/dist/etcetera up to 1.1.1.7 external/public-domain/tz/dist/europe up to 1.1.1.38 external/public-domain/tz/dist/iso3166.tab up to 1.1.1.9 external/public-domain/tz/dist/leap-seconds.list up to 1.6 external/public-domain/tz/dist/leapseconds up to 1.6 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.13 external/public-domain/tz/dist/northamerica up to 1.1.1.34 external/public-domain/tz/dist/southamerica up to 1.1.1.24 external/public-domain/tz/dist/theory.html up to 1.1.1.18 external/public-domain/tz/dist/version up to 1.11 external/public-domain/tz/dist/ziguard.awk up to 1.1.1.10 external/public-domain/tz/dist/zone.tab up to 1.1.1.26 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.27 distrib/sets/lists/base/mi (apply patch) doc/3RDPARTY (apply patch) Update tzdata to 2023d. @ text @d107 2 d110 5 a114 15 if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec } else { print "# (No Expires line, since the expires time is unknown.)" d116 3 d127 9 a135 16 if (updated) { sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(updated time unknown)" } if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(expires time unknown)" } @ 1.1.1.8.2.6 log @Pullup the following, requested by kre in ticket #1796: external/public-domain/tz/dist/Makefile up to 1.1.1.38 external/public-domain/tz/dist/NEWS up to 1.1.1.45 external/public-domain/tz/dist/TZDATA_VERSION up to 1.37 external/public-domain/tz/dist/africa up to 1.1.1.33 external/public-domain/tz/dist/asia up to 1.12 external/public-domain/tz/dist/australasia up to 1.9 external/public-domain/tz/dist/checknow.awk up to 1.1.1.2 external/public-domain/tz/dist/etcetera up to 1.1.1.8 external/public-domain/tz/dist/europe up to 1.1.1.39 external/public-domain/tz/dist/leap-seconds.list up to 1.7 external/public-domain/tz/dist/leapseconds up to 1.7 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.14 external/public-domain/tz/dist/northamerica up to 1.1.1.35 external/public-domain/tz/dist/southamerica up to 1.1.1.25 external/public-domain/tz/dist/theory.html up to 1.1.1.19 external/public-domain/tz/dist/version up to 1.12 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.9 external/public-domain/tz/dist/zonenow.tab up to 1.1.1.2 doc/3RDPARTY apply patch Updated tzdata to 2024a @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST/IERS format 'leap-seconds.list'. d24 4 a27 1 print "# NIST/IERS format leap-seconds.list file, which can be copied from" d29 2 a30 2 print "# or, in a variant with different comments, from" print "# ." @ 1.1.1.9 log @Import tzdata2019c from ftp://ftp.iana.org/tz/releases/tzdata2019c.tar.gz Summary of changes in tzdata2019c (2019-09-11 08:59:48 -0700): Fiji observes DST from 2019-11-10 to 2020-01-12 Norfolk Island starts observing Australian-style DST Plus historic corrections to time in Turkey (1940-85) South Korea (1948-51) Detroit (US) (1967-8), Perry County (Indiana, US) (pre 1970) Edmonton (CA) (1967, 1969) Vancouver (CA) (1946), Vienna (AT) (1946), Kaliningrad (1945-6). Louisville (US) (1946-50). Brussles (BE) (1892). Hong Kong Winter Time (1941) now listed as being "DST". Summary of changes in tzdata2019b (2019-07-01 00:09:53 -0700): Brazil no longer observes DST Predictions for Morocco extended to 2087. Panestine (March 2019) time zone change date corrected (and guesses for future transitions revised). Historic updates: Honk Kong (1941 - 1947), Italy (1866). @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST format 'leap-seconds.list'. a4 13 # This program uses awk arithmetic. POSIX requires awk to support # exact integer arithmetic only through 10**10, which means for NTP # timestamps this program works only to the year 2216, which is the # year 1900 plus 10**10 seconds. However, in practice # POSIX-conforming awk implementations invariably use IEEE-754 double # and so support exact integers through 2**53. By the year 2216, # POSIX will almost surely require at least 2**53 for awk, so for NTP # timestamps this program should be good until the year 285,428,681 # (the year 1900 plus 2**53 seconds). By then leap seconds will be # long obsolete, as the Earth will likely slow down so much that # there will be more than 25 hours per day and so some other scheme # will be needed. d11 1 a11 1 print "# NIST format leap-seconds.list file, which can be copied from" d13 2 a14 1 print "# or ." d19 1 a19 6 print "# The rules for leap seconds are specified in Annex 1 (Time scales) of:" print "# Standard-frequency and time-signal emissions." print "# International Telecommunication Union - Radiocommunication Sector" print "# (ITU-R) Recommendation TF.460-6 (02/2002)" print "# ." print "# The International Earth Rotation and Reference Systems Service (IERS)" d21 1 a21 1 print "# (a proxy for Earth's angle in space as measured by astronomers)" d28 3 a30 3 print "# There were no leap seconds before 1972, as no official mechanism" print "# accounted for the discrepancy between atomic time (TAI) and the earth's" print "# rotation. The first (\"1 Jan 1972\") data line in leap-seconds.list" d32 7 a38 1 print "# of UTC." d40 1 a40 6 print "# All leap-seconds are Stationary (S) at the given UTC time." print "# The correction (+ or -) is made at the given time, so in the unlikely" print "# event of a negative leap second, a line would look like this:" print "# Leap YEAR MON DAY 23:59:59 - S" print "# Typical lines look like this:" print "# Leap YEAR MON DAY 23:59:60 + S" d54 6 a59 5 # Strip trailing CR, in case the input has CRLF form a la NIST. RS = "\r?\n" sstamp_init() d62 1 a62 1 /^#[ \t]*[Uu]pdated through/ || /^#[ \t]*[Ff]ile expires on/ { d69 1 a69 1 /^[ \t]*#/ { next } d74 4 d84 9 a92 3 sstamp_to_ymdhMs(NTP_timestamp - 1, ss_NTP) printf "Leap\t%d\t%s\t%d\t%s\tS\n", \ ss_year, monthabbr[ss_month], ss_mday, sign d105 2 a106 9 sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec a108 103 # sstamp_to_ymdhMs - convert seconds timestamp to date and time # # Call as: # # sstamp_to_ymdhMs(sstamp, epoch_days) # # where: # # sstamp - is the seconds timestamp. # epoch_days - is the timestamp epoch in Gregorian days since 1600-03-01. # ss_NTP is appropriate for an NTP sstamp. # # Both arguments should be nonnegative integers. # On return, the following variables are set based on sstamp: # # ss_year - Gregorian calendar year # ss_month - month of the year (1-January to 12-December) # ss_mday - day of the month (1-31) # ss_hour - hour (0-23) # ss_min - minute (0-59) # ss_sec - second (0-59) # ss_wday - day of week (0-Sunday to 6-Saturday) # # The function sstamp_init should be called prior to using sstamp_to_ymdhMs. function sstamp_init() { # Days in month N, where March is month 0 and January month 10. ss_mon_days[ 0] = 31 ss_mon_days[ 1] = 30 ss_mon_days[ 2] = 31 ss_mon_days[ 3] = 30 ss_mon_days[ 4] = 31 ss_mon_days[ 5] = 31 ss_mon_days[ 6] = 30 ss_mon_days[ 7] = 31 ss_mon_days[ 8] = 30 ss_mon_days[ 9] = 31 ss_mon_days[10] = 31 # Counts of days in a Gregorian year, quad-year, century, and quad-century. ss_year_days = 365 ss_quadyear_days = ss_year_days * 4 + 1 ss_century_days = ss_quadyear_days * 25 - 1 ss_quadcentury_days = ss_century_days * 4 + 1 # Standard day epochs, suitable for epoch_days. # ss_MJD = 94493 # ss_POSIX = 135080 ss_NTP = 109513 } function sstamp_to_ymdhMs(sstamp, epoch_days, \ quadcentury, century, quadyear, year, month, day) { ss_hour = int(sstamp / 3600) % 24 ss_min = int(sstamp / 60) % 60 ss_sec = sstamp % 60 # Start with a count of days since 1600-03-01 Gregorian. day = epoch_days + int(sstamp / (24 * 60 * 60)) # Compute a year-month-day date with days of the month numbered # 0-30, months (March-February) numbered 0-11, and years that start # start March 1 and end after the last day of February. A quad-year # starts on March 1 of a year evenly divisible by 4 and ends after # the last day of February 4 years later. A century starts on and # ends before March 1 in years evenly divisible by 100. # A quad-century starts on and ends before March 1 in years divisible # by 400. While the number of days in a quad-century is a constant, # the number of days in each other time period can vary by 1. # Any variation is in the last day of the time period (there might # or might not be a February 29) where it is easy to deal with. quadcentury = int(day / ss_quadcentury_days) day -= quadcentury * ss_quadcentury_days ss_wday = (day + 3) % 7 century = int(day / ss_century_days) century -= century == 4 day -= century * ss_century_days quadyear = int(day / ss_quadyear_days) day -= quadyear * ss_quadyear_days year = int(day / ss_year_days) year -= year == 4 day -= year * ss_year_days for (month = 0; month < 11; month++) { if (day < ss_mon_days[month]) break day -= ss_mon_days[month] } # Convert the date to a conventional day of month (1-31), # month (1-12, January-December) and Gregorian year. ss_mday = day + 1 if (month <= 9) { ss_month = month + 3 } else { ss_month = month - 9 year++ } ss_year = 1600 + quadcentury * 400 + century * 100 + quadyear * 4 + year } @ 1.1.1.10 log @Import tzdata2020a from ftp://ftp.iana.org/tz/releases/tzdata2020a.tar.gz Summary of changes in tzdata2020a (2020-04-23 16:03:47 -0700): Morocco resumes summer time on 2020-05-31, not 2020-05-24. Canada's Yukon advanced to -07 year-round on 2020-03-08 (summer time will not end this year).. America/Nuuk renamed from America/Godthab (both names now exist). @ text @d71 3 a76 3 # In case the input has CRLF form a la NIST. { sub(/\r$/, "") } a102 11 sstamp_to_ymdhMs(expires, ss_NTP) print "" print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec @ 1.1.1.11 log @Import tzdata2020b from ftp://ftp.iana.org/tz/releases/tzdata2020b.tar.gz Summary of changes in tzdata2020b (2020-10-06 18:35:04 -0700): Revised predictions for Morocco's changes starting in 2023. Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08. Macquarie Island has stayed in sync with Tasmania since 2011. Casey, Antarctica is at +08 in winter and +11 in summer. @ text @d108 2 a109 4 if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } @ 1.1.1.12 log @Import tzdata2020f from ftp://ftp.iana.org/tz/releases/tzdata2020f.tar.gz Release 2020f - 2020-12-29 00:17:46 -0800 No changes to tzdata, just to a part of the build procedure not used on NetBSD Release 2020e - 2020-12-22 15:14:34 -0800 Volgograd switched to Moscow time on 2020-12-27 at 02:00. Correct many pre-1986 transitions, fixing entries originally derived from Shanks. The fixes include changes to: Australia, Bahamas, Bermuda, Belize, Ghana, Israel and Palestine, Kenya and adjacent, Nigeria and adjacent, Seychelles, Vanuatu Australia/Currie has been moved to the 'backward' file and its corrected data moved to the 'backzone' file. To better match legislation in Turks and Caicos, the 2015 shift to year-round observance of -04 is now modeled as AST throughout before returning to Eastern Time with US DST in 2018, rather than as maintaining EDT until 2015-11-01. @ text @a26 4 print "# The NIST file is used instead of its IERS upstream counterpart" print "# " print "# because under US law the NIST file is public domain" print "# whereas the IERS file's copyright and license status is unclear." @ 1.1.1.12.6.1 log @Pull up the following, requested by kre in ticket #149: external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.8 external/public-domain/tz/dist/Makefile up to 1.1.1.36 external/public-domain/tz/dist/NEWS up to 1.1.1.43 external/public-domain/tz/dist/TZDATA_VERSION up to 1.35 external/public-domain/tz/dist/africa up to 1.1.1.31 external/public-domain/tz/dist/antarctica up to 1.1.1.17 external/public-domain/tz/dist/asia up to 1.10 external/public-domain/tz/dist/australasia up to 1.7 external/public-domain/tz/dist/backward up to 1.11 external/public-domain/tz/dist/backzone up to 1.1.1.26 external/public-domain/tz/dist/checktab.awk up to 1.1.1.12 external/public-domain/tz/dist/europe up to 1.1.1.37 external/public-domain/tz/dist/iso3166.tab up to 1.1.1.8 external/public-domain/tz/dist/leap-seconds.list up to 1.5 external/public-domain/tz/dist/leapseconds up to 1.5 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.13 external/public-domain/tz/dist/northamerica up to 1.1.1.33 external/public-domain/tz/dist/southamerica up to 1.1.1.23 external/public-domain/tz/dist/theory.html up to 1.1.1.18 external/public-domain/tz/dist/version up to 1.10 external/public-domain/tz/dist/zone.tab up to 1.1.1.25 external/public-domain/tz/dist/zone1970.tab up to 1.1.1.26 doc/3RDPARTY (apply patch) sync with HEAD: updated tzdata to 2023c @ text @d107 2 d110 5 a114 15 if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec } else { print "# (No Expires line, since the expires time is unknown.)" d116 3 d127 9 a135 16 if (updated) { sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(updated time unknown)" } if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(expires time unknown)" } @ 1.1.1.12.6.2 log @Pull up the following, requested by kre in ticket #586: external/public-domain/tz/dist/Makefile up to 1.1.1.38 external/public-domain/tz/dist/NEWS up to 1.1.1.45 external/public-domain/tz/dist/TZDATA_VERSION up to 1.37 external/public-domain/tz/dist/africa up to 1.1.1.33 external/public-domain/tz/dist/asia up to 1.12 external/public-domain/tz/dist/australasia up to 1.9 external/public-domain/tz/dist/checknow.awk up to 1.1.1.2 external/public-domain/tz/dist/etcetera up to 1.1.1.8 external/public-domain/tz/dist/europe up to 1.1.1.39 external/public-domain/tz/dist/leap-seconds.list up to 1.7 external/public-domain/tz/dist/leapseconds up to 1.7 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.14 external/public-domain/tz/dist/northamerica up to 1.1.1.35 external/public-domain/tz/dist/southamerica up to 1.1.1.25 external/public-domain/tz/dist/theory.html up to 1.1.1.19 external/public-domain/tz/dist/version up to 1.12 external/public-domain/tz/dist/zishrink.awk up to 1.1.1.9 external/public-domain/tz/dist/zonenow.tab up to 1.1.1.2 Updated tzdata to 2024a @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST/IERS format 'leap-seconds.list'. d24 4 a27 1 print "# NIST/IERS format leap-seconds.list file, which can be copied from" d29 2 a30 2 print "# or, in a variant with different comments, from" print "# ." @ 1.1.1.13 log @Import tzdata2023a from https://github.com/JodaOrg/global-tz/releases/download/2023agtz/tzdata2023agtz.tar.gz Summary of changes in tzdata2023a (2023-03-22 12:39:33 -0700): * Starting in 2023, Egypt will observe DST from April's last Friday through October's last Thursday. * In 2023 Morocco's summer time start transition after Ramadan will occur April 23, not April 30. * This year Palestine will delay the start of summer time from March 25 to April 29 due to Ramadan. * Much of Greenland, represented by America/Nuuk, will continue to observe DST using European Union rules. * America/Yellowknife has changed from a Zone to a backward compatibility Link, as it no longer differs from America/Edmonton since 1970. * Changes to commentary. @ text @d107 2 d110 5 a114 15 if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) print "# UTC timestamp when this leap second list expires." print "# Any additional leap seconds will come after this." if (! EXPIRES_LINE) { print "# This Expires line is commented out for now," print "# so that pre-2020a zic implementations do not reject this file." } printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \ EXPIRES_LINE ? "" : "#", \ ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec } else { print "# (No Expires line, since the expires time is unknown.)" d116 3 d127 9 a135 16 if (updated) { sstamp_to_ymdhMs(updated, ss_NTP) printf "#updated %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ updated - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(updated time unknown)" } if (expires) { sstamp_to_ymdhMs(expires, ss_NTP) printf "#expires %d (%.4d-%.2d-%.2d %.2d:%.2d:%.2d UTC)\n", \ expires - epoch_minus_NTP, \ ss_year, ss_month, ss_mday, ss_hour, ss_min, ss_sec } else { print "#(expires time unknown)" } @ 1.1.1.14 log @Import tzdata2024a from https://github.com/JodaOrg/global-tz/releases/download/2024agtz/tzdata2024agtz.tar.gz Summary of changes in tzdata2024a (2024-02-01 09:28:56 -0800): * Kazakhstan unifies on UTC+5. * Palestine summer time begins a week later than previously predicted in 2024 and 2025. * Historic corrections for Asia/Ho_Chi_Minh (1955) America/Toronto (1947-9) and America/Miquelon (1911). @ text @d1 1 a1 1 # Generate zic format 'leapseconds' from NIST/IERS format 'leap-seconds.list'. d24 4 a27 1 print "# NIST/IERS format leap-seconds.list file, which can be copied from" d29 2 a30 2 print "# or, in a variant with different comments, from" print "# ." @ 1.1.1.14.4.1 log @Pull up the following, requested by kre in ticket #215: external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.10 external/public-domain/tz/dist/Makefile up to 1.5 external/public-domain/tz/dist/NEWS up to 1.6 external/public-domain/tz/dist/README up to 1.3 external/public-domain/tz/dist/SECURITY up to 1.1.1.2 external/public-domain/tz/dist/TZDATA_VERSION up to 1.44 external/public-domain/tz/dist/africa up to 1.3 external/public-domain/tz/dist/antarctica up to 1.4 external/public-domain/tz/dist/asia up to 1.16 external/public-domain/tz/dist/australasia up to 1.12 external/public-domain/tz/dist/backzone up to 1.4 external/public-domain/tz/dist/calendars up to 1.1.1.3 external/public-domain/tz/dist/checknow.awk up to 1.4 external/public-domain/tz/dist/etcetera up to 1.4 external/public-domain/tz/dist/europe up to 1.5 external/public-domain/tz/dist/iso3166.tab up to 1.1.1.10 external/public-domain/tz/dist/leap-seconds.list up to 1.11 external/public-domain/tz/dist/leapseconds up to 1.11 external/public-domain/tz/dist/leapseconds.awk up to 1.1.1.15 external/public-domain/tz/dist/northamerica up to 1.5 external/public-domain/tz/dist/southamerica up to 1.5 external/public-domain/tz/dist/theory.html up to 1.5 external/public-domain/tz/dist/version up to 1.17 external/public-domain/tz/dist/zone1970.tab up to 1.5 external/public-domain/tz/dist/zonenow.tab up to 1.6 doc/3RDPARTY (apply patch) Import tzdata 2026a (using the 2026agtz data). @ text @d26 1 a26 2 print "# or via a less-secure protocol and with different comments and" print "# less volatile last-modified and expiration timestamps, from" d128 1 a128 7 print "# Here are POSIX timestamps for the data in this file." print "# \"#updated\" gives the last time the leap seconds data changed" print "# or, if this file was derived from the IERS leap-seconds.list," print "# the last time that file changed in any way." print "# \"#expires\" gives the first time this file might be wrong;" print "# if this file was derived from the IERS leap-seconds.list," print "# this is typically a bit less than one year after \"updated\"." @ 1.1.1.15 log @Import tzdata2025c from https://github.com/JodaOrg/global-tz/releases/download/2025cgtz/tzdata2025cgtz.tar.gz Summary of changes in tzdata2025c (2025-12-10 14:42:37 -0800): * Baja California agreed with California’s DST rules in 1953 and in 1961 through 1975, instead of observing standard time all year. * Changes to commentary. @ text @d26 1 a26 2 print "# or via a less-secure protocol and with different comments and" print "# less volatile last-modified and expiration timestamps, from" d128 1 a128 7 print "# Here are POSIX timestamps for the data in this file." print "# \"#updated\" gives the last time the leap seconds data changed" print "# or, if this file was derived from the IERS leap-seconds.list," print "# the last time that file changed in any way." print "# \"#expires\" gives the first time this file might be wrong;" print "# if this file was derived from the IERS leap-seconds.list," print "# this is typically a bit less than one year after \"updated\"." @ 1.1.1.1.6.1 log @file leapseconds.awk was added on branch tls-maxphys on 2014-08-20 00:00:21 +0000 @ text @d1 66 @ 1.1.1.1.6.2 log @Rebase to HEAD as of a few days ago. @ text @a0 66 # Generate the 'leapseconds' file from 'leap-seconds.list'. # This file is in the public domain. BEGIN { print "# Allowance for leapseconds added to each timezone file." print "" print "# This file is in the public domain." print "" print "# This file is generated automatically from the data in the public-domain" print "# leap-seconds.list file available from most NIST time servers." print "# If the URL does not work," print "# you should be able to pick up leap-seconds.list from a secondary NIST server." print "# For more about leap-seconds.list, please see" print "# The NTP Timescale and Leap Seconds" print "# ." print "" print "# The International Earth Rotation Service periodically uses leap seconds" print "# to keep UTC to within 0.9 s of UT1" print "# (which measures the true angular orientation of the earth in space); see" print "# Terry J Quinn, The BIPM and the accurate measure of time," print "# Proc IEEE 79, 7 (July 1991), 894-905 ." print "# There were no leap seconds before 1972, because the official mechanism" print "# accounting for the discrepancy between atomic time and the earth's rotation" print "# did not exist until the early 1970s." print "" print "# The correction (+ or -) is made at the given time, so lines" print "# will typically look like:" print "# Leap YEAR MON DAY 23:59:60 + R/S" print "# or" print "# Leap YEAR MON DAY 23:59:59 - R/S" print "" print "# If the leapsecond is Rolling (R) the given time is local time." print "# If the leapsecond is Stationary (S) the given time is UTC." print "" print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S" } /^ *$/ { next } /^#/ { next } { NTP_timestamp = $1 TAI_minus_UTC = $2 hash_mark = $3 one = $4 month = $5 year = $6 if (old_TAI_minus_UTC) { if (old_TAI_minus_UTC < TAI_minus_UTC) { sign = "23:59:60\t+" } else { sign = "23:59:59\t-" } if (month == "Jan") { year--; month = "Dec"; day = 31 } else if (month == "Jul") { month = "Jun"; day = 30 } printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign } old_TAI_minus_UTC = TAI_minus_UTC } @ 1.1.1.1.2.1 log @file leapseconds.awk was added on branch tls-earlyentropy on 2014-08-10 06:51:01 +0000 @ text @d1 66 @ 1.1.1.1.2.2 log @Rebase. @ text @a0 66 # Generate the 'leapseconds' file from 'leap-seconds.list'. # This file is in the public domain. BEGIN { print "# Allowance for leapseconds added to each timezone file." print "" print "# This file is in the public domain." print "" print "# This file is generated automatically from the data in the public-domain" print "# leap-seconds.list file available from most NIST time servers." print "# If the URL does not work," print "# you should be able to pick up leap-seconds.list from a secondary NIST server." print "# For more about leap-seconds.list, please see" print "# The NTP Timescale and Leap Seconds" print "# ." print "" print "# The International Earth Rotation Service periodically uses leap seconds" print "# to keep UTC to within 0.9 s of UT1" print "# (which measures the true angular orientation of the earth in space); see" print "# Terry J Quinn, The BIPM and the accurate measure of time," print "# Proc IEEE 79, 7 (July 1991), 894-905 ." print "# There were no leap seconds before 1972, because the official mechanism" print "# accounting for the discrepancy between atomic time and the earth's rotation" print "# did not exist until the early 1970s." print "" print "# The correction (+ or -) is made at the given time, so lines" print "# will typically look like:" print "# Leap YEAR MON DAY 23:59:60 + R/S" print "# or" print "# Leap YEAR MON DAY 23:59:59 - R/S" print "" print "# If the leapsecond is Rolling (R) the given time is local time." print "# If the leapsecond is Stationary (S) the given time is UTC." print "" print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S" } /^ *$/ { next } /^#/ { next } { NTP_timestamp = $1 TAI_minus_UTC = $2 hash_mark = $3 one = $4 month = $5 year = $6 if (old_TAI_minus_UTC) { if (old_TAI_minus_UTC < TAI_minus_UTC) { sign = "23:59:60\t+" } else { sign = "23:59:59\t-" } if (month == "Jan") { year--; month = "Dec"; day = 31 } else if (month == "Jul") { month = "Jun"; day = 30 } printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign } old_TAI_minus_UTC = TAI_minus_UTC } @