Commit Graph

787 Commits

Author SHA1 Message Date
Leo Franchi 6274c33f86 Allow disabling of feedback system in UI
(imported from commit ce16b2916784e9cf10a230cb47515ffc65888778)
2013-11-13 11:18:02 -05:00
Leo Franchi 306ce65ea3 Only create initial passwords for local dev setups
(imported from commit 2ef33ebbab0fe21486acbb1a3a78ed434abac2db)
2013-11-12 22:42:05 -05:00
Leo Franchi d7b823f017 Point email mirror to staging for zulip.com in non-localserver, and prod otherwise
(imported from commit 3076df1e68e0200af06b79a8cdeb9822bbf4c10c)
2013-11-12 22:22:13 -05:00
Steve Howell 0fe751425a Always enable SlowQueryWorker.
(imported from commit 05aa98d60c34e95df0b41fe9d25d909fea547ddc)
2013-11-12 20:19:42 -05:00
Steve Howell e93215693a Always drain the slow_queries queue.
(imported from commit e11c25116529fb402d82d349a67fb1dfc40f510c)
2013-11-12 20:19:42 -05:00
Steve Howell cf79e77347 Extract process_one_batch() in SlowQueryWorker.
By extracting the function, we eliminate a redundant sleep
call.

(imported from commit 24d4485019f96ae10e9a00244643b77ff2a7db57)
2013-11-12 20:10:23 -05:00
Luke Faraone 046c2927ab Redirect to / instead of the login page on successful login.
(imported from commit 9bb61dc48861c580baf170dbdbdc2564e177e8a5)
2013-11-12 19:18:35 -05:00
Luke Faraone 74b6a940e8 Actually log the user in when they authenticate via SSO
(imported from commit aa33e8781d08f7a2793a3738e44e09701122e10c)
2013-11-12 19:18:35 -05:00
Luke Faraone fafa14db9a Patch out references to zilencer so the app runs without it on ENTERPRISE
(imported from commit bd4fe1ff47e1b4dc9038f800ee8aa2980bd00fdf)
2013-11-12 18:43:06 -05:00
Zev Benjamin cf8cf1fe03 socket: Fix non-rabbitmq codepath
(imported from commit 3ccdcbfb3283fc57ca502878e9c8d6068e7bce40)
2013-11-12 16:42:15 -05:00
Tim Abbott 3dadb5b76a Update comments to rename Local Server => Enterprise.
(imported from commit 82bf89aa1148a78ce11ead203a0bc16243d1fca8)
2013-11-12 15:57:02 -05:00
Tim Abbott 21f1058fd2 Rename local_server=>enterprise in DB initialization script.
(imported from commit 76e26f43858e3baa6ed1b38d67973ed41acf04f3)
2013-11-12 15:57:02 -05:00
Tim Abbott 5293cdebe8 Rename LOCAL_SERVER to ENTERPRISE.
(imported from commit 7edf353eefe6c9e7aac74b7bbc37b923cac1b913)
2013-11-12 15:57:01 -05:00
Tim Abbott 5d5e662c08 Disable event logs on local server.
(imported from commit eafbd645ae7ce8d868de2fb8c6548325a05b1340)
2013-11-12 15:57:01 -05:00
Kevin Mehall a593a798f8 Move send_stats management command back to zerver/
It's not analytics, and it's needed for restart-server.

(imported from commit 979fa15715ea437cbbc5d986c859ee4d6c668da8)
2013-11-12 15:50:08 -05:00
Zev Benjamin 673f497a6f socket: Only deregister connections that have been registered
(imported from commit bfaed299a129bac1e901883f5c6e3339f5a8b688)
2013-11-12 15:24:30 -05:00
Zev Benjamin eec195f421 socket: Use our full logging infrastructure
We also now separate out the times for the socket overhead, the
request service time, and the queuing delays.

(imported from commit e1683f7f28b968b86ebb701b0ac29b00ac6d67c3)
2013-11-12 15:24:30 -05:00
Zev Benjamin 6ff8ff0f3f Make all the work of the logging middleware not depend on Request or Response objects
(imported from commit ce13909d338230a931cb09405d54bb872b2ff0a6)
2013-11-12 15:24:30 -05:00
Zev Benjamin 32ed5f9f42 Move flushing the display recipient cache to its own middleware
(imported from commit 27a6935a5830ef986b18de169d66dd86d273d064)
2013-11-12 15:24:30 -05:00
Zev Benjamin 53ec292022 Store logging data in a dict instead of individual attributes
(imported from commit f7d76670428d5d8298c572a23cbfffc1d9695f23)
2013-11-12 15:24:30 -05:00
Zev Benjamin 24ee4a5d57 socket: Build a real Request object to send through our full stack, including middleware
One quirk here is that the Request object is built in the
message_sender worker, not Tornado.  This means that the request time
only counts time taken for the actual sending and does not account
for socket overhead.  For this reason, I've left the fake logging in
for now so we can compare the two times.

(imported from commit b0c60a3017527a328cadf11ba68166e59cf23ddf)
2013-11-12 15:24:29 -05:00
Leo Franchi ffbadf61df Restore original desktop_home redirect
Without it, a reverse lookup on zerver.views.home would return /desktop_home

(imported from commit 037bd532162441ca070bcb90a86d372048518cd4)
2013-11-12 15:02:18 -05:00
Steve Howell 56c39728ba Support /me syntax.
If a user types "/me runs to the store", we put "runs to the store"
in bold after their name.

(imported from commit fbc11e99244e1c8fa1c03e4753e706957fcd449e)
2013-11-12 10:49:10 -05:00
Kevin Mehall 59757b37e2 Get user API key without password when SSO is the only login option
(imported from commit 195ff68cc54cd2e7d200702c699bb3a258d3e868)
2013-11-12 10:37:33 -05:00
Kevin Mehall 4a6b7cb20b Disable password change when SSO is the only login option
(imported from commit fd1a14237e2d6ea574331ed178bfc0db5beb18c6)
2013-11-12 10:37:33 -05:00
Leo Franchi cc2d17d7c0 Allow omission of EMAIL_GATEWAY_BOT and stream emails
(imported from commit 51412d2a46bbacd6537ef892e7b6bdf33ac94079)
2013-11-12 10:32:34 -05:00
Jessica McKellar 59117f0e03 Display Freshdesk's inline images in notifications.
(imported from commit b40de8282ac26e7b77e6d9de439b521bbe7adbe2)
2013-11-12 10:24:26 -05:00
Jessica McKellar 30151eff92 Add tests for the Freshdesk webhook.
(imported from commit 5b745ef1a590812d4b3c1adbba7d43d25983c4ad)
2013-11-12 10:24:26 -05:00
Jessica McKellar 3adb9c6d80 Add a basic Freshdesk webhook.
The Freshdesk API is bonkers, but we do the best we can with it to
support notifications on ticket creation and ticket updates.

(imported from commit 2023622b274ef83f4e1544d0df286fe2e68581b3)
2013-11-12 10:24:26 -05:00
Tim Abbott 64c3a9a0bd initialize_local_server_db: Improve success output.
(imported from commit 7ac45876e639b7af5a283fb60b134ec13438a313)
2013-11-12 09:38:43 -05:00
Tim Abbott 96918e30f9 initialize_local_serverd_db: Create the realm for ADMIN_DOMAIN.
(imported from commit e13e73e54871c106cd4fd465b74c645657899dce)
2013-11-12 09:38:42 -05:00
Tim Abbott b0dc882f7e localserver: Add support for not having an APNS_CERT_FILE.
(imported from commit 42d8caebb3035bd9e6e19db6359cc33e8ab4f317)
2013-11-12 09:34:25 -05:00
Leo Franchi 7126610298 Add a generate_204 method to our backend for the desktop app
(imported from commit 3fa61b7e09884c83a27740087abba25dbcd8a9cb)
2013-11-08 14:13:44 -05:00
Tim Abbott 2e833613c3 [Django 1.6] update monkeypatching for CursorDebugWrapper.
(imported from commit cb4b44a2bb6ba6efbd1fb5710da2df7c1dec7f81)
2013-11-08 08:22:04 -05:00
Steve Howell 7bde1f7716 Add activity.short_huddle_name().
(imported from commit e3f0389298631fd06169dbc9559691470ac19d00)
2013-11-07 16:54:13 -05:00
Steve Howell 9adcba1e6d Add activity.huddle_fraction_present().
Add a method that lets us know what percentage of a huddle is
present.  (We can use this later to set the opacity of huddles
in the UI.)

(imported from commit 8a2383951807d7bfbf9d730a8980d977cf23b379)
2013-11-07 16:54:13 -05:00
Tim Abbott ba15333df9 Add temporary debug logging around Tornado handler protocol.
This logging is kinda excessive since it adds like 4 log lines per
recipient, so I expect we'll end up reverting it once we've debugged
the proximal issue.

(imported from commit 5e6ab3e230f32b65ad9cf0d95f20ffbc0fe7397e)
2013-11-07 15:44:19 -05:00
Tim Abbott 3b41e79074 get_events: Log queue ID in home and get_events requests.
(imported from commit 8be1427c6c9ec3d1eb4a02f3c6ad5c2726542596)
2013-11-07 15:44:19 -05:00
Zev Benjamin 24ae5998e5 socket: Request the status of pending requests on reconnect
This will hopefully help with the send dialog being stuck on
"sending" as well as allowing us to not show errors to the user on
reconnect.

(imported from commit 31ee889853f348e486863073dc130cdfb4e1338d)
2013-11-07 11:43:34 -05:00
Zev Benjamin 48a25211fa socket: Record the request status in redis
(imported from commit 6c3f6dc37d1abdcacf105f865ac24483717438ca)
2013-11-07 11:43:34 -05:00
Zev Benjamin 87fc182645 socket: Move `req_id` parameter to top level of protocol payload
(imported from commit 271d84a0b44a2623bec290f64a83a0423698a1ef)
2013-11-07 11:43:34 -05:00
Zev Benjamin 4595143023 socket: Switch to client ids from connection ids
Clients can only have one connection at a time, anyway, so we can
just keep track of a client id, instead.  This makes reconnections
easier.

It's a little funny to use queue ids for the client id, but we know
they should exist by the time the client is connecting and they are
guaranteed to already be unique and authenticatable.  We will also
eventually be integrating the event system and the socket code closer
anyway.

(imported from commit 1f60e06fb16d31d6c121deafd493fb304d19a6c2)
2013-11-07 11:43:34 -05:00
Zev Benjamin 63924ea742 socket: Reduce code duplication in authentication error cases
(imported from commit e7900b1374c3c0e5ea994ff315d281833e7ecdc6)
2013-11-07 11:37:00 -05:00
Zev Benjamin e0fece4082 socket: Log the transport type on the authentication line
(imported from commit 7b3ae3ab38da35cbd60aca991665d40b41a7f78f)
2013-11-07 11:31:06 -05:00
Kevin Mehall d93c7545f6 Revert rendering window changes related to summarization
This reverts commit c10d9c1a0d23891acce88bf8d79866c08cb75681.
This reverts commit 9259a246946cd968a8725c38ff5ef2d4b4793717.

(imported from commit 50e9e0136c2487cc63d75ae2b78df0c70a1b0be1)
2013-11-07 11:04:27 -05:00
Kevin Mehall 57aabc112d Add debug for a possible way get_events might forget a request
(imported from commit ca3ac5b942ffdcc8f175cc6b690cb2555e170836)
2013-11-06 18:34:50 -05:00
Leo Franchi 9a0faf9ca8 Clean periods for our domain statsd keys
(imported from commit d89b860566a7845774f470a215a3f3697b871d3c)
2013-11-06 15:45:03 -05:00
Leo Franchi 591d06cb24 Only log valid stats to statsd
(imported from commit 449b7f5e750913c04e4df8f2a895274ded99ddd9)
2013-11-06 15:41:46 -05:00
Tim Abbott 4aa7ce3bd2 Also display the time until new work is scheduled after rendering.
(imported from commit 33562f105d5dd6ed81ca60d0517277d908ec2ffd)
2013-11-06 15:35:49 -05:00
Tim Abbott f670fdc717 logging: Also log the end-to-end receive time for messages we sent.
This is the amount of time between when it is sent, and when it is
rendered into the user's home view.

(imported from commit 468c28e77ba16c7256c359e90ab5aacf9d497585)
2013-11-06 15:35:49 -05:00
Jessica McKellar d51ac058e2 alert words: add multi-word and non-ascii words to tests.
(imported from commit 9c9c7b6ec255970e7e396cf6185af07c7677753c)
2013-11-06 11:43:35 -05:00
Leo Franchi 8dd4bf8f00 [puppet] Log endtoend send time on a per-realm basis as well as aggregate
(imported from commit 07226b20081d203af1f52776475228d9b6783869)
2013-11-06 11:25:00 -05:00
Jessica McKellar 74d1a56c68 Do not notify on stream messages by default for CUSTOMER19.
(imported from commit 7f737b9068ec39fc53678aa5c0976d3da908ce00)
2013-11-06 10:40:28 -05:00
Luke Faraone 3daca0ca9c Fix rebasing errors that rightfully made the linter sad
(imported from commit fbed798c7d752ea2b058aeebb5ae31a620684a3a)
2013-11-05 17:52:53 -05:00
Leo Franchi 980dc8345a Strip unicode chars from statsd path
(imported from commit 1c5829be7f89ad1e26be52b416a51da63e2a94cf)
2013-11-05 17:47:15 -05:00
Luke Faraone 00e72cd97d Switch url parameter to full_name from service-specific gafyd_name
(imported from commit 21541da29d2846cfd912d19b73e239e96606f9e5)
2013-11-05 16:17:06 -05:00
Luke Faraone c11b65590b SSO / REMOTE_USER support
(imported from commit 4f4fad7af5d3c6099cac95d7708338c182626d72)
2013-11-05 16:14:13 -05:00
Luke Faraone b4ad8d2a5a Factor out Google Apps user-not-registered logic
(imported from commit ba1d9da60df01f063cbfc0374130b655b7555b4a)
2013-11-05 16:14:13 -05:00
Steve Howell 5ff6bc7330 Move activity reports to zilencer.
This commit moves the view code and the URLs.  It doesn't touch
the templates yet.

(imported from commit dbef5eafe4956b29154c1134c05aa586c9e417b2)
2013-11-05 15:41:03 -05:00
Steve Howell 4fb4e04501 Add activity.full_huddle_name().
(imported from commit 304e47ac88d7497fcde49f448912a2e063dd0bd1)
2013-11-05 15:34:29 -05:00
Steve Howell e628efff6c Fix people_dict in activity.js tests.
The simulated people_dict in the activity.js test was not
matching the production code, and going forward, we'll want to
share the people_dict setup for all of our tests.

(imported from commit fc21a02216b9422130b9fe9c11bcf80590612844)
2013-11-05 15:34:28 -05:00
Steve Howell 6d511486cb Add activity.process_loaded_messages() and get_huddles().
Activity.js now has the capability to track huddles that
come through in loaded messages and return them in reverse
chronological order by their most recent message.  Right
now this only connected to a unit test, not any production
code.

(imported from commit 59957086fa2e454e5711472df091f178217aed2b)
2013-11-05 15:34:28 -05:00
Tim Abbott e06722657a [manual] Remove /messages/latest API and related legacy code.
This requires doing a puppet apply on our servers to take effect
properly.

(imported from commit 19dc56f071f07a5d2571eef49dd835121b2e82b6)
2013-11-05 14:19:40 -05:00
Leo Franchi 2551968966 Log end-to-end send time to statsd
(imported from commit 5a085b2cc72eaa69ca5dd704e3b33df895144b95)
2013-11-05 11:47:48 -05:00
Steve Howell d0722b6962 Remove dead code related to /activity.
(imported from commit ebec4ddb8727c16dc04ebd32829389e5594d49f5)
2013-11-05 11:00:59 -05:00
Steve Howell bd84d1305e Clean up titles in activity reports.
(imported from commit e516bbfaff7b3615059b4aafb3304e31db85edcc)
2013-11-05 08:13:00 -05:00
Steve Howell 23cd4016f4 Look for send_messages_backend in /activity page.
The main Activity page counts users as active if they have either
sent a message or updated a pointer.  In the unlikely event that
somebody sent a message but never updated their pointer, we were
undercounting them, if they went through send_messages_backend.

(imported from commit 5f112be87a239980c38a18c13f9cd68e90d2e905)
2013-11-05 08:12:59 -05:00
Tim Abbott 792b283dcd Report end-to-end sending times as experienced by clients.
This should help with determining the prevalence of slow sends as
experienced by users.

(imported from commit f00797679315c928af3c87ad8fdf0112f1dfa900)
2013-11-04 18:32:34 -05:00
Leo Franchi 0bcc8db924 Give the initial bots themselves as owners
(imported from commit aca5565a3705aa6c6d55eb8afb5ca84f0efc9a0c)
2013-11-04 17:36:14 -05:00
Tim Abbott 97e9615921 Add script to replace populate_db for local server.
(imported from commit ca51391fc1d8ed13c0fcd36e17c875a085c78eb0)
2013-11-04 17:01:41 -05:00
Leo Franchi 6765ec0795 Use a site-specific Zulip Admin email in django error pages
(imported from commit 2d5415d7cd81befc3051b5de3835c0cd258b6375)
2013-11-04 16:35:50 -05:00
Tim Abbott 87271b57cd Fix feedback check to correctly use the recipients list.
Even for a PM, the "recipients" list is 2 people -- the sender and the
receiver.

(imported from commit 5503e0ee2abb643601a0a4e61366127914808245)
2013-11-04 12:58:40 -05:00
Leo Franchi fe1313ad76 Split management commands for internal use into zilencer/
(imported from commit 3fd81bfc7e987fc88bd1d632546850eebbb92234)
2013-11-04 11:58:52 -05:00
Tim Abbott 54871853b1 Remove obsolete Tornado-internal user pointer cache.
It is from before we were caching UserProfile objects.

(imported from commit 5335728bf0c62efb330fa29a6e08efc43eb86691)
2013-11-04 11:51:18 -05:00
Tim Abbott 2a77cecc7a Remove several unnecessary TODO notes.
(imported from commit 1292d048d63c056af69f62352cf8cab283ef5792)
2013-11-04 11:51:18 -05:00
Tim Abbott 68dcc760c3 Clean up some unused imports.
(imported from commit 0c5d8e2a55ba1b8909ba807fee3afe863dcdc226)
2013-11-04 11:51:17 -05:00
Steve Howell 0c505c9b80 Exclude "desktop" from Client tab of /realm_activity.
The "desktop" counts aggregate all desktop clients, but on the
Clients tab, we are only interested in specific versions.

(imported from commit eea2d8da584a6fa32fa1f3a2bae71ef5daaba738)
2013-11-04 10:24:55 -05:00
Steve Howell 7a67fb34b0 Rename: queue_followup_emails -> enqueue_followup_emails.
(imported from commit c44e790de5b694f8d98b03608231f7a284856254)
2013-11-04 10:20:59 -05:00
Steve Howell c4141eeeb0 Rename: queue_digest_emails -> enqueue_digest_emails.
(imported from commit a72fdf849814ff974117c55bf1b155c494a1b160)
2013-11-04 10:20:59 -05:00
Tim Abbott 03c5ae44a4 Remove unnecessary transaction in message flag updating.
We only needed a transaction here to workaround problems associated
with not having database-level autocommit.

(imported from commit 240ba05a4a4a846a7ff62e6e59e403ab0d78ab11)
2013-11-04 07:31:39 -05:00
Tim Abbott 0ae03eb655 Remove transaction management hacks in get_client.
I'm pretty sure this code was a hack to workaround the fact that
without database-level autocommit, .get_or_create is racy.

(imported from commit bfdd476a354aee439feeaa0030ae59cc43c165b9)
2013-11-04 07:31:39 -05:00
Tim Abbott 29aef33c53 Remove transaction management hacks in workers.
(imported from commit 33b9349bd139907755b52474df8a0da13b73b80d)
2013-11-04 07:31:39 -05:00
Tim Abbott 2de31ee287 [schema] Remove the UserMessage.archived field.
This was a precursor to UserMessage.flags.read that never got used
because we decided to use django-bitfield.

(imported from commit 868754723c07ee9b85ae951aee785e571ccfef97)
2013-11-04 07:31:11 -05:00
Steve Howell 0e0272220b Ignore internal records in /realm_activity.
(imported from commit ba0387cefe53d3a766f539cabdc1252b2d749839)
2013-11-02 17:58:34 -04:00
Steve Howell 54a25b065a Add show_admins management command.
(imported from commit f16e118fa5203408b99f0a41ff7cecbffb821fa7)
2013-11-02 11:37:27 -04:00
Steve Howell 406c4f172a Add realm.get_admin_users() method.
(imported from commit b1cb465f0c81eb9f56ad1486b92cd39a8d001474)
2013-11-02 11:37:27 -04:00
Steve Howell f71fa2eef1 Add History tab to /realm_activity
(imported from commit 1c308fc46031f68441a6cfba293a45655959cb7e)
2013-11-01 18:13:16 -04:00
Steve Howell 33c7ec4215 Add Clients tab to /realm_activity.
(imported from commit c443ae6494584280dca21b3487aeba3a2e79643a)
2013-11-01 18:13:15 -04:00
Steve Howell a6383a881f Split out bots on /realm_activity.
(imported from commit 5962646f4d76c95078a24de7fc22334597ff206f)
2013-11-01 18:13:15 -04:00
Leo Franchi ca8187b8cf Email gateway bot variable name changed to EMAIL_GATEWAY_BOT
(imported from commit 01c430bd9b916c9bb152ee821214495333f1d37e)
2013-11-01 16:46:17 -04:00
Steve Howell 49e26deaa1 Add Name column to /realm_activity.
(imported from commit ed8d1a775f67ec967555a03d9be14bfc02273808)
2013-11-01 15:42:29 -04:00
Steve Howell 2e2a4d8fb5 Treat more activity as "send" activity.
(imported from commit 18c26ac5dd9a1766e3ed02bf63ae0be31898524d)
2013-11-01 14:59:14 -04:00
Steve Howell e65139b5a4 Add "Total sent" column to /realm_activity.
(imported from commit 1623f01ee18317af3e9af5359e089b4c9a1c64f4)
2013-11-01 14:59:14 -04:00
Steve Howell 0ca84ea981 Use better date format in activity reports.
(imported from commit 5114cdcaaf5bddb4578246b9c12163d0ba1fad45)
2013-11-01 14:51:36 -04:00
Steve Howell 80f9ae7514 Change column labels in /realm_activity.
(imported from commit 3435eebaefe46ff99a127a6834669b4be3186d8f)
2013-11-01 14:51:36 -04:00
Leo Franchi db6550e99a Make built-in bots come from settings.py, and allow localserver-specific ones
(imported from commit e21933e37487314ac986147562817a19227e8960)
2013-11-01 14:13:05 -04:00
Steve Howell 6382c417cf Improve zulip_internal decorator.
I added the @wraps decorator, and I point request._query at the
function name to override the URL, since some of the internal
URLs have realm names and domain names in them.  I basically
prefer the function names in most cases, so I just made this
automatic for zulip_internal functions, rather than having to
remember to address URL-vs.-function-name for every new endpoint.

(imported from commit 5583607f395be4dfae0bac31e1cdbffdf51fb3e8)
2013-11-01 13:43:38 -04:00
Steve Howell 8bbc9e886e Add Desktop/iPhone/Android columns to /realm_activity.
(imported from commit b10916f5d63dabcb079f835af7f2829b266a924a)
2013-11-01 13:21:58 -04:00
Steve Howell 4f788067cc Add "Use" column to /realm_activity.
(imported from commit d8f431b108c8d3846e00c47859004e952f7de422)
2013-11-01 12:51:45 -04:00
Steve Howell b72eb72edb Make emails linkable in /realm_activity.
(imported from commit c8e721b5a6b03bbddd86f24ec60bd750aee33323)
2013-11-01 12:51:44 -04:00