docs: managed library

This commit is contained in:
linonetwo 2023-06-07 19:24:13 +08:00
parent 564b6c12eb
commit fed09fc8fd
3 changed files with 21 additions and 0 deletions

View file

@ -73,6 +73,16 @@ wikiInstance.boot.argv = [
'+plugins/tiddlywiki/tiddlyweb',
```
## Managed Library
Some library doesn't fit electron usage, we move their code to this repo and modify them:
- [app-path](https://github.com/sindresorhus/app-path): Need to be installed, so we can copy its binary to the resource folder. This lib is used by `externalApp` below.
- When not installed in package.json, when make release, forge will throw error `An unhandled rejection has occurred inside Forge: Error: ENOENT: no such file or directory, stat '/Users/linonetwo/Desktop/repo/TiddlyGit-Desktop/node_modules/app-path/main'`
- [externalApp](https://github.com/desktop/desktop/blob/742b4c44c39d64d01048f1e85364d395432e3413/app/src/lib/editors/lookup.ts): This was used by [Github Desktop](https://github.com/desktop/desktop) to lookup the location of editors like VSCode, we use it in context menu to "open in default text editor"
- [sqlite-vss](https://github.com/asg017/sqlite-vss): The path from its method `loadablePathResolver` maybe incorrect after electron app packaged. (It will be in `.webpack/main/index.js` in the dist folder instead of in `node_modules/sqlite-vss` folder.)
- Still need to install its `optionalDependencies` like `sqlite-vss-darwin-x64` in package.json
## Code Tour
TBD

View file

@ -28,6 +28,7 @@
"main": ".webpack/main",
"dependencies": {
"@tiddlygit/tiddlywiki": "^5.3.0-prerelease-2023-05-22",
"app-path": "^4.0.0",
"best-effort-json-parser": "1.0.1",
"better-sqlite3": "^8.4.0",
"bluebird": "3.7.2",

10
pnpm-lock.yaml generated
View file

@ -4,6 +4,9 @@ dependencies:
'@tiddlygit/tiddlywiki':
specifier: ^5.3.0-prerelease-2023-05-22
version: 5.3.0-prerelease-2023-05-22
app-path:
specifier: ^4.0.0
version: 4.0.0
best-effort-json-parser:
specifier: 1.0.1
version: 1.0.1
@ -3410,6 +3413,13 @@ packages:
picomatch: 2.3.1
dev: true
/app-path@4.0.0:
resolution: {integrity: sha512-mgBO9PZJ3MpbKbwFTljTi36ZKBvG5X/fkVR1F85ANsVcVllEb+C0LGNdJfGUm84GpC4xxgN6HFkmkMU8VEO4mA==}
engines: {node: '>=12'}
dependencies:
execa: 5.1.1
dev: false
/aproba@1.2.0:
resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==}
dev: false