Sam Saffron
30990006a9
DEV: enable frozen string literal on all files
...
This reduces chances of errors where consumers of strings mutate inputs
and reduces memory usage of the app.
Test suite passes now, but there may be some stuff left, so we will run
a few sites on a branch prior to merging
2019-05-13 09:31:32 +08:00
Robin Ward
57ee779b1e
FIX: Job exception: undefined method `email' for nil:NilClass
...
It seems that due to jobs being asynchronous and wrapping code in a
DistributedMutex that by the time we run the
`UserAvatar#update_gravatar!` job that the user/user email might be
destroyed.
This patch checks before a call to `user.email_hash` to make sure
the user and primary email exist to prevent the exception. If not
present, the job exits as there's nothing to do because we are
probably running after the user was destroyed for some reason.
2019-03-08 13:39:56 -05:00
Sam
7ee9a6a7ec
SECURITY: do not delete avatars uploads when deleting accounts
...
We rely on the clean up uploads job to do this safely
2018-12-13 16:26:07 +11:00
Sam
b74dd7d379
FIX: stop logging every 404 error when searching for gravatars
2018-10-23 11:43:14 +11:00
Sam
9bfc939692
cleanup so gravatar download failures are consistent
...
previously we would ignore socket error, but this would mean that
there could be conditions where we would keep trying to download
gravatars forever (in an hourly job)
2018-10-19 12:51:55 +11:00
Régis Hanol
3973823a33
FIX: always update 'last_gravatar_download_attempt' when updating gravatar
2018-10-18 11:02:54 +02:00
Sam
e1975e293f
FIX: when uploads are destroyed clear up avatar refs in user table
...
This also auto corrects twice daily when we ensure consistency
2018-08-31 14:46:42 +10:00
Guo Xiang Tan
72ed6ae951
Raise an error if update fails.
2018-08-23 15:40:21 +08:00
Guo Xiang Tan
4e11811321
FIX: UserAvatar#update_gravatar!
does not update User#uploaded_avatar
.
...
https://meta.discourse.org/t/missing-user-profile-pictures/93844/4
2018-08-06 13:29:44 +08:00
Guo Xiang Tan
b94633e844
FIX: FileHelper
should prioritize response content-type.
...
Request to a URL with `.png` extension may return a jpg
instead causing us to attach the wrong extension to an
upload.
2018-07-30 10:54:36 +08:00
Guo Xiang Tan
142571bba0
Remove use of rescue nil
.
...
* `rescue nil` is a really bad pattern to use in our code base.
We should rescue errors that we expect the code to throw and
not rescue everything because we're unsure of what errors the
code would throw. This would reduce the amount of pain we face
when debugging why something isn't working as expexted. I've
been bitten countless of times by errors being swallowed as a
result during debugging sessions.
2018-04-02 13:52:51 +08:00
Sam
8ecf313a81
FIX: correctly raise errors when downloads fail
...
This corrects an issue where we are hitting Gravatar for 404 over and over
Also ensures file download properly reports errors
2017-09-28 16:35:43 +10:00
Sam
b80320da5e
no verbose logging for failed downloads of gravatars
2017-09-28 11:32:26 +10:00
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09:00
Guo Xiang Tan
e57d2f5cb8
FIX: Don't do anything if avatar url returns an invalid status code.
2017-05-26 13:02:40 +08:00
Robin Ward
0a08c18a14
FIX: Don't rate limit gravatar downloads
2017-05-24 13:54:26 -04:00
Robin Ward
cdbe027c1c
Refactor FileHelper
to use keyword arguments.
2017-05-24 13:54:26 -04:00
Robin Ward
87ac758f05
FIX: Don't raise an error when the upload can't be retrieved
2017-05-24 13:54:26 -04:00
Robin Ward
f8c503186e
FIX: If there's an error downloading, don't raise it
2017-05-17 12:38:18 -04:00
Régis Hanol
9641d2413d
REFACTOR: upload workflow creation into UploadCreator
...
- Automatically convert large-ish PNG/BMP to JPEG
- Updated fast_image to latest version
2017-05-11 00:16:57 +02:00
Guo Xiang Tan
41fb76cc66
Don't rescue all errors.
2017-05-10 09:12:44 +08:00
Robin Ward
da92f35e08
Don't log a gravatar failure that is a socket error
2017-05-09 14:44:53 -04:00
Robin Ward
bcf1a9d43f
We don't need to log when we can't download a Gravatar
2017-05-09 14:43:39 -04:00
Guo Xiang Tan
f812415c52
Update annotations.
2016-11-24 10:13:03 +08:00
Régis Hanol
0862ad406d
FIX: pull twitter's avatar & profile when signing up
2016-10-17 15:43:40 +02:00
Sam
8dc4329094
FEATURE: optionally get extra profile info from facebook
...
This feature requires the application be approved by facebook, so it is
default off
2016-09-19 16:14:11 +10:00
Sam
5b3cd3fac9
FEATURE: Import facebook avatars when logging in via facebook
...
FIX: warning about popup dimensions when using facebook login
Rules are:
- On account creation we always import
- If you already have an avatar uploaded, nothing is changed
- If you have no avatar uploaded, we upload from facebook on login
- If you have no avatar uploaded, we select facebook unless gravatar already selected
This also fixes SSO issues where on account creation accounts had missing avatar uploads
2016-09-19 15:10:23 +10:00
Régis Hanol
07e7b07b63
FIX: refreshing gravatar wasn't working
2015-09-17 19:42:44 +02:00
Régis Hanol
29f25dbf6e
fix the build
2015-09-11 15:18:17 +02:00
Régis Hanol
93f9dcfcec
FIX: don't overwrite custom uploaded avatar when selecting gravatar
...
FIX: remove unecessary serialized fields
2015-09-11 15:10:56 +02:00
Régis Hanol
827ea641b0
FIX: Use File.size instead of IO.size
2015-08-17 18:57:28 +02:00
Régis Hanol
b0802abae2
FIX: crop & optimize user background profile/card images
2015-07-15 17:15:43 +02:00
Robin Ward
cb94a9000d
Revert "Revert "Extract logic to save external avatar url""
...
This reverts commit 2d20e4c692
.
2015-06-23 15:59:50 -04:00
Robin Ward
2d20e4c692
Revert "Extract logic to save external avatar url"
...
This reverts commit 18b8df3f32
.
2015-06-23 15:45:34 -04:00
Robin Ward
18b8df3f32
Extract logic to save external avatar url
2015-06-23 15:23:19 -04:00
Régis Hanol
acafa491b2
user avatar urls/templates refactor
2015-05-29 18:51:17 +02:00
Régis Hanol
fe4f8b1519
download largest gravatar image
2015-05-29 18:11:15 +02:00
Régis Hanol
9a96cd9f3b
CRUSHED: duplicate key value violates unique constraint 'index_uploads_on_sha1'
2015-05-07 01:00:13 +02:00
Régis Hanol
0e5c9b2590
small upload code refactor
2015-02-03 18:44:18 +01:00
Régis Hanol
521226f4c9
FIX: registration fails with timeout on gravatar
2014-12-15 22:10:27 +01:00
Sam
414c6d191f
FIX: remove nullable dates post upgrade to Rails 4
2014-08-27 15:19:25 +10:00
Régis Hanol
c0cd109e9d
TRIVIAL: code formatting
2014-06-26 19:50:29 +02:00
Sam Saffron
03cde003db
BUGFIX: no network could mean no posts save.
2014-06-16 12:14:51 +10:00
Sam
fa6f22dd39
Move letter avatars out of upload system
...
FIX: S3 issues around system avatars
FIX: reduced backup file size
2014-05-30 14:45:55 +10:00
Sam
d9f51961c4
BUGFIX: pick gravatar if it was just downloaded
...
BUGFIX: don't go rebaking unless all avatars are downloaded
2014-05-28 16:54:21 +10:00
Sam
2791852bd8
FEATURE: ability to regenerate system avatars as needed
...
BUGFIX: made system letter avatar more thinner for less block look
2014-05-28 12:30:57 +10:00
Sam Saffron
9262a714bd
BUGFIX: include avatar for system user
2014-05-27 12:38:16 +10:00
Sam
033cbc61bf
BUGFIX: broken spec
2014-05-27 10:08:03 +10:00
Sam
504cfcff96
Fix specs for avatars
...
Implement avatar picker
Correct avatar related jobs
2014-05-27 10:08:03 +10:00
Sam
6c1c8be794
Work in progress, keeping avatars locally
...
This introduces a new model to store the avatars and 3 uploads per user (gravatar, system and custom)
user can then pick which they want.
2014-05-27 10:08:03 +10:00