Commit graph

3780 commits

Author SHA1 Message Date
Jacob Herrington
07bd2e90b5 Add eager loading based on Bullet (#5552) [deploy] 2020-01-18 19:07:41 -05:00
Ben Halpern
7bd1d8afda
Change font size for search and message input (#5572) [deploy] 2020-01-18 14:53:54 -05:00
Molly Struve
4f7697880c Update travis's artifacts path (#5568) 2020-01-17 17:29:10 -05:00
Mike Coutermarsh
9f983e271c Increase cache TTL for social preview images (#5471) [deploy]
* Increase cache TTL for social preview images

These are expensive to generate + don't change often. We can have a long cache.

Ideally, they would never expire, and get auto evicted by redis when space fills up. But I don't think a `nil` ttl is possible when a default
is set in the Rails config (see production.rb).

So I set it to a real long value. + test to guard against it accidently being changed.

* Try a cache expiration of 6.weeks as suggested by @mstruve in PR
2020-01-17 17:06:06 -05:00
Alex
e1e075479b Create new NewFollowerWorker and start sending jobs to it (#5556) [deploy] 2020-01-17 15:08:50 -05:00
Asha Balasubramaniam
80aa2d51cf Remove migrated job to bust comment cache (#5548) 2020-01-17 14:21:39 -05:00
Jacob Herrington
a1968f926d Add guide for Ransack to docs [ci skip] (#5554) 2020-01-17 14:02:05 -05:00
Alain Mauri
6f0f64ba6a Remove Mentions create all job (#5550) [deploy] 2020-01-17 13:59:27 -05:00
Molly Struve
28c2bafca4
Disable Beeline on Schedulers and in Console (#5561) 2020-01-17 13:56:59 -05:00
Molly Struve
ffba283b67
Only setup StrongMigrations in dev or test (#5562) [deploy] 2020-01-17 11:45:05 -05:00
Lucas Hiago
e5a6d7573f Remove old Notifications::RemoveAllJob (#5547) [deploy] 2020-01-17 11:18:36 -05:00
Michael Kohl
9ef1ae512b Add strong_migrations gem (#5522)
* Add strong_migrations gem

* Incorporate PR feedback

* Move gem to group :development, :test
2020-01-17 09:45:44 -05:00
Anna Buianova
245550a10b Improved BadgeRewarder (#5525)
* Improved BadgeRewarder

* Replaced find_by with find_by! in BadgeRewarder to be aware of missing badges

* Fixed and organized BadgeRewarder specs

* Use let instead of let! in BadgeRewarder tests where needed
2020-01-17 09:18:19 -05:00
Ben Halpern
477f5af8eb
Send past week aggregate x day active user data to datadog (#5553) [deploy]
* Initial days active work

* Add active users count to datadog
2020-01-17 08:52:38 -05:00
ludwiczakpawel
815a95e85d Adding info about disappearing tokens (#5523)
* adding info about disappearing tokens

* fixing copy + numbering issue
2020-01-17 08:46:55 -05:00
rhymes
1bc0469b2d Add article's record key to Fastly Surrogate-Key to separate caches (#5543)
* Add article's record key to Fastly Surrogate-Key to separate caches

After #4744 we successfully setup an auto purging system based on Fastly's surrogate key based cache and purging API.
Unfortunately this worked only in the `:show` action as comments are their own tree-based resource.
The `:index` though, is related to a single article, so without the article's record key in the `Surrogate-Key` header the first time we hit the API the result would become the value stored in Fastly's API, for all articles.

* Fix commentable mock for job spec

* Add comment.commentable.purge to the worker as well

* Add more thorough tests for commentable
2020-01-17 08:45:47 -05:00
Ben Halpern
4e41e4a2ac
Add more info to architecture.md doc (#5541) 2020-01-16 16:33:51 -05:00
Jacob Herrington
8db4808d2e Internal Reports: Searching and sorting with Ransack (#5447) [deploy]
* Add gem Ransack 2.3.0

* Add sorting and search to internal/reports

The UI here should probably be revisited sooner or later, I feel like
the vomit reactions might even need to be moved to their own view.

* Add system spec for internal reports search

* Remove filter for report_type
2020-01-16 15:02:09 -05:00
José Chaves Neto
eff7bac9d8 refact: refactor userDetails (#5467) 2020-01-16 14:02:49 -05:00
Ben Halpern
a4b86e3ff1
Add initial usage metrics for datatog (#5544) [deploy]
* Add initial usage metrics for datatog

* Make measurable name more clear

* Change name of daily usage worker

* Fix test names
2020-01-16 12:59:17 -05:00
Molly Struve
1a3d59c97f
Send Sidekiq data to Honeycomb (#5517) [deploy] 2020-01-16 12:30:43 -05:00
gverger
c7de0d762b Add let_it_be_readonly to avoid updating variables (#5407)
With let_it_be, we define variables that are created for the whole
context. In case we update them in an example, there might be a
discrepancy between the object and its value in the database, since the
database is cleaned between examples, but not the object itself.

This is what happened here with the `article` object. In one of the
tests, we update its organization, and in another, we reupdate it. The
problem is that the `article` object still thinks it has an
organization, but it has been cleaned in the database. So setting the
same organization id to the object doesn't trigger the SQL query, and
the article in the database still doesn't have an organization attached.

One solution is to use `reload: true` as a parameter of `let_it_be`: it
will reload the object from the database at the beginning of each test. To
make sure we don't have other dormant traps like this one, what I
propose is to either have `reload: true`, or to have the object
readonly to avoid getting to a difference between the object and its
database value.
2020-01-16 10:53:30 -05:00
Asha Balasubramaniam
81ead4935a Migrate Comments::BustCacheJob to Comments::BustCacheWorker and move to Sidekiq (#5502) 2020-01-16 10:20:13 -05:00
Molly Struve
29efdaf20a
Remove Comments::CreateIdCodeJob which is now done inline (#5536) 2020-01-16 09:31:11 -05:00
Michael Kohl
b89ebd133e Add myself to core team in README (#5540) 2020-01-16 08:47:17 -05:00
Alex
7d47c78e55 Fix typo in Skipping CI docs [ci skip] (#5538) 2020-01-15 18:53:01 -05:00
dependabot-preview[bot]
be39f8ad82 Bump reverse_markdown from 1.3.0 to 1.4.0 (#5494) 2020-01-15 18:04:06 -05:00
dependabot-preview[bot]
92310ee7f9 Bump derailed_benchmarks from 1.4.3 to 1.5.0 (#5489) 2020-01-15 17:49:35 -05:00
Molly Struve
7b63da2627
send screenshots to s3 after failed travis build (#5537) 2020-01-15 17:22:37 -05:00
serena
5e761fc570 remove unused welcome notification job (#5535) 2020-01-15 16:57:33 -05:00
Thomas Bnt
0c6e696f2d Changed user-metadata-details to overflow-y: auto (#5532) [deploy] 2020-01-15 16:47:10 -05:00
Michael Kohl
e946e2d7cf Update settings links + descriptions in editor guide (#5473) 2020-01-15 16:37:35 -05:00
Alex
e3d83896f0 Add Alex Smith to core team members [ci skip] (#5534) 2020-01-15 16:35:22 -05:00
Lucas Hiago
c09c65d7bf Fix missing redis server to gitpod configuration (#5528) 2020-01-15 15:12:18 -05:00
Molly Struve
5962d52a61
record background queue stats in a worker (#5533) [deploy] 2020-01-15 14:44:57 -05:00
Lucas Hiago
97aac4ef9b Change Notifications::MilestoneJob to Notifications::MilestoneWorker and move to sidekiq (#5454) [deploy] 2020-01-15 13:21:56 -05:00
rhymes
fd6758fa39 Enable Bullet in development mode (#5527) 2020-01-15 13:21:00 -05:00
Molly Struve
ddb54d0422
Halt Deploys With release script if ENV variable DEPLOY_STATUS is set to blocked (#5510) [deploy] 2020-01-15 12:36:05 -05:00
rhymes
7bfb255627 Remove unnecessary heroku slug commit values in cache keys (#5524) 2020-01-15 12:35:16 -05:00
Lucas Hiago
74f9decc56 Change Notifications::RemoveAllJob to Notifications::RemoveAllWorker and move to sidekiq (#5451) 2020-01-15 12:34:12 -05:00
Molly Struve
2e5a36e538
Log DB Table sizes in a Sidekiq Worker (#5518) 2020-01-15 12:33:14 -05:00
rhymes
4f9321e6f4 Fix spec that broke after we merged #4744 (#5529) [deploy] 2020-01-15 12:01:37 -05:00
Molly Struve
6726c62e94
Scrub unused data sent to Honeycomb to save space (#5512) [deploy] 2020-01-15 11:11:41 -05:00
rhymes
bcd85452e9 Comments API: fix caching issues (#4744) [deploy]
* Use ancestry in the index and add test

* Add tests for show action

* Return complete comments trees for index, kill n+1 and use correct edge cache key

* Return complete comments tree for show, kill n+1 and use correct edge cache key

* Refactor tests and add surrogate keys tests

* Preload users for the whole subtree

* Clarify explanation of the edge cache keys construction

* Refactor partials

* Remove action caching

* Replace .map.flatten with .flat_map

* Fix surrogate key prefix according to Fastly docs

* Add comment.purge to Comments::BustCacheJob to use Fastly-Rails

* Fix surrogate key spec
2020-01-15 10:45:56 -05:00
vladimirschneider
bbaa5902c7 Currect .menubg top position (#5505)
* Currect .menubg top position

Ben changed .top-bar height but do not changed .menubg top position

* Update top-bar.scss
2020-01-15 10:07:02 -05:00
ludwiczakpawel
06bf574e34 adding section for switching to free plan (#5514) 2020-01-15 08:38:58 -05:00
Ben Halpern
e9252bcd10
Fix podcast NaN time issue (#5513) [deploy] 2020-01-14 15:30:11 -05:00
rhymes
ff7532b3db Handle liquid tag errors in comments form (#5485) [deploy]
* Handle liquid tag errors in comments form
* Do not hide Pundit::NotAuthorizedError errors
2020-01-14 14:10:05 -05:00
Ben Halpern
c0a7c17054
Modify podcast design details and functionality (#5472) [deploy]
* Modify podcast design details and functionality

* Adjust play button size

* Add heroku slug commit to some cache keys
2020-01-14 13:56:47 -05:00
rhymes
760d5ef325 Use .execute to avoid any possibility of prepared statements (#5509) [deploy] 2020-01-14 13:23:32 -05:00