Commit Graph

470 Commits

Author SHA1 Message Date
Steven 9c663b1ba2 fix: merge mysql dsn with params 2024-01-10 00:03:47 +08:00
Steven 9459ae8265 chore: update postgres stmt builder 2024-01-06 17:12:10 +08:00
Steven d67eaaaee2 chore: update database migrator 2024-01-06 16:55:13 +08:00
Steven fd8333eeda chore: fix memo parent_id 2024-01-06 13:22:02 +08:00
Steven a297cc3140 chore: exclude comments in memo list response 2024-01-06 09:48:11 +08:00
Steven 8b9455d784 chore: fix memo resources position 2024-01-06 09:23:20 +08:00
Steven 501f8898f6 chore: fix postgres stmts 2024-01-05 21:27:16 +08:00
Lincoln Nogueira 369b8af109
chore: improve resource internal_path migrator (#2698)
* chore: improve internal path migrator
- handle mixed path styles
- handle Windows paths
- add tests

* chore: fix goimports error
2024-01-03 08:31:59 +08:00
Steven c797099950 chore: update resource internal path migrator 2024-01-02 08:29:18 +08:00
Lincoln Nogueira 411e807dcc
chore: use consistent relative paths for resources (#2683)
- always store resources with a relative path with forward slashes, which will be transformed as needed when the file is accessed

- fix an issue with thumbnail generation on Windows

- add several validations for local storage setting

- improve front-end error feedback when changing local storage

- add migrations to make existing resource paths relative (not needed, but improves database consistency)
2023-12-29 07:49:55 +08:00
Steven 02265a6e1a chore: fix memo search 2023-12-22 00:31:29 +08:00
Athurg Gooth f184d65267
fix: attachments send from telegram lost (#2650) 2023-12-21 09:47:25 +08:00
Steven 762cb25227 chore: update memo service 2023-12-20 23:14:15 +08:00
Steven fc01a796f8 chore: fix demo seed data 2023-12-20 08:18:56 +08:00
Steven e0cacfc6d6 chore: retire auto backup for sqlite 2023-12-19 22:34:06 +08:00
Steven a3a1bbe8de chore: tweak responsible styles 2023-12-19 08:41:41 +08:00
Steven fe4ec0b156 chore: rename navigator 2023-12-19 00:13:22 +08:00
Steven 7c5fdd1b06 chore: remove demo banner 2023-12-18 23:46:48 +08:00
Steven d8a0528135 chore: tweak variable names 2023-12-18 20:47:29 +08:00
Steven 2c4b5d75b3 chore: fix html escaping 2023-12-17 23:37:00 +08:00
Steven 1c7fb77e05 chore: update user setting names 2023-12-16 12:18:53 +08:00
Steven 47af632c79 chore: update inline parser 2023-12-16 10:09:20 +08:00
Steven 7735cfac31 chore: update seed data 2023-12-15 22:34:19 +08:00
Steven 2d9c5d16e1 chore: fix user string 2023-12-13 19:08:06 +08:00
Steven 7eb5be0a4e chore: fix update user 2023-12-12 20:01:31 +08:00
Steven 603a6a4971 chore: fix vacuum memo 2023-12-12 19:56:15 +08:00
Cologler 6bda64064e
fix: delete one memo will delete all memos on pgsql (#2611)
fix: delete single memo will all memos on pgsql

Close #2605
2023-12-12 19:52:39 +08:00
Steven c608877c3e chore: clean binary entries 2023-12-11 22:16:39 +08:00
Steven 52f399a154 chore: remove unused functions 2023-12-11 21:53:16 +08:00
Steven 9f4f2e8e27 chore: fix user setting values 2023-12-10 11:57:31 +08:00
Steven 0127e08a28 fix: data conflict handler 2023-12-10 10:07:26 +08:00
Steven d275713aff chore: fix timestamp type in postgres 2023-12-09 23:19:57 +08:00
Steven c50f4f4cb4 chore: update migration scripts 2023-12-09 22:18:05 +08:00
Steven abda6ad041 chore: update latest schema 2023-12-09 12:05:45 +08:00
Steven 7fc7b19d64 chore: deprecate user setting legacy api 2023-12-08 22:41:47 +08:00
Steven b2d898dc15 chore: fix import order 2023-12-08 22:06:42 +08:00
Steven 15425093af chore: skip user setting key checks 2023-12-08 22:05:43 +08:00
steven c68bfcc3b9 chore: fix user setting store 2023-12-08 09:54:32 +08:00
Steven fa6693a7ae chore: update list memos 2023-12-06 22:44:49 +08:00
Athurg Gooth 5f86769255
fix: field type of row_status for table webhook (#2579)
Fix field type of row_status for table webhook
2023-12-06 10:57:03 +08:00
Irving Ou 9c18960f47
feat: support Postgres (#2569)
* skeleton of postgres

skeleton

* Adding Postgres specific db schema sql

* user test passed

* memo store test passed

* tag is working

* update user setting test done

* activity test done

* idp test passed

* inbox test done

* memo_organizer, UNTESTED

* memo relation test passed

* webhook test passed

* system setting test passed

* passed storage test

* pass resource test

* migration_history done

* fix memo_relation_test

* fixing server memo_relation test

* passes memo relation server test

* paess memo test

* final manual testing done

* final fixes

* final fixes cleanup

* sync schema

* lint

* lint

* lint

* lint

* lint
2023-12-03 13:31:29 +08:00
Steven a12844f5db chore: tweak seed data 2023-11-25 10:34:54 +08:00
Steven 1a5bce49c2 chore: implement webhook store 2023-11-24 22:45:38 +08:00
Athurg Gooth 91296257fc
chore: remove invalid access token from db (#2539)
Remove invalid access token from db
2023-11-22 23:20:45 +08:00
Steven 6529375a8b chore: update seed data 2023-11-19 23:58:35 +08:00
Steven ec2995d64a chore: fix order by pinned 2023-11-19 09:42:59 +08:00
Steven 981bfe0464 feat: add version checker 2023-11-06 20:49:02 +08:00
Steven 695fb1e0ca chore: update migration history store 2023-11-06 08:33:31 +08:00
Steven 405fc2b4d2 chore: simplify find migration history 2023-11-05 15:49:57 +08:00
Steven eacd3e1c17 chore: fix mysql latest schema 2023-11-05 15:38:45 +08:00
Athurg Gooth b966c16dd5
fix: data too large for mysql (#2470)
* Extend some TEXT field to LONGTEXT in mysql

* move db migration version

* fix error in migrate SQL
2023-10-31 10:23:15 +08:00
Steven dca712d273 chore: fix resource tests 2023-10-28 10:51:03 +08:00
Steven ac81d856f6 chore: delete resource file sync 2023-10-28 10:42:39 +08:00
Steven 88fb79e458 chore: impl inbox store for mysql 2023-10-28 09:44:52 +08:00
Steven 0ee938c38b chore: remove unused inbox status 2023-10-28 02:49:35 +08:00
Steven 3c36cc2953 feat: add inbox ui 2023-10-28 02:43:46 +08:00
Steven 79bb3253b6 chore: add activity service 2023-10-28 00:21:53 +08:00
Steven 18107248aa chore: rename list inbox 2023-10-28 00:08:42 +08:00
Steven 1b34119e60 chore: update activity store definition 2023-10-27 23:24:56 +08:00
Steven 67d2e4ebcb chore: update method name 2023-10-27 08:36:43 +08:00
Steven 4ea78fa1a2 chore: impl inbox store methods 2023-10-27 08:17:58 +08:00
Steven 93b8e2211c chore: update dev latest schema 2023-10-27 01:18:00 +08:00
Steven 052216c471 chore: fix list activities typo 2023-10-27 01:11:41 +08:00
Steven e5978a70f5 chore: initial inbox store model 2023-10-27 01:10:19 +08:00
Athurg Gooth 215981dfde
chore: remote context.Context pointer (#2448)
remote context.Context pointer
2023-10-26 20:21:44 +08:00
Steven 5b3af827e1 chore: move common packages to internal 2023-10-26 09:02:50 +08:00
Steven d06d01cef2 chore: release mysql driver 2023-10-21 01:25:07 +08:00
Athurg Gooth af7c0a76d0
fix: fail to update user's update_ts (#2410) 2023-10-20 19:10:38 +08:00
Steven 1b105db958 chore: fix field syntax 2023-10-20 08:52:16 +08:00
Steven 6f2ca6c87a chore: update find memo api 2023-10-20 08:48:52 +08:00
guopeng 73f59eaf09
fix: storage setting changed don't take effect (#2385)
* fix: Storage setting changed don't take effect

* fix: Storage setting changed don't take effect

* fix: Storage setting changed don't take effect
2023-10-16 08:07:21 -05:00
Athurg Gooth 6bb6c043e5
feat: add support for ListMemoOrganizer (#2367)
* Add support for ListMemoOrganizer

* fix rows not close
2023-10-09 08:18:47 -05:00
Athurg Gooth fa2bba51c1
feat: add support for ListActivity (#2365)
Add support for ListActivity
2023-10-09 08:18:33 -05:00
Athurg Gooth 425b43b3bb
fix: ListTag not support omit params (#2366)
fix ListTag not support omit params
2023-10-09 01:40:54 -05:00
Athurg Gooth 287f1beb90
fix: create storage without some attributes (#2358) 2023-10-08 05:30:24 -05:00
Athurg Gooth 7680be1a2f
fix: create user without some attributes (#2357) 2023-10-08 05:29:32 -05:00
Athurg Gooth 55e0fbf24e
fix: create activity without some attributes (#2356) 2023-10-08 05:29:22 -05:00
Athurg Gooth eaac17a236
fix: create memo without some attributes (#2355) 2023-10-08 05:29:12 -05:00
Athurg Gooth 1fbd568dfe
fix: create resource without some attributes (#2354) 2023-10-08 05:29:03 -05:00
Athurg Gooth c0619ef4a4
fix: CreateIdentityProvider without id (#2352) 2023-10-08 05:28:22 -05:00
Athurg Gooth b2aa66b4fd
fix: migration always in mysql (#2353) 2023-10-08 05:28:11 -05:00
Steven b938c8d7b6 chore: only show comments in memo detail page 2023-10-08 00:42:02 +08:00
Steven 553de3cc7e fix: mysql syntax 2023-10-07 22:56:12 +08:00
Steven c0422dea5b chore: fix sqlite migrator 2023-10-06 00:34:06 +08:00
Steven 7791fb10d8 chore: update new db driver 2023-10-05 23:19:52 +08:00
Steven a6ee61e96d chore: update package name 2023-10-05 23:11:29 +08:00
Steven 7dcc5cbaf1 chore: fix mysql migrator 2023-10-05 17:11:28 +08:00
Steven d474d1abd0 chore: update store cache 2023-10-05 15:17:40 +08:00
Steven fd395e5661 chore: update list memo relations 2023-10-01 21:35:17 +08:00
Steven be046cae8e chore: add parent field to memo 2023-10-01 16:27:40 +08:00
Steven 922de07751 feat: impl memo comment api 2023-10-01 14:44:10 +08:00
steven a928c4f845 chore: update error format 2023-09-29 13:04:54 +08:00
steven 8168fb71a8 chore: update migrator 2023-09-29 12:47:49 +08:00
Steven 87ddeb2c79 chore: adjust store test for mysql 2023-09-29 09:15:54 +08:00
Athurg Gooth c72f221fc0
feat: support mysql as backend storage driver (#2300)
* Rename checkDSN to checkDataDir

* Add option to set DSN and db driver

* Add mysql driver skeleton

* Add mysql container in compose for debug

* Add basic function for mysql driver

* Cleanup go mod with tidy

* Cleanup go.sum with tidy

* Add DeleteUser support for mysql driver

* Fix UpdateUser of mysql driver

* Add DeleteTag support for mysql driver

* Add DeleteResource support for mysql driver

* Add UpdateMemo and DeleteMemo support for mysql driver

* Add MemoRelation support for mysql driver

* Add MemoOrganizer support for mysql driver

* Add Idp support for mysql driver

* Add Storage support for mysql driver

* Add FindMemosVisibilityList support for mysql driver

* Add Vacuum support for mysql driver

* Add Migration support for mysql driver

* Add Migration support for mysql driver

* Fix ListMemo failed with referece

* Change Activity.CreateTs type in MySQL

* Change User.CreateTs type in MySQL

* Fix by golangci-lint

* Change Resource.CreateTs type in MySQL

* Change MigrationHistory.CreateTs type in MySQL

* Change Memo.CreateTs type in MySQL
2023-09-28 09:09:52 -05:00
CorrectRoadH 4ca2b551f5
chore: update seed data (#2311) 2023-09-28 09:03:32 -05:00
Steven c54febd024 chore: fix reset script 2023-09-27 18:55:26 +08:00
Athurg Gooth 5121e9f954
chore: move migration and seed code into driver (#2294)
Move migration and seed code into driver
2023-09-27 11:56:20 +08:00
Athurg Gooth ca98367a0a
chore: store vacuum and clean (#2293)
* Move all vacuum code into driver

* Remove db from Store
2023-09-26 20:27:31 -05:00
Steven 9abf294eed chore: update seed data 2023-09-27 09:13:56 +08:00
Athurg Gooth 9ce22e849c
chore: move SQL code of Memo into Driver (#2292) 2023-09-27 00:57:12 +00:00
Athurg Gooth 58b84f83d1
chore: move SQL code of MemoOrganizer into Driver (#2291) 2023-09-26 19:54:50 -05:00
Athurg Gooth acbde4fb2d
chore: move SQL code of MemoRelation into Driver (#2290) 2023-09-26 19:43:46 -05:00
Steven 71ee299de7 chore: drop shortcut 2023-09-27 07:28:17 +08:00
Steven 03a0972712 chore: rename sqlite entry file name 2023-09-27 00:51:16 +08:00
Steven 6007f48b7d chore: retire memo resource relation table 2023-09-27 00:40:16 +08:00
Steven 4180cc3a3d refactor: migrate storage to driver 2023-09-26 19:43:55 +08:00
Steven d6789550a0 refactor: migrate tag to driver 2023-09-26 19:37:22 +08:00
Steven d68da34eec refactor: migrate idp to driver 2023-09-26 19:17:17 +08:00
Steven 96395b6d75 chore: rename package `sqlite3` to `sqlite` 2023-09-26 19:07:14 +08:00
Athurg Gooth d3a6fa50d6
chore: move sql code of Resource into driver (#2286)
Move sql code of Resource into driver
2023-09-26 19:04:07 +08:00
Athurg Gooth 14ec524805
chore: move sql code of UserSetting into Driver (#2282)
* Move SQL code of UserSetting into Driver

* Fix golang import issue
2023-09-26 19:02:48 +08:00
Athurg Gooth fcba3ffa26
chore: move sql code of User into driver (#2281)
Move SQL code of User into Driver
2023-09-26 18:23:45 +08:00
Athurg Gooth 41eba71f0f
chore: split sql to driver (#2279)
* Add new database interface for SQL operations

* Move SQL code of Activity into Database

* Rename `Database` into `Driver`

* Move SQL code of SystemSetting into Driver

* Fix store.New in text code

* Change database into driver in the variables

* Change sqlite3.New into sqlite3.NewDriver
2023-09-26 17:16:58 +08:00
Steven 8c2f89edc5 chore: update demo username 2023-09-25 09:10:39 +08:00
Steven 6cff920f0c chore: update user demo data 2023-09-23 20:41:47 +08:00
Steven 465b173b36 chore: fix resource int type 2023-09-19 09:05:34 +08:00
Steven 9bf1979fa8 fix: list resources 2023-09-19 08:24:24 +08:00
Steven cd0ea6558d chore: update golangci-lint config 2023-09-17 22:55:13 +08:00
Steven 3a1f82effa fix: migration script 2023-09-16 14:10:51 +08:00
Steven a3d7cc9392 fix: migration script 2023-09-16 14:01:05 +08:00
Steven fb1490c183 feat: impl resources list page 2023-09-16 11:48:53 +08:00
Steven 4424c8a231 chore: add resource service definition 2023-09-16 00:11:07 +08:00
Steven 28a1888163 chore: fix user seed data 2023-09-15 08:55:18 +08:00
Steven f5802a7d82 chore: update access token ui 2023-09-15 08:18:30 +08:00
Steven 33d9c13b7e chore: remove openid field from user 2023-09-14 22:57:27 +08:00
Steven 42bd9b194b feat: impl user access token api 2023-09-14 20:16:17 +08:00
Steven d63715d4d9 feat: implement list memos filter 2023-09-13 20:42:44 +08:00
Steven 93f062d0b9 chore: update user v2 api 2023-09-10 18:56:24 +08:00
boojack ad1822d308
chore: update db utils (#2177) 2023-08-26 07:33:45 +08:00
boojack 4af0d03e93
chore: add user profile page (#2175)
chore: some enhancements
2023-08-25 23:10:51 +08:00
YuNing Chen 409d686f7d
chore: minor cleanup (#2124) 2023-08-11 22:34:08 +08:00
boojack 7c5296cf35
chore: update id type to int32 (#2076) 2023-08-04 21:55:07 +08:00
boojack 1ce82ba0d6
chore: remove shortcut related api (#2072) 2023-08-03 23:33:45 +08:00
Athurg Gooth 11abc45440
feat: add command to move blob from local to db (#2026)
* Add `mvrss` command to move blob from local to db

* Add comment for mvrss command
2023-08-03 19:08:39 +08:00
boojack 4c33d8d762
chore: remove unused transaction in store (#1995)
* chore: remove unused transaction in store

* chore: update
2023-07-20 23:15:56 +08:00
Lincoln Nogueira c8961ad489
fix: database is locked (#1992)
* fix: database is locked

The option "_journal_mode=WAL" is currently *not* being applied when
provided in the DSN.

This issue affects only new memos installations, not older ones where
the database journal was properly set to WAL mode by the previous sqlite
library go-sqlite3.

modernc.org/sqlite DSN parsing is different from go-sqlite3. It requires
the `_pragma=` prefix and even some options order matter.

https://gitlab.com/cznic/sqlite/-/issues/115

Closes #1985

* chore: upgraded notes on sqlite DSN
2023-07-20 20:51:25 +08:00
boojack 5e20094386
chore: add indexes (#1959) 2023-07-15 10:26:31 +08:00
boojack 40a30d46af
chore: update db connection params (#1960) 2023-07-15 10:26:19 +08:00
Athurg Gooth d9b3501fae
feat: add support for auto backup db file (#1950)
Add support for auto backup db file
2023-07-14 20:05:07 +08:00
boojack 698380f940
chore: update seed data (#1928) 2023-07-12 00:16:19 +08:00
boojack 7e391bd53d
chore: remove resource public id (#1912)
* chore: remove resource public id

* chore: update
2023-07-08 11:29:50 +08:00
boojack 0e05c62a3b
chore: update common utils (#1908) 2023-07-06 22:53:38 +08:00
boojack a7573d5705
refactor: migrate memo to apiv1 (#1907)
* refactor: migrate memo to apiv1

* chore: update

* chore: update

* chore: update

* chore: upate

* chore: update

* chore: update
2023-07-06 21:56:42 +08:00
boojack 1fa9f162a5
refactor: migrate resource to apiv1 (#1901) 2023-07-06 00:01:40 +08:00
boojack 5b6c98582e
refactor: migrate storage to apiv1 (#1890)
* refactor: migrate storage to apiv1

* chore: update

* chore: update

* chore: update
2023-07-04 10:05:57 +08:00
boojack 223404a240
chore: update memo seed data (#1884) 2023-07-02 23:58:02 +08:00
boojack 66e65e4dc1
refactor: migrate definition to api v1 (#1879)
* refactor: user api v1

* refactor: system setting to apiv1

* chore: remove unused definition

* chore: update

* chore: refactor: system setting

* chore: update

* refactor: migrate tag

* feat: migrate activity store

* refactor: migrate shortcut apiv1

* chore: update
2023-07-02 18:56:25 +08:00
boojack 9a8d43bf88
chore: update user store names (#1877)
* chore: update user store names

* chore: update
2023-07-02 14:27:23 +08:00
Vespa314 63d6b6f9f9
chore: listMemos sort by id for memos post/update at the same time (#1866) 2023-06-30 22:56:31 +08:00