zulip/tools
Anders Kaseorg b7b7475672 python: Use standard secrets module to generate random tokens.
There are three functional side effects:

• Correct an insignificant but mathematically offensive bias toward
repeated characters in generate_api_key introduced in commit
47b4283c4b4c70ecde4d3c8de871c90ee2506d87; its entropy is increased
from 190.52864 bits to 190.53428 bits.

• Use the base32 alphabet in confirmation.models.generate_key; its
entropy is reduced from 124.07820 bits to the documented 120 bits, but
now it uses 1 syscall instead of 24.

• Use the base32 alphabet in get_bigbluebutton_url; its entropy is
reduced from 51.69925 bits to 50 bits, but now it uses 1 syscall
instead of 10.

(The base32 alphabet is A-Z 2-7.  We could probably replace all of
these with plain secrets.token_urlsafe, since I expect most callers
can handle the full urlsafe_b64 alphabet A-Z a-z 0-9 - _ without
problems.)

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-09-09 15:52:57 -07:00
..
ci puppet: Don’t install netcat. 2020-09-03 10:33:47 -07:00
documentation_crawler python: Pre-fix a few spots for better Black formatting. 2020-09-03 17:51:09 -07:00
droplets python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
i18n tools: Delete tagmessages script. 2020-09-03 10:35:51 -07:00
lib python: Tweak some magic trailing commas to avoid Black bugs. 2020-09-03 17:51:09 -07:00
linter_lib tools: Delete tagmessages script. 2020-09-03 10:35:51 -07:00
node_lib js: Elide .js and .ts extensions from imports and requires. 2020-09-01 16:43:02 -07:00
setup python: Prefer --flag=option over --flag option. 2020-09-03 17:51:09 -07:00
test-install puppet: Don’t install netcat. 2020-09-03 10:33:47 -07:00
tests python: Pre-fix a few spots for better Black formatting. 2020-09-03 17:51:09 -07:00
wsl tools: Add script to start database services for WSL. 2020-04-11 12:05:33 -07:00
zulip-export zulip-export: Specify --stream argument as required. 2020-09-03 16:17:14 -07:00
__init__.py
build-docs docs: Replace Makefile based on output of newer sphinx-quickstart. 2019-12-02 18:39:33 -08:00
build-release-tarball docs: Capitalize Markdown consistently. 2020-08-11 10:23:06 -07:00
cache-zulip-git-version version: Only let git describe match tags beginning with a digit. 2019-10-24 14:54:45 -07:00
check-capitalization python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
check-frontend-i18n python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
check-issue-labels python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
check-node-fixtures minor: Improve error message for check-node-fixtures. 2020-08-14 10:40:29 -04:00
check-openapi js: Add "use strict" directive to CommonJS files. 2020-07-31 22:09:46 -07:00
check-provision python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
check-templates python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
check-thirdparty python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
clean-branches text: Fix some typos (most of them found and fixed by codespell). 2020-03-27 17:25:56 -07:00
clean-repo
commit-message-lint docs: Use consistent spelling of CircleCI. 2020-04-28 11:26:58 -07:00
commit-msg Use #!/usr/bin/env for bash shebangs. 2018-12-17 17:21:08 -08:00
conf.ini-template Add tool for scanning issues without area labels. 2017-02-03 09:59:35 -08:00
coveragerc validator: Remove unused type_structure system. 2020-06-23 16:30:17 -07:00
create-test-api-docs python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
debug-require-webpack-plugin.ts debug-require: Throw errors for unknown and unloaded modules. 2020-07-29 11:17:24 -07:00
debug-require.js js: Add "use strict" directive to CommonJS files. 2020-07-31 22:09:46 -07:00
deploy-branch Use #!/usr/bin/env for bash shebangs. 2018-12-17 17:21:08 -08:00
diagnose python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
documentation.vnufilter requirements: Upgrade Python requirements. 2020-06-25 13:14:37 -07:00
duplicate_commits.json tools: Move duplicate_commits.json file to tools directory. 2020-04-07 16:06:29 -07:00
fetch-contributor-data team: Include users without an associated GitHub profile. 2020-07-24 10:51:47 -07:00
fetch-pull-request tools: Use require_clean_work_tree everywhere. 2020-04-06 17:52:10 -07:00
fetch-rebase-pull-request tools: Use require_clean_work_tree everywhere. 2020-04-06 17:52:10 -07:00
find-unused-css tools: Convert fix-unused-css to look at zulip.scss. 2020-04-21 14:12:57 -07:00
generate-integration-docs-screenshot python: Elide type=str from argparse arguments. 2020-09-03 16:17:14 -07:00
lint python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
message-screenshot.js js: Add "use strict" directive to CommonJS files. 2020-07-31 22:09:46 -07:00
pre-commit lint: Add --skip arg to replace --no-gitlint/mypy. 2019-06-18 11:32:04 -07:00
pretty-print-html python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
provision provision: Check for old Ubuntu or Python before starting Python. 2020-09-02 17:27:14 -07:00
push-to-pull-request reset-to-pull-request: Add a usage message. 2020-02-11 14:45:17 -08:00
README.md cleanup: Delete trailing newlines. 2019-08-06 23:29:11 -07:00
rebuild-dev-database terminate-psql-sessions: Rely on the caller to set PGHOST, PGUSER. 2020-06-15 21:37:14 -07:00
rebuild-test-database terminate-psql-sessions: Rely on the caller to set PGHOST, PGUSER. 2020-06-15 21:37:14 -07:00
release-tarball-exclude.txt tests: Move zerver/fixtures to zerver/tests/fixtures for clarity. 2018-04-19 21:50:17 -07:00
renumber-migrations renumber-migrations: Skip migration 0261. 2020-06-18 15:42:57 -07:00
reset-to-pull-request tools: Use require_clean_work_tree everywhere. 2020-04-06 17:52:10 -07:00
review python: Convert more percent formatting to Python 3.6 f-strings. 2020-06-14 23:27:22 -07:00
run-dev.py puppeteer: Save pid of run-dev.py --test in var/puppeteer. 2020-09-09 13:38:39 -04:00
run-mypy python: Replace list literal concatenation with * unpacking. 2020-09-02 11:15:41 -07:00
run-tsc tsconfig: Move to top level. 2019-11-04 18:12:11 -08:00
run-yarn-deduplicate yarn.lock: Share duplicate packages with yarn-deduplicate. 2019-09-02 19:30:09 -07:00
semgrep.yml python: Use standard secrets module to generate random tokens. 2020-09-09 15:52:57 -07:00
setup-git-repo Use #!/usr/bin/env for bash shebangs. 2018-12-17 17:21:08 -08:00
show-profile-results python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
stop-run-dev python: Modernize legacy Python 2 syntax with pyupgrade. 2020-04-09 16:43:22 -07:00
test-all casper: Remove few traces of casper. 2020-08-30 17:16:02 -07:00
test-api python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
test-backend python: Pre-fix a few spots for better Black formatting. 2020-09-03 17:51:09 -07:00
test-documentation test-documentation: Invoke sphinx-build via make instead of directly. 2019-12-02 18:39:33 -08:00
test-help-documentation python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
test-js-with-node python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
test-js-with-puppeteer puppeteer: Rename CASPER_TESTS env variable to PUPPETEER_TESTS. 2020-09-09 13:38:39 -04:00
test-locked-requirements python: Replace list literal concatenation with * unpacking. 2020-09-02 11:15:41 -07:00
test-migrations requirements: Update Python requirements. 2020-06-03 17:23:20 -07:00
test-queue-worker-reload python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
test-run-dev python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
test-tools python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
update-locked-requirements requirements: Upgrade Thumbor to 7.0.0a5 on Python 3. 2020-07-06 16:09:53 -07:00
update-prod-static python: Prefer --flag=option over --flag option. 2020-09-03 17:51:09 -07:00
update-zuliprc-api-field python: Elide type=str from argparse arguments. 2020-09-03 16:17:14 -07:00
webpack puppeteer: Rename build_for_prod_or_casper to build_for_prod_or_puppeteer. 2020-09-09 13:38:39 -04:00
webpack.assets.json js: Elide .js and .ts extensions from imports and requires. 2020-09-01 16:43:02 -07:00
zanitizer docs: Avoid hardcoded /tmp paths in miscellaneous documentation. 2019-01-15 16:16:12 -08:00
zanitizer_config.pm.sample zanitizer_config.pm.sample: keep_file → scrub_filename 2018-09-23 20:42:27 -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.