Vladislav Manchev
668d0d9dfa
Fix performance issues with user presence list in large realms.
...
Whenever a user became active, this triggers an immediate presence
update event (to show that user as active). The implementation for
that event (running on the browsers of all other users in the realm)
would fully rerender the presence list, which can be an expensive
operation in a large realm, just to update the status for that one
user. This fixes that case to just remove the user from the list and
then re-insert it at the appropriate index.
[Commit message expanded with more details by Tim Abbott]
2016-02-12 20:04:43 -08:00
Tim Abbott
784a662707
Fix documentation around iOS not supporting a custom server.
2016-02-09 21:19:57 -08:00
Tim Abbott
3a6889e19f
Vagrantfile: Don't error on platforms where `lxc-ls` doesn't exist.
...
Apparently vagrant executes the configuration code for all providers,
not just the one that's actually selected.
Fixes #461 .
2016-02-07 21:11:05 -08:00
Tim Abbott
cbf9b7605a
Add test that all functions defined in urls.py actually exist.
...
This would have caught the create_user_backend issue introduced recently.
2016-02-07 19:21:53 -08:00
Reid Barton
6c6dc1d81d
Allow create user API to create any user in an open realm.
2016-02-07 19:19:19 -08:00
Reid Barton
9735025167
Refactor logic around restricted_to_domain.
...
Add a function email_allowed_for_realm that checks whether a user with
given email is allowed to join a given realm (either because the email
has the right domain, or because the realm is open), and use it
whenever deciding whether to allow adding a user to a realm.
This commit is not intended to change any behavior, except in one case
where the Zulip realm's domain was not being converted to lowercase.
2016-02-07 10:54:52 -05:00
Reid Barton
0755b51c2e
Move create_user_backend into zerver.views.users.
...
Commit aa33a0da
moved users views into their own file, but missed this one.
2016-02-07 10:54:48 -05:00
Reid Barton
4e5f18407d
Add comment in create_user_backend about not needing to invite users first.
2016-02-07 10:52:50 -05:00
Tim Abbott
d05bdbd919
Document letsencrypt in the SSL instructions.
2016-02-03 20:05:40 -08:00
Tim Abbott
34cf1f55bf
Link to nginx certificate chaining documentation in SSL docs.
...
Fixes #430 .
2016-02-03 20:05:40 -08:00
Tim Abbott
1af7cbfd64
runtornado: Move more imports to the top of the file.
...
This is needed for adding more specific type annotations but is
otherwise counterproductive since it increases the diff from the
original.
2016-02-03 19:47:14 -08:00
Tim Abbott
2259ce62f8
tornado: Fix AsyncDjangoHandler get() and friends missing args/kwargs.
2016-02-03 19:47:14 -08:00
Tim Abbott
1d008576f2
QueueProcessingWorker: Add stub consume function and queue_name.
...
QueueProcessingWorker will now throw errors if there's a misconfigured
queue processor.
2016-02-03 19:47:14 -08:00
Tim Abbott
3469fd4bb2
Fix last remaining use of file() -> open().
2016-02-03 19:31:46 -08:00
Tim Abbott
d7b7ae2d0f
rundjango: Fix confusing return line in log_message_monkey.
2016-02-03 19:31:45 -08:00
Tim Abbott
05a40f11b3
runtornado: Add explicit return None.
2016-02-03 19:31:45 -08:00
Tim Abbott
5f9cd4d7c8
populate_db: Refactor saved_data to use a consistent type.
2016-02-03 19:29:45 -08:00
Tim Abbott
c55ac01ae6
populate_db: Rename confusing sub local variable.
...
While the code was technically correct, elsewhere in that function sub
a Subscription object, not a tuple of ints.
2016-02-03 19:29:45 -08:00
Tim Abbott
37e987e250
Make realm_filters --show's empty list output more consistent.
2016-02-03 19:29:44 -08:00
Tim Abbott
3475a5c1ed
Fix test_runner.py fast_test_only return type.
2016-02-03 19:29:44 -08:00
Tim Abbott
fcc32b1093
Fix check_redis abuse of setting self.trim global.
2016-02-03 19:29:44 -08:00
Tim Abbott
693b9110df
Fix weird import of get_user_profile_by_email from decorator.py.
2016-02-03 19:29:44 -08:00
Tim Abbott
a2ef1642d1
Fix buggy report_error return value.
2016-02-03 19:29:44 -08:00
Tim Abbott
7595e4b05f
process_queue: Fix worker variable being accessed before initialization.
2016-02-03 19:29:44 -08:00
Tim Abbott
b34768837d
storage: Fix type error returning nothing in dry run case.
2016-02-03 19:29:44 -08:00
Tim Abbott
1ee0706511
Fix missing UTF-8 encoding.
2016-02-03 19:29:30 -08:00
Tim Abbott
df4ab3c788
run_dev: Fix return for twisted finish function.
...
This was flagged by mypy; it's not clear this should be needed.
2016-02-03 19:29:07 -08:00
Tim Abbott
10f15a2d00
middleware: Fix str/unicode type mismatch in statsd_path.
2016-02-03 19:29:07 -08:00
Tim Abbott
2436ad19ba
analytics: Cleanup confusingly type-variable all_records.
2016-02-03 19:29:07 -08:00
Tim Abbott
23705f4f16
Remove duplicate self._log_data initialization.
2016-02-03 19:29:07 -08:00
Tim Abbott
df1670ef59
Fix various float initialization to use 0.0 instead of 0.
...
This is needed to type-check these values.
2016-02-03 19:29:07 -08:00
Tim Abbott
999e4688d4
Fix missing return None in ZulipRemoteUserBackend.authenticate.
2016-02-03 19:29:07 -08:00
Tim Abbott
fc02ea9f67
do_add_default_stream: Fix return value if stream exists.
...
Discovered using mypy static type checker.
2016-02-03 19:28:48 -08:00
Tim Abbott
ff3555734d
provision: Return success from main function.
2016-02-03 19:25:19 -08:00
Tim Abbott
620411c0ea
Fix type mismatches in streams.py.
2016-02-03 19:25:19 -08:00
Tim Abbott
e6e2584c5a
test_runner: Cleanup fast_tests_only types.
2016-02-03 19:25:19 -08:00
Tim Abbott
ee6062691a
Fix missing None in check_none_or return.
2016-02-03 19:25:18 -08:00
Tim Abbott
f03bfc5816
Fix missing prefix cache error output.
2016-02-03 19:25:18 -08:00
Tim Abbott
8654b57c7b
bugdown: Move definition of current_node above set_text function using it.
2016-02-03 19:25:18 -08:00
Tim Abbott
eee36618fe
run-dev: Fix overwritten manage_args variable with the wrong type.
...
manage_args is set to a list of arguments a few lines later in the
function, making this initialization as the empty string useless and
confusing.
Discovered using mypy.
2016-02-03 19:25:18 -08:00
Tim Abbott
8dcdb1d8a8
actions: Remove duplicate import of RealmFilter.
...
Apparently we were importing it twice in the same import statement.
Discovered using mypy.
2016-02-03 19:25:17 -08:00
Tim Abbott
294b7aa7bd
EventsRegisterTest: Remove unused variable maxDiff.
...
Discovered using mypy.
2016-02-03 19:25:17 -08:00
Tim Abbott
e9f39922a0
notify_subscriptions_*: Fix use of leaked stream variable.
...
While I believe this actually produced correct output since users are
always subscribed to streams within their realm, this code was
definitely wrong.
Discovered using the mypy type-checking tool.
2016-02-03 19:25:17 -08:00
Tim Abbott
6c5cee2400
Cleanup 500s due to Google oauth2 errors.
...
These are user errors, albeit somewhat interesting ones, so they
should be logged (and return a user error response), not throw an
exception.
2016-02-02 23:08:20 -08:00
Tim Abbott
aad3bff193
Harden style rule for % comprehensions and fix existing errors.
2016-02-02 23:08:19 -08:00
Zev Benjamin
4887a79d21
Make the nginx log directory owned by zulip
...
This is required to make log2zulip not error out when reading the nginx
error.log.
2016-02-02 23:05:44 -08:00
Zev Benjamin
e780f5dab5
Make log2zulip error message more accurate.
...
In particular, in the case of a permissions issue reading the log
file, it would claim the log file doesn't exist.
2016-02-02 23:04:48 -08:00
Tim Abbott
206dc3aafc
Add python 3 compatibility check for libmodernize.fixes.fix_dict_six.
...
It's not clear whether this will end up being net negative in value in
the long term since it's kinda hard to understand the output, but in
the short term it should prevent regressions.
2016-01-26 21:11:25 -08:00
Tim Abbott
5bacda3662
python3: Fix usage of .keys()/.values() to handle iterators.
...
This fixes the places where we use the result of .keys(), .items(),
and .values() that wouldn't work with an iterator to wrap them with
list().
2016-01-26 21:11:25 -08:00
Tim Abbott
f5de149976
python3: specify explicit sorting algorithm for subscriptions.
2016-01-26 21:11:25 -08:00