@containerbase/base 14.38.0 → 14.40.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,13 +43,14 @@ 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 |
52
- | `minVersion` | the oldest version containerbase supports for the tool, in the tool's versioning; tools without a known limit have none |
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 |
53
+ | `distroMinVersion` | the oldest version supported on an Ubuntu release (`jammy`, `noble` or `resolute`), only for releases whose floor differs from `minVersion`, which is the floor on `noble` |
53
54
 
54
55
  Only the names `install-tool` accepts are listed.
55
56
  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
@@ -19,7 +19,7 @@
19
19
  "dart": { "minVersion": "2.0.0" },
20
20
  "deno": { "minVersion": "2.0.1" },
21
21
  "devbox": {},
22
- "docker": { "minVersion": "18.09.0" },
22
+ "docker": { "minVersion": "20.10.0" },
23
23
  "docker-compose": { "parent": "docker", "minVersion": "2.0.1" },
24
24
  "dotnet": { "minVersion": "6.0.100" },
25
25
  "elixir": { "parent": "erlang" },
@@ -42,7 +42,7 @@
42
42
  "jb": {},
43
43
  "jq": { "minVersion": "1.7.1" },
44
44
  "kas": { "type": "pip", "parent": "python" },
45
- "kubectl": {},
45
+ "kubectl": { "minVersion": "1.13.11" },
46
46
  "kustomize": { "minVersion": "3.3.0" },
47
47
  "lerna": { "type": "npm", "parent": "node", "deprecated": true },
48
48
  "maven": { "parent": "java" },
@@ -55,7 +55,10 @@
55
55
  "nuget": { "parent": "mono" },
56
56
  "paket": { "type": "dotnet", "parent": "dotnet" },
57
57
  "pdm": { "type": "pip", "parent": "python" },
58
- "php": { "minVersion": "7.4.0" },
58
+ "php": {
59
+ "minVersion": "7.4.0",
60
+ "distroMinVersion": { "resolute": "8.1.31" }
61
+ },
59
62
  "pip-tools": { "type": "pip", "parent": "python" },
60
63
  "pipenv": { "type": "pip", "parent": "python" },
61
64
  "pixi": { "minVersion": "0.39.2" },
@@ -71,7 +74,10 @@
71
74
  "scala": { "parent": "java" },
72
75
  "skopeo": { "minVersion": "1.14.0" },
73
76
  "sops": { "minVersion": "3.8.0" },
74
- "swift": { "minVersion": "5.7" },
77
+ "swift": {
78
+ "minVersion": "5.7",
79
+ "distroMinVersion": { "resolute": "6.4.0" }
80
+ },
75
81
  "terraform": {},
76
82
  "tofu": { "minVersion": "1.6.3" },
77
83
  "uv": { "type": "pip", "parent": "python" },
@@ -30,6 +30,16 @@
30
30
  "minVersion": {
31
31
  "type": "string",
32
32
  "description": "the oldest version containerbase supports for the tool, in the tool's versioning; tools without a known limit have none"
33
+ },
34
+ "distroMinVersion": {
35
+ "type": "object",
36
+ "propertyNames": {
37
+ "type": "string",
38
+ "enum": ["jammy", "noble", "resolute"],
39
+ "description": "an Ubuntu release supported by containerbase, by codename"
40
+ },
41
+ "additionalProperties": { "type": "string" },
42
+ "description": "the oldest version containerbase supports on an Ubuntu release, in the tool's versioning, keyed by codename; only for releases whose floor differs from minVersion, which is the floor on noble"
33
43
  }
34
44
  },
35
45
  "additionalProperties": false
package/dist/data.d.ts CHANGED
@@ -58,7 +58,7 @@ export declare const tools: {
58
58
  };
59
59
  readonly devbox: {};
60
60
  readonly docker: {
61
- readonly minVersion: "18.09.0";
61
+ readonly minVersion: "20.10.0";
62
62
  };
63
63
  readonly 'docker-compose': {
64
64
  readonly parent: "docker";
@@ -125,7 +125,9 @@ export declare const tools: {
125
125
  readonly type: "pip";
126
126
  readonly parent: "python";
127
127
  };
128
- readonly kubectl: {};
128
+ readonly kubectl: {
129
+ readonly minVersion: "1.13.11";
130
+ };
129
131
  readonly kustomize: {
130
132
  readonly minVersion: "3.3.0";
131
133
  };
@@ -163,6 +165,9 @@ export declare const tools: {
163
165
  };
164
166
  readonly php: {
165
167
  readonly minVersion: "7.4.0";
168
+ readonly distroMinVersion: {
169
+ readonly resolute: "8.1.31";
170
+ };
166
171
  };
167
172
  readonly 'pip-tools': {
168
173
  readonly type: "pip";
@@ -215,6 +220,9 @@ export declare const tools: {
215
220
  };
216
221
  readonly swift: {
217
222
  readonly minVersion: "5.7";
223
+ readonly distroMinVersion: {
224
+ readonly resolute: "6.4.0";
225
+ };
218
226
  };
219
227
  readonly terraform: {};
220
228
  readonly tofu: {
package/dist/data.js CHANGED
@@ -21,7 +21,7 @@ export const tools = {
21
21
  dart: { minVersion: '2.0.0' },
22
22
  deno: { minVersion: '2.0.1' },
23
23
  devbox: {},
24
- docker: { minVersion: '18.09.0' },
24
+ docker: { minVersion: '20.10.0' },
25
25
  'docker-compose': { parent: 'docker', minVersion: '2.0.1' },
26
26
  dotnet: { minVersion: '6.0.100' },
27
27
  elixir: { parent: 'erlang' },
@@ -44,7 +44,7 @@ export const tools = {
44
44
  jb: {},
45
45
  jq: { minVersion: '1.7.1' },
46
46
  kas: { type: 'pip', parent: 'python' },
47
- kubectl: {},
47
+ kubectl: { minVersion: '1.13.11' },
48
48
  kustomize: { minVersion: '3.3.0' },
49
49
  lerna: { type: 'npm', parent: 'node', deprecated: true },
50
50
  maven: { parent: 'java' },
@@ -57,7 +57,7 @@ export const tools = {
57
57
  nuget: { parent: 'mono' },
58
58
  paket: { type: 'dotnet', parent: 'dotnet' },
59
59
  pdm: { type: 'pip', parent: 'python' },
60
- php: { minVersion: '7.4.0' },
60
+ php: { minVersion: '7.4.0', distroMinVersion: { resolute: '8.1.31' } },
61
61
  'pip-tools': { type: 'pip', parent: 'python' },
62
62
  pipenv: { type: 'pip', parent: 'python' },
63
63
  pixi: { minVersion: '0.39.2' },
@@ -73,7 +73,7 @@ export const tools = {
73
73
  scala: { parent: 'java' },
74
74
  skopeo: { minVersion: '1.14.0' },
75
75
  sops: { minVersion: '3.8.0' },
76
- swift: { minVersion: '5.7' },
76
+ swift: { minVersion: '5.7', distroMinVersion: { resolute: '6.4.0' } },
77
77
  terraform: {},
78
78
  tofu: { minVersion: '1.6.3' },
79
79
  uv: { type: 'pip', parent: 'python' },
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { tools } from './data.ts';
2
- export type { InstallToolType, ToolMetadata, ToolType } from './types.ts';
2
+ export type { DistroCode, InstallToolType, ToolMetadata, ToolType, } from './types.ts';
3
3
  export { tools };
4
4
  /**
5
5
  * A tool name `install-tool` accepts.
package/dist/schema.d.ts CHANGED
@@ -10,6 +10,11 @@ export declare const ToolType: z.ZodEnum<{
10
10
  pip: "pip";
11
11
  dotnet: "dotnet";
12
12
  }>;
13
+ export declare const DistroCode: z.ZodEnum<{
14
+ jammy: "jammy";
15
+ noble: "noble";
16
+ resolute: "resolute";
17
+ }>;
13
18
  /**
14
19
  * Schema of a single entry of `tools.json`.
15
20
  *
@@ -27,6 +32,11 @@ export declare const ToolMetadata: z.ZodObject<{
27
32
  deprecated: z.ZodExactOptional<z.ZodLiteral<true>>;
28
33
  root: z.ZodExactOptional<z.ZodLiteral<true>>;
29
34
  minVersion: z.ZodExactOptional<z.ZodString>;
35
+ distroMinVersion: z.ZodExactOptional<z.ZodRecord<z.ZodEnum<{
36
+ jammy: "jammy";
37
+ noble: "noble";
38
+ resolute: "resolute";
39
+ }> & z.core.$partial, z.ZodString>>;
30
40
  }, z.core.$strict>;
31
41
  /**
32
42
  * Schema of `tools.json`.
@@ -45,6 +55,11 @@ export declare const SupportedTools: z.ZodObject<{
45
55
  deprecated: z.ZodExactOptional<z.ZodLiteral<true>>;
46
56
  root: z.ZodExactOptional<z.ZodLiteral<true>>;
47
57
  minVersion: z.ZodExactOptional<z.ZodString>;
58
+ distroMinVersion: z.ZodExactOptional<z.ZodRecord<z.ZodEnum<{
59
+ jammy: "jammy";
60
+ noble: "noble";
61
+ resolute: "resolute";
62
+ }> & z.core.$partial, z.ZodString>>;
48
63
  }, z.core.$strict>>;
49
64
  }, z.core.$strict>;
50
65
  export type SupportedTools = z.infer<typeof SupportedTools>;
package/dist/schema.js CHANGED
@@ -5,6 +5,9 @@ export const InstallToolType = z
5
5
  export const ToolType = z
6
6
  .enum(['gem', 'npm', 'pip', 'dotnet'])
7
7
  .describe('the package manager installing the tool');
8
+ export const DistroCode = z
9
+ .enum(['jammy', 'noble', 'resolute'])
10
+ .describe('an Ubuntu release supported by containerbase, by codename');
8
11
  /**
9
12
  * Schema of a single entry of `tools.json`.
10
13
  *
@@ -30,6 +33,10 @@ export const ToolMetadata = z.strictObject({
30
33
  .string()
31
34
  .describe("the oldest version containerbase supports for the tool, in the tool's versioning; tools without a known limit have none")
32
35
  .exactOptional(),
36
+ distroMinVersion: z
37
+ .partialRecord(DistroCode, z.string())
38
+ .describe("the oldest version containerbase supports on an Ubuntu release, in the tool's versioning, keyed by codename; only for releases whose floor differs from minVersion, which is the floor on noble")
39
+ .exactOptional(),
33
40
  });
34
41
  /**
35
42
  * Schema of `tools.json`.
package/dist/types.d.ts CHANGED
@@ -6,6 +6,10 @@ export type InstallToolType = 'gem' | 'npm' | 'pip';
6
6
  * The package manager installing a tool.
7
7
  */
8
8
  export type ToolType = 'gem' | 'npm' | 'pip' | 'dotnet';
9
+ /**
10
+ * The Ubuntu releases containerbase supports, by codename.
11
+ */
12
+ export type DistroCode = 'jammy' | 'noble' | 'resolute';
9
13
  /**
10
14
  * What containerbase knows about a supported tool.
11
15
  */
@@ -31,4 +35,9 @@ export interface ToolMetadata {
31
35
  * versioning. Tools without a known limit have none.
32
36
  */
33
37
  minVersion?: string;
38
+ /**
39
+ * The oldest version containerbase supports on an Ubuntu release, only for
40
+ * the releases whose floor differs from `minVersion`.
41
+ */
42
+ distroMinVersion?: Partial<Record<DistroCode, string>>;
34
43
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@containerbase/base",
3
- "version": "14.38.0",
3
+ "version": "14.40.0",
4
4
  "description": "Metadata about the tools supported by containerbase",
5
5
  "keywords": [
6
6
  "containerbase",
@@ -32,7 +32,7 @@
32
32
  "dist"
33
33
  ],
34
34
  "devDependencies": {
35
- "zod": "4.6.5"
35
+ "zod": "4.6.6"
36
36
  },
37
37
  "peerDependencies": {
38
38
  "zod": "^4.0.0"