Commit Graph

52 Commits

Author SHA1 Message Date
Shyam Sunder
2bdb072296 server/posts: store and provide MD5 checksums 2021-01-05 13:20:01 -05:00
Shyam Sunder
a302b2c4a4 server: enable large file support in database 2020-10-11 12:50:21 -04:00
neobooru
d2b6ecef4d server+client: update tag category api + fix formatting 2020-09-23 13:48:47 +02:00
neobooru
06ad8b1882 client+server: add tag category ordering feature
Fixes  #209
2020-09-19 22:55:17 +02:00
Shyam Sunder
57193b5715 client+server: implement code autoformatting using prettier and black 2020-06-06 08:58:23 -04:00
Shyam Sunder
ea623449e7 server: format code to flake8 2020-06-05 10:02:18 -04:00
Shyam Sunder
b0f1b8c230 fix python lint issues 2020-06-03 11:55:50 -04:00
Ruin0x11
8795279a73 Add pool input box in post details 2020-05-04 02:20:23 -07:00
Ruin0x11
e6bf102bc0 Add list of posts to pools 2020-05-04 00:09:33 -07:00
Ruin0x11
d59ecb8e23 Add pool CRUD operations/pages 2020-05-03 19:53:28 -07:00
neobooru
c60ec22b92 server/func/tags: allow tags to have longer names 2020-03-15 22:25:45 +01:00
Shyam Sunder
6cc2a91632 server/image_search: add migrations for elasticsearch removal 2020-03-13 22:45:11 -04:00
Shyam Sunder
a616cf6987 server/migrations: implement database connection timeout 2020-03-13 22:43:31 -04:00
Shyam Sunder
9b02a0bd5e server/posts: allow for longer source URLs
Fixes #272
2019-07-27 19:24:39 -04:00
rr-
d3cabc4a36 server: handle empty flags in migration 2018-09-24 11:40:11 +02:00
Shyam Sunder
3879c2ec20 server/search: allow searching by post flags 2018-09-24 11:36:13 +02:00
ReAnzu
2a69f0193f server/auth: add token authentication
* Users are only authenticated against their password on login,
  and to retrieve a token
* Passwords are wiped from the GUI frontend and cookies
  after login and token retrieval
* Tokens are revoked at the end of the session/logout
* If the user chooses the "remember me" option,
  the token is stored in the cookie
* Tokens correctly delete themselves on logout
* Tokens can expire at user-specified date
* Tokens have their last usage time
* Tokens can have user defined descriptions
* Users can manage login tokens in their account settings
2018-03-25 22:23:29 +02:00
ReAnzu
3f52aceca4 server/users: harden password hashes
- Changed password setup to use libsodium and argon2id (regular SHA256
  hashing for passwords is inadequate as modern GPU's can hash generate
  billions of hashes per second).
- Added code to auto migrate old passwords to the new password_hash if
  the existing password_hash matches either of the legacy password
  generation schemes (SHA1 or SHA256).
- Added migration to support new password_hash format length
- Added column password_revision. This field will default to 0, which
  all passwords will have till they're updated. After that each password
  hash method has a revision.
2018-03-08 23:40:47 +01:00
rr-
4afece8d50 server/posts: add non-guessable IDs to post URLs 2017-08-24 17:17:09 +02:00
rr-
4bc58a3c95 server: lint 2017-04-24 23:30:53 +02:00
rr-
74c583f11d server/build: fix alembic environment script 2017-02-05 23:29:21 +01:00
rr-
ad842ee8a5 server: refactor + add type hinting
- Added type hinting (for now, 3.5-compatible)
- Split `db` namespace into `db` module and `model` namespace
- Changed elastic search to be created lazily for each operation
- Changed to class based approach in entity serialization to allow
  stronger typing
- Removed `required` argument from `context.get_*` family of functions;
  now it's implied if `default` argument is omitted
- Changed `unalias_dict` implementation to use less magic inputs
2017-02-05 16:34:45 +01:00
rr-
abf1fc2b2d server: make linters happier 2017-02-03 22:42:14 +01:00
rr-
accdb51c0b server/migrations: add default tag category 2017-02-02 20:26:22 +01:00
rr-
f2fd769767 server/migrations: fix imports for alembic
`alembic revision -m 'blah blah'` rightfully complained about imports
(in case of `upgrade`, that module was being populated by some other
module.)
2017-02-02 20:06:20 +01:00
rr-
627574a9c2 server: make pylint happier 2017-01-03 21:35:08 +01: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-
80af79779d server/snapshots: rewrite 2016-08-16 21:51:25 +02:00
rr-
ff7bbbdd8a server/db: fix upgrade (regression from 9aea55e) 2016-08-16 21:42:11 +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-
522886ae6c server/db: fix user cascade deletions 2016-08-16 17:22:33 +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-
8d04df38fd server/general: add entity versions 2016-08-07 09:55:51 +02:00
rr-
7eec347bca server/tags: add description field 2016-06-23 00:15:25 +02:00
rr-
77998f1660 server/tags: let mods set default category 2016-05-22 22:17:11 +02:00
rr-
f39e58b1bc server/db: create indexes 2016-05-09 09:43:00 +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-
ce095816d9 server/posts: add post creating 2016-05-02 00:07:33 +02:00
rr-
52f4018bee server/comments+posts: add rating 2016-04-24 16:37:11 +02:00
rr-
093863b944 server/comments: add comment tables 2016-04-24 10:31:49 +02:00
rr-
cf00a3a2de server/posts: add post featuring 2016-04-22 20:58:04 +02:00
rr-
14059de1d7 server/db: add more post tables 2016-04-22 18:36:12 +02:00
rr-
c2a39a0fd5 server/snapshots: change snapshot representation 2016-04-21 19:01:41 +02:00
rr-
59473799a4 server/db: add missing migrations 2016-04-19 12:08:59 +02:00
rr-
e3a4793d54 server/tags: move tag categories to database 2016-04-18 22:08:30 +02:00
rr-
bc15fb6675 server/posts: add sketch of post table 2016-04-17 16:35:31 +02:00
rr-
888e8e1aa7 server/tags: prefix post_count column with auto_ 2016-04-17 12:54:30 +02:00
rr-
e4239a199c server/api: refactor + remove ID from user JSON 2016-04-16 15:49:21 +02:00
rr-
ec4cba94a9 server/db: introduce tags 2016-04-16 09:19:55 +02:00
rr-
05e4a1b977 server/db: squash db migrations, fix typo 2016-04-09 22:23:24 +02:00