docs: Capitalize Handlebars consistently.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg 2022-06-27 13:35:01 -07:00
parent 53231aa9d9
commit 25f6b53e90
11 changed files with 12 additions and 12 deletions

View File

@ -2314,7 +2314,7 @@ running a version from before 1.7 should upgrade directly to 1.7.1.
### 1.5.2 -- 2017-06-01 ### 1.5.2 -- 2017-06-01
- CVE-2017-0896: Restricting inviting new users to admins was broken. - CVE-2017-0896: Restricting inviting new users to admins was broken.
- CVE-2015-8861: Insecure old version of handlebars templating engine. - CVE-2015-8861: Insecure old version of Handlebars templating engine.
### 1.5.1 -- 2017-02-07 ### 1.5.1 -- 2017-02-07

View File

@ -9,7 +9,7 @@ patterns that can lead to security bugs.
## Overview ## Overview
Zulip does extensive linting of much of its source code, including Zulip does extensive linting of much of its source code, including
Python/JavaScript/TypeScript files, HTML templates (Django/handlebars), CSS files, Python/JavaScript/TypeScript files, HTML templates (Django/Handlebars), CSS files,
JSON fixtures, Markdown documents, puppet manifests, and shell scripts. JSON fixtures, Markdown documents, puppet manifests, and shell scripts.
For some files we simply check for small things like trailing whitespace, For some files we simply check for small things like trailing whitespace,

View File

@ -293,7 +293,7 @@ translated block, because they don't work properly with translation.
The Handlebars expression would be evaluated before the string is The Handlebars expression would be evaluated before the string is
processed by FormatJS, so that the string to be translated wouldn't be processed by FormatJS, so that the string to be translated wouldn't be
constant. We have a linter to enforce that translated blocks don't constant. We have a linter to enforce that translated blocks don't
contain handlebars. contain Handlebars.
Restrictions on including HTML tags in translated strings are the same Restrictions on including HTML tags in translated strings are the same
as in JavaScript. You can insert more complex markup using a local as in JavaScript. You can insert more complex markup using a local

View File

@ -10,7 +10,7 @@ const $ = require("../zjsunit/zjquery");
Until now, we had seen various testing techniques, learned Until now, we had seen various testing techniques, learned
how to use helper functions like `mock_esm`, `override` of how to use helper functions like `mock_esm`, `override` of
`run_test` etc., but we didn't see how to deal with `run_test` etc., but we didn't see how to deal with
render calls to handlebars templates. We'll learn that render calls to Handlebars templates. We'll learn that
in this test. in this test.
The below code tests the rendering of typing notifications which The below code tests the rendering of typing notifications which

View File

@ -264,7 +264,7 @@ exports.zrequire = function (short_fn) {
There is no need to zrequire templates.js. There is no need to zrequire templates.js.
The test runner automatically registers the The test runner automatically registers the
Handlebar extensions. Handlebars extensions.
`, `,
); );

View File

@ -417,7 +417,7 @@ function edit_message($row, raw_content) {
editability === editability_types.TOPIC_ONLY || editability === editability_types.TOPIC_ONLY ||
editability === editability_types.FULL || editability === editability_types.FULL ||
is_stream_editable; is_stream_editable;
// current message's stream has been already been added and selected in handlebar // current message's stream has been already been added and selected in Handlebars
const available_streams = is_stream_editable const available_streams = is_stream_editable
? stream_data.subscribed_subs().map((stream) => ({ ? stream_data.subscribed_subs().map((stream) => ({
name: stream.name, name: stream.name,

View File

@ -531,7 +531,7 @@ export function send_test_notification(content) {
} }
// Note that this returns values that are not HTML-escaped, for use in // Note that this returns values that are not HTML-escaped, for use in
// handlebars templates that will do further escaping. // Handlebars templates that will do further escaping.
function get_message_header(message) { function get_message_header(message) {
if (message.type === "stream") { if (message.type === "stream") {
return message.stream + " > " + message.topic; return message.stream + " > " + message.topic;

View File

@ -3,9 +3,9 @@ import Handlebars from "handlebars/runtime";
import {default_html_elements, intl} from "./i18n"; import {default_html_elements, intl} from "./i18n";
import * as util from "./util"; import * as util from "./util";
// Below, we register Zulip-specific extensions to the handlebars API. // Below, we register Zulip-specific extensions to the Handlebars API.
// //
// IMPORTANT: When adding a new handlebars helper, update the // IMPORTANT: When adding a new Handlebars helper, update the
// knownHelpers array in the webpack config so that webpack knows your // knownHelpers array in the webpack config so that webpack knows your
// helper is registered at runtime and don't try to require them when // helper is registered at runtime and don't try to require them when
// bundling. // bundling.

View File

@ -590,7 +590,7 @@ export function initialize_everything() {
// These components must be initialized early, because other // These components must be initialized early, because other
// modules' initialization has not been audited for whether they // modules' initialization has not been audited for whether they
// expect DOM elements to always exist (As that did before these // expect DOM elements to always exist (As that did before these
// modules were migrated from Django templates to handlebars). // modules were migrated from Django templates to Handlebars).
initialize_left_sidebar(); initialize_left_sidebar();
initialize_right_sidebar(); initialize_right_sidebar();
initialize_compose_box(); initialize_compose_box();

View File

@ -41,7 +41,7 @@ if __name__ == "__main__":
if not found: if not found:
sys.exit(0) sys.exit(0)
print(WARNING + "Translation strings contain handlebars:" + ENDC) print(WARNING + "Translation strings contain Handlebars:" + ENDC)
print("\n".join(found)) print("\n".join(found))
print( print(

View File

@ -137,7 +137,7 @@ js_rules = RuleList(
"static/js/dialog_widget.js", "static/js/dialog_widget.js",
"frontend_tests/", "frontend_tests/",
}, },
"description": "Setting HTML content with jQuery .html() can lead to XSS security bugs. Consider .text() or using rendered_foo as a variable name if content comes from handlebars and thus is already sanitized.", "description": "Setting HTML content with jQuery .html() can lead to XSS security bugs. Consider .text() or using rendered_foo as a variable name if content comes from Handlebars and thus is already sanitized.",
}, },
{ {
"pattern": "[\"']json/", "pattern": "[\"']json/",