@shortlink-org/portolan 0.1.0 → 0.2.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.
- package/README.md +69 -205
- package/cli/init.mjs +285 -0
- package/cli/init.test.mjs +158 -0
- package/cli/portolan.mjs +37 -73
- package/index.html +19 -0
- package/package.json +5 -10
- package/plugins/README.md +66 -27
- package/plugins/portolan-go.wasm +0 -0
- package/portolan.json +52 -73
- package/public/landing/cats/bug-hunter.webp +0 -0
- package/public/landing/cats/compass-nap.webp +0 -0
- package/public/landing/cats/diagrammer.webp +0 -0
- package/public/landing/cats/docs-reader.webp +0 -0
- package/public/landing/cats/laptop.webp +0 -0
- package/public/landing/cats/map-inspector.webp +0 -0
- package/public/landing/cats/server-break.webp +0 -0
- package/public/landing/cats/star-mapper.webp +0 -0
- package/public/landing/cats/system-builder.webp +0 -0
- package/public/landing/cats/thread-tangle.webp +0 -0
- package/public/og.png +0 -0
- package/public/readme-header.webp +0 -0
- package/schema/portolan.schema.json +180 -0
- package/scripts/builtin-plugins.mjs +14 -0
- package/scripts/delivery-presets.mjs +353 -0
- package/scripts/gen.mjs +37 -4
- package/scripts/history.mjs +126 -0
- package/scripts/history.test.mjs +110 -0
- package/scripts/host-plugins/fetch-bsr.mjs +351 -0
- package/{plugins/fetch-bsr/options.schema.json → scripts/host-plugins/fetch-bsr.options.json} +4 -0
- package/scripts/host-plugins/fetch-bsr.test.mjs +212 -0
- package/scripts/host-plugins/fetch-csr.mjs +386 -0
- package/scripts/host-plugins/fetch-csr.test.mjs +178 -0
- package/scripts/host-plugins/fetch-git.mjs +379 -0
- package/scripts/host-plugins/fetch-git.test.mjs +210 -0
- package/scripts/local-api.mjs +22 -4
- package/scripts/local-api.test.mjs +84 -2
- package/scripts/manifest.mjs +3 -2
- package/scripts/package-smoke.mjs +6 -2
- package/scripts/plugin-host.mjs +77 -18
- package/scripts/plugin-host.test.mjs +50 -1
- package/scripts/plugin-wasm-worker.mjs +6 -3
- package/scripts/run-builtin.mjs +6 -26
- package/scripts/schema.mjs +6 -1
- package/src/app/App.tsx +24 -429
- package/src/app/Breadcrumbs.test.ts +7 -0
- package/src/app/Breadcrumbs.tsx +15 -2
- package/src/app/CatalogApp.tsx +436 -0
- package/src/app/Sidebar.tsx +0 -1
- package/src/chat/ChatPanel.tsx +98 -41
- package/src/chat/Composer.tsx +4 -2
- package/src/chat/Conversation.tsx +79 -15
- package/src/chat/Header.tsx +43 -9
- package/src/chat/Starter.tsx +64 -3
- package/src/chat/Steps.tsx +1 -1
- package/src/chat/flags.test.ts +51 -14
- package/src/chat/flags.ts +8 -2
- package/src/chat/page-context.test.ts +51 -0
- package/src/chat/page-context.ts +128 -0
- package/src/chat/prompt.test.ts +49 -1
- package/src/chat/prompt.ts +42 -1
- package/src/chat/tools.ts +7 -2
- package/src/chat/transport.ts +16 -4
- package/src/components/ProblemRow.tsx +182 -0
- package/src/data.ts +20 -5
- package/src/er/ErCanvas.tsx +1 -1
- package/src/graph/DependencyGraph.tsx +10 -1
- package/src/graph/FocusedEventGraph.tsx +1 -1
- package/src/graph/GraphToolbar.tsx +2 -4
- package/src/index.css +220 -2
- package/src/landing/DraggableReveal.tsx +168 -0
- package/src/landing/EstateGraph.tsx +28 -0
- package/src/landing/FlowPlayback.tsx +282 -0
- package/src/landing/HeroMap.tsx +128 -0
- package/src/landing/LandingPage.tsx +757 -0
- package/src/landing/ProductFrame.tsx +68 -0
- package/src/landing/ProductTour.tsx +371 -0
- package/src/landing/catalog.ts +25 -0
- package/src/landing/motion.tsx +52 -0
- package/src/lib/all-problems.ts +28 -0
- package/src/lib/local-api.ts +35 -1
- package/src/lib/setup-info.test.ts +8 -0
- package/src/lib/setup-info.ts +3 -2
- package/src/lib/source-code.ts +2 -1
- package/src/likec4/C4View.tsx +5 -0
- package/src/likec4/InteractiveView.tsx +5 -1
- package/src/map/ContextMapGraph.tsx +47 -20
- package/src/pages/ContextMap.tsx +5 -1
- package/src/pages/FlowDetail.tsx +24 -7
- package/src/pages/Overview.tsx +68 -12
- package/src/pages/Problems.tsx +6 -193
- package/src/pages/Settings.tsx +133 -108
- package/src/pages/settings/DeliverySettings.tsx +229 -0
- package/src/pages/settings/PreferencesSettings.tsx +101 -0
- package/src/routes.test.ts +20 -0
- package/src/routes.ts +13 -1
- package/vite.config.ts +12 -8
- package/catalog/enum_test.go +0 -46
- package/catalog/model.go +0 -932
- package/catalog/roundtrip_test.go +0 -185
- package/catalog/via_test.go +0 -38
- package/go.mod +0 -14
- package/go.sum +0 -14
- package/internal/commands/cargo.go +0 -154
- package/internal/commands/commands.go +0 -143
- package/internal/commands/commands_test.go +0 -323
- package/internal/commands/gradle.go +0 -77
- package/internal/commands/justfile.go +0 -82
- package/internal/commands/makefile.go +0 -106
- package/internal/commands/maven.go +0 -93
- package/internal/commands/packagejson.go +0 -159
- package/internal/commands/pyproject.go +0 -169
- package/internal/commands/taskfile.go +0 -101
- package/internal/commands/testdata/estate/.cargo/config.toml +0 -7
- package/internal/commands/testdata/estate/Makefile +0 -33
- package/internal/commands/testdata/estate/Taskfile.yml +0 -21
- package/internal/commands/testdata/estate/build.gradle.kts +0 -21
- package/internal/commands/testdata/estate/justfile +0 -20
- package/internal/commands/testdata/estate/package.json +0 -13
- package/internal/commands/testdata/estate/pom.xml +0 -29
- package/internal/commands/testdata/estate/pyproject.toml +0 -27
- package/internal/commands/testdata/estate/xtask/src/main.rs +0 -27
- package/internal/commands/testdata/golden/commands.json +0 -305
- package/internal/gohttp/analyze.go +0 -2500
- package/internal/gohttp/endpoints.go +0 -1067
- package/internal/gohttp/roots.go +0 -320
- package/internal/gohttp/typed.go +0 -143
- package/internal/goscan/constants.go +0 -85
- package/internal/goscan/goscan_test.go +0 -227
- package/internal/goscan/names.go +0 -52
- package/internal/goscan/parse_test.go +0 -11
- package/internal/goscan/source.go +0 -36
- package/internal/goscan/tree.go +0 -155
- package/internal/goscan/types.go +0 -99
- package/internal/wsdl/ids.go +0 -127
- package/internal/wsdl/ids_test.go +0 -21
- package/internal/wsdl/model.go +0 -62
- package/internal/wsdl/parse.go +0 -920
- package/internal/wsdl/parse_test.go +0 -133
- package/plugin/describe.go +0 -107
- package/plugin/describe_test.go +0 -114
- package/plugin/protocol.go +0 -117
- package/plugin/schematest/schematest.go +0 -126
- package/plugins/extract-adr/describe.go +0 -19
- package/plugins/extract-adr/describe_test.go +0 -11
- package/plugins/extract-adr/extract.go +0 -153
- package/plugins/extract-adr/extract_test.go +0 -350
- package/plugins/extract-adr/history.go +0 -99
- package/plugins/extract-adr/main.go +0 -65
- package/plugins/extract-adr/parse.go +0 -642
- package/plugins/extract-adr/parse_test.go +0 -405
- package/plugins/extract-asyncapi/describe.go +0 -19
- package/plugins/extract-asyncapi/describe_test.go +0 -11
- package/plugins/extract-asyncapi/extract.go +0 -315
- package/plugins/extract-asyncapi/extract_test.go +0 -197
- package/plugins/extract-asyncapi/main.go +0 -48
- package/plugins/extract-asyncapi/spec.go +0 -151
- package/plugins/extract-commands/describe.go +0 -19
- package/plugins/extract-commands/describe_test.go +0 -11
- package/plugins/extract-commands/extract.go +0 -79
- package/plugins/extract-commands/extract_test.go +0 -92
- package/plugins/extract-commands/main.go +0 -55
- package/plugins/extract-csr/avro.go +0 -258
- package/plugins/extract-csr/describe.go +0 -19
- package/plugins/extract-csr/describe_test.go +0 -11
- package/plugins/extract-csr/extract.go +0 -338
- package/plugins/extract-csr/extract_test.go +0 -374
- package/plugins/extract-csr/jsonschema.go +0 -343
- package/plugins/extract-csr/lock.go +0 -25
- package/plugins/extract-csr/main.go +0 -84
- package/plugins/extract-csr/subject.go +0 -102
- package/plugins/extract-flows/describe.go +0 -19
- package/plugins/extract-flows/describe_test.go +0 -11
- package/plugins/extract-flows/extract.go +0 -91
- package/plugins/extract-flows/main.go +0 -45
- package/plugins/extract-flows/parse.go +0 -593
- package/plugins/extract-flows/parse_test.go +0 -204
- package/plugins/extract-glossary/describe.go +0 -19
- package/plugins/extract-glossary/describe_test.go +0 -11
- package/plugins/extract-glossary/extract.go +0 -115
- package/plugins/extract-glossary/extract_test.go +0 -220
- package/plugins/extract-glossary/main.go +0 -59
- package/plugins/extract-glossary/parse.go +0 -214
- package/plugins/extract-glossary/parse_test.go +0 -203
- package/plugins/extract-go/aggregate.go +0 -214
- package/plugins/extract-go/client.go +0 -409
- package/plugins/extract-go/client_test.go +0 -266
- package/plugins/extract-go/describe.go +0 -19
- package/plugins/extract-go/describe_test.go +0 -11
- package/plugins/extract-go/enum.go +0 -195
- package/plugins/extract-go/enum_test.go +0 -82
- package/plugins/extract-go/event.go +0 -99
- package/plugins/extract-go/extract.go +0 -191
- package/plugins/extract-go/extract_test.go +0 -261
- package/plugins/extract-go/flow.go +0 -1441
- package/plugins/extract-go/flow_test.go +0 -609
- package/plugins/extract-go/httpclient.go +0 -174
- package/plugins/extract-go/httpclient_test.go +0 -296
- package/plugins/extract-go/ids.go +0 -92
- package/plugins/extract-go/layout.go +0 -225
- package/plugins/extract-go/layout_test.go +0 -125
- package/plugins/extract-go/lifecycle.go +0 -324
- package/plugins/extract-go/lifecycle_test.go +0 -108
- package/plugins/extract-go/main.go +0 -79
- package/plugins/extract-go/operation.go +0 -157
- package/plugins/extract-go/source.go +0 -316
- package/plugins/extract-go/transport.go +0 -321
- package/plugins/extract-go/transport_test.go +0 -145
- package/plugins/extract-go/wiring.go +0 -434
- package/plugins/extract-go-nats/describe.go +0 -19
- package/plugins/extract-go-nats/describe_test.go +0 -11
- package/plugins/extract-go-nats/extract.go +0 -177
- package/plugins/extract-go-nats/extract_test.go +0 -389
- package/plugins/extract-go-nats/index.go +0 -379
- package/plugins/extract-go-nats/main.go +0 -42
- package/plugins/extract-go-nats/resolve.go +0 -161
- package/plugins/extract-go-nats/sites.go +0 -224
- package/plugins/extract-graphql/describe.go +0 -19
- package/plugins/extract-graphql/describe_test.go +0 -11
- package/plugins/extract-graphql/extract.go +0 -433
- package/plugins/extract-graphql/extract_test.go +0 -256
- package/plugins/extract-graphql/ids.go +0 -49
- package/plugins/extract-graphql/lex.go +0 -237
- package/plugins/extract-graphql/main.go +0 -51
- package/plugins/extract-graphql/parse.go +0 -621
- package/plugins/extract-graphql/parse_test.go +0 -122
- package/plugins/extract-http-clients/describe.go +0 -19
- package/plugins/extract-http-clients/describe_test.go +0 -11
- package/plugins/extract-http-clients/extract.go +0 -705
- package/plugins/extract-http-clients/extract_test.go +0 -1263
- package/plugins/extract-http-clients/main.go +0 -42
- package/plugins/extract-openapi/describe.go +0 -19
- package/plugins/extract-openapi/describe_test.go +0 -11
- package/plugins/extract-openapi/discover.go +0 -243
- package/plugins/extract-openapi/extract.go +0 -526
- package/plugins/extract-openapi/extract_test.go +0 -545
- package/plugins/extract-openapi/main.go +0 -75
- package/plugins/extract-openapi/spec.go +0 -350
- package/plugins/extract-project/describe.go +0 -19
- package/plugins/extract-project/describe_test.go +0 -11
- package/plugins/extract-project/extract.go +0 -221
- package/plugins/extract-project/extract_test.go +0 -109
- package/plugins/extract-project/main.go +0 -41
- package/plugins/extract-proto/ast.go +0 -125
- package/plugins/extract-proto/consumes.go +0 -77
- package/plugins/extract-proto/describe.go +0 -19
- package/plugins/extract-proto/extract.go +0 -293
- package/plugins/extract-proto/extract_test.go +0 -459
- package/plugins/extract-proto/ids.go +0 -89
- package/plugins/extract-proto/ids_test.go +0 -57
- package/plugins/extract-proto/lex.go +0 -285
- package/plugins/extract-proto/main.go +0 -100
- package/plugins/extract-proto/module.go +0 -120
- package/plugins/extract-proto/parse.go +0 -720
- package/plugins/extract-proto/parse_test.go +0 -307
- package/plugins/extract-proto/provides.go +0 -236
- package/plugins/extract-proto/resolve.go +0 -222
- package/plugins/extract-proto/resolve_test.go +0 -119
- package/plugins/extract-redis/describe.go +0 -19
- package/plugins/extract-redis/describe_test.go +0 -11
- package/plugins/extract-redis/extract.go +0 -183
- package/plugins/extract-redis/extract_test.go +0 -168
- package/plugins/extract-redis/keyspaces.go +0 -469
- package/plugins/extract-redis/main.go +0 -44
- package/plugins/extract-river/describe.go +0 -19
- package/plugins/extract-river/describe_test.go +0 -11
- package/plugins/extract-river/extract.go +0 -507
- package/plugins/extract-river/extract_test.go +0 -132
- package/plugins/extract-river/main.go +0 -42
- package/plugins/extract-sql/ddl.go +0 -893
- package/plugins/extract-sql/ddl_test.go +0 -401
- package/plugins/extract-sql/describe.go +0 -19
- package/plugins/extract-sql/describe_test.go +0 -11
- package/plugins/extract-sql/layout.go +0 -221
- package/plugins/extract-sql/layout_test.go +0 -55
- package/plugins/extract-sql/lineage.go +0 -107
- package/plugins/extract-sql/main.go +0 -141
- package/plugins/extract-sql/maps.go +0 -564
- package/plugins/extract-sql/maps_java.go +0 -117
- package/plugins/extract-sql/maps_rust.go +0 -333
- package/plugins/extract-sql/maps_rust_test.go +0 -70
- package/plugins/extract-sql/maps_test.go +0 -204
- package/plugins/extract-sql/maps_ts.go +0 -398
- package/plugins/extract-sql/maps_ts_test.go +0 -136
- package/plugins/extract-sql/projection.go +0 -70
- package/plugins/extract-sql/projection_test.go +0 -50
- package/plugins/extract-sql/store.go +0 -420
- package/plugins/extract-sql/store_test.go +0 -233
- package/plugins/extract-sql/view.go +0 -295
- package/plugins/extract-watermill/describe.go +0 -19
- package/plugins/extract-watermill/describe_test.go +0 -11
- package/plugins/extract-watermill/extract.go +0 -1228
- package/plugins/extract-watermill/extract_test.go +0 -234
- package/plugins/extract-watermill/main.go +0 -41
- package/plugins/extract-wsdl/describe.go +0 -19
- package/plugins/extract-wsdl/describe_test.go +0 -11
- package/plugins/extract-wsdl/extract.go +0 -148
- package/plugins/extract-wsdl/extract_test.go +0 -45
- package/plugins/extract-wsdl/main.go +0 -53
- package/plugins/fetch-bsr/auth.go +0 -114
- package/plugins/fetch-bsr/bsr.go +0 -240
- package/plugins/fetch-bsr/cache.go +0 -66
- package/plugins/fetch-bsr/describe.go +0 -19
- package/plugins/fetch-bsr/fetch.go +0 -192
- package/plugins/fetch-bsr/fetch_test.go +0 -465
- package/plugins/fetch-bsr/lock.go +0 -71
- package/plugins/fetch-bsr/main.go +0 -117
- package/plugins/fetch-csr/auth.go +0 -95
- package/plugins/fetch-csr/cache.go +0 -69
- package/plugins/fetch-csr/describe.go +0 -19
- package/plugins/fetch-csr/describe_test.go +0 -11
- package/plugins/fetch-csr/fetch.go +0 -254
- package/plugins/fetch-csr/fetch_test.go +0 -494
- package/plugins/fetch-csr/lock.go +0 -95
- package/plugins/fetch-csr/main.go +0 -122
- package/plugins/fetch-csr/registry.go +0 -209
- package/plugins/fetch-git/cache.go +0 -65
- package/plugins/fetch-git/describe.go +0 -19
- package/plugins/fetch-git/describe_test.go +0 -11
- package/plugins/fetch-git/fetch.go +0 -181
- package/plugins/fetch-git/fetch_test.go +0 -332
- package/plugins/fetch-git/git.go +0 -169
- package/plugins/fetch-git/lock.go +0 -72
- package/plugins/fetch-git/main.go +0 -127
- package/plugins/fetch-git/offline.go +0 -39
- package/plugins/fetch-git/pin.go +0 -90
- package/plugins/fetch-git/pin_test.go +0 -74
- package/plugins/gen-backstage/describe.go +0 -17
- package/plugins/gen-backstage/main.go +0 -22
- package/plugins/gen-backstage/plugin.go +0 -473
- package/plugins/gen-backstage/plugin_test.go +0 -145
- package/plugins/gen-backstage.wasm +0 -0
- package/plugins/gen-markdown/adr.go +0 -162
- package/plugins/gen-markdown/aggregate.go +0 -362
- package/plugins/gen-markdown/canonical.go +0 -93
- package/plugins/gen-markdown/context.go +0 -90
- package/plugins/gen-markdown/coverage_test.go +0 -89
- package/plugins/gen-markdown/describe.go +0 -19
- package/plugins/gen-markdown/describe_test.go +0 -11
- package/plugins/gen-markdown/external.go +0 -71
- package/plugins/gen-markdown/flow.go +0 -277
- package/plugins/gen-markdown/glossary.go +0 -76
- package/plugins/gen-markdown/glossary_test.go +0 -148
- package/plugins/gen-markdown/llms.go +0 -302
- package/plugins/gen-markdown/main.go +0 -22
- package/plugins/gen-markdown/markdown.go +0 -254
- package/plugins/gen-markdown/markdown_test.go +0 -100
- package/plugins/gen-markdown/module.go +0 -107
- package/plugins/gen-markdown/plugin.go +0 -39
- package/plugins/gen-markdown/quality_test.go +0 -176
- package/plugins/gen-markdown/redis_test.go +0 -38
- package/plugins/gen-markdown/render.go +0 -344
- package/plugins/gen-markdown/render_test.go +0 -186
- package/plugins/gen-markdown/service.go +0 -456
- package/plugins/gen-markdown/source.go +0 -177
- package/plugins/gen-markdown/store.go +0 -201
- package/plugins/gen-markdown.wasm +0 -0
- package/plugins/gen-mermaid/describe.go +0 -17
- package/plugins/gen-mermaid/main.go +0 -22
- package/plugins/gen-mermaid/plugin.go +0 -104
- package/plugins/gen-mermaid/plugin_test.go +0 -33
- package/plugins/gen-mermaid.wasm +0 -0
- package/plugins/openapi/ids.go +0 -261
- package/plugins/openapi/ids_test.go +0 -98
- package/plugins/verify-codeowners/describe.go +0 -19
- package/plugins/verify-codeowners/describe_test.go +0 -11
- package/plugins/verify-codeowners/main.go +0 -75
- package/plugins/verify-codeowners/match.go +0 -85
- package/plugins/verify-codeowners/match_test.go +0 -47
- package/plugins/verify-codeowners/owners.go +0 -164
- package/plugins/verify-codeowners/owners_test.go +0 -225
- package/plugins/verify-codeowners/parse.go +0 -90
- package/plugins/verify-codeowners/parse_test.go +0 -62
- package/plugins/verify-otel/describe.go +0 -19
- package/plugins/verify-otel/describe_test.go +0 -11
- package/plugins/verify-otel/main.go +0 -53
- package/plugins/verify-otel/match.go +0 -336
- package/plugins/verify-otel/otlp.go +0 -200
- package/plugins/verify-otel/verify.go +0 -734
- package/plugins/verify-otel/verify_test.go +0 -460
- /package/{plugins/fetch-csr/options.schema.json → scripts/host-plugins/fetch-csr.options.json} +0 -0
- /package/{plugins/fetch-git/options.schema.json → scripts/host-plugins/fetch-git.options.json} +0 -0
package/portolan.json
CHANGED
|
@@ -95,23 +95,20 @@
|
|
|
95
95
|
"plugins": [
|
|
96
96
|
{
|
|
97
97
|
"name": "project",
|
|
98
|
-
"
|
|
99
|
-
"
|
|
100
|
-
"args": ["run", "./plugins/extract-project"]
|
|
98
|
+
"wasm": {
|
|
99
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
101
100
|
}
|
|
102
101
|
},
|
|
103
102
|
{
|
|
104
103
|
"name": "commands",
|
|
105
|
-
"
|
|
106
|
-
"
|
|
107
|
-
"args": ["run", "./plugins/extract-commands"]
|
|
104
|
+
"wasm": {
|
|
105
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
108
106
|
}
|
|
109
107
|
},
|
|
110
108
|
{
|
|
111
109
|
"name": "go-domain",
|
|
112
|
-
"
|
|
113
|
-
"
|
|
114
|
-
"args": ["run", "./plugins/extract-go"]
|
|
110
|
+
"wasm": {
|
|
111
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
115
112
|
}
|
|
116
113
|
},
|
|
117
114
|
{
|
|
@@ -158,152 +155,134 @@
|
|
|
158
155
|
},
|
|
159
156
|
{
|
|
160
157
|
"name": "openapi",
|
|
161
|
-
"
|
|
162
|
-
"
|
|
163
|
-
"args": ["run", "./plugins/extract-openapi"]
|
|
158
|
+
"wasm": {
|
|
159
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
164
160
|
}
|
|
165
161
|
},
|
|
166
162
|
{
|
|
167
163
|
"name": "wsdl",
|
|
168
|
-
"
|
|
169
|
-
"
|
|
170
|
-
"args": ["run", "./plugins/extract-wsdl"]
|
|
164
|
+
"wasm": {
|
|
165
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
171
166
|
}
|
|
172
167
|
},
|
|
173
168
|
{
|
|
174
169
|
"name": "http-clients",
|
|
175
|
-
"
|
|
176
|
-
"
|
|
177
|
-
"args": ["run", "./plugins/extract-http-clients"]
|
|
170
|
+
"wasm": {
|
|
171
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
178
172
|
}
|
|
179
173
|
},
|
|
180
174
|
{
|
|
181
175
|
"name": "redis",
|
|
182
|
-
"
|
|
183
|
-
"
|
|
184
|
-
"args": ["run", "./plugins/extract-redis"]
|
|
176
|
+
"wasm": {
|
|
177
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
185
178
|
}
|
|
186
179
|
},
|
|
187
180
|
{
|
|
188
181
|
"name": "river",
|
|
189
|
-
"
|
|
190
|
-
"
|
|
191
|
-
"args": ["run", "./plugins/extract-river"]
|
|
182
|
+
"wasm": {
|
|
183
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
192
184
|
}
|
|
193
185
|
},
|
|
194
186
|
{
|
|
195
187
|
"name": "watermill",
|
|
196
|
-
"
|
|
197
|
-
"
|
|
198
|
-
"args": ["run", "./plugins/extract-watermill"]
|
|
188
|
+
"wasm": {
|
|
189
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
199
190
|
}
|
|
200
191
|
},
|
|
201
192
|
{
|
|
202
193
|
"name": "go-nats",
|
|
203
|
-
"
|
|
204
|
-
"
|
|
205
|
-
"args": ["run", "./plugins/extract-go-nats"]
|
|
194
|
+
"wasm": {
|
|
195
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
206
196
|
}
|
|
207
197
|
},
|
|
208
198
|
{
|
|
209
199
|
"name": "asyncapi",
|
|
210
|
-
"
|
|
211
|
-
"
|
|
212
|
-
"args": ["run", "./plugins/extract-asyncapi"]
|
|
200
|
+
"wasm": {
|
|
201
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
213
202
|
}
|
|
214
203
|
},
|
|
215
204
|
{
|
|
216
205
|
"name": "graphql",
|
|
217
|
-
"
|
|
218
|
-
"
|
|
219
|
-
"args": ["run", "./plugins/extract-graphql"]
|
|
206
|
+
"wasm": {
|
|
207
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
220
208
|
}
|
|
221
209
|
},
|
|
222
210
|
{
|
|
223
211
|
"name": "sql",
|
|
224
|
-
"
|
|
225
|
-
"
|
|
226
|
-
"args": ["run", "./plugins/extract-sql"]
|
|
212
|
+
"wasm": {
|
|
213
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
227
214
|
}
|
|
228
215
|
},
|
|
229
216
|
{
|
|
230
217
|
"name": "markdown",
|
|
231
218
|
"wasm": {
|
|
232
|
-
"url": "file://plugins/
|
|
219
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
233
220
|
}
|
|
234
221
|
},
|
|
235
222
|
{
|
|
236
223
|
"name": "mermaid",
|
|
237
224
|
"wasm": {
|
|
238
|
-
"url": "file://plugins/
|
|
225
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
239
226
|
}
|
|
240
227
|
},
|
|
241
228
|
{
|
|
242
229
|
"name": "backstage",
|
|
243
230
|
"wasm": {
|
|
244
|
-
"url": "file://plugins/
|
|
231
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
245
232
|
}
|
|
246
233
|
},
|
|
247
234
|
{
|
|
248
235
|
"name": "otel",
|
|
249
|
-
"
|
|
250
|
-
"
|
|
251
|
-
"args": ["run", "./plugins/verify-otel"]
|
|
236
|
+
"wasm": {
|
|
237
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
252
238
|
}
|
|
253
239
|
},
|
|
254
240
|
{
|
|
255
241
|
"name": "codeowners",
|
|
256
|
-
"
|
|
257
|
-
"
|
|
258
|
-
"args": ["run", "./plugins/verify-codeowners"]
|
|
242
|
+
"wasm": {
|
|
243
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
259
244
|
}
|
|
260
245
|
},
|
|
261
246
|
{
|
|
262
247
|
"name": "adr",
|
|
263
|
-
"
|
|
264
|
-
"
|
|
265
|
-
"args": [
|
|
266
|
-
"run",
|
|
267
|
-
"./plugins/extract-adr"
|
|
268
|
-
]
|
|
248
|
+
"wasm": {
|
|
249
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
269
250
|
}
|
|
270
251
|
},
|
|
271
252
|
{
|
|
272
253
|
"name": "glossary",
|
|
273
|
-
"
|
|
274
|
-
"
|
|
275
|
-
"args": [
|
|
276
|
-
"run",
|
|
277
|
-
"./plugins/extract-glossary"
|
|
278
|
-
]
|
|
254
|
+
"wasm": {
|
|
255
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
279
256
|
}
|
|
280
257
|
},
|
|
281
258
|
{
|
|
282
259
|
"name": "flows",
|
|
283
|
-
"
|
|
284
|
-
"
|
|
285
|
-
"args": ["run", "./plugins/extract-flows"]
|
|
260
|
+
"wasm": {
|
|
261
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
286
262
|
}
|
|
287
263
|
},
|
|
288
264
|
{
|
|
289
265
|
"name": "bsr",
|
|
290
|
-
"
|
|
291
|
-
"command": "go",
|
|
292
|
-
"args": ["run", "./plugins/fetch-bsr"]
|
|
293
|
-
}
|
|
266
|
+
"host": "fetch-bsr"
|
|
294
267
|
},
|
|
295
268
|
{
|
|
296
269
|
"name": "git",
|
|
297
|
-
"
|
|
298
|
-
|
|
299
|
-
|
|
270
|
+
"host": "fetch-git"
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"name": "csr",
|
|
274
|
+
"host": "fetch-csr"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"name": "csr-schemas",
|
|
278
|
+
"wasm": {
|
|
279
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
300
280
|
}
|
|
301
281
|
},
|
|
302
282
|
{
|
|
303
283
|
"name": "proto",
|
|
304
|
-
"
|
|
305
|
-
"
|
|
306
|
-
"args": ["run", "./plugins/extract-proto"]
|
|
284
|
+
"wasm": {
|
|
285
|
+
"url": "file://plugins/portolan-go.wasm"
|
|
307
286
|
}
|
|
308
287
|
}
|
|
309
288
|
],
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/public/og.png
ADDED
|
Binary file
|
|
Binary file
|
|
@@ -88,6 +88,8 @@
|
|
|
88
88
|
"flows",
|
|
89
89
|
"bsr",
|
|
90
90
|
"git",
|
|
91
|
+
"csr",
|
|
92
|
+
"csr-schemas",
|
|
91
93
|
"proto"
|
|
92
94
|
],
|
|
93
95
|
"description": "A plugin declared above, one that belongs in this phase."
|
|
@@ -562,6 +564,44 @@
|
|
|
562
564
|
}
|
|
563
565
|
}
|
|
564
566
|
},
|
|
567
|
+
{
|
|
568
|
+
"if": {
|
|
569
|
+
"required": [
|
|
570
|
+
"plugin"
|
|
571
|
+
],
|
|
572
|
+
"properties": {
|
|
573
|
+
"plugin": {
|
|
574
|
+
"const": "csr"
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
},
|
|
578
|
+
"then": {
|
|
579
|
+
"properties": {
|
|
580
|
+
"options": {
|
|
581
|
+
"$ref": "#/$defs/options.csr"
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
},
|
|
586
|
+
{
|
|
587
|
+
"if": {
|
|
588
|
+
"required": [
|
|
589
|
+
"plugin"
|
|
590
|
+
],
|
|
591
|
+
"properties": {
|
|
592
|
+
"plugin": {
|
|
593
|
+
"const": "csr-schemas"
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
},
|
|
597
|
+
"then": {
|
|
598
|
+
"properties": {
|
|
599
|
+
"options": {
|
|
600
|
+
"$ref": "#/$defs/options.csr-schemas"
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
},
|
|
565
605
|
{
|
|
566
606
|
"if": {
|
|
567
607
|
"required": [
|
|
@@ -895,6 +935,11 @@
|
|
|
895
935
|
"required": [
|
|
896
936
|
"process"
|
|
897
937
|
]
|
|
938
|
+
},
|
|
939
|
+
{
|
|
940
|
+
"required": [
|
|
941
|
+
"host"
|
|
942
|
+
]
|
|
898
943
|
}
|
|
899
944
|
],
|
|
900
945
|
"properties": {
|
|
@@ -902,6 +947,14 @@
|
|
|
902
947
|
"type": "string",
|
|
903
948
|
"description": "What the steps below call this plugin. It need not be the plugin's own name."
|
|
904
949
|
},
|
|
950
|
+
"host": {
|
|
951
|
+
"enum": [
|
|
952
|
+
"fetch-git",
|
|
953
|
+
"fetch-bsr",
|
|
954
|
+
"fetch-csr"
|
|
955
|
+
],
|
|
956
|
+
"description": "A plugin the host runs inside its own process, because it needs a socket or a git binary (portolan.0008). Only the ones shipped with Portolan can be named."
|
|
957
|
+
},
|
|
905
958
|
"wasm": {
|
|
906
959
|
"type": "object",
|
|
907
960
|
"additionalProperties": false,
|
|
@@ -2407,6 +2460,10 @@
|
|
|
2407
2460
|
}
|
|
2408
2461
|
}
|
|
2409
2462
|
},
|
|
2463
|
+
"registry": {
|
|
2464
|
+
"type": "string",
|
|
2465
|
+
"description": "Overrides the registry in every module name, for a self-hosted BSR: a host, or a URL when it is not https."
|
|
2466
|
+
},
|
|
2410
2467
|
"cache": {
|
|
2411
2468
|
"type": "string",
|
|
2412
2469
|
"description": "Where the last run's files were written, repo-relative: the same path as the step's out. An offline run replays what is there and checks it against the lock beside it."
|
|
@@ -2469,6 +2526,129 @@
|
|
|
2469
2526
|
}
|
|
2470
2527
|
}
|
|
2471
2528
|
},
|
|
2529
|
+
"options.csr": {
|
|
2530
|
+
"type": "object",
|
|
2531
|
+
"additionalProperties": false,
|
|
2532
|
+
"required": [
|
|
2533
|
+
"registry",
|
|
2534
|
+
"subjects",
|
|
2535
|
+
"cache"
|
|
2536
|
+
],
|
|
2537
|
+
"properties": {
|
|
2538
|
+
"registry": {
|
|
2539
|
+
"type": "string",
|
|
2540
|
+
"description": "Base URL of the schema registry. The credential for it is never written here: it comes from the environment, so this file stays committable.",
|
|
2541
|
+
"examples": [
|
|
2542
|
+
"http://localhost:8081",
|
|
2543
|
+
"https://psrc-00000.eu-central-1.aws.confluent.cloud"
|
|
2544
|
+
]
|
|
2545
|
+
},
|
|
2546
|
+
"subjects": {
|
|
2547
|
+
"type": "array",
|
|
2548
|
+
"minItems": 1,
|
|
2549
|
+
"description": "The subjects to fetch, each pinned to a version. A subject a fetched schema references is fetched too, pinned by the reference itself, and needs no entry here.",
|
|
2550
|
+
"items": {
|
|
2551
|
+
"type": "object",
|
|
2552
|
+
"additionalProperties": false,
|
|
2553
|
+
"required": [
|
|
2554
|
+
"subject"
|
|
2555
|
+
],
|
|
2556
|
+
"properties": {
|
|
2557
|
+
"subject": {
|
|
2558
|
+
"type": "string",
|
|
2559
|
+
"description": "The registry's own name for the registration: \"<topic>-value\" under TopicNameStrategy, the record's full name under RecordNameStrategy.",
|
|
2560
|
+
"examples": [
|
|
2561
|
+
"shop.oms.order-value",
|
|
2562
|
+
"shop.oms.OrderPlaced"
|
|
2563
|
+
]
|
|
2564
|
+
},
|
|
2565
|
+
"version": {
|
|
2566
|
+
"type": "integer",
|
|
2567
|
+
"minimum": 1,
|
|
2568
|
+
"description": "The version to fetch. A registered version is immutable, so a pinned fetch is byte-reproducible, which is what lets an offline run replay it from the tree. Left out, `latest` is resolved online and warned about, and refused offline."
|
|
2569
|
+
}
|
|
2570
|
+
}
|
|
2571
|
+
}
|
|
2572
|
+
},
|
|
2573
|
+
"cache": {
|
|
2574
|
+
"type": "string",
|
|
2575
|
+
"description": "Where the last run's files were written, repo-relative: the same path as the step's out. An offline run replays what is there and checks it against the lock beside it.",
|
|
2576
|
+
"examples": [
|
|
2577
|
+
"examples/shop/oms/vendor/schemas"
|
|
2578
|
+
]
|
|
2579
|
+
}
|
|
2580
|
+
}
|
|
2581
|
+
},
|
|
2582
|
+
"options.csr-schemas": {
|
|
2583
|
+
"type": "object",
|
|
2584
|
+
"additionalProperties": false,
|
|
2585
|
+
"properties": {
|
|
2586
|
+
"context": {
|
|
2587
|
+
"type": "string",
|
|
2588
|
+
"description": "Slug of the bounded context that owns the service these schemas belong to. Defaults to the name of the input directory.",
|
|
2589
|
+
"examples": [
|
|
2590
|
+
"shop"
|
|
2591
|
+
]
|
|
2592
|
+
},
|
|
2593
|
+
"service": {
|
|
2594
|
+
"type": "string",
|
|
2595
|
+
"description": "Slug of the service that registers them. Defaults to the name of the input directory.",
|
|
2596
|
+
"examples": [
|
|
2597
|
+
"oms"
|
|
2598
|
+
]
|
|
2599
|
+
},
|
|
2600
|
+
"paths": {
|
|
2601
|
+
"type": "array",
|
|
2602
|
+
"items": {
|
|
2603
|
+
"type": "string"
|
|
2604
|
+
},
|
|
2605
|
+
"description": "Directories fetch-csr vendored into, relative to the input root. Left out, the whole root is walked for locks.",
|
|
2606
|
+
"examples": [
|
|
2607
|
+
[
|
|
2608
|
+
"vendor/schemas"
|
|
2609
|
+
]
|
|
2610
|
+
]
|
|
2611
|
+
},
|
|
2612
|
+
"strategy": {
|
|
2613
|
+
"enum": [
|
|
2614
|
+
"topic",
|
|
2615
|
+
"record",
|
|
2616
|
+
"topic-record"
|
|
2617
|
+
],
|
|
2618
|
+
"default": "topic",
|
|
2619
|
+
"description": "How a subject name relates to a topic and a record - the producer's SubjectNameStrategy. Nothing in the registry's answer says which one was used, so it is told here. `topic` reads \"<topic>-value\" and \"<topic>-key\"; `record` reads the whole subject as the record's full name and yields no topic; `topic-record` reads \"<topic>-<record full name>\"."
|
|
2620
|
+
},
|
|
2621
|
+
"direction": {
|
|
2622
|
+
"enum": [
|
|
2623
|
+
"send",
|
|
2624
|
+
"receive"
|
|
2625
|
+
],
|
|
2626
|
+
"default": "send",
|
|
2627
|
+
"description": "Which way these channels travel, from this service's side. A registry records no producer and no consumer, so this cannot be read and has to be told."
|
|
2628
|
+
},
|
|
2629
|
+
"subjects": {
|
|
2630
|
+
"type": "object",
|
|
2631
|
+
"additionalProperties": {
|
|
2632
|
+
"enum": [
|
|
2633
|
+
"send",
|
|
2634
|
+
"receive"
|
|
2635
|
+
]
|
|
2636
|
+
},
|
|
2637
|
+
"description": "Direction per subject, for a service that both publishes and listens. Overrides `direction`.",
|
|
2638
|
+
"examples": [
|
|
2639
|
+
{
|
|
2640
|
+
"shop.oms.order-value": "send",
|
|
2641
|
+
"payments.ledger.payment-value": "receive"
|
|
2642
|
+
}
|
|
2643
|
+
]
|
|
2644
|
+
},
|
|
2645
|
+
"out": {
|
|
2646
|
+
"type": "string",
|
|
2647
|
+
"description": "Name of the fragment file, inside the step's output directory.",
|
|
2648
|
+
"default": "schemas.json"
|
|
2649
|
+
}
|
|
2650
|
+
}
|
|
2651
|
+
},
|
|
2472
2652
|
"options.proto": {
|
|
2473
2653
|
"type": "object",
|
|
2474
2654
|
"additionalProperties": false,
|
|
@@ -25,6 +25,16 @@ export function builtinPluginNames() {
|
|
|
25
25
|
return new Set(shippedDefinitions().keys());
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
/**
|
|
29
|
+
* The definition as portolan.json declares it - `wasm`, or the `process`
|
|
30
|
+
* with the real command - rather than the adapter `builtinPlugin` runs it
|
|
31
|
+
* through. What `init` and `doctor` read to know which toolchain a plugin
|
|
32
|
+
* asks for.
|
|
33
|
+
*/
|
|
34
|
+
export function builtinDefinition(name) {
|
|
35
|
+
return shippedDefinitions().get(name) ?? null;
|
|
36
|
+
}
|
|
37
|
+
|
|
28
38
|
/** Return a runnable built-in definition, or null when the package has none. */
|
|
29
39
|
export function builtinPlugin(name) {
|
|
30
40
|
const declared = shippedDefinitions().get(name);
|
|
@@ -38,6 +48,10 @@ export function builtinPlugin(name) {
|
|
|
38
48
|
return { ...declared, builtin: true, wasm: { ...declared.wasm, url } };
|
|
39
49
|
}
|
|
40
50
|
|
|
51
|
+
// A plugin the host runs in its own process (portolan.0008): one that
|
|
52
|
+
// needs a socket or a git binary, which the host holds and no module gets.
|
|
53
|
+
if (declared.host) return { ...declared, builtin: true };
|
|
54
|
+
|
|
41
55
|
return {
|
|
42
56
|
name,
|
|
43
57
|
builtin: true,
|