Commit Graph

143 Commits

Author SHA1 Message Date
Tienson Qin
427dbe3f58 feat: export Logseq markdown syntax
Move the Logseq Markdown Mirror syntax/export work out of the two-way sync branch while leaving file-to-DB sync behavior behind.

Details:\n- add docs/logseq-markdown-syntax.md and update ADR 0016 with the one-way mirror syntax contract\n- export mirror files with page id markers, property list items, nested default property values, node page refs, task status markers, and datetime values with time\n- preserve block refs as uuid links where needed while keeping page/node refs readable\n- update focused export and markdown mirror tests

Validation:\n- bb dev:lint-and-test
2026-05-08 10:58:45 +08:00
charlie
66b1140fc9 feat(markdown): enhance markdown block formatting and handling for quotes, code, and headings 2026-05-07 13:54:51 +08:00
Tienson Qin
9189755b3a fix: update markdown mirror 2026-05-06 16:06:37 +08:00
Tienson Qin
06dbef8715 feat: add markdown mirror
Add markdown mirror generation for DB graphs, including page and journal paths, regeneration, debounced write handling, and settings UI.

Serialize page and block property values into mirrored Markdown by resolving property-value entities to their display content.

Persist mirror files through the node worker platform and make browser worker mirror storage fail fast as unsupported.

Fix Electron userAppCfgs writes to avoid returning unserializable Electron state over IPC.

Add ADR and targeted tests for mirror generation, worker wiring, platform storage, and graph path handling.
2026-05-06 16:06:37 +08:00
Tienson Qin
9cfbaf80dc fix: normalize copy/paste export property data
- prefer memory-backed copied blocks before async clipboard read fallback in paste flow
- normalize clipboard write payload construction for web ClipboardItem
- render exported property keys with property titles instead of db ident suffixes
- render datetime property integer values as journal titles using export date formatter
- add regression tests for paste and export property rendering
2026-05-01 00:15:32 +08:00
rcmerci
eca0ab1a36 Merge remote-tracking branch 'origin/master' into feat/cliable 2026-04-28 18:17:17 +08:00
megayu
79c25837cb Migrate from yarn to pnpm (#12529)
* migrate yarn to pnpm

* chore: update pnpm version to 10.33.0 across all package.json files

* chore: update .npmrc and package.json for improved dependency management

* chore: unify Clojure, Node, and Java version in workflow files

* fix: enable shamefully-hoist for now and add electron, keytar to onlyBuiltDependencies

* feat: add cider/piggieback dependency and update nREPL middleware configuration to silence warnings

* ensure pnpm setup prior to node setup

* fix: update logseq/bb-tasks git SHA

* feat: add pnpm configuration for onlyBuiltDependencies in package.json

* feat: add onlyBuiltDependencies configuration for better-sqlite3 in pnpm settings

* chore: update pnpm lockfile

* fix: resolve merge conflicts

* fix: remove invisible characters from markdown headers

* fix: update .npmrc comments for clarity on lockfile usage

* Revert "feat: add cider/piggieback dependency and update nREPL middleware configuration to silence warnings"

This reverts commit 70a111936f.

* fix: remove invisible characters from various README files and add .editorconfig

* fix: clarify lockfile resolution process in SKILL.md

---------

Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
2026-04-24 23:40:25 +08:00
Tienson Qin
e048996880 Merge branch 'master' into feat/cliable 2026-04-22 21:07:00 +08:00
rcmerci
4b13d67a88 Merge remote-tracking branch 'origin/master' into feat/cliable 2026-04-18 10:25:32 +08:00
Mega Yu
d6bc0b75ec Merge branch 'master' into enhance/i18n 2026-04-17 20:26:15 +08:00
megayu
76285de44b refactor: toolchain upgrade (#12517)
* chore(deps): upgrade Clojure version to 1.12.4 across multiple dependency files

* chore: bump shadow-cljs to 3.3.6

* chore: bump org.clojure/clojurescript to 1.12.134

* chore(deps): upgrade Clojure version to 1.12.4 in workflow files

* chore(deps): upgrade Java version to 21 in workflow files

* chore(deps): upgrade Node.js version to 24 in workflow files

* chore(deps): upgrade Node.js version to 24 in Dockerfile

* feat(updater): migrate electron-forge to electron-builder

* fix wrong android app version

* fix workflow

* feat(dependency-upgrade): add max-update-interval option for dependency audits

* chore(deps): upgrade electron-builder and electron-updater

* fix: update manual verification instructions for Electron shim cache

* chore: update shadow-cljs version to 3.4.4 across all dependencies

* chore: upgrade electron version to 41.2.1

* chore: update metosin/malli dependency to latest

* chore: upgrade cider-nrepl version to 0.59.0 in dependencies

* chore: upgrade clj-kondo version to 2026.04.15 and fix warning

* chore: move Electron windows build configuration from yml to ci

* chore: update Electron signing configuration to extend from base config

* fix: replace icon file for NSIS compatibility

* chore: resolve metosin/malli version conflicts

* chore: upgrade jdk to 21 in e2e workflow

---------

Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
2026-04-17 19:40:01 +08:00
Tienson Qin
f53767dfc6 chore: remove both transit-read and transit-write
use write-transit-str and read-transit-str instead
2026-04-17 16:58:18 +08:00
Mega Yu
69ee9e2f83 chore: change Github to GitHub 2026-04-15 15:43:52 +08:00
rcmerci
40d546a5f7 Merge remote-tracking branch 'origin/master' into feat/cliable 2026-04-04 21:33:53 +08:00
Gabriel Horner
a1b171a20e chore: bump nbb-logseq to feat-db-v34
This bumps to recent version of sci which should allow for upgrading
to malli 0.20+
2026-04-02 13:14:25 -04:00
Tienson Qin
333f3e10b1 remove vector embeddings 2026-04-02 18:51:29 +08:00
Tienson Qin
2f3b53a28a Merge branch 'master' into feat/cliable 2026-03-31 23:36:48 +08:00
Gabriel Horner
46ec2187db enhance(dev): unlock-graph option for nbb cli
to allow querying of graph that has been used with new cli
2026-03-25 13:56:53 -04:00
megayu
d6403b7746 dependencies upgrade (#12460) 2026-03-23 21:32:28 +08:00
Gabriel Horner
fec5b82b42 fix: existing mcp updates intermittently failing
The new cli uses :db/id as its primary id while the existing mcp uses
:block/uuid. These changes on list tools cause slow and sometimes breaking interactions
for updates. It also causes buggy/inconsistent mcp behavior b/n mcp cli and server as there
are different implentations being called. The new cli should use its own
thread-api/* fns and replace MCP when it can meet existing functionality - working
updates and provide a CLI interface.
Also fix mcp.tools dissoc bug which had been fixed in the newer list fns
2026-03-18 13:51:17 -04:00
rcmerci
75be7be8df Merge remote-tracking branch 'origin/master' into feat/cliable 2026-03-13 16:32:49 +08:00
megayu
adbaf10abc chore: tech stack upgrade (#12448)
* fix(lint): make worker/frontend separation lint work on Windows

* chore: update cljs:electron-watch script to include test flag

* chore: remove dead root dependencies

* chore(deps): converge better-sqlite3 to 12.6.2 across deps packages

* chore(deps): converge fs-extra to ^11.3.0 across package roots

* fix(test): correct parameters for create-if-not-exists function

* chore(deps): converge cljs-bean to 1.9.0 across deps roots

* fix(tests): escape regex in cljs:run-test script

* chore: pin root packageManager to yarn 1.22.22

* chore(build): replace del with fs.rmSync in gulp clean

* chore(build): replace npm-run-all with npm-run-all2

* chore(security): upgrade dompurify and unify sanitizer path

* chore(observability): upgrade web sentry to 8.x

* chore: remove unused react-draggable dependencies

* chore(ci): fix windows release artifact collection

* fix(build): create static dir before gulp clean scans it

* fix: update nbb-logseq dependency to version feat-db-v33

* fix(test): move start-time initialization after clone repo

* fix(deps): update nbb dependencies and adjust test script paths to compatible with windows path delimiter

* chore(deps): remove dead meander dependency

---------

Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
2026-03-13 13:20:49 +08:00
Gabriel Horner
2e8d7c6303 fix: bump nbb-logseq to include datascript fix 2026-03-12 10:21:54 -04:00
rcmerci
605c86ecd1 056-graph-name-dir-encoding-alignment.md 2026-03-12 15:12:34 +08:00
Gabriel Horner
7032e6ba37 refactor: centralize default graphs dir spread across cli and electron
Having different definitions doesn't allow for configurability
and can lead to bugs. Also addressed sqlite-cli having one-off definition
2026-03-12 15:12:34 +08:00
Gabriel Horner
6d2be5a87e chore: bump to latest nbb-logseq
bump to match latest datascript changes in this branch
2026-03-12 15:12:34 +08:00
rcmerci
a4b8f2aeff 040-hide-db-prefix-in-user-visible-graph-names.md 2026-03-12 15:12:33 +08:00
Gabriel Horner
6a8e35344b fix: old cli unable to start
Looks like agent confused old cli w/ new cli
2026-03-12 15:12:33 +08:00
rcmerci
8a67ef5552 023-logseq-cli-help-show-styling.md 2026-03-12 15:12:33 +08:00
rcmerci
12de72064e update code according to remove file-based PR 2026-03-12 15:12:32 +08:00
rcmerci
e7dd64348c impl 005-logseq-cli-output-and-db-worker-node-log.md (1) 2026-03-12 15:10:56 +08:00
rcmerci
07b70240a6 impl 004-logseq-cli-verb-subcommands.md 2026-03-12 15:10:55 +08:00
rcmerci
44d2f3ebe2 003-db-worker-node-cli-orchestration.md (2) 2026-03-12 15:10:55 +08:00
Tienson Qin
a092470392 enhance: copy as/export add open blocks only 2026-03-05 18:23:42 +08:00
Gabriel Horner
cbf67bffc8 chore: bump cli 0.4.3 2026-02-23 10:05:36 -05:00
Gabriel Horner
b484b072a3 chore: bump cli startup time test 2026-02-20 13:55:21 -05:00
Gabriel Horner
df70a52bba fix: two bug with using --roundtrip
Fails hard when db is invalid and doesn't respect
--catch-validation-errors
2026-02-19 20:24:23 -05:00
Gabriel Horner
f28e001b5a enhance: ensure export EDN is idempotent across import and export
An EDN export should consistently produce the same EDN when imported
into a new graph and re-exported. This adds initial fn, cli option and
test to ensure this. There are some known TODOs. diff-graphs script was
removed as it was being used as a subset of the workflow provided by the
--roundtrip option
2026-02-18 15:23:41 -05:00
Tienson Qin
267587a551 enhance(ux): add progress bar when exporting zip 2026-02-01 16:29:28 +08:00
Tienson Qin
729ca7fcbf Merge branch 'master' into feat/worker-sync 2026-01-26 18:52:12 +08:00
Gabriel Horner
ed805f039f chore: cleanup bb tasks after file graph removal
Remove needless 'db-' prefix for several dev tasks. Remove linter for
file and db graph separation. It served us well :)
2026-01-22 13:19:58 -05:00
Gabriel Horner
173898240e fix: remove most file graph uses in deps
except for graph-parser and publish deps

- Removed most mentions of 'repo' in deps, which cleaned up a lot related
  to export cli and worker
- Removed db-based-graph? checks in deps except for unknown use
  in entity-plus?
- Removing db-based-graph? checks resulted in deleting unused file graph
  code paths e.g. get-pid
- Removed file graph handling in cli list command
- Remove file-based-graph? checks from deps
2026-01-22 13:19:58 -05:00
Gabriel Horner
37af8f690e fix: remove remaining uses of file graph specific attributes
Removed all file graph uses of :block/namespace, :block/file, :block/type and
:block/properties except for graph-parser which still uses them for db
importer.
Removed all uses of :block/format except for graph-parser and
src/main/frontend
2026-01-22 13:19:58 -05:00
Gabriel Horner
37d9ebda1f chore: remove file-specific graph-parser code
Also removed file graph code for markdown export as a prereq
2026-01-22 13:19:57 -05:00
Gabriel Horner
3e0d57bc32 chore: prefix deps workflows with 'deps-'
to organize workflow files better
2026-01-21 14:16:38 -05:00
Tienson Qin
bcc478b5f7 refactor: separate og and db version (#12276)
separate og and new version apps

remove file sync, tldraw, excalidraw and zotero
2025-12-29 15:39:32 +08:00
Tienson Qin
1ae9e2c496 fix: extends tags query and support eid|title|db-ident
Previously `tags` doesn't return blocks that have children tag(s).

Also, `tags` support both db/ident and block/title to make it easy
to use:
(tags ?b #{144})
(tags ?b #{"Task"})
(tags ?b #{:logseq.class/Task})
2025-12-24 14:37:57 +08:00
Gabriel Horner
87dff14f4c chore(cli): bump to 0.4.2 2025-12-17 08:40:42 -05:00
Gabriel Horner
ee97b8cda6 enhance(cli): Add -h/--help to commands 2025-12-17 08:24:46 -05:00
Gabriel Horner
3a9b00f21f chore(cli): changelog for 0.4.2 and tweak option descriptions 2025-12-17 08:02:30 -05:00