Commit Graph

14696 Commits

Author SHA1 Message Date
hackerkid 94410c920f requirements: Upgrade decorator to 4.0.11. 2017-01-19 14:11:07 -08:00
hackerkid 65f7514a69 requirements: Upgrade regex to 2017.1.17. 2017-01-19 14:11:07 -08:00
hackerkid 3b1f6a4154 requirements: Upgrade lxml to 3.7.2. 2017-01-19 14:11:07 -08:00
hackerkid 76bf3982a6 requirements: Upgrade cssselect to 1.0.1. 2017-01-19 14:11:07 -08:00
hackerkid 5f56b9af97 requirements: Upgrade cchardet to 1.1.2. 2017-01-19 14:11:07 -08:00
hackerkid 4116da22a9 requirements: Upgrade pyflakes to 1.5.0. 2017-01-19 14:11:07 -08:00
hackerkid 8b45f5c8a3 requirements: Upgrade coverage to 4.3.4. 2017-01-19 14:11:07 -08:00
hackerkid ae1bd2b0bc requirements: Upgrade beautifulsoup4 to 4.5.3. 2017-01-19 14:11:07 -08:00
hackerkid 43c4d7f39e requirements: Upgrade pcodestyle to 2.2.0. 2017-01-19 14:11:07 -08:00
hackerkid 6571d7c568 requirements: Upgrade polib to 1.0.8. 2017-01-19 14:11:07 -08:00
hackerkid c29cd84ce9 requirements: Upgrade django-pipeline to 1.6.11. 2017-01-19 14:11:07 -08:00
hackerkid 60fbe093c1 requirements: Upgrade sourcemap to 0.2.0. 2017-01-19 14:11:07 -08:00
hackerkid 24426d4684 requirements: Upgrade simplejson to 3.10.0. 2017-01-19 14:11:07 -08:00
hackerkid 22c2c0144c requirements: Upgrade pytz to 2016.10. 2017-01-19 14:11:07 -08:00
hackerkid f1c2156aae requirements: Upgrade oauthlib to 2.0.1. 2017-01-19 14:11:07 -08:00
hackerkid 82d8ef12cd requirements: Upgrade oauth2client to 4.0.0. 2017-01-19 14:11:07 -08:00
hackerkid 9d999dd524 requirements: Upgrade google-api-python-client to 1.6.1. 2017-01-19 14:11:07 -08:00
hackerkid 33e8be51e2 requirements: Upgrade fonttools to 3.5.0. 2017-01-19 14:11:07 -08:00
hackerkid 2ce60273f9 requirements: Upgrade SQLAlchemy to 1.1.5. 2017-01-19 14:11:07 -08:00
hackerkid db9d0b74a7 requirements: Upgrade Django to 1.10.5. 2017-01-19 14:11:07 -08:00
Sampriti Panda 6484af6854 tools: Fix regressions in tools/tests/test_html_branches.py 2017-01-19 08:02:34 -08:00
Tim Abbott bbba6b7725 Update changelog. 2017-01-18 15:43:25 -08:00
Tim Abbott 287b84d113 auth: Improve configuration/documentation for password strength.
Followup to #3190.
2017-01-17 20:52:52 -08:00
Tim Abbott bbead84afa docs: Extract security-model.md. 2017-01-17 20:52:29 -08:00
Tim Abbott 48109b7bd8 docs: Clean up user guide index a bit. 2017-01-17 17:06:40 -08:00
Yago González ade5e762fb integrations: Add documentation for OpenShift. 2017-01-17 16:04:55 -08:00
Rishi Gupta 734ca4644c analytics: Add random_seed argument to generate_time_series_data. 2017-01-17 15:54:57 -08:00
Rishi Gupta 37bdc7c010 analytics: Remove COUNT_STATS['messages_sent:hour'].
Having both messages_sent:hour and messages_sent:is_bot:day is confusing,
since a single messages_sent:is_bot:hour would have a superset of the
information and take less total space. This commit and its parent together
replace the two stats with a single messages_sent:is_bot:hour.
2017-01-17 15:54:57 -08:00
Rishi Gupta b593ac9d7c analytics: Change messages_sent:is_bot to hourly frequency.
In preparation for replacing messages_sent.
2017-01-17 15:54:57 -08:00
Rishi Gupta 68fcb4152f analytics: Remove interval field from *Count tables.
Includes a database migration. The interval field was originally there to
facilitate time aggregation (e.g. aggregate_hour_to_day), but we now do such
aggregations in views code or in the frontend.
2017-01-17 15:54:57 -08:00
Rishi Gupta a8f2ebb443 analytics: Include interval in COUNT_STATS property names. 2017-01-17 15:54:57 -08:00
Rishi Gupta c466036c80 analytics: Remove unneeded references to interval from test_counts.py. 2017-01-17 15:54:57 -08:00
Rishi Gupta 12d277d4f4 analytics: Change messages_sent:client stat to daily frequency.
A few reasons:
* Our two other subgroup'd message stats in UserCount are at CountStat.DAY
  frequency (messages_sent:is_bot and messages_sent:message_type).
* Keeping this stat at hourly frequency would likely double the size of our
  analytics table, given the current stats. (Counterpoint: if there are
  roughly as many active streams as active users, and we keep
  messages_sent_to_stream:is_bot at hourly frequency, then maybe this stat
  is only a 30% or 50% increase).
* We're currently only showing this on the frontend as a pie chart anyway.
2017-01-17 15:54:57 -08:00
Rishi Gupta 690002aef8 analytics: Add fixtures for several CountStats. 2017-01-17 15:54:57 -08:00
Rishi Gupta 2710a944e8 analytics: Refactor fixture creation to make it more general.
Also less verbose, in preparation for adding a bunch more fixtures.
2017-01-17 15:54:57 -08:00
Rishi Gupta 1f4a4e5e26 analytics: Force --clear-existing-data option in populate_analytics_db.
Makes more sense for a fixture generating script to just clear the existing
data every time.
2017-01-17 15:54:57 -08:00
Rishi Gupta 680e7f75e1 analytics: Change generate_time_series_data argument from length to days.
Previously, this function seemed ambivalent about whether it was generating
a series of abstract data points or a series of data points that would
correspond to times. Switch firmly to the latter, so e.g. if the frequency
changes, so will the length of the output sequence.
2017-01-17 15:54:57 -08:00
Rishi Gupta 3712fda30d analytics: Ensure fixture data points are non-negative. 2017-01-17 15:54:57 -08:00
Rishi Gupta ecfc336a15 analytics: Add views for remaining /stats graphs. 2017-01-17 15:54:57 -08:00
Rishi Gupta 73c0c4c52e analytics/views.py: Increase efficiency of get_time_series_by_subgroup.
Not sure if this would actually be a performance problem in practice, but
this was originally making a database query for each subgroup (instead of
just a single query getting data for all the subgroups).

Also removed the filter against the interval column, which will soon not be
needed (interval will be uniquely determined by the property).
2017-01-17 15:54:57 -08:00
Rishi Gupta d873902755 analytics/views.py: Refactor get_messages_sent_by_humans_and_bots.
Refactor out the reusable parts, since we're about to add several more
views.
2017-01-17 15:54:57 -08:00
Rishi Gupta 3a72b5cda9 analytics: Rename messages_sent_to_realm.
Several additional stats in the pipeline that also relate to messages sent
to the realm.
2017-01-17 15:54:57 -08:00
Rishi Gupta cdb1c96169 analytics tests: Refactor assertCountEquals calls to be more readable. 2017-01-17 15:54:57 -08:00
Rishi Gupta 59d50c3a47 analytics tests: Make it easy to refer to users in test realm. 2017-01-17 15:54:57 -08:00
Rishi Gupta 54e66e6079 analytics: Add remaining backend tests in TestCountStats. 2017-01-17 15:54:57 -08:00
aakash-cr7 b373f2ef0f analytics: Add backend test for messages_sent_to_stream:is_bot. 2017-01-17 15:54:57 -08:00
Amy Liu 10c0c2b16d analytics: Add backend tests for messages_sent:message_type. 2017-01-17 15:54:57 -08:00
Rishi Gupta f30b174199 analytics: Set property and interval defaults in assertCountEquals. 2017-01-17 15:54:57 -08:00
Rishi Gupta a563a15f88 analytics: Make TestCountStats tests more robust.
Adds two things to TestCountStats.setUp():
* A realm with no messages, that generally should not show up in *Count
  tables,
* Users/streams/messages created at 0, 1, 61, and 1441 (just over a day)
  minutes ago (previously was 0, 60), to better test the start_time/end_time
  in the queries, and the frequency/interval setting in the CountStats.
2017-01-17 15:54:57 -08:00
Rishi Gupta e94bc8f142 analytics tests: Autogenerate names for create* functions. 2017-01-17 15:54:57 -08:00