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
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
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
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})
* 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>
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
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
Introduced a breaking change for query and search commands where
graph(s) are specified as options instead of arguments. This
makes local graph usage consistent across all commands.
Also fixed in-app search not working and local query with multiple
graphs not querying from the right db