rr-
e71718c50d
server/posts: add replaceContent to post merging
2016-10-21 22:34:45 +02:00
rr-
9d6a0e0173
server/posts: add post merging
2016-10-21 21:48:38 +02:00
rr-
b853caf6f5
server/posts: fix relation updating
...
Fixes #103
2016-10-02 17:21:15 +02:00
rr-
0c61e85340
server: fix lint
2016-09-26 22:51:00 +02:00
rr-
560a7d6839
server/search: prefer arrays over ranges
...
(No, it doesn't work recursively.)
Also fix tests.
2016-09-26 22:48:09 +02:00
rr-
8674c8b50e
server/posts: report duplicate post ID and URL
2016-09-10 10:16:14 +02:00
rr-
c516030c66
server/tests: fix info api tests
2016-09-10 10:12:43 +02:00
rr-
a22fe306d1
server/posts: fix deleting posts with relations
2016-08-31 22:49:45 +02:00
rr-
243ab15b85
server/tags: add order to tag names
...
The better implementation of a224297
.
Fixes ability to reorder tag aliases, especially - the ability to change
the tag's primary name after it was created. Until now, both of these
scenarios needed sad workarounds on the user part.
2016-08-28 20:00:50 +02:00
rr-
ef0f74297f
server/tag-categories: fix default categories
...
- Don't cache default category in its entirety - cache only its name
- Purge cache on category name changes and default category changes
- Lock records for updates where applicable
2016-08-27 12:39:59 +02:00
rr-
422b99ac8d
server/search: add content-checksum
2016-08-26 16:26:06 +02:00
rr-
ffb87f1650
server/posts: defer flush; save content lazily
...
Rather than flushing the post right away only to find out that there
were validation errors, try to postpone flushing for as long as
possible.
The previous behavior has led to too eager spending of post IDs - each
flush calls nextval(post_id_seq), and postgres sequences are not
affected by transaction rollbacks, so each erroneous post creation
discarded a post ID, which has led to gaps in post IDs.
2016-08-26 15:09:08 +02:00
rr-
bb369efa99
server/general: disable autoflush
2016-08-26 14:41:05 +02:00
rr-
61d084cc66
server/search: support 'submit:' for anon uploads
2016-08-22 19:45:25 +02:00
rr-
b7e9cbd541
server/posts: allow tagless posts
2016-08-21 23:40:01 +02:00
rr-
28bcbd33b9
server/posts: use SHA1 checksums
...
This changes the checksums to ones that are compatible with 1.x, which
relieves the migration script from recalculating the checksums for all
the posts.
2016-08-20 13:06:19 +02:00
rr-
80af79779d
server/snapshots: rewrite
2016-08-16 21:51:25 +02:00
rr-
6c29377f6b
server/db: allow full DSN; use memdb in tests
...
The earlier commit is still relevant as it allows to integrate real
database when needed.
2016-08-16 21:42:09 +02:00
rr-
87b1ee4564
server/tests: use real database
...
I'm experimenting with snapshots and found following limitation of
SQLite: https://www.sqlite.org/isolation.html
2016-08-16 17:22:33 +02:00
rr-
0320a0b55b
server/general: improve versioning effectiveness
...
...by integrating it with sqlalchemy that adds WHERE conditions for each
UPDATE and DELETE statement.
2016-08-16 17:22:33 +02:00
rr-
ef4af697c4
server/tags: fix tag sorting
...
Brainfart from d6942121e5
2016-08-14 17:54:15 +02:00
rr-
9aea55e3d1
server/general: embrace most of PEP8
...
Ignored only the rules about continuing / hanging indentation.
Also, added __init__.py to tests so that pylint discovers them. (I don't
buy pytest's BS about installing your package.)
2016-08-14 16:44:03 +02:00
rr-
af62f8c45a
server/general: ditch falcon for in-house WSGI app
...
For quite some time, I hated Falcon's class maps approach that caused
more chaos than good for Szurubooru. I've taken a look at the other
frameworks (hug, flask, etc) again, but they all looked too
bloated/over-engineered. I decided to just talk to WSGI myself.
Regex-based routing may not be the fastest in the world, but I'm fine
with response time of 10 ms for cached /posts.
2016-08-14 16:43:35 +02:00
rr-
d102c9bdba
server/tests: update func.posts tests
2016-08-14 16:43:35 +02:00
rr-
264f9ee70b
server/tests: update func.mime tests
2016-08-14 16:43:35 +02:00
rr-
c23c401c4d
server/tests: add func.tags tests
2016-08-14 16:43:35 +02:00
rr-
53e96ba41f
server/tests: add func.tag_categories tests
2016-08-14 16:43:35 +02:00
rr-
81dfbaec98
server/tests: add func.users tests
2016-08-14 16:43:35 +02:00
rr-
03c74cb5a3
server/tests: add func.comments tests
2016-08-14 16:43:35 +02:00
rr-
f6f07a35df
server/general: authenticated_user->auth_user
2016-08-14 16:43:04 +02:00
rr-
bb86e9bf56
server/posts: add more safety checks for notes
2016-08-14 16:43:04 +02:00
rr-
3db4f39545
server/tag-categories: correct exception type
2016-08-14 12:31:46 +02:00
rr-
07237bc2bc
server/tags: fix changing name case
2016-08-14 11:39:04 +02:00
rr-
2b3d193b7c
server/tags: don't auto-create tag categories
2016-08-14 11:38:59 +02:00
rr-
8d04df38fd
server/general: add entity versions
2016-08-07 09:55:51 +02:00
rr-
5092c2c587
server/posts: respect tag creating privilege
2016-08-02 12:44:38 +02:00
rr-
2429e95102
server/users: fix cascade deletions
2016-08-02 12:27:01 +02:00
rr-
ff189a3915
server/posts: fix deleting post with comments
2016-08-02 12:27:01 +02:00
rr-
5e47c5c0c6
server/users: use HTTPS for Gravatar
2016-07-30 13:43:15 +02:00
rr-
298aedbc75
server/tags: sort relations like post tags
2016-07-30 13:43:15 +02:00
rr-
f40e41ae8b
server/tags: allow deleting used tags
2016-07-30 13:43:15 +02:00
rr-
8ef0017531
server/tags: improve tag export performance
...
2000 ms --> 250 ms (including overhead of unknown size).
Not bad if you ask me.
2016-07-26 23:20:15 +02:00
rr-
b7f2982c9e
server/posts: fix relations bidirectionality
2016-07-17 21:14:03 +02:00
rr-
c472229bae
server/posts: add relationCount field
2016-07-03 18:30:32 +02:00
rr-
c21494be25
server/posts: make relations bidirectional
2016-07-03 18:30:32 +02:00
rr-
5800f0ebc7
server/tags: fix merging tags
...
It violated unique constraint on post_tag when a given post was already
tagged with the target tag.
2016-07-03 18:30:32 +02:00
rr-
ac23067fdf
server/general: use UTC time stamps
2016-07-03 14:46:28 +02:00
rr-
7eec347bca
server/tags: add description field
2016-06-23 00:15:25 +02:00
rr-
3c3d0dbb8d
server/info: expose a few config variables
2016-06-18 10:55:44 +02:00
rr-
13ca94d4da
server/users: fix avatar issues when renaming user
2016-06-17 21:25:28 +02:00