Commit Graph

224 Commits

Author SHA1 Message Date
rr- 446f4d6611 server/search: cache results till non-GET request
250 ms per page --> 30 ms per page (save for the first render). I'd say
it's pretty good
2016-05-31 14:18:50 +02:00
rr- 349f32ccf2 server/search: defer most posts columns 2016-05-30 23:36:58 +02:00
rr- 78612e1da1 server/posts: add new fields 2016-05-30 23:23:22 +02:00
rr- 037fbc61ec server/api: add ability to select fields 2016-05-30 23:08:22 +02:00
rr- 8d1e23aa63 server/general: flatten responses 2016-05-30 22:54:33 +02:00
rr- d0314813cb server/general: move extra details to resources 2016-05-30 22:54:33 +02:00
rr- 48bcbbff83 server/search: improve performance 2016-05-30 20:51:52 +02:00
rr- abef6e5c35 server/info: return who featured the post and when 2016-05-29 12:41:22 +02:00
rr- 1549b70ace server/tools: fix note snapshots importing 2016-05-29 12:40:36 +02:00
rr- 658b95aad7 server/tools: fix note importing 2016-05-29 12:40:36 +02:00
rr- d7e46e23ab server/tools: don't copy avatars for --no-data 2016-05-29 12:40:36 +02:00
rr- 4d1f745e38 server/notes: fix note serialization 2016-05-29 12:40:36 +02:00
rr- 731c0442e9 server/search: change named token detection
In particular, treat tokens starting with : as anonymous tokens.
2016-05-24 10:29:14 +02:00
rr- af22ec735d server/posts: send mime type to client 2016-05-22 22:50:00 +02:00
rr- 77998f1660 server/tags: let mods set default category 2016-05-22 22:17:11 +02:00
rr- fa14bf714c server/tags: create snapshots for automatic tags 2016-05-22 22:17:11 +02:00
rr- 6a48020426 server/tags: fix sorting tag siblings 2016-05-22 22:17:11 +02:00
rr- cf3b97b8de server/tags: change response key
Since we're using "results" everywhere else, it makes little sense for
tag siblings to use "siblings" node.
2016-05-22 11:05:18 +02:00
rr- 16d4d3ca68 server/favorites: favoriting sets score to 1 2016-05-21 22:35:18 +02:00
rr- c88dfd228a server/images: replace pipes with temp files
ffmpeg's GIF demuxer needs the input stream to be seekable, which rules
pipes out.
2016-05-20 21:34:02 +02:00
rr- 205f372f76 server/tests: colorize verbose output 2016-05-11 23:47:50 +02:00
rr- 172b956e48 server/search: permit search for tags by alias 2016-05-11 23:47:50 +02:00
rr- 6179f016ae server/search: make searches case insensitive 2016-05-11 23:47:50 +02:00
rr- 82d32ba1fb server/tags: fix removing tags related to others 2016-05-11 23:47:50 +02:00
rr- 4cd5b8c1ac server/tags: fix tag category color validation
This was totally stupid...
2016-05-11 22:09:06 +02:00
rr- a5b2d835d6 server/tags: fix wrong case in merging requests 2016-05-11 18:42:56 +02:00
rr- 59ae0a4c9a server/db: maintain order of tag aliases
First alias has a special meaning in certain contexts, such as post
serialization, where only one alias is chosen to show to the client.
2016-05-11 18:32:53 +02:00
rr- 299055c427 server/tools: fix creating counters 2016-05-11 17:02:41 +02:00
rr- 03498b2d8e server/tags: add tag category color sanitization 2016-05-10 12:18:06 +02:00
rr- 14a20e55f8 server/tests: fix leftover rank strings 2016-05-10 12:15:33 +02:00
rr- ba3678dec1 server/posts: implement FLAG_MAP 2016-05-10 12:15:33 +02:00
rr- 4ec842024c server/users: implement RANK_MAP 2016-05-10 12:15:33 +02:00
rr- cecf620126 server/config: move config validation to app.py 2016-05-10 12:15:33 +02:00
rr- cd15cdff7a server/scores+favorites: merge duplicate code 2016-05-10 12:15:05 +02:00
rr- f140ae6176 server/tests: change test file name 2016-05-10 12:14:54 +02:00
rr- 174958686c server/general: disable pylint reports
They add no value whatsoever
2016-05-10 12:02:24 +02:00
rr- 3481c1072d server/general: fix a few pylint warnings 2016-05-10 12:02:24 +02:00
rr- 57297df9e1 server/tools: fix importing tag category with id=0 2016-05-10 10:05:47 +02:00
rr- b37979546f server/tools: bump counters after import 2016-05-10 09:54:52 +02:00
rr- b3f5486761 server/tools: add --no-data option to importer 2016-05-10 09:26:06 +02:00
rr- ec1fccf17e server/tools: fix swapping imported tag relations 2016-05-10 09:26:01 +02:00
rr- a668d3ef34 server/tags: output tag category usages 2016-05-09 22:39:04 +02:00
rr- fcbfa90879 serevr/tags: fix search by post count and category 2016-05-09 22:36:29 +02:00
rr- f39e58b1bc server/db: create indexes 2016-05-09 09:43:00 +02:00
rr- 4558557656 server/tools: add parallelism to content import 2016-05-09 09:42:31 +02:00
rr- 356d5050fd server/tools: add v1.x migration script 2016-05-08 23:26:46 +02:00
rr- 2330cf017d server/db: fix mappings
Post notes had mixed up column types. I fixed that and at the same time,
I took the opportunity to convert everything into Unicode. Also, I've
changed existing migrations rather than creating new ones - it's not
like we're even close to alpha...
2016-05-08 22:18:13 +02:00
rr- 339c9a3333 server/tags: reduce number of queries
On a test page with 50 tags, 158 queries were reduced to 3:

1. Get the authenticated user
2. Get tags for given page
3. Count all tags

Looks just about right.
2016-05-08 20:33:16 +02:00
rr- d813601d92 server/api: log queries in debug mode 2016-05-08 20:33:16 +02:00
rr- 906eddc61f server/users: change avatars to PNG 2016-05-08 18:04:06 +02:00
rr- 2bd02f4921 server/users: fix detecting duplicate user names 2016-05-08 18:04:05 +02:00
rr- 0214341473 server/users: prohibit using special ranks
Anonymous is self explanatory.
Nobody is used solely to mark certain operation as unavailable even to
administrators (<- nobody is higher than administrator).
2016-05-08 18:04:05 +02:00
rr- 198cb0af3e server/users: hardcode available ranks 2016-05-08 16:59:25 +02:00
rr- 58964bcdc9 server/posts: add post listing 2016-05-07 21:50:37 +02:00
rr- 9b591c3f1b server/posts: remember source for URL content 2016-05-05 13:46:57 +02:00
rr- 148858fde9 server/middleware: download files 2016-05-05 13:46:50 +02:00
rr- ab493a01b4 server/net: add basic downloader 2016-05-05 13:24:50 +02:00
rr- e632324f72 server/posts: add post updating 2016-05-02 21:58:13 +02:00
rr- 067e438b8c server/posts: add hasCustomThumbnail to post info 2016-05-02 00:07:33 +02:00
rr- ce095816d9 server/posts: add post creating 2016-05-02 00:07:33 +02:00
rr- a567974784 server/general: refactor method names 2016-04-30 23:54:05 +02:00
rr- f38acf6868 server/func: add content-type related utilities 2016-04-30 17:28:31 +02:00
rr- 4530b6e3b8 server/tests: show SQL queries only with -v 2016-04-30 12:46:52 +02:00
rr- da5b32feeb server/users: fix hiding email from admins etc 2016-04-29 13:16:16 +02:00
rr- c55fb2ef41 server/tags: output tag usage count 2016-04-29 12:58:56 +02:00
rr- 21fd25dd12 server/tags: create tag categories automatically 2016-04-29 12:58:56 +02:00
rr- f59c1e0346 server/tags: create tag categories automatically 2016-04-29 10:33:46 +02:00
rr- 83cc7a568d server/posts: add post (un)favoriting 2016-04-28 19:04:44 +02:00
rr- 0b20132a2f server/api + docs/api: organize responses 2016-04-28 18:20:50 +02:00
rr- 2b69e9b461 server/posts: add post deleting 2016-04-27 19:24:50 +02:00
rr- 587a8f8276 server/posts: add post retrieving 2016-04-25 10:48:15 +02:00
rr- 52f4018bee server/comments+posts: add rating 2016-04-24 16:37:11 +02:00
rr- 8fb536c8f0 server/general: move not found errors to func 2016-04-24 14:34:01 +02:00
rr- 0b47957bb9 server/comments: add comment search 2016-04-24 11:56:14 +02:00
rr- b75cfff8f7 server/comments: add comment retrieving 2016-04-24 11:24:36 +02:00
rr- 10f8f443f1 server/comments: add comment deleting 2016-04-24 11:16:24 +02:00
rr- 48cb172cc8 server/comments: add comment updating 2016-04-24 10:31:49 +02:00
rr- 612734e9ff server/comments: add comment creating 2016-04-24 10:31:49 +02:00
rr- 6e6c57d44a server/api: move serializers to func layer 2016-04-24 10:31:49 +02:00
rr- 093863b944 server/comments: add comment tables 2016-04-24 10:31:49 +02:00
rr- 1476c84a9d server/posts: add featured post retrieval 2016-04-23 08:07:21 +02:00
rr- cf00a3a2de server/posts: add post featuring 2016-04-22 20:58:04 +02:00
rr- a30886cc70 server/search: rename order: to sort: 2016-04-22 19:37:58 +02:00
rr- 14059de1d7 server/db: add more post tables 2016-04-22 18:36:12 +02:00
rr- a67a5069b7 server/info: implement simple global info
For now it returns total post count and disk usage. To reduce stress on
the file system, the disk usage is cached for an hour.
2016-04-21 19:48:47 +02:00
rr- 46ee9faf72 server/snapshots: add snapshot lists 2016-04-21 19:27:30 +02:00
rr- c2a39a0fd5 server/snapshots: change snapshot representation 2016-04-21 19:01:41 +02:00
rr- 97bd935bb6 server/tags: add listing tag siblings 2016-04-20 21:31:46 +02:00
rr- 747c730688 server/tags: add tag merging 2016-04-20 19:02:39 +02:00
rr- 74fb297584 server/db: fix aggregates 2016-04-20 15:17:11 +02:00
rr- a926838b90 server/general: rename 'misc' to 'util' 2016-04-20 11:59:46 +02:00
rr- 57b18c6461 server/general: rename 'util' to 'func' 2016-04-20 11:58:17 +02:00
rr- d3f2ef296b server/tests: don't recreate database every test 2016-04-20 11:48:34 +02:00
rr- 661c0248d2 server/api: return snapshots to client 2016-04-20 11:15:46 +02:00
rr- 9a4b5a7dd3 server/tags: record tag category snapshots 2016-04-19 18:11:00 +02:00
rr- 2e57a0746f server/general: consistently use db.session 2016-04-19 18:10:22 +02:00
rr- fe56e376f6 server/tags: export also tag categories 2016-04-19 15:51:26 +02:00
rr- 884747bbbd server/tags: prohibit deleting last tag category 2016-04-19 13:10:07 +02:00
rr- 58838f8bd9 server/tests: refactor tests 2016-04-19 13:01:50 +02:00
rr- 15f734d21b server/api: output JSON for HTTP 405 2016-04-19 12:40:08 +02:00