954 Commits

Author SHA1 Message Date
jomo
a15cb20144 TooManyRequestsException shouldn't actually throw an error
all other errors thrown here are network issues, this is not.
2015-09-20 21:43:12 +02:00
jomo
06895cdd81 add TooManyRequestsException to silent_errors 2015-09-20 21:35:46 +02:00
jomo
9cdca6acda don't throw strings 2015-09-20 21:28:43 +02:00
jomo
26f6b089ef log errors only once, fixes #140
also made sure some (network) errors have level 'WARN'
these are printed without stacktrace
2015-09-20 21:17:13 +02:00
jomo
b97087c099 catch HTTP 500/503 and empty response, fixes #141 2015-09-20 20:58:34 +02:00
jomo
750d741308 log when cleaner has nothing to do 2015-09-17 01:51:11 +02:00
jomo
7e77142b29 add link to crafatar/setup 2015-09-15 04:38:24 +02:00
jomo
8ddc300a11 #138 bump http_timeout to 2 seconds
we run into the timeout quite frequently, even on a fast network.
2s should be long enough for mojang to reply
2015-09-06 03:40:17 +02:00
jomo
6a630f23b9 add new test CRCs for @6d12ed6 2015-09-06 00:47:17 +02:00
jomo
6d12ed685b enhance renders by using binary transparency
this is a temporary fix for #32.
it doesn't solve the problem, but it makes the renders much less worse.

in combination with #134 this will hopefully lead to fixing the problem entirely
2015-09-06 00:22:57 +02:00
jomo
fe12901f41 update app.json
Also fixed our description in package.json
2015-09-03 00:26:25 +02:00
jomo
47a978df6c add image dir to git 2015-09-02 23:57:08 +02:00
jomo
90022d9e6c revert 4d949362beeaf432201f576d83518dd0bb0351a8 2015-09-02 23:50:20 +02:00
jomo
b4ae89832a add missing 'cache' import in routes/skins 2015-09-02 23:22:52 +02:00
jomo
841eb39f05 remove obsolete imports 2015-08-31 05:41:18 +02:00
jomo
3a61e15abf various networking.js improvements
- cleaned up some messy if/else code, replaced with nicely readable switch/case
- catch JSON.parse errors
2015-08-31 00:10:35 +02:00
jomo
ccc7314ea0 fix 'Permission denied' on travis 2015-08-30 23:19:45 +02:00
jomo
5f0e16897d travis 💩 N°2 2015-08-30 22:24:35 +02:00
jomo
5aaf075f94 travis 💩 2015-08-30 22:21:01 +02:00
jomo
52098ca2f8 hotfix for #139 2015-08-30 22:12:43 +02:00
jomo
2e738f8b40 use crafatar/node-df
until adriano-di-giovanni/node-df#3 is merged
fixes #4
2015-08-30 05:42:28 +02:00
jomo
755cc74170 don't update file dates
this was originally implemented because we wanted to delete the oldest images on disk
where 'oldest' means not *used* for the longest time

that's not useful and was never actually implemented, so we don't need this
2015-08-30 04:48:50 +02:00
jomo
78f2f2027f cleaner: be less verbose 2015-08-30 04:29:56 +02:00
jomo
5f703eda70 check disk/redis every 10 minutes 2015-08-30 03:58:57 +02:00
jomo
6746459c8d delete cape images when cleaning 2015-08-30 03:57:29 +02:00
jomo
e56f300d3e use EPHEMERAL_STORAGE instead of HEROKU env
afaik you can have persistent storage on heroku, at least via addons
and heroku is probably not the only environment where one has a temporary file system
2015-08-30 02:11:35 +02:00
jomo
ac9cd93c8e 512MB free disk space is better than 10MB 2015-08-29 22:42:02 +02:00
jomo
3156423209 fix typo 2015-08-22 18:30:29 +02:00
jomo
a928952dc4 don't force image directories to be relative 2015-08-20 01:52:01 +02:00
jomo
9ed431d7ad remove images/ (see @4d94936) 2015-08-18 01:33:00 +02:00
jomo
4d949362be change default config to use /var/lib/crafatr/images
I think this makes more sense, especially when you run multiple instances
so they can use the same image cache instead of each version relying on their own
2015-08-18 01:11:38 +02:00
jomo
b460260bae remove logs/
should be up to the user where to put log files
and to make sure that directory actually exists

currently nothing in this code base expects
logs/ to be present.
2015-08-18 01:08:01 +02:00
jomo
0b58b3a4d1 add final log before shutting down on SIGTERM 2015-08-16 22:27:22 +02:00
jomo
85e7b4b571 remove clusters
clusters aren't supported, see #80
until we actually use clusters, having a main AND a single worker cluster just makes things more difficult
2015-08-16 22:18:17 +02:00
jomo
72708ca590 remove forever, update dependencies
forever should be used externally to start crafatar. it's not an internal dependency
2015-08-16 22:14:26 +02:00
jomo
79da225b9f gracefully shut down on SIGTERM
this will close the server, i.e. all new connections will be dropped
while existing connections are able to complete within 30 seconds
otherwise they are dropped and the server force quits
2015-08-16 22:11:08 +02:00
jomo
49b4ae1a6e exit on process error
From the iojs docs:

> An unhandled exception means your application - and by extension io.js itself -
> is in an undefined state. Blindly resuming means anything could happen.
>
> Think of resuming as pulling the power cord when you are upgrading your system.
> Nine out of ten times nothing happens - but the 10th time, your system is bust.
>
> uncaughtException should be used to perform synchronous cleanup before shutting
> down the process. It is not safe to resume normal operation after
> uncaughtException. If you do use it, restart your application after every
> unhandled exception!
2015-08-16 06:17:38 +02:00
jomo
d6a9f7c71a add JS to check mojang's server status
does CORS request to status.mojang.com/check and figures out if 'uuid', 'name' or 'both' are affected
not doing anything yet
2015-07-28 23:58:48 +02:00
jomo
442dee0280 don't print all this shit when we receive a 500 2015-07-27 20:06:16 +02:00
jomo
6213344090 lots of rendering improvements
- we don't need to resize images. canvas can do that for us
- we don't need to use `scale(-1, 1)` to draw flipped
- most of the old/new skin format shares the same code
- we can draw the skin image directly on the canvas
2015-07-23 11:13:24 +02:00
jomo
3edf89e884 Merge branch 'master' of github.com:crafatar/crafatar 2015-07-22 23:24:30 +02:00
jomo
c2d2644bbe make travis fast attempt 2
See @fc5ab113db93842cf27b5d94bd98c597a7d0f133 for attempt 1
2015-07-22 23:24:26 +02:00
jomo
256edd622f https 2015-07-21 10:06:01 +02:00
jomo
fd647c5953 3D renders are still beta
@Jake0oo0 fyi

We haven't changed anything on our 3D renders since we first introduced them.
They still have rendering glitches, they still don't render the jacket layer,
they still don't support alex-type skins.

Telling people this is no longer beta (@2515575) doesn't seem like a good idea.
2015-07-20 22:28:06 +02:00
Jake
db72d05680 Dependency update 2015-07-18 00:58:27 -05:00
Jake
7f4fa0dea2 Merge branch 'master' of github.com:crafatar/crafatar 2015-07-18 00:46:31 -05:00
Jake
2515575f25 Renders are no longer in beta, encode default url 2015-07-18 00:46:24 -05:00
jomo
607dcaf6e5 use status -2 for 404s
human_status (response.js) defines code -2 as 'user error'. 404 is definitely a user error, so using that makes sense.
eventually we should change the whole status code thing with #120
2015-07-17 10:09:34 +02:00
jomo
fc5ab113db Merge branch 'master' of github.com:crafatar/crafatar 2015-07-17 01:37:35 +02:00
jomo
d0689c9e3b change two more logs to debug 2015-07-17 01:37:26 +02:00