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
rr-
59473799a4
server/db: add missing migrations
2016-04-19 12:08:59 +02:00
rr-
2fba374e65
server/tags: introduce tag category API
2016-04-19 12:05:14 +02:00
rr-
83784c5e76
server/api: improve input sanitization, fix docs
2016-04-19 11:55:31 +02:00
rr-
7263849fac
server/tags: make creating tag relations optional
2016-04-19 00:18:52 +02:00
rr-
1597ae7c5c
server/db: refactor session usage
2016-04-18 23:06:51 +02:00
rr-
bba327fe8a
server/middleware: fix session usage
2016-04-18 22:08:30 +02:00
rr-
e3a4793d54
server/tags: move tag categories to database
2016-04-18 22:08:30 +02:00
rr-
9350c4ff97
server/snapshots: add snapshots to tags
2016-04-18 20:44:39 +02:00
rr-
1c064778c6
server/tests: adapt freezegun
...
The reason why this is added to the project is because it has turned out
mocking the time is not as trivial as I originally anticipated
(specifically, there are some problems with SQLite).
2016-04-18 19:42:24 +02:00
rr-
e8a9c4ad51
server/db: fix ambiguous names
2016-04-18 19:24:09 +02:00
rr-
e42cede27c
server/users: allow rank+avatar when creating user
2016-04-17 19:02:39 +02:00
rr-
08271caf32
server/search: rename search criterion
2016-04-17 18:17:18 +02:00
rr-
c957befbd0
server/search: simplify virtual token mappings
2016-04-17 18:17:18 +02:00
rr-
bc15fb6675
server/posts: add sketch of post table
2016-04-17 16:35:31 +02:00
rr-
9ac70dbed4
server/tags: simplify relations model
2016-04-17 12:54:31 +02:00
rr-
888e8e1aa7
server/tags: prefix post_count column with auto_
2016-04-17 12:54:30 +02:00
rr-
470ff70f91
server/tests: use common fixtures in pw reset test
2016-04-17 12:54:30 +02:00
rr-
cecab3caf0
server/tests: fix test name
2016-04-17 10:08:11 +02:00
rr-
0bc45e9c45
server/search: support -min and -max suffixes
2016-04-17 08:31:46 +02:00
rr-
9247e11596
server/tags: add JSON export
2016-04-16 23:05:31 +02:00
rr-
61d2fb88ea
server/tags: add tag listing
2016-04-16 21:24:09 +02:00
rr-
c71c082000
server/search: fix missing default search order
2016-04-16 18:55:04 +02:00
rr-
fa6b808659
server/tags: add single tag retrieving
2016-04-16 17:26:10 +02:00
rr-
37a86816af
server/tags: add tag deleting
2016-04-16 17:03:28 +02:00
rr-
e4239a199c
server/api: refactor + remove ID from user JSON
2016-04-16 15:49:21 +02:00
rr-
adecdd4cd9
server/tags: add tag updating
2016-04-16 13:41:19 +02:00
rr-
018dedcffd
server/tests: change test runner
2016-04-16 11:03:48 +02:00
rr-
9e873145a4
server/tags: add tag creating
2016-04-16 09:19:55 +02:00
rr-
ec4cba94a9
server/db: introduce tags
2016-04-16 09:19:55 +02:00
rr-
3bf9d6b462
server/tests: add sql logging
2016-04-15 23:26:38 +02:00
rr-
025dff62dd
server/misc: add icase_unique
2016-04-15 23:26:38 +02:00
rr-
063b0c4799
server/context: add get_param_as_list
2016-04-15 23:26:38 +02:00
rr-
3d4ceb13b8
server/api: move all io mgmt to context
...
where input/output includes files, JSON metadata and GET parameters.
Additionally, formalize context with a new class, Context.
2016-04-15 23:26:38 +02:00
rr-
07ea920def
server/tests: switch to pytest
2016-04-15 18:00:06 +02:00
rr-
7f8c2cfa00
server/tests: test uploading avatar
2016-04-14 21:50:59 +02:00
rr-
b5e9f37450
server/search: protect against weird page numbers
2016-04-14 21:50:59 +02:00
rr-
35c549493c
server/users: support wildcards in user search
2016-04-14 21:50:59 +02:00
rr-
0b5f436f40
server/users: sort by name by default
2016-04-11 21:43:58 +02:00
rr-
d97a332d23
server/api: let users control page size
2016-04-10 22:14:25 +02:00
rr-
fba239855c
server/users: change default gravatar to retro
2016-04-10 22:14:25 +02:00
rr-
6bff0a6a26
server/images: fix processing errors
2016-04-10 18:54:19 +02:00
rr-
c788061976
server/users: fix avatarStyle letter case in json
2016-04-10 16:23:35 +02:00
rr-
00da04b4d4
server/api: fix decoding JSON
2016-04-10 16:23:35 +02:00
rr-
4faf42ee19
client+server/general: fix config references
...
...some references still referred to non-existing config.ini.
2016-04-10 16:23:35 +02:00
rr-
2af8c9c1a4
server/general: cosmetic changes
2016-04-09 22:44:50 +02:00
rr-
e8aeb11081
server/users: add avatar support
2016-04-09 22:38:57 +02:00
rr-
403cfbd679
server/users: fix first user's rank
...
It was set to the latest (== most capable) rank from the config which
is... "nobody", that is supposed to be unattainable.
2016-04-09 22:23:24 +02:00
rr-
05e4a1b977
server/db: squash db migrations, fix typo
2016-04-09 22:23:24 +02:00
rr-
450a61c1e1
server/users: add user removal
2016-04-09 09:21:56 +02:00
rr-
8023c29c0e
server/search: fix case in result JSON
2016-04-09 08:58:24 +02:00
rr-
b6df2ed903
server/search: prefer hyphens to underscores
2016-04-09 08:58:06 +02:00
rr-
3234da76ad
server/api: support file uploads
2016-04-08 22:06:15 +02:00
rr-
ee28d95537
server/users: first user becomes an admin
2016-04-08 19:46:59 +02:00
rr-
8be93f6c70
client/users: add user view prototype
2016-04-07 00:08:18 +02:00
rr-
c46dc08c1b
server/tests: fix pylint score
2016-04-06 22:48:45 +02:00
rr-
55cc7b59e4
client+server: switch to yaml config
2016-04-06 22:36:04 +02:00
rr-
19a357611b
server: rename 'access ranks' to just 'ranks'
2016-04-06 19:16:44 +02:00
rr-
92dd958866
client+server: finish password reminders
2016-04-06 17:56:34 +02:00
rr-
1fb2f53914
server/users: make user names case insensitive
2016-04-06 17:34:01 +02:00
rr-
ad6750a055
server/users: improve api coverage in tests
2016-04-05 15:15:31 +02:00
rr-
219ab7c2c3
server/general: be more pythonic
2016-04-03 23:21:22 +02:00
rr-
2578a297bf
server/general: improve pylint score
...
+ incorporate some in-house rules - no more useless doc strings...
2016-04-03 19:17:54 +02:00
rr-
9ce67b64ed
server/api: add password reminders
2016-04-03 18:26:16 +02:00
rr-
1ed17a2046
server/users: add editing users
2016-04-03 18:13:22 +02:00
rr-
8bdcb04665
server/users: fix returning invalid users from api
2016-04-03 16:04:10 +02:00
rr-
a157d2db0e
server/users: add searching prototype
2016-04-03 15:28:10 +02:00
rr-
baf9b1d31a
server/users: track login time
2016-04-03 15:28:10 +02:00
rr-
d44bcdf3da
server/util: add date time parser
2016-04-03 12:12:57 +02:00
rr-
583e73dfc7
server/middleware: pretty-print JSON
2016-04-02 14:45:19 +02:00
rr-
769ef8f141
server/general: move errors to top level NS
2016-04-02 14:19:01 +02:00
rr-
06cf8c79d4
server/api: move validation to service layer
2016-04-02 10:02:20 +02:00
rr-
d3d2540b88
server/api: use facades for falcon's methods
2016-04-02 10:01:55 +02:00
rr-
c26e339af3
server/users: secure email retrieval
2016-04-01 19:03:01 +02:00
rr-
e487adcc97
split files into client/ and server/
2016-04-01 18:48:16 +02:00