@containerbase/base 14.34.0 → 14.36.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 CHANGED
@@ -43,12 +43,13 @@ import { SupportedTools, ToolName } from '@containerbase/base/zod';
43
43
 
44
44
  Each entry may carry the following metadata:
45
45
 
46
- | Field | Description |
47
- | ------------ | --------------------------------------------------------------------------------------------------------------- |
48
- | `type` | the package manager installing the tool, one of `gem`, `npm`, `pip` or `dotnet` |
49
- | `parent` | the tool it depends on, eg. `composer` depends on `php`, which requires `php` to be installed before `composer` |
50
- | `deprecated` | the tool should not be used any more |
51
- | `root` | the tool can only be installed as root, so at image build time |
46
+ | Field | Description |
47
+ | ------------ | ----------------------------------------------------------------------------------------------------------------------- |
48
+ | `type` | the package manager installing the tool, one of `gem`, `npm`, `pip` or `dotnet` |
49
+ | `parent` | the tool it depends on, eg. `composer` depends on `php`, which requires `php` to be installed before `composer` |
50
+ | `deprecated` | the tool should not be used any more |
51
+ | `root` | the tool can only be installed as root, so at image build time |
52
+ | `minVersion` | the oldest version containerbase supports for the tool, in the tool's versioning; tools without a known limit have none |
52
53
 
53
54
  Only the names `install-tool` accepts are listed.
54
55
  Packages installed with an arbitrary name via `install-gem`, `install-npm` or `install-pip` are not, as that list is unbounded.
package/data/tools.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "bower": { "type": "npm", "parent": "node", "deprecated": true },
8
8
  "buf": {},
9
9
  "buildx": { "parent": "docker" },
10
- "bun": {},
10
+ "bun": { "minVersion": "0.5.3" },
11
11
  "bundler": { "type": "gem", "parent": "ruby" },
12
12
  "cabal": {},
13
13
  "checkov": { "type": "pip", "parent": "python" },
@@ -17,66 +17,66 @@
17
17
  "copier": { "type": "pip", "parent": "python" },
18
18
  "corepack": { "type": "npm", "parent": "node" },
19
19
  "dart": {},
20
- "deno": {},
20
+ "deno": { "minVersion": "2.0.1" },
21
21
  "devbox": {},
22
22
  "docker": {},
23
- "docker-compose": { "parent": "docker" },
23
+ "docker-compose": { "parent": "docker", "minVersion": "2.0.1" },
24
24
  "dotnet": {},
25
25
  "elixir": { "parent": "erlang" },
26
- "erlang": {},
27
- "flutter": {},
28
- "flux": {},
29
- "gh": {},
26
+ "erlang": { "minVersion": "24.2.0.0" },
27
+ "flutter": { "minVersion": "1.22.6" },
28
+ "flux": { "minVersion": "0.6.0" },
29
+ "gh": { "minVersion": "2.0.0" },
30
30
  "ghc": {},
31
- "git": { "root": true },
32
- "git-lfs": { "parent": "git" },
33
- "gleam": {},
31
+ "git": { "root": true, "minVersion": "2.33.0" },
32
+ "git-lfs": { "parent": "git", "minVersion": "2.6.0" },
33
+ "gleam": { "minVersion": "0.23.0" },
34
34
  "golang": {},
35
35
  "gradle": { "parent": "java" },
36
36
  "hashin": { "type": "pip", "parent": "python" },
37
- "helm": {},
37
+ "helm": { "minVersion": "3.1.0" },
38
38
  "helmfile": {},
39
39
  "java": {},
40
40
  "java-jdk": {},
41
41
  "java-jre": {},
42
42
  "jb": {},
43
- "jq": {},
43
+ "jq": { "minVersion": "1.7.1" },
44
44
  "kas": { "type": "pip", "parent": "python" },
45
45
  "kubectl": {},
46
- "kustomize": {},
46
+ "kustomize": { "minVersion": "3.3.0" },
47
47
  "lerna": { "type": "npm", "parent": "node", "deprecated": true },
48
48
  "maven": { "parent": "java" },
49
- "mise": {},
49
+ "mise": { "minVersion": "2024.1.0" },
50
50
  "mono": {},
51
- "nix": {},
51
+ "nix": { "minVersion": "2.10.3" },
52
52
  "node": {},
53
53
  "npm": { "type": "npm", "parent": "node" },
54
54
  "nub": {},
55
55
  "nuget": { "parent": "mono" },
56
56
  "paket": { "type": "dotnet", "parent": "dotnet" },
57
57
  "pdm": { "type": "pip", "parent": "python" },
58
- "php": {},
58
+ "php": { "minVersion": "7.4.0" },
59
59
  "pip-tools": { "type": "pip", "parent": "python" },
60
60
  "pipenv": { "type": "pip", "parent": "python" },
61
- "pixi": {},
61
+ "pixi": { "minVersion": "0.39.2" },
62
62
  "pnpm": { "type": "npm", "parent": "node" },
63
63
  "poetry": { "type": "pip", "parent": "python" },
64
64
  "powershell": {},
65
65
  "protoc": {},
66
- "python": {},
66
+ "python": { "minVersion": "2.7.18" },
67
67
  "renovate": { "type": "npm", "parent": "node" },
68
- "ruby": {},
68
+ "ruby": { "minVersion": "2.7.7" },
69
69
  "rust": {},
70
- "sbt": { "parent": "java" },
70
+ "sbt": { "parent": "java", "minVersion": "0.13.17" },
71
71
  "scala": { "parent": "java" },
72
- "skopeo": {},
73
- "sops": {},
72
+ "skopeo": { "minVersion": "1.14.0" },
73
+ "sops": { "minVersion": "3.8.0" },
74
74
  "swift": {},
75
75
  "terraform": {},
76
- "tofu": {},
76
+ "tofu": { "minVersion": "1.6.3" },
77
77
  "uv": { "type": "pip", "parent": "python" },
78
78
  "vendir": {},
79
- "vp": { "parent": "node" },
79
+ "vp": { "parent": "node", "minVersion": "0.3.1" },
80
80
  "wally": {},
81
81
  "yarn": { "type": "npm", "parent": "node" },
82
82
  "yarn-slim": { "type": "npm", "parent": "node" }
@@ -26,6 +26,10 @@
26
26
  "type": "boolean",
27
27
  "const": true,
28
28
  "description": "the tool can only be installed as root, so only at image build time"
29
+ },
30
+ "minVersion": {
31
+ "type": "string",
32
+ "description": "the oldest version containerbase supports for the tool, in the tool's versioning; tools without a known limit have none"
29
33
  }
30
34
  },
31
35
  "additionalProperties": false
package/dist/data.d.ts CHANGED
@@ -17,7 +17,9 @@ export declare const tools: {
17
17
  readonly buildx: {
18
18
  readonly parent: "docker";
19
19
  };
20
- readonly bun: {};
20
+ readonly bun: {
21
+ readonly minVersion: "0.5.3";
22
+ };
21
23
  readonly bundler: {
22
24
  readonly type: "gem";
23
25
  readonly parent: "ruby";
@@ -47,28 +49,43 @@ export declare const tools: {
47
49
  readonly parent: "node";
48
50
  };
49
51
  readonly dart: {};
50
- readonly deno: {};
52
+ readonly deno: {
53
+ readonly minVersion: "2.0.1";
54
+ };
51
55
  readonly devbox: {};
52
56
  readonly docker: {};
53
57
  readonly 'docker-compose': {
54
58
  readonly parent: "docker";
59
+ readonly minVersion: "2.0.1";
55
60
  };
56
61
  readonly dotnet: {};
57
62
  readonly elixir: {
58
63
  readonly parent: "erlang";
59
64
  };
60
- readonly erlang: {};
61
- readonly flutter: {};
62
- readonly flux: {};
63
- readonly gh: {};
65
+ readonly erlang: {
66
+ readonly minVersion: "24.2.0.0";
67
+ };
68
+ readonly flutter: {
69
+ readonly minVersion: "1.22.6";
70
+ };
71
+ readonly flux: {
72
+ readonly minVersion: "0.6.0";
73
+ };
74
+ readonly gh: {
75
+ readonly minVersion: "2.0.0";
76
+ };
64
77
  readonly ghc: {};
65
78
  readonly git: {
66
79
  readonly root: true;
80
+ readonly minVersion: "2.33.0";
67
81
  };
68
82
  readonly 'git-lfs': {
69
83
  readonly parent: "git";
84
+ readonly minVersion: "2.6.0";
85
+ };
86
+ readonly gleam: {
87
+ readonly minVersion: "0.23.0";
70
88
  };
71
- readonly gleam: {};
72
89
  readonly golang: {};
73
90
  readonly gradle: {
74
91
  readonly parent: "java";
@@ -77,19 +94,25 @@ export declare const tools: {
77
94
  readonly type: "pip";
78
95
  readonly parent: "python";
79
96
  };
80
- readonly helm: {};
97
+ readonly helm: {
98
+ readonly minVersion: "3.1.0";
99
+ };
81
100
  readonly helmfile: {};
82
101
  readonly java: {};
83
102
  readonly 'java-jdk': {};
84
103
  readonly 'java-jre': {};
85
104
  readonly jb: {};
86
- readonly jq: {};
105
+ readonly jq: {
106
+ readonly minVersion: "1.7.1";
107
+ };
87
108
  readonly kas: {
88
109
  readonly type: "pip";
89
110
  readonly parent: "python";
90
111
  };
91
112
  readonly kubectl: {};
92
- readonly kustomize: {};
113
+ readonly kustomize: {
114
+ readonly minVersion: "3.3.0";
115
+ };
93
116
  readonly lerna: {
94
117
  readonly type: "npm";
95
118
  readonly parent: "node";
@@ -98,9 +121,13 @@ export declare const tools: {
98
121
  readonly maven: {
99
122
  readonly parent: "java";
100
123
  };
101
- readonly mise: {};
124
+ readonly mise: {
125
+ readonly minVersion: "2024.1.0";
126
+ };
102
127
  readonly mono: {};
103
- readonly nix: {};
128
+ readonly nix: {
129
+ readonly minVersion: "2.10.3";
130
+ };
104
131
  readonly node: {};
105
132
  readonly npm: {
106
133
  readonly type: "npm";
@@ -118,7 +145,9 @@ export declare const tools: {
118
145
  readonly type: "pip";
119
146
  readonly parent: "python";
120
147
  };
121
- readonly php: {};
148
+ readonly php: {
149
+ readonly minVersion: "7.4.0";
150
+ };
122
151
  readonly 'pip-tools': {
123
152
  readonly type: "pip";
124
153
  readonly parent: "python";
@@ -127,7 +156,9 @@ export declare const tools: {
127
156
  readonly type: "pip";
128
157
  readonly parent: "python";
129
158
  };
130
- readonly pixi: {};
159
+ readonly pixi: {
160
+ readonly minVersion: "0.39.2";
161
+ };
131
162
  readonly pnpm: {
132
163
  readonly type: "npm";
133
164
  readonly parent: "node";
@@ -138,24 +169,35 @@ export declare const tools: {
138
169
  };
139
170
  readonly powershell: {};
140
171
  readonly protoc: {};
141
- readonly python: {};
172
+ readonly python: {
173
+ readonly minVersion: "2.7.18";
174
+ };
142
175
  readonly renovate: {
143
176
  readonly type: "npm";
144
177
  readonly parent: "node";
145
178
  };
146
- readonly ruby: {};
179
+ readonly ruby: {
180
+ readonly minVersion: "2.7.7";
181
+ };
147
182
  readonly rust: {};
148
183
  readonly sbt: {
149
184
  readonly parent: "java";
185
+ readonly minVersion: "0.13.17";
150
186
  };
151
187
  readonly scala: {
152
188
  readonly parent: "java";
153
189
  };
154
- readonly skopeo: {};
155
- readonly sops: {};
190
+ readonly skopeo: {
191
+ readonly minVersion: "1.14.0";
192
+ };
193
+ readonly sops: {
194
+ readonly minVersion: "3.8.0";
195
+ };
156
196
  readonly swift: {};
157
197
  readonly terraform: {};
158
- readonly tofu: {};
198
+ readonly tofu: {
199
+ readonly minVersion: "1.6.3";
200
+ };
159
201
  readonly uv: {
160
202
  readonly type: "pip";
161
203
  readonly parent: "python";
@@ -163,6 +205,7 @@ export declare const tools: {
163
205
  readonly vendir: {};
164
206
  readonly vp: {
165
207
  readonly parent: "node";
208
+ readonly minVersion: "0.3.1";
166
209
  };
167
210
  readonly wally: {};
168
211
  readonly yarn: {
package/dist/data.js CHANGED
@@ -9,7 +9,7 @@ export const tools = {
9
9
  bower: { type: 'npm', parent: 'node', deprecated: true },
10
10
  buf: {},
11
11
  buildx: { parent: 'docker' },
12
- bun: {},
12
+ bun: { minVersion: '0.5.3' },
13
13
  bundler: { type: 'gem', parent: 'ruby' },
14
14
  cabal: {},
15
15
  checkov: { type: 'pip', parent: 'python' },
@@ -19,66 +19,66 @@ export const tools = {
19
19
  copier: { type: 'pip', parent: 'python' },
20
20
  corepack: { type: 'npm', parent: 'node' },
21
21
  dart: {},
22
- deno: {},
22
+ deno: { minVersion: '2.0.1' },
23
23
  devbox: {},
24
24
  docker: {},
25
- 'docker-compose': { parent: 'docker' },
25
+ 'docker-compose': { parent: 'docker', minVersion: '2.0.1' },
26
26
  dotnet: {},
27
27
  elixir: { parent: 'erlang' },
28
- erlang: {},
29
- flutter: {},
30
- flux: {},
31
- gh: {},
28
+ erlang: { minVersion: '24.2.0.0' },
29
+ flutter: { minVersion: '1.22.6' },
30
+ flux: { minVersion: '0.6.0' },
31
+ gh: { minVersion: '2.0.0' },
32
32
  ghc: {},
33
- git: { root: true },
34
- 'git-lfs': { parent: 'git' },
35
- gleam: {},
33
+ git: { root: true, minVersion: '2.33.0' },
34
+ 'git-lfs': { parent: 'git', minVersion: '2.6.0' },
35
+ gleam: { minVersion: '0.23.0' },
36
36
  golang: {},
37
37
  gradle: { parent: 'java' },
38
38
  hashin: { type: 'pip', parent: 'python' },
39
- helm: {},
39
+ helm: { minVersion: '3.1.0' },
40
40
  helmfile: {},
41
41
  java: {},
42
42
  'java-jdk': {},
43
43
  'java-jre': {},
44
44
  jb: {},
45
- jq: {},
45
+ jq: { minVersion: '1.7.1' },
46
46
  kas: { type: 'pip', parent: 'python' },
47
47
  kubectl: {},
48
- kustomize: {},
48
+ kustomize: { minVersion: '3.3.0' },
49
49
  lerna: { type: 'npm', parent: 'node', deprecated: true },
50
50
  maven: { parent: 'java' },
51
- mise: {},
51
+ mise: { minVersion: '2024.1.0' },
52
52
  mono: {},
53
- nix: {},
53
+ nix: { minVersion: '2.10.3' },
54
54
  node: {},
55
55
  npm: { type: 'npm', parent: 'node' },
56
56
  nub: {},
57
57
  nuget: { parent: 'mono' },
58
58
  paket: { type: 'dotnet', parent: 'dotnet' },
59
59
  pdm: { type: 'pip', parent: 'python' },
60
- php: {},
60
+ php: { minVersion: '7.4.0' },
61
61
  'pip-tools': { type: 'pip', parent: 'python' },
62
62
  pipenv: { type: 'pip', parent: 'python' },
63
- pixi: {},
63
+ pixi: { minVersion: '0.39.2' },
64
64
  pnpm: { type: 'npm', parent: 'node' },
65
65
  poetry: { type: 'pip', parent: 'python' },
66
66
  powershell: {},
67
67
  protoc: {},
68
- python: {},
68
+ python: { minVersion: '2.7.18' },
69
69
  renovate: { type: 'npm', parent: 'node' },
70
- ruby: {},
70
+ ruby: { minVersion: '2.7.7' },
71
71
  rust: {},
72
- sbt: { parent: 'java' },
72
+ sbt: { parent: 'java', minVersion: '0.13.17' },
73
73
  scala: { parent: 'java' },
74
- skopeo: {},
75
- sops: {},
74
+ skopeo: { minVersion: '1.14.0' },
75
+ sops: { minVersion: '3.8.0' },
76
76
  swift: {},
77
77
  terraform: {},
78
- tofu: {},
78
+ tofu: { minVersion: '1.6.3' },
79
79
  uv: { type: 'pip', parent: 'python' },
80
80
  vendir: {},
81
- vp: { parent: 'node' },
81
+ vp: { parent: 'node', minVersion: '0.3.1' },
82
82
  wally: {},
83
83
  yarn: { type: 'npm', parent: 'node' },
84
84
  'yarn-slim': { type: 'npm', parent: 'node' },
package/dist/schema.d.ts CHANGED
@@ -26,6 +26,7 @@ export declare const ToolMetadata: z.ZodObject<{
26
26
  parent: z.ZodExactOptional<z.ZodString>;
27
27
  deprecated: z.ZodExactOptional<z.ZodLiteral<true>>;
28
28
  root: z.ZodExactOptional<z.ZodLiteral<true>>;
29
+ minVersion: z.ZodExactOptional<z.ZodString>;
29
30
  }, z.core.$strict>;
30
31
  /**
31
32
  * Schema of `tools.json`.
@@ -43,6 +44,7 @@ export declare const SupportedTools: z.ZodObject<{
43
44
  parent: z.ZodExactOptional<z.ZodString>;
44
45
  deprecated: z.ZodExactOptional<z.ZodLiteral<true>>;
45
46
  root: z.ZodExactOptional<z.ZodLiteral<true>>;
47
+ minVersion: z.ZodExactOptional<z.ZodString>;
46
48
  }, z.core.$strict>>;
47
49
  }, z.core.$strict>;
48
50
  export type SupportedTools = z.infer<typeof SupportedTools>;
package/dist/schema.js CHANGED
@@ -26,6 +26,10 @@ export const ToolMetadata = z.strictObject({
26
26
  .literal(true)
27
27
  .describe('the tool can only be installed as root, so only at image build time')
28
28
  .exactOptional(),
29
+ minVersion: z
30
+ .string()
31
+ .describe("the oldest version containerbase supports for the tool, in the tool's versioning; tools without a known limit have none")
32
+ .exactOptional(),
29
33
  });
30
34
  /**
31
35
  * Schema of `tools.json`.
package/dist/types.d.ts CHANGED
@@ -26,4 +26,9 @@ export interface ToolMetadata {
26
26
  * The tool can only be installed as root, so only at image build time.
27
27
  */
28
28
  root?: true;
29
+ /**
30
+ * The oldest version containerbase supports for the tool, in the tool's
31
+ * versioning. Tools without a known limit have none.
32
+ */
33
+ minVersion?: string;
29
34
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@containerbase/base",
3
- "version": "14.34.0",
3
+ "version": "14.36.0",
4
4
  "description": "Metadata about the tools supported by containerbase",
5
5
  "keywords": [
6
6
  "containerbase",