zulip/zerver/lib
sahil839 37c8505435 message: Raise exception when trying to mirror an already sent message.
Previously we were just returning a dict containing a message id when
trying to mirror a already sent message in 'zephyr_mirror' cases.

This commit changes this behaviour to raise an exception when trying
to mirror an already sent message by adding a new exception class
ZephyrMessageAlreadySentException and then the caller returns the
message_id directly, instead of calling do_send_messages which also
returns a list of size one containing the message_id only.

This is a prep commit for changing the return type of check_message to
be a dataclass instead of a Dict as now we have only single output for
check_message.
2020-12-18 16:40:11 -08:00
..
markdown fenced_code: Use immutable type for codehilite_conf. 2020-11-10 15:54:28 -08:00
url_preview url_preview: Allow Beautiful Soup to get the charset from <meta>. 2020-12-15 11:30:57 -08:00
webhooks newrelic: Added owner field and cleaned up code. 2020-12-15 12:04:46 -08:00
__init__.py
actions.py message: Raise exception when trying to mirror an already sent message. 2020-12-18 16:40:11 -08:00
addressee.py addressee: Remove redundant casts. 2020-06-22 17:11:42 -07:00
alert_words.py docs: Standardize on PostgreSQL, not Postgres. 2020-10-28 11:55:16 -07:00
attachments.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
avatar.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
avatar_hash.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
bot_config.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
bot_lib.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
bot_storage.py test_service_bot_system: Fix type: ignore issues. 2020-06-30 18:58:23 -07:00
bulk_create.py populate_db: Simplify how we create reactions. 2020-11-16 17:19:23 -08:00
cache.py python: Convert os.open(…, O_EXCL) to open(…, "x"). 2020-11-09 14:31:01 -08:00
cache_helpers.py sessions: Fix type: ignore issues. 2020-06-30 18:58:23 -07:00
camo.py python: Replace binascii with bytes.hex to skip some decode operations. 2020-10-30 11:36:38 -07:00
ccache.py python: Remove force_bytes. 2020-10-30 11:36:38 -07:00
context_managers.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
create_user.py actions: Implement do_delete_user. 2020-11-09 11:58:02 -08:00
data_types.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
db.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
debug.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
dev_ldap_directory.py python: Close opened files. 2020-10-26 12:31:30 -07:00
digest.py digests: Ensure that the teaser_data can be JSON-serialized. 2020-12-15 11:44:50 -08:00
display_recipient.py api: Remove (sender_)short_name from message APIs. 2020-07-17 11:15:14 -07:00
domains.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
email_mirror.py email_mirror: Change root logger to zerver.lib.email_mirror. 2020-09-12 10:53:56 -07:00
email_mirror_helpers.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
email_notifications.py python: Serialize lxml elements directly to str. 2020-10-30 11:36:38 -07:00
email_validation.py isort: Enable black profile. 2020-09-02 11:00:07 -07:00
emoji.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
error_notify.py Error reporting emails: Indicate user role. 2020-08-03 13:35:51 -07:00
event_schema.py subscriber events: Change schema for peer_add/peer_remove. 2020-10-22 11:19:53 -07:00
events.py events: Fix apply_event for streams. 2020-12-01 13:01:38 -08:00
exceptions.py message: Raise exception when trying to mirror an already sent message. 2020-12-18 16:40:11 -08:00
export.py refactor: Access a bucket by calling `zerver.lib.uploads.get_bucket`. 2020-10-28 21:52:08 -07:00
external_accounts.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
fix_unreads.py pointer: Remove fix_pre_pointer fixing logic. 2020-06-18 12:55:59 -07:00
generate_test_data.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
github.py apps: Use GitHub API for generating the web app download link. 2020-10-28 23:04:14 -07:00
home.py home: Allow logged out user through home. 2020-11-02 17:07:12 -08:00
hotspots.py i18n: Be deliberate about distinguishing ugettext and ugettext_lazy. 2020-10-18 14:31:15 -07:00
html_diff.py html_diff: Really return str, not bytes. 2020-08-07 11:12:32 -07:00
html_to_text.py python: Skip unnecessary decode before BeautifulSoup parsing. 2020-10-30 11:36:38 -07:00
i18n.py i18n: Fix get_language_translation_data for zh_TW. 2020-10-22 16:43:02 -07:00
import_realm.py refactor: Access a bucket by calling `zerver.lib.uploads.get_bucket`. 2020-10-28 21:52:08 -07:00
initial_password.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
integrations.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
logging_util.py webhooks: Add a missing format for the realm. 2020-09-22 15:11:48 -07:00
management.py management: Use signal.pause to sleep forever. 2020-10-07 16:15:19 -07:00
mdiff.py python: Use universal_newlines to get str from subprocess. 2020-10-30 11:36:38 -07:00
mention.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
message.py performance: Use ORM to fetch sender in render_markdown. 2020-11-05 09:35:15 -08:00
migrate.py docs: Standardize on PostgreSQL, not Postgres. 2020-10-28 11:55:16 -07:00
mobile_auth_otp.py python: Replace binascii with bytes.hex to skip some decode operations. 2020-10-30 11:36:38 -07:00
name_restrictions.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
narrow.py message_fetch: Allow access to web-public msgs for unauth users. 2020-08-12 16:39:02 -07:00
onboarding.py onboarding: Move send_welcome_bot_response to onboarding. 2020-09-03 17:41:08 -07:00
outgoing_webhook.py python: Use requests.Response.text instead of decoding content. 2020-10-30 11:36:38 -07:00
presence.py python: Tweak some magic trailing commas to avoid Black bugs. 2020-09-03 17:51:09 -07:00
profile.py decorator: Strengthen types of signature-preserving decorators. 2020-06-30 18:58:23 -07:00
push_notifications.py python: Replace binascii with bytes.hex to skip some decode operations. 2020-10-30 11:36:38 -07:00
pysa.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
queue.py python: Catch BaseException when we need to clean something up. 2020-10-11 16:16:16 -07:00
rate_limiter.py exceptions: Make RateLimited into a subclass of JsonableError. 2020-12-01 13:40:56 -08:00
realm_description.py refactor: Rename convert to markdown_convert. 2020-07-06 12:39:59 -07:00
realm_icon.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
realm_logo.py realm_logo: Return default logo for realms on LIMITED plan. 2020-06-18 17:46:26 -07:00
redis_utils.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
remote_server.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
request.py python: Catch specific exceptions from orjson. 2020-10-11 16:11:41 -07:00
response.py exceptions: Make RateLimited into a subclass of JsonableError. 2020-12-01 13:40:56 -08:00
rest.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
retention.py realm: Fix strict_optional errors. 2020-07-06 11:25:48 -07:00
send_email.py docs: Fix some spelling errors. 2020-10-13 15:47:13 -07:00
server_initialization.py database: Remove short_name from UserProfile. 2020-07-17 11:15:15 -07:00
sessions.py sessions: Fix type: ignore issues. 2020-06-30 18:58:23 -07:00
soft_deactivation.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
sqlalchemy_utils.py mypy: Use sqlalchemy-stubs. 2020-11-16 18:17:41 -08:00
statistics.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
storage.py
stream_subscription.py refactor: Compute peers for public streams later. 2020-10-20 11:31:22 -07:00
stream_topic.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
streams.py performance: Streamline list_to_streams. 2020-10-16 12:58:11 -07:00
subdomains.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
test_classes.py home: Allow logged out user through home. 2020-11-02 17:07:12 -08:00
test_console_output.py tests: Add extra console output detection in test-backend output. 2020-08-27 11:39:53 -07:00
test_data.source.txt docs: Capitalize Markdown consistently. 2020-08-11 10:23:06 -07:00
test_fixtures.py tools: Rename postgres to postgresql in tool names. 2020-10-28 11:57:02 -07:00
test_helpers.py url_preview: Allow Beautiful Soup to get the charset from <meta>. 2020-12-15 11:30:57 -08:00
test_runner.py requirements: Upgrade mypy to 0.790. 2020-11-12 15:44:30 -08:00
tex.py python: Convert subprocess.Popen.communicate to run or check_output. 2020-09-03 17:42:35 -07:00
thumbnail.py docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
timeout.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
timestamp.py timestamp: Remove datetime_to_precise_timestamp for datetime.timestamp. 2020-07-31 22:10:14 -07:00
timezone.py users: Canonicalize the timezone identifier. 2020-10-27 13:42:54 -07:00
topic.py mypy: Use sqlalchemy-stubs. 2020-11-16 18:17:41 -08:00
topic_mutes.py mypy: Use sqlalchemy-stubs. 2020-11-16 18:17:41 -08:00
transfer.py import_realm: Close the memcached connection before forking. 2020-10-01 11:20:39 -07:00
type_debug.py decorator: Replace type: ignore with cast, avoid Any. 2020-06-30 18:58:23 -07:00
types.py i18n: Be deliberate about distinguishing ugettext and ugettext_lazy. 2020-10-18 14:31:15 -07:00
unminify.py python: Manually convert more percent-formatting to f-strings. 2020-06-14 23:27:22 -07:00
upload.py uploads: Support non-AWS S3-compatible server. 2020-10-28 21:59:07 -07:00
url_encoding.py url_encoding: Skip unnecessary encode before quote. 2020-10-30 11:36:38 -07:00
user_agent.py user_agent: Compile the regular expression. 2020-02-14 10:26:37 -08:00
user_groups.py python: Replace unnecessary intermediate lists with generators. 2020-09-02 11:15:41 -07:00
user_status.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
users.py users: Canonicalize the timezone identifier. 2020-10-27 13:42:54 -07:00
utils.py mypy: Use str in statsd_key. 2020-09-29 16:49:10 -07:00
validator.py validator: Reject ISO 8601 dates missing leading zeros. 2020-12-15 16:36:50 -08:00
widget.py widget: Use different variable names for message and submessage content. 2020-12-18 16:19:35 -08:00
zcommand.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
zephyr.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00