rr-
aa1faa3ccb
server/image-hash: improve exception handling
2017-02-02 19:46:03 +01:00
rr-
f42fbbdc56
server/images: support webm with multiple streams
2017-01-25 17:13:39 +01:00
rr-
0cfc9bcafd
server/posts: fix handling corrupt files
...
In case of a ProcessingError, the image dimensions are set to None. But
after that, they are compared with 0, which resulted in a TypeError.
2017-01-25 17:11:05 +01:00
rr-
8d8165a0d7
server/tags: fix order of aliases in export
...
fixes #112
2017-01-08 22:29:05 +01:00
rr-
036fa9ee39
server/uploads: add file upload api
2017-01-08 10:25:29 +01:00
rr-
4cb613a5c9
server/posts: change reverse image search API
...
Add exact duplicates search; refactor to use classes over dictionaries
2017-01-07 14:07:31 +01:00
rr-
9edaaffec2
server/posts: fix post relations
...
Trying to relate post to itself resulted in 500 ISE.
2017-01-03 21:37:38 +01:00
rr-
627574a9c2
server: make pylint happier
2017-01-03 21:35:08 +01:00
rr-
f301ca9a8a
server/image-hash: fix handling invalid input
2016-12-26 19:03:04 +01:00
rr-
1a59a74d63
server/image-hash: add image search engine
2016-12-26 15:00:16 +01:00
rr-
42666706d9
server/util: fix API queries for empty ?options
2016-11-20 16:02:45 +01:00
rr-
c0d484689b
server: postpone circular dependency evaluation
...
Hopefully this improves importing with python 3.4
2016-11-07 19:28:54 +01:00
rr-
141c9fcdc9
server/tags: merge also tag relations
2016-10-22 18:02:50 +02:00
rr-
995cd4610d
server: drop old style class declarations
2016-10-22 14:43:52 +02:00
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-
049a0dc351
server/mime: fix GIF animation heuristics
...
Closes #100
2016-09-29 12:59:40 +02:00
rr-
0c61e85340
server: fix lint
2016-09-26 22:51:00 +02:00
rr-
71a4ce8764
server/func: handle download errors
2016-09-25 14:52:47 +02:00
rr-
16d04adde0
server/errors: add and document error codes
2016-09-10 11:36:01 +02:00
rr-
8674c8b50e
server/posts: report duplicate post ID and URL
2016-09-10 10:16:14 +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-
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-
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-
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-
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-
65efc309a8
server/comments: catch bad IDs
2016-08-14 16:43:31 +02:00
rr-
56b3eb9674
server/util: fix case conversion
2016-08-14 16:43:04 +02:00
rr-
86452019a3
server/util: improve catching bad field names
...
KeyError could catch exceptions that happened inside the serializer
routine and mistakenly report them as an error with user input.
2016-08-14 16:43:04 +02:00
rr-
f6f07a35df
server/general: authenticated_user->auth_user
2016-08-14 16:43:04 +02:00
rr-
c2bbf7b62c
server/general: add assertions
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-
7cd4a1a530
server/tags: verify description size
2016-08-14 16:43:01 +02:00
rr-
3db4f39545
server/tag-categories: correct exception type
2016-08-14 12:31:46 +02:00
rr-
92075bb455
server/tags: don't verify tag names while getting
2016-08-14 12:31:46 +02:00
rr-
d6942121e5
server/tags: change tags sort order
2016-08-14 12:31:21 +02:00
rr-
07237bc2bc
server/tags: fix changing name case
2016-08-14 11:39:04 +02:00
rr-
7e5deee76b
server/tags: fix tag merging
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-
9e2dace73f
server/posts: improve errors for bad note points
2016-08-05 23:02:34 +02:00