zulip/tools
Anders Kaseorg e96ede0ef6 page_params: Split out state data for current user.
For spectators, the chunk of page_params that originates from
do_events_register isn’t assigned until ui_init.js.  That means the
TypeScript type of page_params is mostly a lie during module load
time: reading a parameter too early silently results in undefined
rather than the declared type, with unpredictable results later on.

We want to make such an early read into an immediate runtime error,
for both users and spectators consistently, and pave the way for
runtime validation of the page_params type.  As a first step, split
out the subset of fields that pertain to the current user.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-02-15 10:22:52 -08:00
..
ci dependencies: Upgrade JavaScript dependencies. 2024-01-29 16:14:26 -08:00
documentation_crawler check_help_documentation: Exclude temporarily unavailable endpoint. 2023-12-18 15:44:00 -08:00
droplets python: Elide unnecessary list wrappers. 2023-09-13 12:41:23 -07:00
i18n sync-translations: Normalize translations to NFC. 2023-09-08 17:51:47 -07:00
lib register_remote_server: Add more validation of contact_email. 2024-01-26 09:09:31 -08:00
linter_lib puppet: Rename puppet/zulip_ops to puppet/kandra. 2024-02-06 17:56:27 -08:00
node_lib node_tests: Move to web/tests. 2023-02-23 16:04:17 -08:00
oneclickapps docs: Add missing spaces around code spans. 2023-12-14 00:05:44 -08:00
setup kandra: Puppet github.com keys to both root and zulip users. 2024-02-07 10:42:12 -08:00
test-install install: Support Ubuntu 22.04. 2022-02-25 14:49:07 -08:00
tests mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
zulip-export python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
__init__.py
backport-pull-request tools: Add a tool for backporting PRs. 2024-01-15 17:27:37 -08:00
build-docs tools: Use root-based absolute import for tools.lib, etc. 2021-07-05 12:21:52 -07:00
build-release-tarball emails: Inline CSS in emails in build_email. 2023-04-05 12:22:29 -07:00
cache-zulip-git-version build-release-tarball: Override merge-base for full official releases. 2022-11-15 12:50:41 -08:00
check-capitalization tools: Use subprocess.check_call where appropriate. 2023-08-17 17:05:34 -07:00
check-frontend-i18n tools: Use subprocess.check_call where appropriate. 2023-08-17 17:05:34 -07:00
check-issue-labels ruff: Fix PERF401 Use a list comprehension to create a transformed list. 2023-08-07 17:23:55 -07:00
check-openapi dependencies: Upgrade JavaScript dependencies. 2023-12-07 14:29:32 -08:00
check-provision tools: Rename force argument to skip-provision-check 2021-03-03 09:17:49 -08:00
check-schemas openapi: Add missing user property to deprecated user settings events. 2023-10-23 09:07:07 -07:00
check-templates check-templates: Check Django/Handlebars templates differently. 2023-10-11 17:53:07 -07:00
check-thirdparty check-thirdparty: License under GPLv2+. 2022-06-26 17:33:11 -07:00
clean-branches Rename default branch to ‘main’. 2021-09-06 12:56:35 -07:00
commit-message-lint commit-message-lint: Take release branches into account. 2022-07-22 10:39:05 -07:00
commit-msg commit-msg: Don’t change the current directory for non-Vagrant. 2023-05-23 12:24:44 -07:00
conf.ini-template
coveragerc coverage: Clean up coverage configuration. 2023-05-31 13:53:04 -07:00
deploy-branch Rename default branch to ‘main’. 2021-09-06 12:56:35 -07:00
diagnose provision: Avoid distutils; keep PROVISION_VERSION as a tuple. 2022-07-20 22:03:30 -07:00
documentation.vnufilter dependencies: Upgrade JavaScript dependencies. 2023-04-25 22:18:48 -07:00
duplicate_commits.json
fetch-contributor-data fetch-contributor-data: Add zulip-flutter repo. 2024-01-05 12:15:39 -08:00
fetch-pull-request tools: Avoid readlink -f in *-pull-request scripts. 2021-04-30 14:57:13 -07:00
fetch-rebase-pull-request Rename default branch to ‘main’. 2021-09-06 12:56:35 -07:00
find-unused-css web: Move web app to ‘web’ directory. 2023-02-23 16:04:17 -08:00
generate-integration-docs-screenshot models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
lint requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
message-screenshot.js narrow: Use message list id to track message lists in DOM. 2024-01-18 08:31:48 -08:00
pre-commit tools: Rename force argument to skip-provision-check 2021-03-03 09:17:49 -08:00
provision docs: Rename setup-vagrant.md -> setup-recommended.md. 2022-09-15 15:54:14 -07:00
push-to-pull-request push-to-pull-request: Accept intermixed options and arguments again. 2024-02-01 17:08:44 -08:00
README.md
rebuild-dev-database
rebuild-test-database shfmt: Reformat shell scripts with shfmt. 2020-10-15 15:16:00 -07:00
release release: Release 8.0-prereleases from main. 2023-07-06 16:16:11 -07:00
release-tarball-exclude.txt puppet: Rename puppet/zulip_ops to puppet/kandra. 2024-02-06 17:56:27 -08:00
renumber-migrations ruff: Fix PIE808 Unnecessary start argument in range. 2023-09-01 14:57:01 -07:00
reset-to-pull-request tools: Avoid readlink -f in *-pull-request scripts. 2021-04-30 14:57:13 -07:00
review python: Use Python 3.8 shlex.join function. 2022-04-27 12:57:49 -07:00
run-codespell dependencies: Switch to pnpm. 2023-03-20 15:48:29 -07:00
run-dev run-dev: Rewrite development proxy with aiohttp. 2023-12-12 08:07:41 -08:00
run-mypy tools: Support running mypy daemon for better performance. 2022-07-06 17:33:13 -07:00
run-tsc
semgrep-py.yml models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
setup-git-repo shfmt: Reformat shell scripts with shfmt. 2020-10-15 15:16:00 -07:00
show-profile-results python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
stop-run-dev python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
tail-ses ruff: Fix RSE102 Unnecessary parentheses on raised exception. 2023-02-04 16:34:55 -08:00
test-all install-shellcheck: Upgrade ShellCheck to 0.9.0. 2023-01-04 14:01:34 -08:00
test-api models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test-backend corporate: Move support and activity views to /corporate. 2024-01-30 10:06:48 -08:00
test-documentation shfmt: Reformat shell scripts with shfmt. 2020-10-15 15:16:00 -07:00
test-help-documentation tools: Use root-based absolute import for tools.lib, etc. 2021-07-05 12:21:52 -07:00
test-js-with-node page_params: Split out state data for current user. 2024-02-15 10:22:52 -08:00
test-js-with-puppeteer puppeteer: Allow reruns in interactive mode when tests succeed. 2023-09-13 12:46:22 -07:00
test-locked-requirements test-locked-requirements: Rename may_be_setup_cache to maybe_set_up_cache. 2022-01-12 13:21:35 -08:00
test-migrations requirements: Upgrade Python requirements. 2021-04-15 21:47:33 -07:00
test-queue-worker-reload models: Rename zerver/models.py to zerver/models/__init__.py. 2023-12-16 22:08:44 -08:00
test-run-dev run-dev: Drop .py from script name. 2023-03-03 18:02:37 -08:00
test-tools tools: Use root-based absolute import for tools.lib, etc. 2021-07-05 12:21:52 -07:00
total-contributions docs: Fix grammar errors found by mwic. 2023-10-09 13:24:09 -07:00
update-locked-requirements requirements: Remove unused mypy.txt lock file. 2022-09-08 11:08:06 -07:00
update-prod-static update-prod-static: Only run generate_landing_page_images if necessary. 2023-10-05 09:04:33 -07:00
update-zuliprc-api-field python: Replace universal_newlines with text. 2022-01-23 22:16:01 -08:00
upload-release upload-release: Update SHA256SUM for existing files if changed. 2023-01-23 17:41:29 -08:00
webpack ruff: Fix FLY002 Consider f"…" instead of string join. 2023-08-07 17:12:41 -07:00
zanitizer zanitizer: Reformat with perltidy. 2021-03-24 12:12:04 -07:00
zanitizer_config.pm.sample zanitizer: Reformat with perltidy. 2021-03-24 12:12:04 -07:00

This directory contains scripts that are used in building, managing, testing, and other forms of work in a Zulip development environment. Note that tools that are also useful in production belong in scripts/ or should be Django management commands.

For more details, see https://zulip.readthedocs.io/en/latest/overview/directory-structure.html.