Commit Graph

1999 Commits

Author SHA1 Message Date
Tienson Qin
f594e2034f fix(rtc): batch store and validate db (#12249)
* fix(rtc): batch store and validate db

* fix: logseq.db/transact! shouldn't distinct tx-data

since move-op include 2 steps:
1. insert-block
2. update-attrs

This results in db invalid after step 1.

* refactor: add transact-with-temp-conn!

* bump nbb-logseq and add tests for ldb/transact* fns

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: rcmerci <rcmerci@gmail.com>
2025-12-09 20:47:37 +08:00
Charlie
ef211a5285 enhance(pdf): assets related improvements (#12244) 2025-12-09 09:19:06 +08:00
Gabriel Horner
a5875420d1 fix: property value blocks with uuid
don't generate their uuids or their tags correctly.
This should've been handled in ad64632c1b.
Related to https://github.com/logseq/db-test/issues/636
2025-12-08 17:41:25 -05:00
Gabriel Horner
1fe486542a fix: some validation errors fail to pretty print
with error 'RangeError: Maximum call stack size exceeded'.
As reported by Danzu for https://github.com/logseq/db-test/issues/636
2025-12-08 14:01:19 -05:00
Tienson Qin
4209fb4cba enhance: add errors 2025-12-08 13:40:12 +08:00
rcmerci
285eb612a1 fix(rtc): fix assets-sync-loop stopped, fix read-asset err behaviour
- ensure rtc-loop stops when assets-sync-loop stopped
- ensure read-file/read-file-raw have same behaviour on web and electron
- handle exceptions between ui-thread <-> worker-thread
- ignore upload-asset if not exist at local
- ignore download-asset if not exist at remote
2025-12-05 20:49:00 +08:00
Gabriel Horner
deaed7d305 fix(cli): validate shouldn't consider some :block.temp/* attributes
Encountered this with a graph in
https://github.com/logseq/db-test/issues/636 and a previous issue
2025-12-04 11:38:27 -05:00
Gabriel Horner
07a0feb856 enhance(cli): Add validate option to export-edn command
Useful for sanity checking exports and dev
2025-12-04 10:30:56 -05:00
Gabriel Horner
8fc56bfaa3 refactor: Update importer to use validate-local-db
Also update validation in DB scripts:
* replace alternative validate-db impl with standard CLI one
* Add validation to import script
* Choose to decouple other DB scripts from validate-db as it may go away
  later
2025-12-04 10:30:56 -05:00
Gabriel Horner
c8f99d1ff3 refactor: make CLI and testing validation consistent
Both have needs that are more for local graphs
2025-12-04 10:30:56 -05:00
Gabriel Horner
3219b827e6 fix: import of existing pages preserves properties and tags
with :build-existing-tx? option. Makes behavior consistent with blocks.
This also fixes built-in pages that weren't re-importing correctly
w/ modified properties
2025-12-03 15:30:54 -05:00
Gabriel Horner
ef68e19b32 fix page export when blocks reference each other
Fixes https://github.com/logseq/db-test/issues/571
2025-12-02 19:22:54 -05:00
Gabriel Horner
134dc0f2a8 enhance: validate export EDN for most export types
and error explicitly if they can't import. This is much better
for the user so they aren't finding out later that EDN is invalid
on import. Added both to the export menu and to export EDN commands that
aren't graph-wide. Related to
https://github.com/logseq/db-test/issues/549
2025-12-02 13:50:09 -05:00
Gabriel Horner
22dbcfb2d6 fix: EDN export of class page
Should fix case described in
https://github.com/logseq/db-test/issues/549.
Still need to QA property page export
2025-11-26 12:24:03 -05:00
rcmerci
bdf5d66f80 enhance(rtc,e2ee): make it compatible with unencrypted graphs 2025-11-24 11:40:18 +08:00
rcmerci
d472efc039 enhance(rtc,e2ee): remove unused deprecated code 2025-11-24 11:40:18 +08:00
rcmerci
50d93539c9 feat(rtc): encrypt data for full-graph-upload 2025-11-24 11:40:18 +08:00
rcmerci
52ab12b9a3 feat(rtc,e2ee,wip): add ns frontend.worker.rtc.encrypt 2025-11-24 11:40:18 +08:00
Gabriel Horner
36c361af86 enhance(cli): Add option to validate cmd to relax
closed validation of entity maps. Users probably won't care about this
as much
2025-11-21 10:11:46 -05:00
Tienson Qin
c4c4634bee fix: remove entity db/id from tx-data 2025-11-21 00:33:34 +08:00
Gabriel Horner
7bb8655d71 chore: remove unused errors-by-type 2025-11-19 23:31:04 -05:00
Gabriel Horner
79e75060d6 enhance(cli): Add validate command for local graph(s)
Improves :errors of invalid errors to be more user friendly.
Also enable closed-value validation optionally as it is useful
to have higher data quality for non RTC graphs
2025-11-19 17:51:45 -05:00
Gabriel Horner
5489e7572f enhance(cli): export-edn prints unexpected errors
especially when an invalid export-type is given
2025-11-18 09:51:20 -05:00
Tienson Qin
8bd6acfb2a fix: relax closed values validation
because we can't ensure this when merging updates from server
2025-11-18 14:13:48 +08:00
Tienson Qin
7c9cfadad6 fix: more migration issues for old graphs 2025-11-14 18:00:08 +08:00
Tienson Qin
0a54e807bb enhance(api): plugin class with ident like plugin.class.id/class-name (#12200)
* enhance(api): plugin class with ident like `plugin.class.id/class-name`
* enhance(apis): remove support for namespace separator in create tag
* enhance(apis): get tag with ident or uuid
* fix(lint): remove unused vars
* fix(apis): sanitize user property name
* enhance(apis): get tag ex info
* chore: bump libs version
---------
Co-authored-by: charlie <xyhp915@qq.com>
2025-11-14 10:48:08 +08:00
Tienson Qin
82a7ec13ec perf: get-recent-updated-pages 2025-11-14 01:13:29 +08:00
Tienson Qin
b17cc5e9da fix: tests 2025-11-13 23:32:55 +08:00
Tienson Qin
a626cec342 enhance(perf): reduce initial datoms that need to be loaded 2025-11-13 21:27:22 +08:00
rcmerci
326d6dbd54 fix lint 2025-11-12 19:30:37 +08:00
rcmerci
7b6d6c4672 perf: add unsafe->Entity, faster 'Pages'
On Chrome, Mac M4Max
40000 pages graph, sorted by updated-at, from 1000+ms -> 200-300ms
2025-11-12 19:29:16 +08:00
Tienson Qin
a5ac90a0f3 revert xform 2025-11-12 06:39:52 +08:00
rcmerci
4a1975a8a6 fix lint 2025-11-12 02:51:55 +08:00
rcmerci
fb271b1d49 perf: faster 'Pages'
On Chrome, Mac M4Max
40000 pages graph, sorted by updated-at, from 1000+ms -> 200-300ms
2025-11-12 02:48:42 +08:00
Tienson Qin
76d8546604 fix: can't delete annotated pdf
related to https://github.com/logseq/db-test/issues/564
2025-11-10 20:34:57 +08:00
Tienson Qin
fb9e735934 fix: paste query block should create new block
related to https://github.com/logseq/db-test/issues/572
2025-11-09 20:00:17 +08:00
Tienson Qin
a83107f2fc fix: lint 2025-11-09 09:44:25 +08:00
Tienson Qin
c5adaddcec fix: Cmd+V does not insert images into the property value
related to https://github.com/logseq/db-test/issues/569
2025-11-09 09:41:45 +08:00
Tienson Qin
fec4f5165c fix: set heading removes refs
related to https://github.com/logseq/db-test/issues/559
2025-11-07 03:29:11 +08:00
Tienson Qin
1fca2a9ff6 enhance(ux): store image width/height to avoid scrolling junk
related to https://github.com/logseq/db-test/issues/562
related to https://github.com/logseq/db-test/issues/488
2025-11-06 19:33:02 +08:00
Tienson Qin
48fb2b8179 enhance(ux): display tag extends before tag name
format: `#parent/child`, `#parent1 | parent2/child`, built-in tags
are ignored.
2025-11-05 17:53:26 +08:00
Tienson Qin
0b2ef2dd89 fix: lint 2025-11-05 04:32:44 +08:00
Tienson Qin
a4ec889a5d fix: some built-in tags shouldn't be recognized as inline tags
related to https://github.com/logseq/db-test/issues/555
2025-11-05 04:23:50 +08:00
Tienson Qin
4046dae5cf fix: add pdf annotation to private tags 2025-11-05 00:38:14 +08:00
Tienson Qin
d8b1feb395 fix: some built-in tags such as #Journal shouldn't be extended
related to https://github.com/logseq/db-test/issues/555
2025-11-05 00:29:25 +08:00
Tienson Qin
79f670f799 fix: allow editing a block's other properties if there's invalid URL
Related to https://github.com/logseq/db-test/issues/556
2025-11-04 16:13:46 +08:00
Tienson Qin
d809af8cef fix: page ref query uses UUID instead of name
To avoid name collisions.
2025-11-03 22:26:39 +08:00
Tienson Qin
4ebe410e23 fix: block.temp/original-page-name 2025-11-03 22:08:17 +08:00
Tienson Qin
da5f9b3c61 fix: more invalid data cases for old db graphs 2025-11-03 18:14:45 +08:00
Tienson Qin
7d39b510dd fix: query result now showing when :db/id is not specified
fix https://github.com/logseq/db-test/issues/510
2025-10-27 18:22:57 +08:00