@yanglaofish/fishtools 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +2 -2
  2. package/manual/README.md +2 -2
  3. package/manual/docs/examples/script-plugin/LICENSE +21 -0
  4. package/manual/docs/examples/script-plugin/README.md +64 -0
  5. package/manual/docs/examples/script-plugin/index.js +39 -0
  6. package/manual/docs/examples/script-plugin/package.json +9 -0
  7. package/manual/docs/examples/script-plugin/scripts/benchmark.py +23 -0
  8. package/manual/docs/plugin-development.md +49 -8
  9. package/manual/docs/releases.md +11 -0
  10. package/manual/docs/roadmap.md +3 -1
  11. package/manual/docs/superpowers/plans/2026-10-12-plugin-developer-experience.md +50 -0
  12. package/manual/docs/superpowers/reviews/2026-10-12-plugin-release-review.md +20 -0
  13. package/manual/docs/superpowers/specs/2026-10-12-plugin-developer-experience.md +22 -0
  14. package/manual/docs/verification.md +17 -0
  15. package/manual/packages/core/src/application.js +45 -21
  16. package/manual/packages/core/src/host.js +20 -5
  17. package/node_modules/@mytools/core/bin/fst.js +27 -5
  18. package/node_modules/@mytools/core/package.json +2 -0
  19. package/node_modules/@mytools/core/src/application.js +45 -21
  20. package/node_modules/@mytools/core/src/contracts.js +26 -8
  21. package/node_modules/@mytools/core/src/environments.js +39 -1
  22. package/node_modules/@mytools/core/src/host.js +20 -5
  23. package/node_modules/@mytools/core/src/plugin-installations.js +84 -0
  24. package/node_modules/@mytools/core/src/plugin-tools.js +133 -0
  25. package/node_modules/@mytools/core/src/plugins.js +16 -6
  26. package/node_modules/@mytools/core/src/process.js +16 -7
  27. package/node_modules/@mytools/core/src/schema-path.js +31 -0
  28. package/node_modules/@mytools/core/src/validation.js +22 -9
  29. package/node_modules/@mytools/core/src/version.js +1 -1
  30. package/node_modules/@mytools/core/src/workflows.js +2 -15
  31. package/node_modules/@mytools/pack/dependencies.js +8 -1
  32. package/node_modules/@mytools/web/public/THIRD_PARTY_NOTICES.txt +1168 -1168
  33. package/node_modules/{tar → minipass-flush/node_modules/minipass}/node_modules/yallist/README.md +7 -8
  34. package/node_modules/minipass-flush/node_modules/minipass/node_modules/yallist/package.json +29 -0
  35. package/node_modules/yallist/README.md +8 -7
  36. package/node_modules/yallist/package.json +51 -12
  37. package/package.json +15 -15
  38. package/node_modules/tar/node_modules/yallist/package.json +0 -68
  39. /package/node_modules/{yallist → minipass-flush/node_modules/minipass/node_modules/yallist}/LICENSE +0 -0
  40. /package/node_modules/{yallist → minipass-flush/node_modules/minipass/node_modules/yallist}/iterator.js +0 -0
  41. /package/node_modules/{yallist → minipass-flush/node_modules/minipass/node_modules/yallist}/yallist.js +0 -0
  42. /package/node_modules/{tar/node_modules/yallist → yallist}/LICENSE.md +0 -0
  43. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/commonjs/index.d.ts +0 -0
  44. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/commonjs/index.d.ts.map +0 -0
  45. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/commonjs/index.js +0 -0
  46. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/commonjs/index.js.map +0 -0
  47. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/commonjs/package.json +0 -0
  48. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/esm/index.d.ts +0 -0
  49. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/esm/index.d.ts.map +0 -0
  50. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/esm/index.js +0 -0
  51. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/esm/index.js.map +0 -0
  52. /package/node_modules/{tar/node_modules/yallist → yallist}/dist/esm/package.json +0 -0
@@ -8,11 +8,14 @@ one is mine.
8
8
  For when an array would be too big, and a Map can't be iterated in
9
9
  reverse order.
10
10
 
11
+
12
+ [![Build Status](https://travis-ci.org/isaacs/yallist.svg?branch=master)](https://travis-ci.org/isaacs/yallist) [![Coverage Status](https://coveralls.io/repos/isaacs/yallist/badge.svg?service=github)](https://coveralls.io/github/isaacs/yallist)
13
+
11
14
  ## basic usage
12
15
 
13
- ```js
14
- import { Yallist } from 'yallist'
15
- var myList = new Yallist([1, 2, 3])
16
+ ```javascript
17
+ var yallist = require('yallist')
18
+ var myList = yallist.create([1, 2, 3])
16
19
  myList.push('foo')
17
20
  myList.unshift('bar')
18
21
  // of course pop() and shift() are there, too
@@ -138,10 +141,6 @@ Just like Array.slice, but returns a new Yallist.
138
141
 
139
142
  Just like yallist.slice, but the result is returned in reverse.
140
143
 
141
- #### yallist.splice(start, deleteCount, ...)
142
-
143
- Like Array.splice.
144
-
145
144
  #### yallist.toArray()
146
145
 
147
146
  Create an array representation of the list.
@@ -182,7 +181,7 @@ doesn't belong to it.
182
181
 
183
182
  The class that holds the data and is actually the list.
184
183
 
185
- Call with `const n = new Node(value, previousNode, nextNode)`
184
+ Call with `var n = new Node(value, previousNode, nextNode)`
186
185
 
187
186
  Note that if you do direct operations on Nodes themselves, it's very
188
187
  easy to get into weird states where the list is broken. Be careful :)
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "yallist",
3
+ "version": "4.0.0",
4
+ "description": "Yet Another Linked List",
5
+ "main": "yallist.js",
6
+ "directories": {
7
+ "test": "test"
8
+ },
9
+ "files": [
10
+ "yallist.js",
11
+ "iterator.js"
12
+ ],
13
+ "dependencies": {},
14
+ "devDependencies": {
15
+ "tap": "^12.1.0"
16
+ },
17
+ "scripts": {
18
+ "test": "tap test/*.js --100",
19
+ "preversion": "npm test",
20
+ "postversion": "npm publish",
21
+ "postpublish": "git push origin --all; git push origin --tags"
22
+ },
23
+ "repository": {
24
+ "type": "git",
25
+ "url": "git+https://github.com/isaacs/yallist.git"
26
+ },
27
+ "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
28
+ "license": "ISC"
29
+ }
@@ -8,14 +8,11 @@ one is mine.
8
8
  For when an array would be too big, and a Map can't be iterated in
9
9
  reverse order.
10
10
 
11
-
12
- [![Build Status](https://travis-ci.org/isaacs/yallist.svg?branch=master)](https://travis-ci.org/isaacs/yallist) [![Coverage Status](https://coveralls.io/repos/isaacs/yallist/badge.svg?service=github)](https://coveralls.io/github/isaacs/yallist)
13
-
14
11
  ## basic usage
15
12
 
16
- ```javascript
17
- var yallist = require('yallist')
18
- var myList = yallist.create([1, 2, 3])
13
+ ```js
14
+ import { Yallist } from 'yallist'
15
+ var myList = new Yallist([1, 2, 3])
19
16
  myList.push('foo')
20
17
  myList.unshift('bar')
21
18
  // of course pop() and shift() are there, too
@@ -141,6 +138,10 @@ Just like Array.slice, but returns a new Yallist.
141
138
 
142
139
  Just like yallist.slice, but the result is returned in reverse.
143
140
 
141
+ #### yallist.splice(start, deleteCount, ...)
142
+
143
+ Like Array.splice.
144
+
144
145
  #### yallist.toArray()
145
146
 
146
147
  Create an array representation of the list.
@@ -181,7 +182,7 @@ doesn't belong to it.
181
182
 
182
183
  The class that holds the data and is actually the list.
183
184
 
184
- Call with `var n = new Node(value, previousNode, nextNode)`
185
+ Call with `const n = new Node(value, previousNode, nextNode)`
185
186
 
186
187
  Note that if you do direct operations on Nodes themselves, it's very
187
188
  easy to get into weird states where the list is broken. Be careful :)
@@ -1,29 +1,68 @@
1
1
  {
2
2
  "name": "yallist",
3
- "version": "4.0.0",
3
+ "version": "5.0.0",
4
4
  "description": "Yet Another Linked List",
5
- "main": "yallist.js",
6
- "directories": {
7
- "test": "test"
8
- },
9
5
  "files": [
10
- "yallist.js",
11
- "iterator.js"
6
+ "dist"
12
7
  ],
13
- "dependencies": {},
14
8
  "devDependencies": {
15
- "tap": "^12.1.0"
9
+ "prettier": "^3.2.5",
10
+ "tap": "^18.7.2",
11
+ "tshy": "^1.13.1",
12
+ "typedoc": "^0.25.13"
16
13
  },
17
14
  "scripts": {
18
- "test": "tap test/*.js --100",
19
15
  "preversion": "npm test",
20
16
  "postversion": "npm publish",
21
- "postpublish": "git push origin --all; git push origin --tags"
17
+ "prepublishOnly": "git push origin --follow-tags",
18
+ "prepare": "tshy",
19
+ "pretest": "npm run prepare",
20
+ "presnap": "npm run prepare",
21
+ "test": "tap",
22
+ "snap": "tap",
23
+ "format": "prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache",
24
+ "typedoc": "typedoc"
22
25
  },
23
26
  "repository": {
24
27
  "type": "git",
25
28
  "url": "git+https://github.com/isaacs/yallist.git"
26
29
  },
27
30
  "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
28
- "license": "ISC"
31
+ "license": "BlueOak-1.0.0",
32
+ "tshy": {
33
+ "exports": {
34
+ "./package.json": "./package.json",
35
+ ".": "./src/index.ts"
36
+ }
37
+ },
38
+ "exports": {
39
+ "./package.json": "./package.json",
40
+ ".": {
41
+ "import": {
42
+ "types": "./dist/esm/index.d.ts",
43
+ "default": "./dist/esm/index.js"
44
+ },
45
+ "require": {
46
+ "types": "./dist/commonjs/index.d.ts",
47
+ "default": "./dist/commonjs/index.js"
48
+ }
49
+ }
50
+ },
51
+ "main": "./dist/commonjs/index.js",
52
+ "types": "./dist/commonjs/index.d.ts",
53
+ "type": "module",
54
+ "prettier": {
55
+ "semi": false,
56
+ "printWidth": 70,
57
+ "tabWidth": 2,
58
+ "useTabs": false,
59
+ "singleQuote": true,
60
+ "jsxSingleQuote": false,
61
+ "bracketSameLine": true,
62
+ "arrowParens": "avoid",
63
+ "endOfLine": "lf"
64
+ },
65
+ "engines": {
66
+ "node": ">=18"
67
+ }
29
68
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yanglaofish/fishtools",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Fishtools 插件式工作流工作台",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -79,7 +79,14 @@
79
79
  "which-command": "0.1.0",
80
80
  "yoctocolors": "2.2.0",
81
81
  "semver": "7.7.4",
82
+ "tar": "7.5.22",
83
+ "@isaacs/fs-minipass": "4.0.1",
84
+ "minipass": "7.1.3",
85
+ "chownr": "3.0.0",
86
+ "minizlib": "3.1.0",
87
+ "yallist": "5.0.0",
82
88
  "tree-kill": "1.2.2",
89
+ "validate-npm-package-name": "8.0.0",
83
90
  "which": "7.0.0",
84
91
  "isexe": "4.0.0",
85
92
  "yaml": "2.9.1",
@@ -103,12 +110,10 @@
103
110
  "npm-package-arg": "14.0.0",
104
111
  "hosted-git-info": "10.1.1",
105
112
  "proc-log": "7.0.0",
106
- "validate-npm-package-name": "8.0.0",
107
113
  "glob": "13.0.6",
108
114
  "minimatch": "10.2.6",
109
115
  "brace-expansion": "5.0.12",
110
116
  "balanced-match": "4.0.4",
111
- "minipass": "7.1.3",
112
117
  "path-scurry": "2.0.2",
113
118
  "json-parse-even-better-errors": "6.0.0",
114
119
  "spdx-expression-parse": "4.0.0",
@@ -119,7 +124,6 @@
119
124
  "fs-minipass": "3.0.3",
120
125
  "minipass-collect": "2.0.1",
121
126
  "minipass-flush": "1.0.7",
122
- "yallist": "4.0.0",
123
127
  "minipass-pipeline": "1.2.4",
124
128
  "p-map": "7.0.8",
125
129
  "ssri": "14.0.0",
@@ -132,10 +136,6 @@
132
136
  "graceful-fs": "4.2.11",
133
137
  "nopt": "10.0.1",
134
138
  "abbrev": "5.0.0",
135
- "tar": "7.5.22",
136
- "@isaacs/fs-minipass": "4.0.1",
137
- "chownr": "3.0.0",
138
- "minizlib": "3.1.0",
139
139
  "tinyglobby": "0.2.17",
140
140
  "fdir": "6.5.0",
141
141
  "picomatch": "4.0.7",
@@ -341,7 +341,14 @@
341
341
  "which-command",
342
342
  "yoctocolors",
343
343
  "semver",
344
+ "tar",
345
+ "@isaacs/fs-minipass",
346
+ "minipass",
347
+ "chownr",
348
+ "minizlib",
349
+ "yallist",
344
350
  "tree-kill",
351
+ "validate-npm-package-name",
345
352
  "which",
346
353
  "isexe",
347
354
  "yaml",
@@ -365,12 +372,10 @@
365
372
  "npm-package-arg",
366
373
  "hosted-git-info",
367
374
  "proc-log",
368
- "validate-npm-package-name",
369
375
  "glob",
370
376
  "minimatch",
371
377
  "brace-expansion",
372
378
  "balanced-match",
373
- "minipass",
374
379
  "path-scurry",
375
380
  "json-parse-even-better-errors",
376
381
  "spdx-expression-parse",
@@ -381,7 +386,6 @@
381
386
  "fs-minipass",
382
387
  "minipass-collect",
383
388
  "minipass-flush",
384
- "yallist",
385
389
  "minipass-pipeline",
386
390
  "p-map",
387
391
  "ssri",
@@ -394,10 +398,6 @@
394
398
  "graceful-fs",
395
399
  "nopt",
396
400
  "abbrev",
397
- "tar",
398
- "@isaacs/fs-minipass",
399
- "chownr",
400
- "minizlib",
401
401
  "tinyglobby",
402
402
  "fdir",
403
403
  "picomatch",
@@ -1,68 +0,0 @@
1
- {
2
- "name": "yallist",
3
- "version": "5.0.0",
4
- "description": "Yet Another Linked List",
5
- "files": [
6
- "dist"
7
- ],
8
- "devDependencies": {
9
- "prettier": "^3.2.5",
10
- "tap": "^18.7.2",
11
- "tshy": "^1.13.1",
12
- "typedoc": "^0.25.13"
13
- },
14
- "scripts": {
15
- "preversion": "npm test",
16
- "postversion": "npm publish",
17
- "prepublishOnly": "git push origin --follow-tags",
18
- "prepare": "tshy",
19
- "pretest": "npm run prepare",
20
- "presnap": "npm run prepare",
21
- "test": "tap",
22
- "snap": "tap",
23
- "format": "prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache",
24
- "typedoc": "typedoc"
25
- },
26
- "repository": {
27
- "type": "git",
28
- "url": "git+https://github.com/isaacs/yallist.git"
29
- },
30
- "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
31
- "license": "BlueOak-1.0.0",
32
- "tshy": {
33
- "exports": {
34
- "./package.json": "./package.json",
35
- ".": "./src/index.ts"
36
- }
37
- },
38
- "exports": {
39
- "./package.json": "./package.json",
40
- ".": {
41
- "import": {
42
- "types": "./dist/esm/index.d.ts",
43
- "default": "./dist/esm/index.js"
44
- },
45
- "require": {
46
- "types": "./dist/commonjs/index.d.ts",
47
- "default": "./dist/commonjs/index.js"
48
- }
49
- }
50
- },
51
- "main": "./dist/commonjs/index.js",
52
- "types": "./dist/commonjs/index.d.ts",
53
- "type": "module",
54
- "prettier": {
55
- "semi": false,
56
- "printWidth": 70,
57
- "tabWidth": 2,
58
- "useTabs": false,
59
- "singleQuote": true,
60
- "jsxSingleQuote": false,
61
- "bracketSameLine": true,
62
- "arrowParens": "avoid",
63
- "endOfLine": "lf"
64
- },
65
- "engines": {
66
- "node": ">=18"
67
- }
68
- }