Commit Graph

676 Commits

Author SHA1 Message Date
Tienson Qin
00964157b1 dev: run lint-and-test in parallel
run cljs tests in parallel too
2026-05-12 23:36:42 +08:00
Tienson Qin
1f9c017998 refactor: graph view V2 (#12604)
* feat(graph): rebuild global graph view with Pixi

Summary:

- Replace /graph route with a new Pixi-based global graph implementation in ClojureScript.

- Build graph data from db-worker only (no UI DB writeback) and default to tags+objects with a toggle for all pages.

- Add fast scene rendering for large graphs with indexed hit-testing, zoom/pan, node dragging, and click/shift+click node actions.

- Introduce dynamic label management (zoom hysteresis, viewport culling, overlap control, hover-emphasis) and fix hook lifecycle cleanup issues.

- Refresh graph UI styling to full-container layout, dot-first settings control, and Logseq button usage.

- Add/expand tests for global graph modes, node actions, and Pixi label/visibility logic.

- Update graph-related dependencies/lockfile as part of the new implementation.

* enhance(graph): improve drag exploration and label visibility

- Dragging a node now pulls connected nodes with depth-based weights for easier structure exploration.

- Labels are rendered only for currently visible node dots; hover no longer reveals hidden-node titles.

- Hovered node title remains promoted in foreground while respecting visibility constraints.

- Add logic/test coverage for connected drag weights and updated label text behavior.

* enhance(graph): use d3 force layout

Summary:
- Move Graph V2 node layout into graph pixi logic.
- Use d3-force link, charge, center, collision, and y forces instead of the hand-written ring/spiral layout.
- Add coverage that linked graph nodes settle closer than an unlinked island.

Dependency:
- Verified d3-force is already latest at 3.0.0.

Tests:
- bb dev:test -v frontend.extensions.graph-pixi-logic-test
- bb dev:test -v frontend.common.graph-view-v2-test
- pnpm install --frozen-lockfile --lockfile-only

* fix: graph view interactions

* enhance: speed up large graph view

* enhance: speed up tags graph

* enhance: speed up tags layout

* enhance: bound tags force layout

* enhance: speed up graph opening

* fix: keep graph objects visible when zoomed out

* fix: resize graph with sidebars

* enhance: select graph nodes

* fix: refine graph selection controls

* support icons

* fix: sharpen graph node icons

* enhance(graph): update graph v2 settings

* fix: re-render graph when theme changes

* enhance(graph): remove legacy graph view

* fix: typo

* fix: improve graph view

* test: cover graph view improvements

* enhance: improve graph view

* test: cover graph time travel behavior

* enhance: refine graph time travel

* test: cover graph layout controls

* enhance: add graph layout controls

* test: cover graph highlight controls

* fix: refine graph highlight controls

* test: cover edge label alignment

* fix: align graph edge labels

* test: keep graph lines visible on highlight

* fix: keep graph lines visible on highlight

* fix: show graph lines by default

* test: filter graph lines on highlight

* fix: filter graph lines on highlight

* test: keep graph depth incremental

* fix: update graph depth incrementally

* test: cover graph label link occlusion

* fix: occlude graph links behind labels

* test: cover graph edge visibility defaults

* fix: smooth graph edges on highlight

* test: cover graph arrow toggle

* fix: toggle graph arrows

* test: cover reciprocal graph edge offsets

* fix: separate reciprocal graph edges

* test: cover duplicate graph edge runs

* fix: dedupe graph edge render runs

* test: cover graph tag clusters

* enhance: cluster graph tags layout

* test: cover graph tag cluster colors

* fix: color graph tag clusters by title

* test: cover subdued graph node colors

* fix: mute graph node colors

* feat: grid layout

* add more options

* enhance(graph): drill into tags on zoom

* map-like navigation

* mod+click to preview node

* edge enhancements

* more tweaks

* fix: block preview

* enhance(graph): speed up large graph layout

* fix: improve graph mode switching ux

* fix: speed up graph view switching

* fix: optimize large all-pages graph render

* fix: speed up graph data build

* fix: collapse graph tag settings on mode switch

* enhance: refine graph panel width

* fix: improve graph zoom performance

* fix: satisfy graph lint

* fix: open graph nodes by uuid

---------

Co-authored-by: rcmerci <rcmerci@gmail.com>
2026-05-10 23:26:32 +08:00
Tienson Qin
f1fa9f3f5d fix: remove invalid iOS web fonts 2026-05-10 17:28:10 +08:00
Tienson Qin
63acfae310 fix: ios testflight fonts 2026-05-10 16:40:42 +08:00
Tienson Qin
e47539398b fix: speed up worker search 2026-05-06 21:38:04 +08:00
rcmerci
ebb0732f45 dev: remove ns logseq.cli.integration-test 2026-05-04 21:54:47 +08:00
Tienson Qin
df38c26dbf fix: migrate capacitor fully to v8 2026-05-03 15:01:31 +08:00
Tienson Qin
9e4b8c8246 fix(cli): resolve packaged db-worker runtime path 2026-04-30 19:38:45 +08:00
Tienson Qin
abbc1ad628 Merge pull request #12548 from logseq/feat/desktop-bundle-cli
Feat/desktop bundle cli
2026-04-30 18:09:35 +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
ad808fedc9 use vite instead of ncc 2026-04-24 23:32:35 +08:00
rcmerci
f751f27a63 refactor(cli): remove --data-dir, add --root-dir
--data-dir: ~/logseq/graphs
--root-dir: ~/logseq

All other configuration files and data directories are derived from the root-dir
2026-04-24 22:35:00 +08:00
megayu
7fa6a1d99c feat(i18n): improve command search with bilingual and pinyin matching (#12535)
* feat(i18n): enhance bilingual search functionality with multi-field scoring

Co-authored-by: Copilot <copilot@github.com>

* feat(i18n): add pinyin-initial matching for zh-CN command search

Co-authored-by: Copilot <copilot@github.com>

* feat(cmdk): invalidate commands cache on initialization

Co-authored-by: Copilot <copilot@github.com>

* feat(i18n): add parameterized translation function to i18n_functions

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-24 18:45:04 +08:00
Mega Yu
1688131f3b chore: add skills registry for managing agent skills and their triggers 2026-04-23 17:44:44 +08:00
Mega Yu
b9745dbaec fix test 2026-04-23 15:40:11 +08:00
rcmerci
821225fd1f dev: remove unnecessary logs and repeated compilation of db-worker-node 2026-04-22 22:22:42 +08:00
Tienson Qin
ffe75c786f use dev script when not release 2026-04-21 10:57:54 +08:00
rcmerci
4b13d67a88 Merge remote-tracking branch 'origin/master' into feat/cliable 2026-04-18 10:25:32 +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
rcmerci
9bac1ae4dd feat(cli): add skill show/install 2026-04-10 11:38:42 +08:00
Tienson Qin
c24e66f3e6 fix: lint and tests 2026-04-09 23:16:37 +08:00
rcmerci
653a004195 enhance(cli): display width in all list-* cmds 2026-04-07 23:49:58 +08:00
rcmerci
40d546a5f7 Merge remote-tracking branch 'origin/master' into feat/cliable 2026-04-04 21:33:53 +08:00
Tienson Qin
333f3e10b1 remove vector embeddings 2026-04-02 18:51:29 +08:00
Gabriel Horner
ae90f8a14a fix: can't build db-worker-node
@vercel/ncc dep accidentally removed with latest merge to master
2026-03-31 13:10:37 -04:00
Tienson Qin
2f3b53a28a Merge branch 'master' into feat/cliable 2026-03-31 23:36:48 +08:00
Tienson Qin
017b98de7d downgrade posthog 2026-03-30 16:18:09 +08:00
Gabriel Horner
b513b94026 fix: new property and class idents don't have suffix
when created from app or cli. Moving db-worker to node changed the
js/process exist check in db-ident ns. Brought back env var for
straightforward fix. I checked other process checks and this was the
only one affected this way. Also remove double testing for graph-parser as
it hasn't provided any benefit and yet another place where we kept
juggling this env var
2026-03-25 13:54:14 -04:00
Mega Yu
2b6d8e51f2 chore: downgrade graphology and upgrade posthog-js dependencies 2026-03-25 15:42:07 +08:00
Tienson Qin
3fa232cd1f downgrade posthog 2026-03-24 21:33:39 +08:00
megayu
d6403b7746 dependencies upgrade (#12460) 2026-03-23 21:32:28 +08:00
rcmerci
2cc0735e3a enhance(cli): migrate non-sync integration coverage to cli-e2e shell suite 2026-03-20 16:34:54 +08: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
c6a6156188 fix: CLI integration tests failing in CI
Also split out integration tests to separate step and command as they
have their own setup
2026-03-12 15:12:34 +08:00
Gabriel Horner
7d4a241e6b 039-worker-platform-abstraction-cleanup.md, rebase master fix (2) 2026-03-12 15:12:33 +08:00
rcmerci
1af88b2b6a 037-db-worker-node-node-sqlite.md 2026-03-12 15:12:33 +08:00
rcmerci
c155be440a 036-db-worker-node-ncc-bundling.md (2) 2026-03-12 15:12:33 +08:00
rcmerci
969251bff7 036-db-worker-node-ncc-bundling 2026-03-12 15:12:33 +08:00
rcmerci
103d9fd079 update package.json 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
6f3d074195 impl 013-logseq-cli-datascript-query.md (1) 2026-03-12 15:12:31 +08:00
rcmerci
3793920c02 feat(cli): add bin wrapper 2026-03-12 15:10:56 +08:00
rcmerci
76c60e5e39 update package.json 2026-03-12 15:10:55 +08:00
rcmerci
06d9beb294 milestone 3 (part 2) 2026-03-12 15:10:55 +08:00
rcmerci
bf43ca478c milestone 3 (part 1) 2026-03-12 15:10:55 +08:00
Tienson Qin
54844ff95f no need to run db-sync tests in build CI
because it's already handled by its own dep ci test
2026-02-06 19:08:52 +08:00
Tienson Qin
b8445a6395 node.js adapter 2026-01-31 00:51:35 +08:00
Tienson Qin
0cf01ba780 fix: parent cycle 2026-01-26 17:36:34 +08:00