Commit Graph

42685 Commits

Author SHA1 Message Date
Anders Kaseorg d1aa68994a render_messages: Use JSON Lines format.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-05-20 13:12:16 -07:00
Anders Kaseorg 9d290798eb templates: Escape some unescaped > and & characters.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-05-20 12:09:47 -07:00
akshatdalton 78b59fa756 people: Fix `get_mention_syntax` when `full_name` matches wildcard.
When quoting a reply or mentioning a person having full name matching
wildcard mention, in such case, `get_mention_syntax` doesn't return
mention syntax of format: **full_name|user_id**.
As a result, a normal user can't mention such users and users who
can mention them may unwillingly trigger wildcard mention.
This commit fixes such issue.
2021-05-20 11:41:56 -07:00
akshatdalton b636a9199b compose: Add typeahead for user group silent mentions.
Prior to this, we restricted to show any user group suggestions
if silent mention syntax is used. But with the addition of
user group silent mentions, there are cases where one may want to
refer to some user groups without actually notifying them.
So, we add typeahead logic for such cases.

Test cases for silent syntax (@_*) and non-silent syntax (@*)
are added.
2021-05-20 11:41:55 -07:00
akshatdalton f4891e7e4f minor: Simplify `usermention` regex and properly use capturing groups.
In the old regex, there was no 4th capturing group, hence
cap[4] always gives `undefined`. It is removed now.

Also, we were capturing the whole pattern which is not needed
as it is by default captured in the group with the 0th index.
2021-05-20 11:35:04 -07:00
akshatdalton bf96d7eae8 markdown: Add support for local rendering of user group mention in quote.
This also adds test cases to test the local rendering of
user group mention in blockquotes.
2021-05-20 11:35:04 -07:00
akshatdalton e50d189191 minor: Refactor `user_mention_re` to match characters except `>`.
The regex could have match a bunch of characters including `>`
and hence end up matching across multiple adjacent spans in
a weird way. This commit fixes such an issue.
2021-05-20 11:35:04 -07:00
akshatdalton 5bab65e82f markdown: Add support for local rendering of user group silent mention.
This also adds test cases to test the local rendering of
silently mentioned user group.
2021-05-20 11:35:04 -07:00
akshatdalton 9d031ecf8f markdown: Add support for local rendering of wildcard silent mention.
This also adds test cases to test rendering of silent
wildcard mention and wildcard mention in quotes.
2021-05-20 11:35:04 -07:00
akshatdalton 13421a1969 minor: Refactor `userMentionHandler` to avoid duplicating escaping logic.
We avoid duplicating escaping logic for the same variable, which
helps to reduce the risk of any future bugs.
2021-05-20 11:25:38 -07:00
Eeshan Garg 69309540c0 pypi: Upgrade zulip/zulip-bots dependencies to version 0.8.0. 2021-05-20 11:06:48 -07:00
Abhijeet Prasad Bodas ec8a931761 message send: Pass individual parameters instead of single Dict.
This will allow for stronger type checking and better readability.
2021-05-20 11:06:19 -07:00
Abhijeet Prasad Bodas d6871dbae5 message send: Do not re-assign widget_content variable.
After re-assignment, mypy will still think the type of
`widget_content` to be `str`, not `Dict`. So we need to
create a new variable.
This is a prep change for stronger type checking in this
code.
2021-05-20 11:06:19 -07:00
Abhijeet Prasad Bodas 334db60a07 message send: Fix incorrect field types in SendMessageRequest class.
The `local_id` and `queue_id` parameters are actually accepted as strings,
not integers, by the API.
This was introduced in 2fa33be683.
2021-05-20 11:06:19 -07:00
Anders Kaseorg 69f454195f gear_menu: Fix obsolete comment about window.onhashchange.
Commit 0c80fc6aba (#12737) stopped using
the old-style window.onhashchange property.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-05-20 10:43:06 -07:00
Anders Kaseorg c09da2abdf panels: Replace deprecated jQuery event trigger shorthand.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-05-20 10:42:36 -07:00
Anders Kaseorg 7c38a0c1f0 recent_topics: Replace deprecated jQuery event trigger shorthand.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-05-20 10:42:36 -07:00
Anders Kaseorg b741e758f0 node_tests: Silence KaTeX warning in markdown test.
Fixes this KaTeX warning:

Warning: KaTeX doesn't work in quirks mode. Make sure your website has
a suitable doctype.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-05-20 10:41:44 -07:00
Tim Abbott 6edd78a9e5 events: Reorganize realm fields code in page_params.
This also adds a few comments on things that look to be bugs.
2021-05-19 15:35:30 -07:00
Tim Abbott ea7fee11b2 events: Add block comment documenting naming conventions.
Fixes part of #14166.
2021-05-19 15:28:46 -07:00
Tim Abbott 323152c5fd send_custom_email: Never email users who haven't agreed to ToS.
The `create_user` API and data import tools can result in our having
active users in the database who haven't intentionally created a Zulip
account or agreed to the ToS; we should never email such users.

The check for `TOS_VERSION is not None` is necessary for the
development environment, which has `TERMS_OF_SERVICE` set but not
`TOS_VERSION`.

It's likely that we will want this check in other places as well.
2021-05-19 13:47:36 -07:00
sahil839 bd957bb5a2 giphy: Add a '?' icon besides the "GIPHY integration" label.
We add a '?' icon besides the "GIPHY integration" label of
giphy settings dropdown.

The icon links to readthedocs page for setting up giphy API
key when api key is not set, and it points to help center
article of GIFs when the api key is added.
2021-05-19 13:20:52 -07:00
Steve Howell a699e4ea74 node tests: Clean up document stub. 2021-05-19 15:55:03 -04:00
Steve Howell cbd1ac24f4 node tests: Set platform more explicitly. 2021-05-19 15:55:03 -04:00
Steve Howell 1ee8157239 node tests: Remove document set_global. 2021-05-19 15:55:03 -04:00
Steve Howell 09ce61f18f node test: Eliminate mock_channel_post helper.
We now do a single override that closes on
current_message.
2021-05-19 15:55:03 -04:00
Steve Howell 5a90edf5e7 node tests: Use override more in compose tests. 2021-05-19 15:55:03 -04:00
Steve Howell cc6310b57d node tests: Localize MockDate call. 2021-05-19 15:55:03 -04:00
Steve Howell b543116193 node tests: Eliminate redundant "social" sub. 2021-05-19 15:55:03 -04:00
Steve Howell 62eca19b86 node tests: Eliminate sloppy_$ for compose tests. 2021-05-19 15:55:03 -04:00
Steve Howell 967506bbc7 node tests: Simplify rtl testing. 2021-05-19 15:55:03 -04:00
Steve Howell 394c4b32cf minor: Sort zrequire statements. 2021-05-19 15:55:03 -04:00
Steve Howell 7eece8a80e node tests: Remove sloppy_$ for compose_validate. 2021-05-19 15:55:03 -04:00
Steve Howell 48e5077201 node tests: Extract compose_validate.js
This is pretty much a verbatim code move,
except that I inlined noop and reset_jquery
in the new file.

Also, in the last test, I no longer reset
the compose state.
2021-05-19 15:55:03 -04:00
Steve Howell 338d2dc29a node tests: Localize overrides for compose test. 2021-05-19 15:55:03 -04:00
akshatdalton 9554514d3c refactor: Merge `markdown_katex.js` test file with `markdown.js`.
We split them in the commit: c50dbf8297
because at that time we thought markdown_katex was gonna
require rewireproxy magic in the later commits.
But we later removed the rewiremock dependency in the
commit: 30c7108955.

So now, we can safely merge `markdown_katex.js` test file
with `markdown.js` test file.
2021-05-19 11:59:28 -07:00
akshatdalton 769cd06ab6 refactor: Extract linkifier non-settings logic from `markdown.js`.
The extracted logic is in linkifier.js.
We have decided to name it linkifier.js instead of realm_linkifier.js
because in future when we will add stream-level linkifiers, we'll
likely want them to be managed by this same file.
2021-05-19 11:59:28 -07:00
Abhijeet Prasad Bodas 0ec905ed52 custom_check: Enforce use of assert_length helper. 2021-05-19 11:55:56 -07:00
Abhijeet Prasad Bodas 352634a851 tests: Consistently use assert_length helper.
This helper does some nice things like printing out
the data structure incase of failure.
2021-05-19 11:55:56 -07:00
Abhijeet Prasad Bodas 4d45b45640 test_classes: Generalize assert_length helper.
Make it so that `assert_length` can be used for not
just lists but all `Collections`.

This is prep for using this helper consistently for
all tests.
2021-05-19 11:55:56 -07:00
Aman Agrawal ddfb9b5200 tippy: Increase font size from 12 to 13px.
Increasing the font size for clear visibility.
2021-05-19 11:20:49 -07:00
sahil839 48761208f0 css: Change width of upgrade-tip and to max-content.
We change the width of upgrade-tip to be max-content
such that it matches with the other elements in
settings overlay like dropdown, which are not of full
width.
2021-05-19 11:04:32 -07:00
sahil839 cf23a09532 giphy: Fix live update of giphy icon when API key is empty.
We fix the code to show giphy icon live update only if the
updated setting is not disabled and API key has been added.
Though the dropdown is disabled,the setting can still be
changed using API, so this change is necessary.

Previously, we were not checking whether API key is there or
not and icon was shown on live update even if API key was
not there and then it went off on reload.
2021-05-19 11:04:32 -07:00
sahil839 cf6fc3456f giphy: Disable giphy settings dropdown if API key is not present. 2021-05-19 11:04:32 -07:00
Steve Howell ef4446204d node tests: Add test wrapper for message_list_view. 2021-05-19 11:20:23 -04:00
Steve Howell 664afd2a1c node tests: Clean up electron_bridge test.
We use with_field to avoid leaks and then
just organize things better.
2021-05-19 11:06:18 -04:00
Tim Abbott 3b181968aa settings: Fix setting JITSI_SERVER_URL to None.
This fixes a bug introduced in
55a23754c3, that resulted in Zulip
crashing on startup if JITSI_SERVER_URL=None.

Fixes #18512.
2021-05-18 19:16:47 -07:00
Tim Abbott 9126ed33c9 puppeteer: Remove failing linkifier tests.
I'm not sure that settings UI is particularly worth having puppeteer
tests for, so it's possible we shouldn't bring these back at all.  But
in any case, it's worth disabling them as they've been failing for
some time.
2021-05-18 19:16:47 -07:00
Riken Shah e4bbfe5eb7 puppeteer_test: Add wait call for linkifier table to get updated.
This commit solves a rare flake, where the `realm
_linkifier.ts` test was failing because there was no
appropriate wait call for the table
(`#admin_linkifiers_table`) to get updated after editing
the pattern.
2021-05-18 18:46:17 -07:00
Riken Shah 2015d55a17 puppeteer_test: Use edit linkifier modal's id to check if it's closed. 2021-05-18 18:46:17 -07:00