Set controller, host and ctl as optional peers

Configure the controller, host and ctl packages as optional peer
dependencies to prevent them being pulled in and installed by plugins in
environments that don't have them.  This means that a host only install
with a plugin that uses both host and controller will not cause the
controller package to be installed as well.
This commit is contained in:
Hornwitser committed 2026-09-12 16:19:03 +02:00
1 parent 4ac3d2c868
commit d30e06b268
7 files changed
+73

No files matched your search

@@ -27,6 +27,31 @@
//%endif
"@clusterio/lib": "^__clusterio_version__"
},
//%if controller | host | ctl
"peerDependenciesMeta": {
//%endif
//%if controller
"@clusterio/controller": {
"optional": true
//%endif
//%if controller & host | controller & ctl
},
//%endif
//%if host
"@clusterio/host": {
"optional": true
//%endif
//%if host & ctl
},
//%endif
//%if ctl
"@clusterio/ctl": {
"optional": true
//%endif
//%if controller | host | ctl
}
},
//%endif
"devDependencies": {
//%// Typescript and type declarations
//%if typescript
+8
View File
@@ -38,6 +38,14 @@
"@clusterio/host": "workspace:^",
"@clusterio/lib": "workspace:^"
},
"peerDependenciesMeta": {
"@clusterio/ctl": {
"optional": true
},
"@clusterio/host": {
"optional": true
}
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
+8
View File
@@ -38,6 +38,14 @@
"@clusterio/host": "workspace:^",
"@clusterio/lib": "workspace:^"
},
"peerDependenciesMeta": {
"@clusterio/controller": {
"optional": true
},
"@clusterio/host": {
"optional": true
}
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
+8
View File
@@ -38,6 +38,14 @@
"@clusterio/host": "workspace:^",
"@clusterio/lib": "workspace:^"
},
"peerDependenciesMeta": {
"@clusterio/controller": {
"optional": true
},
"@clusterio/host": {
"optional": true
}
},
"dependencies": {
"@sinclair/typebox": "catalog:",
"jsonwebtoken": "catalog:",
+8
View File
@@ -38,6 +38,14 @@
"@clusterio/host": "workspace:^",
"@clusterio/lib": "workspace:^"
},
"peerDependenciesMeta": {
"@clusterio/controller": {
"optional": true
},
"@clusterio/host": {
"optional": true
}
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
+8
View File
@@ -37,6 +37,14 @@
"@clusterio/host": "workspace:^",
"@clusterio/lib": "workspace:^"
},
"peerDependenciesMeta": {
"@clusterio/controller": {
"optional": true
},
"@clusterio/host": {
"optional": true
}
},
"devDependencies": {
"@clusterio/web_ui": "workspace:^",
"@clusterio/host": "workspace:^",
+8
View File
@@ -38,6 +38,14 @@
"@clusterio/host": "workspace:^",
"@clusterio/lib": "workspace:^"
},
"peerDependenciesMeta": {
"@clusterio/controller": {
"optional": true
},
"@clusterio/host": {
"optional": true
}
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},