zulip/tools/setup
Anders Kaseorg 0409e4823f settings: Compute time zone UTC offsets on the client.
Commit b0844109ca “settings: Show UTC
offsets in timezone dropdown” (#33609) baked a fixed UTC offset for
each time zone into the generated timezones.json at installation time.
UTC offsets are not constants: they change with daylight saving
time (and tzdata updates), so the baked values were wrong for much of
the year.  The Python formatting was also incorrect for zones with
negative fractional-hour offsets (divmod rounds toward negative
infinity, so America/St_Johns at UTC-03:30 rendered as UTC-4:30).

Revert the generated file to a plain list of names, and compute each
offset in the web app when the picker is rendered, reusing the
UTC±HH:MM formatting that message timestamp tooltips use.  Computing
all 446 offsets takes ~50ms the first time and ~1ms once @date-fns/tz
has cached its formatters.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2026-07-05 11:24:32 -07:00
..
apns tools: Add script apns/prep-cert. 2022-12-07 22:07:36 -08:00
dev-vagrant-docker dev-vagrant-docker: Update Vagrant public SSH key. 2026-03-25 04:05:35 -07:00
emoji emoji: Fix aliases for dotted_six_pointed_star. 2025-10-17 15:34:16 -07:00
__init__.py Add __init__.py to tools/ and tools/setup/. 2016-07-20 18:20:37 -07:00
bootstrap-aws-installer bootstrap-aws-installer: Lock root password. 2026-05-06 19:37:13 +00:00
build_pygments_data typeahead: Replace code block language hint text with more clear options 2025-05-01 16:36:20 -07:00
build_supported_browser_regex.ts ui_init: Show unsupported browser warning on load. 2026-01-12 16:34:54 -08:00
build_timezone_values settings: Compute time zone UTC offsets on the client. 2026-07-05 11:24:32 -07:00
dev-motd run-dev: Drop .py from script name. 2023-03-03 18:02:37 -08:00
generate_bots_integrations_static_files.py integration-docs: Migrate PythonAPIIntegration docs. 2025-03-26 11:19:31 -07:00
generate_integration_bots_avatars.py integrations: Convert is_enabled to is_enabled_in_catalog, wire it. 2026-01-06 09:24:28 -08:00
generate_landing_page_images.py hello: Add interactive block showing basic usage. 2024-10-10 11:42:29 -07:00
generate-fixtures shfmt: Reformat shell scripts with shfmt. 2020-10-15 15:16:00 -07:00
generate-test-credentials e2e-tests: Move test credentials to a JSON file. 2024-12-01 22:14:35 -08:00
install-aws-server kandra: Create a tmp mountpoint for frontend hosts. 2026-01-07 11:13:12 -08:00
install-shellcheck install-shellcheck: Upgrade ShellCheck from 0.10.0 to 0.11.0. 2025-08-04 13:23:33 -07:00
install-shfmt install-shfmt: Upgrade shfmt from 3.13.0 to 3.13.1. 2026-04-21 16:46:02 -07:00
install-tusd puppet: Update dependencies. 2026-02-24 08:59:08 -08:00
lang.json typeahead: Replace code block language hint text with more clear options 2025-05-01 16:36:20 -07:00
optimize-svg optimize-svg: Add an optional argument to optimize single files. 2024-11-21 10:49:05 -08:00
pack-local-script pack-local-script: Match mode of file outside of packing. 2024-02-07 10:42:12 -08:00
postgresql-init-dev-db setup: Fix postgres-init-dev-db failure when OS user is 'zulip'. 2026-01-21 09:55:20 -08:00
postgresql-init-test-db tools: Rename postgres to postgresql in tool names. 2020-10-28 11:57:02 -07:00
provision-codespace provision: Add native support for GitHub Codespaces. 2026-04-26 22:28:01 -07:00
vagrant-provision Vagrantfile: Share the checkout at the host’s path. 2026-04-23 09:18:20 -07:00